IT統制と開発手法

私の今いる開発プロジェクトやその周辺のプロジェクトは大概ウォーターフォール・モデルによる開発だ。
ウォーターフォールは間違っている開発手法だとよく言われるけれども、そんなことはお構いなしである。


最近、内部統制、IT統制といったスローガンが多く聞かれるようになり、実際システム監査を受けるようになった。ここでもウォーターフォール的な「計画を立てて実行する」という考え方が幅を利かせているように最近感じる。


結果、どの開発手法を採用するか判断する側もその影響を受けてしまって、ウォーターフォールが「正しい」ということになり、ソフトウェア開発に適切な開発手法が不採用という結果になってしまっている。


アジャイルなどの反復型開発手法の成果を、内部統制、IT統制といった観点からも評価してもらえるようにするには、どういった理論武装が必要なんだろうか。


まず第一に、ウォーターフォール・モデルがとても理屈にあっているようにみえるからではないだろうか。しかし、最初に述べたように「計画を立てて実行する」という手法は、一見正しいように見えるが間違いであり、実際には実行しながら詳細を決めたり、計画を具体化していく手法の方が正しい。「間違った方法はいつも、より理屈にあっているように見えるものである」ことに注意しなければいけない