やまもと@ウルシステムズ です。
# On Wed, 12 Dec 2001 18:05:35 +0900
# <20011212180535t-kawasaki@....com> as
# [XP-jp:02878] 分散環境では XP 適用はできない?,
# t-kawasaki@....com wrote:
> 川崎@NECです。
>
> XPの実践経験はないのですが、分散環境ではXP適用はできないものなのでしょうか?
分散の度合いにもよると思います。
極端な話、海外のPG部隊を使ったりした場合、言葉の壁も加わってコミュ
ニケーションが取りづらいのは確かです。
> オンサイト顧客やペアプログラミングなどXPのキーとなるプラクティスでは、
> 同じところに集まって必要なときにコミュニケーションをとることでチームとしての
> パワーを発揮させていると思いますが、分散環境ではコミュニケーションの手段は
> メール(緊急時は電話)になり、オンサイト顧客の変わりにメーールによるコミュニケーション、
> ペアプログラミングの変わりに、MLを使用した関係者によるインスペクション(ピアレビュー)の
> 実施が考えられます。
私のいまのプロジェクトではXPのかなりの部分を適用しているのですが、
ビジネスコンサルに入っている弊社の人間を、開発チームから見た顧客
のプロキシとして扱っています。オンサイトでいる率は100%にはならな
いのですが、必要最低限のコミュニケーションは取れています。かなり
重要度の高い決定まで下せるので、プロキシとしての機能も充分です。
このくらいの分散環境(顧客<->開発チーム)では、XPを適用して効果を
あげている、という例証くらいになりますでしょうか。
ペアプロについて言えば、MLでのインスペクションも一定の効果はある
でしょう。しかし、メールベースのコミュニケーションではどうしても
スピードが出なくなりますので、ペアプロが乗ってきた場合のドライブ
感というのがなくなります。レビュー実施というのはペアプロの効用の
ごく一部ですので、個人的にはここは譲りたくないところです。
# 感覚的な物言いですみません。
> 分散環境として有名なのにバザールモデルのオープンソースの開発がありますが、
> コミュニケーションの手段はほとんどメールベースで作業を進めると理解していますが、
> これと比べてXPのメリット(品質、コスト、開発期間)はどうなのでしょうか?
両者について差異として考えられるのが、XP は顧客にとっての本来の
メリット(一定のコストで役に立つ実際のプログラムが手に入る可能性
が高い)を標榜している点です。そのためのリリース計画であり小さな
リリースであり顧客テストでありオンサイト顧客であるわけです。
不勉強にて私は聞いたことがないのですが、バザールモデルを、顧客の
存在する(開発者チームの外に仕様・要件についての最終決定権者がお
り、開発の対価が支払われる)実プロジェクトに適用した事例というの
はあるのでしょうか。これがないとすると、そもそもコストというのは
比べようがないわけで。
> バザールモデル(http://cruel.org/freeware/cathedral.html)のプラクティスとして
> 以下が書かれています。
> ・目玉の数が十分あればどんなバグも深刻でない
XP で対応するのは、コードの共同所有権とペアプロですね。
> ・ユーザを共同開発者として扱うのは、コードの高速改良と効率の良いデバッグの一番楽な方法
> ・ベータテスタをすごく大事な資源として扱えば、実際にそうなって報いてくれる
> ・良いアイデアを思い付く次善の策は、ユーザからの良いアイデアを認識すること(時にはこの順序は入れ替わる)
XP でいうと顧客テストでしょうか。それと、(コードレベルで)よいア
イデアを思いつくための策としてのペアプロ、というのがとても大きい
ですね。
> ・早めにリリース、頻繁にリリース、そして顧客の話を聞くこと
これは完全に一致しています。
# バザールの顧客って誰?
上の5点については、XP とバザールモデル、どちらの方が効果が高いか
についての調査はしていません(し測定できるのかどうか)。
> ・良いソフトはすべて開発者の個人的な悩みからはじまる
これは大いに政治的意図に基づく発言のように感じますが;-)、それで
行けば XP 的には
・よいソフトはすべて顧客の悩みをコスト相応に解決して終わる
とでもなりますか。あまり上手くはまりませんが。
それでは。
---
#### UL Systems, Inc. #
### Senior Consultant, Technology. ##
## YAMAMOTO, Keiji <keiji.yamamoto@....jp> ###
# Phone:03-6620-1420 Fax:03-6620-1402 ####