書評「リコールを起こさないソフトウェアのつくり方」

書評「リコールを起こさないソフトウェアのつくり方」

酒井 由夫 (著) , 技術評論社

カテゴリ:マネジメント

概要

私たちの身の回りにはソフトウェアで制御される電子機器があふれている。だが大規模化、複雑化の一途を辿るソフトウェアの品質を確保することは容易ではない。ソフトウェアの不具合が絡んだリコール問題は年々増加している。
本書ではまず、どのようにしてソフトウェアに不具合が入り込むのかを、実際のプログラムを例に挙げながら解き明かす。その上で、日本のソフトウェア開発プロジェクトに適合したマネージメント技術を紹介する。そしてソフトウェアの品質と開発効率向上の両立を実現するために必要な、ソフトウェアの資産化の技術を解説する。組込み開発に携わる、プログラマ、SE、マネージャ、品質保証担当者に一読を薦める。

本書の使い方

Part1:実際にプログラマがプログラムを書く際に、どのような「悪いプログラム」が作られるのか、実際のソースコードを見ながらその問題点と対策を学ぶことが出来る。プログラマ、SEに好適。
Part2:日本の開発プロジェクト現場において求められるにおけるプロジェクト管理手法を学ぶことが出来る。SE、管理者に好適
Part3:再利用性が高く、高品質なソフトウェア資産を形成する技術を学ぶことが出来る。SE、管理者に好適。

何を学べるか

Part1 ソフトウェアの危うさの本質を体感してみよう
経験の浅いプログラマが実際に作ったプログラムを例に、いかに一人プログラマーが問題のあるプログラムを作りうるのか、そしてその問題が発見されにくいか、といったソフトウェアのもつ危うさを考察する。くわえて、どれほど慎重に作っても、テストをすり抜けてしまう、仕方のないバグによって、製品の価値が下がり、企業や組織の信用を失ってしまうかを説明する。その上で、大規模化、複雑化したプロジェクトにおいて品質を保つために何が必要なのかを考察する。

Part2 日本的ソフトウェアプロジェクトの管理はここから
日本人とその組織が持つ「暖かい人間関係の中のやさしい一員」という特性は、日本の高品質を支える原動力であった。だが、ソフトウェア開発プロジェクトが大規模化、複雑化した現在、その特性自体が、ソフトウェア工学に裏打ちされたプロセス改善の導入を阻む障壁になる場合もある。Part2では、日本のソフトウェアプロジェクトの現状を踏まえて、リコールを起こさないために、品質を向上させプロジェクトを効果的にマネージメントするための技術を説明する。ソフトウェア構成管理、ソフトウェア変更管理、レビューなどの具体的な取り組みについて、「なぜそれが必要なのか」から掘り下げて解説する。

Part3 ソフトウェア資産化の技術がリコール防止につながる
ソフトウェアの品質と価値とは何かを確認したうえで、ソフトウェア開発の効率化と高品質化を行ためには、ソフトウェアの資産化とその再利用が必要であることを解説する。そのうえで、再利用資産の具体的な抽出の手順と、一連の作業をケーススタディを挙げながら解説する。また、品質と同時に安全の確保が求められるソフトウェアに関連して、安全なアーキテクチャや安全な設計とは何かについて、過去に起こったソフトウェアのバグに由来する事故事例を分析しつつ考察する。

Appendix ソフトウェアを含むシステムの安全標準と安全規格の紹介
ソフトウェアプロジェクトにおける品質向上の取り組みに役立つ、組込みソフトウェア関連の安全標準と安全規格を紹介する。最初にソフトウェアに関する国際標準や国際規格の読み方を説明する。続いてMISRAソフトウェア安全性解析ガイドラインと、 IEC 62304(医療機器ソフトウェア-ソフトウェアライフサイクルプロセス)の概要を解説する。