ソフトウェア開発の期間は長くて短くて長い(ソフトウェア分析)
今は昔、開発期間は長かった
今は昔、ソフトウェア開発の期間は、年単位で見積もっていました。それでも開発期間の最後には、デスマーチになるのが不思議でしたが。それでも開発期間の初期にはじっくりと仕様検討をする時間がありました。
この時代では、最初に仕様をきっちりと決められるかどうかが、運命の分かれ目でした。でも運命はいつも悲劇の目を出していました。でも外から見れば、これは喜劇だったのです。いつも同じ場面「システムテスト」で同じ失敗「インタフェースミスマッチ」をし、それは同じ原因「仕様があいまい」でした。実に平和な時代、いえ、予定調和な悲喜劇の時代でした。
今、開発期間は短い
今は、開発期間は短くなっています。IPAのソフトウェア開発分析データ集2022では、開発期間の平均値でも中央値でも1年程度になっています。
この開発期間1年は長期プロジェクトの影響で長くなっていますが、現場の開発エンジニアの感覚では、もっと短く、少なくとも月単位の間隔です。
これはアジャイルソフトウェア開発が当たり前のように導入され、それがウォーターフォール型開発の現場でも流れ込んできて、ウォーターフォールでさえ、その影響を受けています。これが開発期間が短くなった理由のひとつです。
開発期間が短くなると、開発文化も異なってきます。「最初はじっくりことこと、最後にパッパと燃えあがる」という文化から、「常時戦場、いつでもどこでも戦えますか!でも忙中に閑あり」の文化になっています。
開発期間が短くなった理由
今の開発期間は月単位、極端な例では週単位や日単位になっています。これはアジャイルソフトウェア開発から、ノーコード開発やローコード開発、生成AI利用開発を始めとするソフトウェアパッケージ利用開発が増加し、プログラムを作らないソフトウェア開発が増えてきたからです。
さらに言えば、DevOpsの概念が流行り、開発と運用の一体化があります。1回の開発で終わるのではなく、運用と開発を繰り返して、段々とシステムを完成させていくというものです。これがますます、開発期間を短くしています。
それよりも何よりも、ユーザがソフトウェアシステムを把握し、一緒に開発する、さらに自らが必要な個所を俊敏に作るというユーザ主導、ユーザ内製化が開発期間を短くしています。
開発期間は短くて長い
開発期間は確かに短くなっていますが、開発は連続しています。これを考えれば、開発期間は長いのです。開発はシリーズになっていて、これを1個の開発とみる必要があります。
こう考えると開発期間は長いのです。より計画的に、よりシステマティックに開発を考えるべきです。でも昔のようにきっちり決めるのではなく、思想をしっかりと決めるのです。これがシリーズになった開発の肝です。
ということで今日の結論。「ソフトウェア開発は短くて長い」以上です。
マンガFAQの引用元:ソフトウェア開発分析データ集2022 | 社会・産業のデジタル変革 | IPA 独立行政法人 情報処理推進機構