そもそも「value」とは?

  • ある状況で何が望ましく、何が望ましくないかの根拠
    • 端的に言えば、「重要なこと」
    • 直感・経験を元にした基準
  • チームが焦点を当てるべきな重要なこと
  • 日本語の価値とはちょっと意味が違う

XPの価値 5つ

コミュニケーション

  • 開発中に起きる問題のほとんどは、他の誰かが知っている
  • 問題が起きた場合は、それがコミュニケーションの欠如によって発生したのかを自問自答するべき

シンプルさ

  • 「動作させるために最もシンプルなことは何か?」
    • 不要な要件・今日の時点で組み込む必要のない要件を省く
  • 何がシンプルかは状況によって異なる
    • 2台のマシンにシステムを分割せざるを得ない場合は、複雑であってもそれがシンプルだと言える
  • コミュニケーションと互いにサポートし合う
    • コミュニケーションを改善すると、無駄な要件を減らすことができる
    • シンプルにすることを実現すれば必要なコミュニケーションは少なくて済む

フィードバック

  • 変更が多いシステム開発において「最初から完全」はありえない。フィードバックを使って目標に近づくようにする。
  • XPチームはなるべく多くのフィードバックを得ることを目指す。
  • フィードバックはシンプルさに貢献する
    • 3つの解決策のうちどれがシンプルか?全部試して確認する

勇気

  • ソフトウェア開発にまつわる恐怖に対処することで、効率的に作業ができる
  • 他の価値と合わせることで協力になる
    • 真実を伝える勇気によってコミュニケーションと信頼が深まる
    • 失敗を捨て去り、新しい解決策を探す勇気によってシンプルにすることが促進される
    • 解答を探す勇気によってフィードバックが得られる

尊重

  • これまでの4つの価値の背後にある(前提である)価値
  • チームメンバが互いに無関心な状態では、XPは機能しない。