N2 ToolBox(跡地)

跡地です。引っ越しました。http://d.hatena.ne.jp/nosen

アジャイル仮想論争:スキルの問題

2005-01-18 02:46:32 | 開発手法/方法論
去年は仕事の関係もあって結構アジャイル開発方法論に関して
いろいろと勉強して来た訳ですが、今年はさらに踏み込んで
実際にアジャイルなやりかたでソフトウェア・プロジェクトを
まわしていくチャンスを探って行きたいと思っています。

そこで避けられないのが、ウォーターフォール型の開発プロセス
しか知らず、それが最高だ、と思っている人々との戦いです。

そこで、このBlogでも向こう2,3回は、来るべき戦いに備えた、
いわばスパーリングとして、アジャイル開発方法論に
関連する論争のうち、代表的と思われるトピックに関して
僕なりに仮想的な議論を展開して行きたいと思っています。

最初のトピックとして、アジャイル開発におけるスキルの問題
を取り上げてみたいと思います。

アジャイル開発に批判的な人達がよく口にすることに

「アジャイル開発を行うには高いスキルの開発者を
そろえなければならない。しかし、そもそもスキル
の高い開発者をそろえればどのようなやり方をしよう
ともプロジェクトを成功させることはできる。」

というものがあります。
このような人達は

「開発プロセスというものは誰でも、手順通りに開発を進めれば、
誰でも70点の成果を上げられることを目指すものだ」

という間違った考えを前提に発言していると思われます。

手順が確立してさえいれば、だれでも同じようなことができる
というのが誤りであることは少し考えてみればわかることです。

飛行機に乗ったとしましょう。機内アナウンスで、

「当機の機長は、飛行機を操縦するのは今回が始めてですが、
完璧なマニュアルを携行しておりますので、問題ありません」

と言われたら、どういう気分がするでしょうか?

病院で手術をうけるとしましょう。事前の説明で、

「執刀医は始めて使う機材を使用しますが、完璧なマニュアルを
携行するので、ご安心ください」

と言われたら、どういう気分がするでしょうか?

飛行機の操縦や手術ほど人命に直結しないにせよ、
教育と訓練が重要である点はソフトウェア開発とて同じです。

厳密に定義された開発プロセスを実行するには、そのための
教育と訓練が必要なのです。

だから、ことさらにアジャイル開発の方が高いスキルが必要だと
は言えないと思います。

ただし、厳密なプロセスとは求められるスキルが異なる、
ということは言えると思います。
アジャイル開発では、経験から学習し、変化する状況に適応する
能力がより重視されるからです。

冒頭のような発言をしてしまう人は、アジャイルの考え方を理解して
いないだけでなく、厳密な開発プロセスについても本質的には
良くわかっていないと思われます。

そのような人がプロジェクトマネージャをつとめ、
教育と訓練がないがしろにされた状態で、
重量級の開発プロセスを採用したばあい、結末は悲惨です。

特をするのはただ一人、プロジェクトマネージャ
です。プロジェクトマネージャは自分でものを考えなくてよいので、
とても楽です。
お客様は当然まともな品質のソフトウェアは納品されない
ので、涙をのんで妥協せざるをえません。
開発者は膨大な文書に翻弄されながら、
なにが目的かわからない単調な作業を
延々と繰り返すはめになります。

最新の画像もっと見る

1 コメント

コメント日が  古い順  |   新しい順
Unknown (Saisse)
2005-01-18 17:45:03
アジャイル開発を一番阻害しているのは、契約だと思うのですが...要望を取り入れる代わりにお金をもらえる体制を作っておかないと、アジャイルが目指している理想にはたどり着けないです。
返信する