Index: [Article Count Order] [Thread]

Date:  Sat, 18 Mar 2000 16:55:04 +0900
From:  Kaoru Hosokawa <khosokawa@....com>
Subject:  [XP-jp:00050] XP Chapter 2 A Development Episode 	の解説
To:  extremeprogramming-jp@....jp (extremeprogramming-jp ML)
Message-Id:  <B4F96501.8AA%khosokawa@....com>
Posted:  Sat, 18 Mar 2000 16:54:53 +0900
X-Mail-Count: 00050

ホソカワです。

Chapter 2 A Development Episode
==============================

この章では、開発エピソードを紹介します。「プログラマーがタスクを実装して、シ
ステムに統合する。」と言う話です。

積み重ねたタスクカードの一番上のカードには、「今四半期源泉課税を公開する。
(Export Quarter-to-date Withholding.)」と書いてある。[Export Quarter ... 
の訳には全然自信がありません。]君が今朝の立ち会議(stand-up meeting)で、今
四半期計算を終えている事を思い出した。君に助けを求めると「いいよ。」と言う。
これで、二人は、ペアプログラミングパートナーになった。

私達は、君が昨日行った作業について復習した。君が「このタスクのテストケースは
どんなの?」と聞いたので、「公開ステーションを実行すると公開レコードの値と入
れ物(bins)の中の値が合わなくてはならない。」と答えた。どのフィールドの値を
埋めなくてはならないのかわからず、Eddieに聞くことにした。Eddieは、5つのフィー
ルドについて教えてくれた。

私達は、現在のテストケースから使えそうなものを見つけ、スーパークラスを作成し、
refactoringを行い、現在のテストケースを流した。全てテストは通った。さらに、
今作ったスーパークラスが他のテストケースでも使えることに注目し、タスクの結果
を見たかったので、to-do カードに「AbstractExportTestを改良」とメモを残した。

テストケースは、スーパークラスのおかげで、簡単に作ることができた。テストケー
スを作っている最中にタスクの実装アイディアが浮かんだのでto-do カードに書き込
んだ。テストケースを流したが、タスクの実装をまだしていないので、もちろん通ら
ない。[ここで、Ralphと書いたテストケースの話題になりますが、何を言いたいのか
よくわかりませんでした。(次の文章に繋がらなかった。)]

デバッガを立ち上げ、関係するオブジェクトを解析し、コーティングをする。コーディ
ング中、さらにテストケースが浮かび上がったのでto-do カードに追加した。実装後、
テストが通るようになった。次々とテストケースをこなしていった。その後、to-do
カードには、「その他のテストケースの改良」しか残っていなかったので、改良を行
い、テストが通ることを確認した。

インテグレーション用マシンが空いていたので私達の変更を加えてテストを行ったが、
テストは通らなかったがテストをデバッグし、コードを修正した。今度はテストが通
り、私達のコードをリリースした。

XPの開発サイクルで注目すべき点は、

・二人組でプログラムを書く(pair prgramming)
・テスト主導で開発する。テストを書いてからコードを書く。テストが通り、これ以
上テストを考え付かない時、完了する。
・テストを通すことだけが目的ではなく、システムの設計も進化させていく。
・インテグレーションとインテグレーションテストはコーディング完了後、ただちに
行う。

[コメント:
to-doカードが頻繁に使われていますね。私は、ポストイットですけど。(ゴミコメ
ントです。)
]

---

タイトル (ページ数)担当者

Foreword (2) パス!

Preface (8) ホソカワ

Section 1   The Problem
    Chapter 1   Risk: The Basic Problem (4) ホソカワ
    Chapter 2   A Development Episode (4) ホソカワ
    Chapter 3   Economics of Software Development (4) ホソカワ
    Chapter 4   Four Variables (6)
    Chapter 5   Cost of Change (6)
    Chapter 6   Learning to Drive (2)   矢崎 ← New!
    Chapter 7   Four Values (8) 矢崎 ← New!
    Chapter 8   Basic Principles (6)    矢崎 ← New!
    Chapter 9   Back to Basics (8)  矢崎

Section 2   The Solution
    Chapter 10  Quick Overview (10)
    Chapter 11  How Could This Work? (8)
    Chapter 12  Management Strategy (6)
    Chapter 13  Facilities Strategy (4)
    Chapter 14  Splitting Business and Technical Responsibility (4)
    Chapter 15  Planning Game (12)
    Chapter 16  Development Strategy (6)
    Chapter 17  Design Strategy (12)
    Chapter 18  Testing Strategy (6)

Section 3   Implementing XP
    Chapter 19  Adopting XP (2)
    Chapter 20  Retrofitting XP (6)
    Chapter 21  Lifecycle of an Ideal XP Project (8)
    Chapter 22  Roles for People (10)
    Chapter 23  20-80 Rule (2)
    Chapter 24  What Makes XP Hard (4)
    Chapter 25  When You Shouldn't Try XP (4)
    Chapter 26  XP at Work (6)
    Chapter 27  Conclusion (2)

-- 
Kaoru Hosokawa
khosokawa@....com