original: 2001年刊行予定の Squeak Book ドラフト、 Embracing Change with Squeak: Extreme Programming (XP) by John Sarkela, David Caster, and Paul McDonough of the 4th Estate Squeakで変化を抱擁せよ:究極プログラミング(XP) 概要 #顧客の変更要求を容認せよ:顧客第一主義ということです。 <序> <XPの概要> <XPの実践> 略 XPの入門的な解説です。わかり易いです。 以下、面白そうなところだけ紹介します。 <XPをSqueakプロジェクトで使う> XPはSmalltalkでオブジェクト指向開発を行った多くの個人の経験から育ったも のなので、SqueakでXPを使うのは自然な成り行きだ。Squeakベースのプロジェク トでXPを適用するスケッチを示す。 ・スケール 規模に応じてXP手法を簡略化して使う。 一人で仕事をしているなら、ペアプログラマを探そう。ペアプログラマのスキル を得る事は良いことで、その人があなたのやっていることをより良くするサジェ スチョンをくれるだろう。 ・テストと統合 テストと頻繁な統合は小さなプロジェクトでも飛ばしては駄目。小さなプロジ ェクトでこそ、テストを書くことから始めないと。設計を肉付けしている時にテ ストを書きなさい。テストされる振る舞いを実装し、全てのテストが通るように しなさい。既存コードの追加も同じ。 ・継続統合 構築マシンにはディレクトリを2つつくる。一つはrawイメージで、定期的なフル システムのビルド用。2番目は現行の開発ベースイメージ。 #Smalltalkの統合開発環境では、”イメージ”に全てのソース、バイナリ、変更 履歴が吸収されています。 コード開発の最初にプログラマは、現行の開発ベースイメージを、構築マシンか ら自分の開発マシンにコピーする。単体セットが全部通ったらチェンジセットを file out してシステム構築担当に渡す。 #チェンジセットは差分ファイルで、それを出力するのがfile out、読み込むの が file in です。 このチェンジセットは現行の開発ベースイメージに file in され、プロジェクト の全単体テストが走る。全テストをパスすればイメージをセーブし、新開発ベー スにする。チェンジセットは、リリースコードのチェンジのサブディレクトリに いれ、ビルドファイルのリストの最後に追加する。 もしテストが100%通らなければ、イメージはセーブされず、責任のあるチー ムが100%通るように問題を解決する。 ・フルシステム構築 各イテレーションの終了時にシステムのフル構築を行う。rawイメージに保管して あるチェンジセットをビルドファイルのリストの順番で file in し、全テストを 走らす。全てのテストがパスするまで、次のイテレーションはスタートしない。 ・前に開発したコードの再利用 略 ・UI機能のテスト Squeakのようなメディアリッチな環境では、自動テストはなかなか適用しにくい。 100%UIのテストは出来ないが、20-80%ルールを使って、効果的にテストしよう。 EventRecoderMorphを使うと包括的なテストができる。UI操作をplay backできる。 #画面操作を記録して、後で自動実行するような機能でしょうか? (以上)