§ 雑誌掲載のお知らせ §

タイトル・・「失敗しない派生開発」
雑誌名・・・「Software People」Vol 8
出版社・・・・技術評論社

発売・・・・・2006年4月(予定)


▲内容▼
 現実のソフトウェア開発現場では、既存のソースコードに変更といくらかの機能追加を施して新しいバージョンのソフトウェアとして出す、いわば「派生開発」が大分を占めていると思われます。組み込みシステムの世界では、プロジェクトの80%以上は派生開発と思われます。もちろん、このパターンは組み込みシステムだけでなく、いわゆる「IT系」のソフトや金融系システム、Web上でのシステムにも発生します。

 派生開発の特徴は、開発期間が総じて短いのと、部分理解の制約の中で作業が強いられることです。その圧力のため、必要なプロセスを省いてソースコードの変更に取り掛かるものの、拙速にソースコードを変更したことで手戻り作業が頻発するのとバグの反撃にあってしまい、結局は納期を達成できません。

 多くのソフトウェア開発の現場で、この問題に対応しようと取り組まれていると思われますが、共通している間違いは、そこで実現が求められている「要求」に対して、「開発プロセス」がマッチしていないことです。派生開発と新規開発とでは、要求されていることが大きく異なるのです。にもかかわらず、そこで実施されている開発プロセスは、派生開発の要求の特徴を捉えていません。プロセスがマッチしていない以上、ソースコードにバグが入り込むのは当然ですし、納期がミートしないのも当然なのです。

 そして不思議なことに、こうした「派生開発」を扱った文献がないのです。翻訳本を含めて、この10年間に数えられないほどのソフトウェア開発に関する本が出版されているはずです。その中で、たしかに派生開発に僅かに触れるような文献は幾つかあるのですが、実際の現場の中で使えるものではありません。

 今回公表する「派生開発プロセス」は、私が新規開発中心の汎用機の世界から組み込みシステムの世界に転向して間もなく掴んだ方法であり、それ以来約20年間、組み込みシステムにおける派生開発においてすべて要求(納期を含む)を満たし続けてきたのです。そして、95年からのプロセス改善のコンサルティングの中でも、数多くの派生開発の機会に、この「派生開発プロセス」を取り入れてきたのですが、そのほとんどのケースで成功を確認し、プロセスとしての再現性を確信したことで、ここに「派生開発プロセス」として公表に踏み切ったものです。

 このプロセスが現実の派生開発のプロジェクトにおいて成功する仕組みは、この特集をご覧頂ければわかりますが、簡単に言えば、派生開発の特徴にマッチしたプロセスと成果物で構成していることに尽きます。無駄なく、それでいて省きすぎない成果物を繋いでいるのです。

 その中での最大の特徴は「変更要求仕様書」という、変更に特化した要求仕様書を導入していることです。ここで使っている要求仕様書の概念や、要求と要求仕様の考え方と表現は、私が編み出したUSDMの技法(「要求を仕様化する技術・表現する技術」技術評論社刊)を前提としていますので、詳しいことはそちらの文献をご覧下さい。

 当初は、多くの事例をあつめたりして、もっと詳しくまとめてから公表するつもりでしょたが、昨今のソフトウェアのトラブルが頻発する中で、少しでも早くこのような方法があることを知らせる必要があると判断し、とりあえず、雑誌で紹介することにしたものです。ただ、少しでも詳しく伝えようとしたために、雑誌の特集としての一般的なボリュームを越えてしまったかもしれません。しばらくは、これで対応していただきたいと思います。

▲30%の生産性UPへ▼
 先に公表した「要求の仕様化」の方法も、今回公表する「派生開発プロセス」も、いずれも私の「十八番」の主要なテーマであり、これがあったことによって、私のコンサルティングが成立してきたと言っても過言ではありません。営業もせずに大手のコンサルタント企業に対抗してプロセス改善のコンサルティングの仕事が途切れなかったこのも、これらの技術が大きく寄与してきたことは確かです。

 今回、この「虎の子」の2つを公開したわけですが、その理由は、日本のソフトウェア開発の現場の生産性を30%改善したいからです。「30%」にこだわっている理由は、このホームページの「巻頭書」に書きましたので、そちらをご覧下さい。この他にも重要なテクニックがありますので、それらも準備でき次第に順次公開しますが、とりあえずこの2つの技術によって、30%の生産性向上は実現するはずです。場合によっては50%ぐらいの生産性向上も見込める可能性があります。

 これによって、空いた時間をソフトウェアの知識や技術の修得や研究に充てて欲しいのです。そうでなければ、日本の社会の中で、ソフトウェア技術者の地位が上がらず、新しくこの世界を目指す人がいなくなります。そうなってしまえば、日本の産業にとっても取り返しがつかなくなります。

 何としても、このホームページをご覧頂いている皆さんの手で、ソフトウェア技術者の地位を上げて、社会に大きく貢献できる仕事であることを示して欲しいのです。決して、「新3K」の仕事ではなく、必要な知識や技術を手に入れさえすれば楽しい仕事であることを示して欲しいのです。

 ソフトウェア技術者の教育の必要性が叫ばれていますが、大学を含めた政府・教育界の動きが相変わらず前進する気配が有りません。既得権を失うことを恐れているのか、本気で動こうとしません。そのような状況の中で、私が出来ることは、私が手に入れた「うまくいく方法」を公開することです。この10年間でこれらの方法が、多くの現場でも有効であると分かった以上、私の手の中に隠しておくのではなく、1人でも多くの人に知らせることで、なんとか状況を打開したいと思っています。皆さんの一人ひとりの力を結集すれば、この状況を打開できると信じています。

(2006年2月27日)