はじめに
XDDPについては派生開発推進協議会にて説明がなされていますが、どうにも掴みにくいと思っており自分なりにまとめたいと思います。
XDDPとは
XDDPとはeXtreme Derivative Development Processの略称で、派生開発に対する開発アプローチの総称である。
具体的なプラクティス、実践方法については、下記の書籍にて説明されています。
XDDPの価値
XDDPには以下3つの価値があると考えます。これらを常に意識して開発を進めることで安定した開発プロセスへと変化させることができると考えます。
形式知化
派生開発の現場はウォーターフォール開発が多く、最初に仕様書を作ってしまったらそれ以降変更することがあまりないなど種々理由で、ドキュメントが残らないことが多いです。そのため、ソースコードのみがある状態からのスタートが多くなります。それらに立ち向かうために形式知化する種々アプローチが提案されています。
差分に徹する
膨大なソースコード全てを理解することは現実的ではありません。要求仕様よりベース環境から追加機能に必要な差分を検討し、その差分を実装するために必要な領域のみに対して設計を行います。この方針を忘れないようにします。この方針に従うアプローチがベターです。
一歩ずつ進める
手順を飛ばしてはいけません。時間がなくても、一歩ずつ進めるべきです。焦って憶測で開発を進めても、結局飛ばしたところに戻らないと前に進めなくなってしまいます。1つずつ整理理解して進めていく必要があります。
XDDPの原則
原則がまだよくわかっていません。というのは私自身がXDDPの経験が不十分だからです。これから少しずつ実践研究していき、原則を発見していきたいと思います。
XDDPのプラクティス
XDDPのプラクティス(活動)は先の書籍でいろいろ紹介されておりますが、変更3点セットと呼ばれているものが主です。スペックアウトも入れておきます。また、XDDPを支える表現技法として、USDM*1とPFD*2が存在します。トレーサビリティーマトリクスとPFDについて自分なりに実践していきたいと考えています。
- 変更要求仕様書
- トレーサビリティーマトリクス
- 変更設計書
- スペックアウト
おわりに
カイゼンジャーニーにおいて、紹介した内容について価値,原則,プラクティスを著者の方たちがまとめておられました。この価値,原則,プラクティスによって開発アプローチの中身を整理することができそうと思い、自分なりにまとめてみました。これを起点に、少しずつアップデートしていきたいと思います。
*1:Universal Specification Describing Manner http://swquality.jp/temp/nagasakiqdg15_usdm.pdf
*2:Process Flow Diagram PFDによる開発プロセスのモデリング - 千里霧中