ソフトウェア開発が難しい - 8/27/2024
ソフトウェアプロジェクトはいつまで経っても難しい。
いつになったら上手くなるのだろうと思い始めてはや7, 8年だが、一向にうまくならない。
ひとまずわかっていることは、ソフトウェアプロジェクトは普通にやると失敗するということだけだ。
普通にやってはいけない。それなりの心血を注ぎ、本気になってやるとやっと当初の予定よりちょっとだけの遅延で終えることができる。
とはいえさすがに同じことを何年もやっているのでコツはいくつかある。
まず、プロジェクトを始める前に勝負はだいたい決まっているということだ。
プロジェクトはてきとうに始めると100%失敗する。てきとうに始めてはいけない。
始めるために揃えるべき条件はなんなのかというのを言語化するのは結構難しい。
人員配置、リソース配分(PJ外の工数をなるべく減らす)
ステークホルダーの確定
プロジェクトスコープの認識合わせ
etc…
こんなところが思い浮かぶ。
要するにメンバーが(プロジェクトの成否以外の不確実性を除き)なんの憂いもなくプロジェクトに専念できる状態。これがプロジェクトを始めて良いときではなかろうかと思う。
社内プロジェクトでさえ、これらのことが確定していない状態で始めるプロジェクトは失敗する。
遅延したり、終わっても運用が回らないものができたりする。
だから、ソフトウェアプロジェクトの難しさは内製とか外注とか、事業会社とかSIerとかそういうところに本質はないのではないかと今は思っている。
ソフトウェア開発が難しいなんて話は1970年とか、下手するともっと前からしていると思う。つまりはいうても50年くらいの歴史がある。
しかし、2020年代になっても見積りが正確にできていないだとかなんだとか言っている(僕も言っている)。
人類は愚かだなぁと思う。本当に、何度も思っている。