http://martinfowler.com/bliki/Semat.html

SEMAT(Software Engineering Method and Theory: ソフトウェア工学の方法論と理論)は、Ivar Jacobson、Bertrand Meyer、Richard Soleyが始めた試みである1。 公表によるとその狙いは「確かな理論と証明された原則とベストプラクティスの上にソフトウェア工学を再構築」することだそうだ。 ソフトウェア業界で名のある方々と一緒に、私もこの試みへの参加を勧められた。 丁重にお断りしたが、その理由を説明する必要性があると感じている。

その活動の呼びかけ(Call for Action)は、私には少し漠然としているように思えた。 一時的なブームや流行を否定しているが、それ自体が流行を追った発言のようだった。 何が起きているのかをよく理解するため、私は『Doctor Dobb’s Journal』に掲載された最初の発表を詳しく調べてみた。 これを読んで、この構想の中心的な目的は、ソフトウェアのメタ方法論カーネル(meta-method-kernel)を作ることだと確信した。 メタ方法論カーネルとは、自分のプロジェクトの方法論に合わせて組み立てることのできるソフトウェア開発に共通したプロセス要素のことである。

このときから私は興味が無くなった。80年代から90年代にかけて、こうした考えにはかなりの時間を費やした。最終的には、厳格すぎて、価値が限られるものであると結論づけた。 なぜそう思うようになったかと言うと、Alistair Cockburnが、ソフトウェア開発では人が中心的な要素であり、人は本質的に非線形的で予測不能なものであると説明してくれたからだ。つまり、かのような試みは、最初から無理な話なのである。 人が扱いやすい計算式で記述できる予測可能なエージェントになれば可能性はあるかもしれない。だが、その時まで息を止めておくことはできない。

私の意見は、それ以来、ソフトウェアプロセスはメタ方法論カーネルが記述するものより多面的なものであるというものだ。 Alistairによる方法論の記述は現実的なやり方だと思う。

AlistairもSEMATに関わっていて、創立総会には出席したようだ。 しかし、彼はこれ以上の参加をやめにすると決めた。 これを聞いて、私も参加する興味を失った。

  1. 訳注:平鍋さんが翻訳をされている。http://blogs.itmedia.co.jp/hiranabe/2010/03/semat-dd8b.html