情報共有システム事業部の北川です。
情報共有システム RevSIGNの開発を担当しています。
今回は、私がここ数か月の間に読んだ本の中から、ソフトウェアの開発に関連する次の3冊を簡単に紹介したいと思います。
- マンガでわかる技術文書の書き方(オーム社)
- 良いコード/悪いコードで学ぶ設計入門(技術評論社)
- ソフトウェア不具合改善手法ODC分析(日科技連出版社)
これらの本は、業務でソフトウェアの設計や実装を行っている初心者から中堅の方を対象としてお勧めします。
マンガでわかる技術文書の書き方(オーム社)
はい、すみません。
ソフトウェアの開発に関連する本を紹介すると言っておきながら、いきなり技術書ではないです。
この本では「技術文書」の書き方をマンガで分かりやすく説明してくれています。 *1
「技術」という言葉は使われていますが、プログラミング技術とは全然関係ありません。
実際、この本の主人公は営業職の新入社員です。
つまり開発者に関わらず、社会人としてあらゆる文書を作成するすべての人に必要な知識が書かれています。
開発者だからといってプログラムだけを書いていれば良い訳ではないですよね。
仕様書や設計資料はもちろんのこと、関係者とコミュニケーションを取るためにメール等でも文書を作っていると思います。
この本ではそれらの文書すべてを「伝わる文書」にする方法を「6つのルールと18の書き方」で端的に説明してくれています。
「伝わる文書」を作成する技術は開発者の基礎体力みたいなものです。
開発プロジェクトのコミュニケーションをスムーズにし、仕様に対する認識の齟齬を減らし、開発作業を効率的にしてくれます。
あなたの開発プロジェクトに仕様書のテンプレートがあるならば、きっとこの本に書かれているルールに則っているはずです。(たぶん)
個人的には会社で購入して新卒の新入社員に配ってもいいくらいな内容の本かなと感じています。
良いコード/悪いコードで学ぶ設計入門(技術評論社)
次はちゃんとした技術書です。
とは言ってもITエンジニア本大賞2023で技術書部門大賞を取られているような本なので、わざわざ私がここで紹介するまでもないのですが。
さて、ソフトウェアの開発をしていると、誰しも落とし穴を掘ってしまったり、誰かが掘った落とし穴にはまってしまったりした経験があるのではないでしょうか。
もちろんここでいう落とし穴とは実際に地面に穴を掘ることではありません。
ここでいう落とし穴とは、自分が設計したコードのせいで、後にそのコードを触った誰かがバグを作りこんでしまったり、逆に誰かが書いたコードを修正した際に、その意図を読み切れず新たにバグを作りこんでしまったりすることを指します。
この本ではそれを「悪魔」と呼んでいます。
「悪魔」を呼び込んでしまわない設計方法について実例を交えながら丁寧に説明してくれています。
与えられた要求通りにプログラムを設計できるようになったけど、よりよいプログラム(保守性の高いプログラム)を設計できるようになりたいと考えている方にはお勧めです。
余談ですが、この本の「第16章 設計を妨げる開発プロセスとの戦い」の内容が、著者の実体験に基づいた提案と推察され、個人的に共感できる点が多かったです。
世の中の開発プロジェクトを平和に運営するために、ここだけでもすべての開発者に読んで欲しい内容だと感じました。
ソフトウェア不具合改善手法ODC分析(日科技連出版社)
最後はソフトウェアの品質改善についての本です。
ODC分析という言葉は聞いたことがあるでしょうか?
大半の方は聞いたことがないと思います。
私は5~6年前に当時の職場で品質管理の部署にいた方から教えて頂きました。
ODC分析とはソフトウェアの開発途中で摘出された不具合を4つの属性で分析し、それをもとに各開発工程を振り返り、その質を高める手法です。
ここまで紹介しておいてなんですが、実際にODC分析の実施を必要とする開発は限られると思います。
それなりに規模があり品質が求められる開発じゃないと費用対効果が得られないですし、データの蓄積も負荷になるので開発者の理解も得る必要があり、実際に運用していくのはなかなか大変です。
ただ、このODC分析の手法は、分析の過程でソフトウェアの不具合というものがどの工程でどうやって作りこまれているのかを整理してくれています。
そのため、ODC分析を採用しないまでもその概要を知ることによって、不具合を作り込まないために開発者が各開発工程で気を付けるべきポイントを理解することができます。
内容も難しいので前の2冊に比べるとお勧めしにくいのですが、ソフトウェアの開発やテストに関わる人にとって知っておくとよい知識だと思います。
まとめ
簡単ながらも、ソフトウェア開発に関連する3冊の本を紹介させていただきました。
もし紹介した内容に興味を持っていただき、これらの本が皆様にとって何らかのプラスになることがあれば幸いです。
おわりに
KENTEMでは、様々な拠点でエンジニアを大募集しています!
建設×ITにご興味頂いた方は、是非下記のリンクからご応募ください。
hrmos.co
*1:「技術文書」という言葉を聞いたことがない方はぜひこの機に調べてみてください。