Index: [Article Count Order] [Thread]

Date:  Sun, 2 Apr 2000 18:38:39 +0900
From:  Kaoru Hosokawa <khosokawa@....com>
Subject:  [XP-jp:00087] Chapter 3 Economics of Software Development 	の解説 V1.1
To:  extremeprogramming-jp@....jp (extremeprogramming-jp ML)
Message-Id:  <B50CE5B6.B8A%khosokawa@....com>
Posted:  Sun, 02 Apr 2000 18:37:38 +0900
X-Mail-Count: 00087

ホソカワです。

上手さん、はださん、コメントありがとうございました。optionsの意味がわかって
この章が理解しやすくなりました。勉強になりました。解説は、「選択」を「オプショ
ン」に変更したり、$7.87のところは、(計算が大変ということで)「options
theory calculatorを使用して」を付けたりしました。

----

[コメント:

この章は、「オプション」に関する予備知識があると理解しやすいとおもいますので、
ここで説明します。私の知識は、Fowler氏のAnalysis Pattern 10章で得たものです。

「例えば、ある日本企業が米国のベンダーにソフトウェアの外注を行ったとします。
納期は、3ヶ月後で、支払いは米ドルで行います。ドルを3ヶ月後に買う場合、円高
であれば、日本企業は儲かりますが、逆に円安になると損をします。日本企業にとっ
てベストな支払い方法は、3ヶ月後に円高であれば、3ヶ月後にドルを買い、円安で
あれば、事前に決定された為替レートでドルを買うことができることです。選択肢
(オプション)があることによって為替レートの変動のリスクを軽減してくれます。
この取り引きを「オプション取り引き」といいます。このオプションを買うための支
出がありますので、リスクが低いのであれば(為替が変動しないのであれば)、事前
にドルを買うべきです。つまり、リスクが高ければ高いほどオプション取り引きが有
効になります。」

オプションを念頭に置いて、この章の流れを書きます。ソフトウェア開発にはリスク
が伴います。このリスクを(オプション取り引きのように)オプションを取り入れて
軽減しましょう。4つのオプションが出てきますが、これらのオプションをいつでも、
また、プロジェクトの価値最大限に保って、行使できるようにプロジェクト管理戦略
を立てます。
]

Chapter 3 Economics of Software Development
===========================================

次の要因を考慮してソフトウェア開発プロジェクトの経済価値を最大にする戦略を立
てることができます。

・キャッシュフロー
・金利
・プロジェクトの失敗率

この戦略とは、

・「支出を抑えること」ですが、だれもみなほとんど同じツールとスキルで始めるの
で難しいです。
・「収入を増やすこと」ですが、すぐれたマーケティングとセールスの組織によって
可能になります。
・「支出を遅らせ、収入を早めること」です。支出に伴う金利を抑えて収入による金
利を増やします。
・「プロジェクトが生き残る確率を高めること」です。後で大きな支払いをもらう可
能性を高めます。

Options
-------

ソフトウェア開発の経済状態を違った方法で見る事ができます。それは、一連のオプ
ションとして見る事です。ソフトウエアプロジェクト管理には次の4つのオプション
(スタイル)があると考える事ができます。

・断念するオプション−プロジェクトをキャンセルしてもなにか得るものがあります。
得るものが大きければ大きい程いいです。

・変更するオプション−プロジェクトの方向性を変えることができます。プロジェク
トの半ばで顧客が要件を変更することができるのならば、プロジェクト管理の戦略は
より価値が高いものになります。頻繁にそしてより激しく要求を変えることができる
ほどいいです。

・延期するオプション−問題が自然に解決することを待つことができます。待つ期間
が長ければ長いほど無駄遣いをしないのでいいです。

・成長するオプション−マーケットが伸びそうであれば、すぐに成長して、それを利
用していくことができます。プロジェクトがより速くより長い期間成長できるほどい
いです。

これらのオプションの価値を計算する時に考慮する要因は次のとおりです。

・オプションを得るために必要な投資
・オプションを実行することによって得られる報酬(prize)の価値
・報酬の現在価値
・オプションの行使にかかる時間
・報酬の最終価値の不確実性

これらの要因のうち、オプションの価値は最後の要因「不確実性」にもっとも左右
(dominate)されます。このこと(オプションの価値は不確実性にもっとも左右され
ること)から具体的な予測をすることができます。仮に、オプションとして分析され
た、プロジェクトの価値を最大にするプロジェクト管理の戦略を作成したとしましょ
う。その戦略は以下を提供します。

・正確かつ頻繁な進捗状況のフィードバック
・劇的に要求の変更が行える多数の機会
・[以前に比べて]小さい初期投資
・より速く進む機会

不確実性が高ければ高いほどこの戦略の価値は増します。(これは、「いつXPを使う
べきか?」という質問の理論的な答えを提供しています。要求が曖昧または変化して
いる時、XPを使いましょう。)

Example
-------

あなたは楽しくプログラムを書いているとしましょう。あなたはある機能を$10で加
えることができることに気付きます。あなたはこの機能に対する収益は約$15と考え
ました。ですから、この機能追加の現在価値は$5です。

この新機能が本当に$15の価値があるかどうか、わからないと仮定しましょう。実は、
この価値は100%変動してもおかしくないと思っています。さらにこの機能を一年後に
追加しても$10かかると仮定しましょう。金利が5%としてoptions theory calculator
を使用して計算すると$7.87になります。

待つオプション($7.87)が現在機能を追加する($5)より価値があることになりま
す。不確実性の作用によって、ユーザーにとってもっと価値がある場合は、待ってい
ても今実装することとひけめはないのです。また、価値がまったくない場合は、実装
していないので手間が省けました。

-- 
Kaoru Hosokawa
khosokawa@....com