『@IT:ソフトウェア開発のさまざまな「ビジネス駆動」』を読んでいて感じたこと。
ソフトウェア開発方法にはリーン開発のような繰り返し型の方法が最近流行っているようですが、現場ではまだまだ昔からのウォーターホール型開発が主流なのではないかと思います。これはいったいなぜでしょうか?
先日、ちょうど上司とこのようなことについて会話する機会がありました。今の時代はソフトウェア開発のサイクルも短くなってきていますし、新しい技術がどんどんでてきてしまいます。このような状況ではウォーターホール型で開発すること自体、時代遅れだということは誰もが認識しているはずなのです。
ウォーターホール型はメーカーが考えた設計・仕様のまま製品化するという昔のスタイル(プロダクト・アウト)ではそれでいいものだったのですが、今の時代はお客様・ユーザの声をスピーディに取り入れながら短期間でよい品質のものを開発しなければいけません。そうしたとき、ウォーターホール型では開発工程の終盤でしかソフトウェアを評価することができず、それがユーザに合わないものであれば手戻りが大きく、結果的に出荷遅延や開発費用の増加という事態になってしまいます。
ここまでわかっていながら、なぜ(私は)ウォーターホール型で開発しているのでしょうか。それは組織として“ウォーターホール型しか認めていない”からです。ウォーターホール型は何十年と使われてきた方法ですので、そう簡単に変えることができないのはわかりますが、ソフトウェア開発の事業でより収益力を高めるためにはこのような旧態依然とした体質のままでは将来が非常に不安です。そのことに対して少しずつ抵抗しようとしていますが、なかなか個人の力では組織は動かすことはできなく、ストレスが溜まります...(自分の力不足なんでしょうけど。)
しかし、今後、ソフトウェア開発の方法をどのように改善していけるのかということにも自分の大きな課題として取り組みたいと思い、Blogでプチ宣言してみることにしました。