“D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎...
Transcript of “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎...
![Page 1: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/1.jpg)
クは駆動のク(株)永和システムマネジメント
角谷 信太郎[email protected]
オブジェクト倶楽部2006クリスマスイベント技術トラック2006-12-20(水)
“D is for Driven”~Developer TestingとBDD~
![Page 2: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/2.jpg)
「ーーぼくは心を相手に戦いを始めた。 からだが供給できないものを、心がほし がるからさ」
レイ・ブラッドベリ『ウは宇宙船のウ』
![Page 3: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/3.jpg)
自己紹介
![Page 4: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/4.jpg)
角谷 信太郎• (株)永和システムマネジメント
• テスト駆動開発者• 日本Rubyの会(理事)
• 最近停滞中• Quick-JUnit Plugin• 勝手に翻訳
• ときどき執筆
![Page 5: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/5.jpg)
宣伝
![Page 6: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/6.jpg)
2つ
![Page 7: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/7.jpg)
(1)
![Page 8: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/8.jpg)
『月刊JavaWorld』の次号(休刊号)
![Page 9: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/9.jpg)
(2)
![Page 10: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/10.jpg)
デブサミ2007
![Page 11: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/11.jpg)
デブサミ2007
•時: 2007-02-14(水),15(木)
•於: 目黒雅叙園(東京・目黒)
•主催: 翔泳社• http://seshop.com/event/dev/2007/
![Page 12: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/12.jpg)
実践『From Java To Ruby』~血があつい鉄道ならば/走りぬけてゆく汽車はいつかは心臓を通るだろう~
![Page 13: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/13.jpg)
謝辞
•t-wadaさん•私のTDDコーチ
•懸田 剛さん •私にBDDを教えてくれました
![Page 14: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/14.jpg)
謝辞(順不同)水越さん、伊藤コウイチさん、 id:secondlifeさん、平鍋さん、 諸橋さん、須藤さん、天野さん、Yuguiさん、宮川さん
![Page 15: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/15.jpg)
よろしくお願いします
![Page 16: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/16.jpg)
Developer TestingとBDDについて
![Page 17: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/17.jpg)
DeveloperTesting
![Page 18: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/18.jpg)
•Developer Tests•開発者が行う、開発促進のためのテスト
•QA Tests•Customer Tests•顧客視点からのシステム機能のテスト
Developer Testing
![Page 19: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/19.jpg)
•Developer Tests•開発者が行う、開発促進のためのテスト
•QA Tests•Customer Tests•顧客視点からのシステム機能のテスト
Developer Testing
![Page 20: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/20.jpg)
BDD
![Page 21: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/21.jpg)
振舞駆動開発Behaviour Driven Development
ビヘイビア
![Page 22: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/22.jpg)
“BDD is the natural evolution of TDD.”
BDDはTDDの正常進化である
http://groups.yahoo.com/group/extremeprogramming/message/113518
ーーSteven R.Baker
![Page 23: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/23.jpg)
TDD
![Page 24: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/24.jpg)
テスト駆動開発Test Driven Development
![Page 25: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/25.jpg)
TDD by Example
![Page 26: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/26.jpg)
テスト駆動開発入門
![Page 27: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/27.jpg)
偉大な書籍は偉大な1行から
はじまる
![Page 28: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/28.jpg)
Clean code that works, in Ron Jeffries’ pithy phrase, is the goal of Test-Driven
Development(TDD).
「動作するきれいなコード」、
このRon Jefferiesの簡潔な言葉こそが
TDDのゴールである。
![Page 29: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/29.jpg)
動作するきれいなコード“Clean code that works”
![Page 30: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/30.jpg)
© The Seasar Foundation and the others 2006. all rights reserved.15
Seasar ConferenceSeasar Conference
2006 Autumn2006 Autumn
!"#$(#%&')!()*
+*
,-*
Refactor
Green
Red
動作するきれいなコードとR-G-R
![Page 31: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/31.jpg)
“The translation of a feeling into a test is a
common theme of TDD.”
感情をテストにすることが、TDDに共通するテーマである。
![Page 32: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/32.jpg)
•不安: 自分は仕事は正しいか?
•自信: 自分の仕事は正しい!
•勇気: 不安を克服する意志
•信頼: 自分が仲間を、仲間が自分を
•退屈: このテストは必要か?
感情
![Page 33: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/33.jpg)
駆動
![Page 34: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/34.jpg)
駆動•「動作するきれいなコード」への意志
•「設計」とフィードバックとのギャップ認識/ギャップ制御
•感情
![Page 35: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/35.jpg)
『WEB+DB PRESS』 vol.35
![Page 36: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/36.jpg)
t-wadaさんによるTDDの
思想・技術・実践
![Page 37: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/37.jpg)
心技体
![Page 38: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/38.jpg)
t-wada says...•プログラマのための設計技法
•R-G-Rのリズムを体得せよ
•心理マネジメント手法
•無駄なく健康なコード
•テストコードの資産価値
![Page 39: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/39.jpg)
© The Seasar Foundation and the others 2006. all rights reserved.15
Seasar ConferenceSeasar Conference
2006 Autumn2006 Autumn
!"#$(#%&')!()*
+*
,-*
Refactor
Green
Red
Red-Green-Refactor
![Page 40: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/40.jpg)
Kent Beckも言ってる:•プログラマのための設計技法
•R-G-Rのリズムを体得せよ
•心理マネジメント手法
•無駄なく健康なコード
•テストコードの資産価値
![Page 41: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/41.jpg)
t-wadaが言ってたよ:•プログラマのための設計技法
•R-G-Rのリズムを体得せよ
•心理マネジメント手法
•無駄なく健康なコード
•テストコードの資産価値
![Page 42: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/42.jpg)
Kent BeckとBDD
![Page 43: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/43.jpg)
> So, stop thinking of TDD and> BDD as conflicting ideals.> BDD is the natural evolution of> TDD.
What evolved?ーーKent Beck
http://tech.groups.yahoo.com/group/extremeprogramming/message/113575
何が進化したって?
![Page 44: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/44.jpg)
アジェンダ•TDDからBDDへの”進化”によって:
•何が変わるのか?
•変わらないものはあるのか?
•変わらないものがあるならばそれは何なのか?
![Page 45: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/45.jpg)
まとめ
![Page 46: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/46.jpg)
BDDとは:•顧客と同じ語彙を使って記述したシステムの振る舞いからのフィードバックと、
•開発者の感情によって、
•駆動される開発
![Page 47: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/47.jpg)
まとめ• BDDはTDDのマインドセットをより明確にする
• BDDはマインドセットを明確にする語彙とツールを提供する
• BDDもTDDも、具体的なフィードバックと開発者の感情が開発を駆動する
![Page 48: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/48.jpg)
もくじ•BDDへの道
•BDDで変わるもの
•BDDで変わらないもの
•RSpecでBDDのデモ
![Page 49: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/49.jpg)
BDDへの道
![Page 50: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/50.jpg)
稲垣足穂
![Page 51: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/51.jpg)
詩は歴史に対して
垂直に立つ
![Page 52: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/52.jpg)
•人は、•BDDerとして「在る」のではない
•BDDerに「成る」のだ
•どうやって「成る」のか?
実存としてのBDDer
![Page 53: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/53.jpg)
比喩
![Page 54: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/54.jpg)
個体発生は系統発生を繰り返す
![Page 55: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/55.jpg)
反復説
![Page 56: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/56.jpg)
ある動物の発生の過程は、その動物の進化の過程を反復する。
![Page 57: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/57.jpg)
![Page 58: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/58.jpg)
2006: a testing odyssey
![Page 59: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/59.jpg)
テスティングの夜明けThe Dawn of The Testing
![Page 60: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/60.jpg)
1971
![Page 61: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/61.jpg)
プログラミングの心理学
ジェラルド・M・ワインバーグ(初版は1971年)
![Page 62: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/62.jpg)
(プログラマがテストしなくなる)この過ちから身を守るための一つの方法は、テスト問題をテストをはじめる前に、いやそれどころかもし可能ならばコーディング前に作っておく、というものである。
![Page 63: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/63.jpg)
1992
![Page 64: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/64.jpg)
ソフトウェア設計とは何か?What is Software Design?
By Jack W. Reeves
![Page 65: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/65.jpg)
村上 雅章さんによる翻訳
http://www.biwa.ne.jp/~mmura/SoftwareDevelopment/WhatIsSoftwareDesignJ.html
![Page 66: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/66.jpg)
•設計: ソースコード
•製造: ビルド
ソフトウェア設計とは何か?
![Page 67: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/67.jpg)
コーディングは設計であり、テスティングとデバッギングも設計の一部であり、私たちが一般的にソフトウェア設計と呼んでいるものもやはり設計の一部なのです。
![Page 68: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/68.jpg)
ソフトウェア設計はコーディングが完了し、「かつ」テストされるまでは完璧にならないのです。そして。テスティングは設計の検証と洗練を行うプロセスにおける礎となるものです。
![Page 69: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/69.jpg)
太初にテストファーストありきIn the beginning was the test-first
![Page 70: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/70.jpg)
1998
![Page 71: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/71.jpg)
JUnit1.0
![Page 72: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/72.jpg)
テスト熱中症“Test Infected: Programmers Love
Writing Tests”
プログラマは、テストを書くのが好きになる
By Eric Gamma
![Page 73: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/73.jpg)
小野 剛さんの翻訳
http://www.objectclub.jp/community/XP-jp/xp_relate/testinfected-j
![Page 74: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/74.jpg)
システムはこう動くはずだ、という考えが頭に浮かんだとしても、実装について考えるのは後回しにしよう。まずはテストを書くのだ。そしてテストを実行するのだ。
![Page 75: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/75.jpg)
1999
![Page 76: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/76.jpg)
XP:explained
![Page 77: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/77.jpg)
テストファーストという単語自体は
出てこない (意外)
![Page 78: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/78.jpg)
XPのテストは...プログラムを動作させることが好きな人の仕事である。...テストはあくまでも道具であって、本来重要なものはシステムの振る舞いである。
![Page 79: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/79.jpg)
2000
![Page 80: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/80.jpg)
XP:installed
![Page 81: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/81.jpg)
テストファーストという単語が
広まるきっかけ?
![Page 82: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/82.jpg)
テストファーストの効果
•テスト可能な設計
•コード利用者の視点
•インターフェイス中心の設計
『WEB+DB PRESS Vol.35』のt-wada記事から要旨抜粋
![Page 83: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/83.jpg)
どうみても設計です
![Page 84: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/84.jpg)
コーディングは設計であり、テスティングとデバッギングも設計の一部であり、私たちが一般的にソフトウェア設計と呼んでいるものもやはり設計の一部なのです。
![Page 85: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/85.jpg)
2002
![Page 86: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/86.jpg)
テスト駆動開発Test Driven Development
![Page 87: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/87.jpg)
TDD by Example
![Page 88: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/88.jpg)
t-wada says...•プログラマのための設計技法
•R-G-Rのリズムを体得せよ
•心理マネジメント手法
•無駄なく健康なコード
•テストコードの資産価値
![Page 89: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/89.jpg)
2003
![Page 90: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/90.jpg)
振舞駆動開発Behaviour Driven Development
ビヘイビア
![Page 91: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/91.jpg)
BDDの誕生•Dan NorthがJBehaveプロジェクトを開始
![Page 92: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/92.jpg)
2004
![Page 93: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/93.jpg)
•ADC2004にて、平鍋さんがJBehaveに遭遇•Agile Development Conference 2004
•廊下でデモしていたらしい• http://blogs.itmedia.co.jp/hiranabe/2005/10/
tdd__bdd__731d.html
日本への輸入
![Page 94: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/94.jpg)
2005
![Page 95: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/95.jpg)
“A New Look at Test Driven Development”
テスト駆動開発についての新しい考えかた
By Dave Astels
![Page 96: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/96.jpg)
懸田 剛さんによる翻訳
http://giantech.jp/wiki/BDDIntro
![Page 97: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/97.jpg)
•TDDで定義しているのは、テストというより振る舞いでは?
•xUnitはテストの語彙と、プログラミング言語の構造に囚われすぎでは?
•新しい考え方には新しいツール
BDDが認知される契機に
![Page 98: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/98.jpg)
新しいツール
![Page 99: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/99.jpg)
RSpec
![Page 100: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/100.jpg)
Frameworkfor Behaviour
DrivenDelopmentin Ruby
![Page 101: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/101.jpg)
初期のRSpec
![Page 102: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/102.jpg)
class EmptyMovieList < Spec::Context def setup @list = MovieList.new end
def should_have_size_of_0 @list.size.should_equal 0 end
def should_not_include_star_wars @list.should_not_include "Star Wars" endend
class OneMovieList < Spec::Context def setup ... def should_have_size_of_1 ...end
![Page 103: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/103.jpg)
2006
![Page 104: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/104.jpg)
•RSpec on Rails => 利用者増加
• Introducing Behaviour-Driven Developmenthttp://www.dannorth.net/introducing-bdd (by Dan North)
•“Given, When, Then”の提唱
•他言語によるBDD実装
•本邦Ruby界(の一部)でもブレイク寸前?
2006
![Page 105: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/105.jpg)
RSpec on Rails
割愛
![Page 106: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/106.jpg)
“Given, When, Then”
割愛
![Page 107: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/107.jpg)
•.NET: NSpec, NSpecify•Java: JBehave, (rMock)
•(Ruby: RBehave)
他言語によるBDD実装
C#が健闘中!
![Page 108: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/108.jpg)
•池上さん• KOF2006、Ruby@関西
•諸橋さん•Rails勉強会(東京)
本邦Ruby界(の一部)でもブレイク寸前?
![Page 109: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/109.jpg)
いまここ
![Page 110: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/110.jpg)
•ソースコードとテストは設計
•xUnit, test-first•TDD•BDD, RSpec
2006: a testing odyssey
![Page 111: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/111.jpg)
BDDで変わるもの/変わらないもの
![Page 112: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/112.jpg)
振舞駆動開発Behaviour Driven Development
ビヘイビア
![Page 113: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/113.jpg)
•an evolution•in the thinking behind:•Test Driven Development
•Acceptance Test Driven Planning
BDD is...
http://behaviour-driven.org/
![Page 114: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/114.jpg)
•進化した(evolution)
•考え方(thinking):•テスト駆動開発
•受入テスト駆動プランニング
BDD は...
http://behaviour-driven.org/
![Page 115: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/115.jpg)
BDDのゴール•Developer Testingと、Customer Testingの統合
•システムの振る舞いを定義する
•“Getting the Words Right”•「正しい言葉を選ぶ」 => 顧客と同じ語彙で設計する
![Page 116: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/116.jpg)
BDDはゴールに向けて•マインドセットを変える
•語彙を変える
•ツールを変える
![Page 117: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/117.jpg)
BDDで変わるもの
![Page 118: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/118.jpg)
BDDで変わるもの1. マインドセット2. 語彙3. ツール
![Page 119: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/119.jpg)
(1)
![Page 120: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/120.jpg)
マインドセットを変える
![Page 121: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/121.jpg)
マインドセット
•TDDっていうけど、
•開発を駆動してるこれって、
•テストではなく、
•システムの振る舞いでは?
![Page 122: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/122.jpg)
マインドセット
•「テスト」と呼ぶのは混乱の元
•「振る舞い」は「振る舞い」だ
•開発を駆動するのは振る舞いだ
![Page 123: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/123.jpg)
振舞駆動開発Behaviour Driven Development
ビヘイビア
![Page 124: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/124.jpg)
(私見)
![Page 125: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/125.jpg)
振舞
![Page 126: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/126.jpg)
ふるまい
![Page 127: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/127.jpg)
ビヘイビア
![Page 128: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/128.jpg)
発音しづらい
![Page 129: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/129.jpg)
振舞はテストではない?
![Page 130: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/130.jpg)
Test (by Kent Beck)【動詞】評価する
【名詞】受入または拒否を 導く手続き
『テスト駆動開発入門』第25章
![Page 131: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/131.jpg)
どうみてもテストです
![Page 132: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/132.jpg)
テストは発音しやすい
![Page 133: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/133.jpg)
(2)
![Page 134: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/134.jpg)
語彙を変える
![Page 135: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/135.jpg)
サピア=ウォーフ仮説Sapir–Whorf hypothesis
![Page 136: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/136.jpg)
言語は我々の思考を形成し、思考できる内容を決定する。
ベンジャミン・ウォーフ
![Page 137: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/137.jpg)
•TestCase•テストケース。クラス。
•Test Method•テストメソッド。メソッド。
•assert•アサート。結果の確認。
語彙:TDD
![Page 138: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/138.jpg)
テストに偏りすぎ
![Page 139: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/139.jpg)
•Context•コンテキスト。No TestCase!
•specify•「仕様」の定義。No test_method!
•expectation•システムに期待する振る舞い。No assert!
語彙:BDD
![Page 140: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/140.jpg)
(私見)
![Page 141: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/141.jpg)
スペシファイ
![Page 142: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/142.jpg)
エクスペクテーション
![Page 143: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/143.jpg)
やっぱり発音
しづらい
![Page 144: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/144.jpg)
•Unit Test•「単位」って? クラス? メソッド?
•“small-scale tests” -- Kent Beck
•製品コードと対応するの? しないの?
語彙:TDD
![Page 145: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/145.jpg)
プログラミング言語の構造に偏りすぎ
![Page 146: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/146.jpg)
•spec file•振る舞いの論理的なまとまり•RSpecではファイル
•1ファイルにつき、nコンテキスト
語彙:BDD
![Page 147: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/147.jpg)
context "1+1の足し算" do setup do @sum = 1 + 1 end specify "合計値は2であること" do @sum.should_eql 2 end
end
context "引き算" do specify "2-0は0であること" do (2 - 0).should_eql 0 endend
calc_spec.rb:
expectation
![Page 148: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/148.jpg)
(3)
![Page 149: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/149.jpg)
ツールを変える
![Page 150: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/150.jpg)
RSpec
![Page 151: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/151.jpg)
Frameworkfor Behaviour
DrivenDelopmentin Ruby
![Page 152: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/152.jpg)
rspec.rubyforge.org
![Page 153: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/153.jpg)
絶賛開発中
![Page 154: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/154.jpg)
APIや内部設計の変更が激しい
![Page 155: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/155.jpg)
紹介するけど使わなくてもいい
![Page 156: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/156.jpg)
私とRSpec
![Page 157: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/157.jpg)
私とRSpec
![Page 158: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/158.jpg)
私とRSpec
![Page 159: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/159.jpg)
•BDD実践のためのツール
•Rubyによる言語内DSL•Domain Specific Language
•ドメイン特化言語
•統合テスティング環境
RSpec
![Page 160: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/160.jpg)
BDD実践のためのツール•システムの特定の部分が、
•ある文脈(context)において
•期待(expectation)される
•振る舞い(behaviour)を
•仕様化(specify)する
![Page 161: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/161.jpg)
Rubyによる言語内DSL•BDDの語彙を活用•context, specify, expectation•プログラミング言語の構造に囚われすぎない•1ファイル: nコンテキスト•no TestCase, no test_method
•Testing DSL (角谷ローカル)
![Page 162: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/162.jpg)
統合テスティング環境•Green Bar (specコマンド)
•人に優しい出力(Testdox-like repots)
•built-in mocking/stubbing
•Rakeタスク (自動化)
•RCov (C0 カバレッジ)
•diff出力
•RSpec on Rails (流行は大事だ!)
![Page 163: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/163.jpg)
context “5ドルの場合” do setup do @five_dollar = Money.doller(5) end
specify “2を掛けると10ドルであること” do (@five_doller * 2).should_eql Money.doller(10) end
specify “5とは等価ではないこと” do @five_doller.should_not_eql 5 end
...end
...
![Page 164: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/164.jpg)
意識の変容
![Page 165: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/165.jpg)
さらに興味深いのは、<ヘプタポッドB>はわたしのものの考えかたを変えていくという事実だった。
テッド・チャン『あなたの人生の物語』
![Page 166: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/166.jpg)
ノイズが少ない
![Page 167: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/167.jpg)
設計に集中できる
![Page 168: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/168.jpg)
そのまんま書ける喜び
![Page 169: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/169.jpg)
GreenBar原理主義:Fake Itの多用
![Page 170: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/170.jpg)
BDDで変わらないもの
![Page 171: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/171.jpg)
駆動
![Page 172: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/172.jpg)
•設計による決定と、動作するコードからの具体的なフィードバック
•開発者の感情•不安だ。何かがおかしい。これでいい。
駆動
![Page 173: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/173.jpg)
まとめ
![Page 174: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/174.jpg)
BDDとは:•顧客と同じ語彙を使って記述したシステムの振る舞いからのフィードバックと、
•開発者の感情によって、
•駆動される開発
![Page 175: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/175.jpg)
母語をASCIIで表現できる人達は良いですね
![Page 176: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/176.jpg)
日本語が母語の我々は
どうしよう?
![Page 177: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/177.jpg)
まとめ• BDDはTDDのマインドセットをより明確にする
• BDDはマインドセットを明確にする語彙とツールを提供する
• BDDもTDDも、具体的なフィードバックと開発者の感情が開発を駆動する
• 母語をASCIIで表現できる人は良いですね
![Page 178: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/178.jpg)
「でも、コードはそうするように言っているみたいですよ。やってみましょう。」『ケント・ベックのSmalltalkベストプラクティス・パターン』
![Page 179: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/179.jpg)
ご清聴ありがとうございました
![Page 180: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/180.jpg)
Happy Testing!
![Page 181: “D is for Driven”クは駆動のク (株)永和システムマネジメント 角谷 信太郎 s-kakutani@esm.co.jp オブジェクト倶楽部 2006クリスマスイベント](https://reader034.fdocuments.in/reader034/viewer/2022042222/5ec9421d5c884a16055fd98b/html5/thumbnails/181.jpg)
何かご質問は?Do you have any questions?