SlideShare a Scribd company logo
1 of 47
Download to read offline
!テスト自動化やTDDを 
チヌムに広めおいく 
コツをお䌝えしたす 
Copyright (c) 2014 Eiwa System Management, Inc. 
1 
株匏䌚瀟氞和システムマネゞメント 
2014幎 9月3日 
家氞英治
自己玹介 
■ 家氞英治 
□ 氞和システムマネゞメント 
□ アゞャむルコヌチScrumの導入のお手䌝い 
□ 時々、受蚗開発 
! 
■ 近幎は、Scrum導入に関連しお、テストの自動化や 
TDDのコツを個人やチヌムに䌝える広めるお仕事も 
Copyright (c) 2014 Eiwa System Management, Inc. 
2
宣䌝 
http://www.esm.co.jp/news_seminar/seminar/758.html
私のポゞションがアゞャむルコヌ 
チず少し異色ですが、この発衚 
で、テスト自動化などアむデア 
をチヌムに広めるヒントを持ち 
垰っおいただければ幞いです 
Copyright (c) 2014 Eiwa System Management, Inc. 
4
゚バンゞェリスト(1) [Evangelist]: 小さな成功(2) [Small Successes]: ステップバ 
むステップ(3) [Step by Step]: 予備調査(4) [Test the Waters]: ふりかえりの時間 
(5) [Time for Reflection]:ティング(7) 結[Brown 論協ア力をむ求めるデ(6) ア[Ask をfor 広Help]: げブラる 
りンバッグ・ミヌ 
Bag]: コネクタヌ(8) [Connector]: 䜕か食べながら(9) [Do 
Food]: 電子フォヌラム(10) [e-Forum]: アヌリヌアダプタヌ(11) [Early Adopter]: 
倖郚のお墚付ヒき(12) ン[トExternal はValidation]:グルヌプのアむデンティティ(13) 
[Group Identity]:達人を味方に(14) こ[Guru れon がYour オSide]: ス空ス間をメ 
挔出する(15) [In 
Your Space]: むノベヌタヌ(16) [Innovator]: やっおみる(17) [Just Do It]: 感謝を 
䌝える(18) [Just Say Thanks]: 次のアクション(19) [Next Steps]: 個人的な接觊 
(20) [Personal Touch]: 䟿乗(21) [Piggyback]: 皮をたく(22) [Plant the Seeds]: 
適テ切なス時ト期(自23) 動[The 化や 
Right Time]:定期的な連絡(24) [Stay in Touch]: 勉匷䌚(25) 
[Study TDDGroup]:にもテ効むラ営局の支持者(28) [く 
ヌメむド(26) [Tailor Made]:著名人を招く(27) [Big Jolt]: 経 
Corporate Angel]:正匏な掚進担圓者(29) [Dedicated 
Champion]: アヌリヌマゞョリティ(30) [Early Majority]: 達人のレビュヌ(31) 
[Guru Review]:䜓隓談の共有(32) [Hometown Story]: みんなを巻き蟌む(33) 
[Involve Everyone]:ちょうど十分(34) [Just Enough]: 身近な支揎者(35) [Local 
Sponsor]: 堎所重芁(36) [Location, Location, Location]:メンタヌ(37) [Mentor]: 謁 
芋(38) [Royal Audience]: 盞談できる同志(39) [Shoulder to Cry On]: 成功の匂い 
(40) [Smell of Success]:勢いの持続(41) [Sustained Momentum]:トヌクン(42) 
[Token]:橋枡し圹(43) [Bridge-Builder]: 懐疑掟代衚(44) [Champion Skeptic]:æ ¹ 
回し(45) [Corridor Politics]: 怖れは無甚(46) [Fear Less]:お詊し期間(47) [Trial 
Run]: 将軍の耳元でささやく(48) [Whisper in the General’s Ear]:
TDDのおさらい 
Copyright (c) 2014 Eiwa System Management, Inc. 
6 
スキップ
TDD のリズム 
スキップ 

 
䟋えばヶ月 
Copyright (c) 2014 Eiwa System Management, Inc. 
7 
red green 
蚭蚈refactor 
実装 
ナニット 
テスト 
テスト 
time time 
Red Green Refactor のサむクルは 小さくリズムよく
自動化・TDDの期埅される効果 
技術的負債の議論は 
こちらがオススメスキップ 
Copyright (c) 2014 Eiwa System Management, Inc. 
8 
䟋えば3幎
テスト自動化や 
TDD導入の際に私(コヌチ)が 
が行っおいる掻動 
Copyright (c) 2014 Eiwa System Management, Inc. 
9
制限時間で 
お䌝えできるかぎりを 
Copyright (c) 2014 Eiwa System Management, Inc. 
10
自動化・TDD゚バンゞェリスト候補(の発芋) 
泚むメヌゞ図です
■ コヌチは最初に誰ぞ技胜を䌝承すべきかを明らかに出来る 
垫匠ず匟子の関係 
□ 導入の初期に䌝えるべき人は、抵抗者ではなく、仲間になっおくれそうな人 
□ 自分で課題を自芚でき、解決案の遞択が出来る人であればGOOD 
□ 謙虚に孊びができる人であれば、なおGOOD 
□ 呚りに良い圱響を䞎えるこずが出来る人であればなおGOOD 
■ 察象の候補者が技胜を習埗できれば、呚囲に広めるこずが 
できる匟子が垫匠に 
■ コヌチがいなくなっおも自動化やTDDの広める 
掻動を維持できる 
! 
:-( もちろん、抵抗者ばかり芋぀かっお、候補者を発芋できずにがっかりするこずも 
Copyright (c) 2014 Eiwa System Management, Inc. 
12 
自動化・TDD゚バンゞェリスト候補
たずは 
ここ芋぀けお 
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
13 
https://speakerdeck.com/kawaguti/fearless-change-falsebu-kifang#17
新しいアむデアを組織に広めるヒントはこれがオススメ 
Copyright (c) 2014 Eiwa System Management, Inc. 
14 
゚バンゞェリスト(1) 
小さな成功(2) 
ステップ・バむ・ステップ(3) 
予備調査(4) 
ふりかえりの時間(5) 
協力を求める(6) 

 
メンタヌ(37) 


むンタビュヌ(ヒアリング) 
泚むメヌゞ図です
むンタビュヌ(ヒアリング) 
■ 人別にテスト自動化に取り組んだ結果の嬉しさ 
発芋できる。敎理できる 
□ コヌチや゚バンゞェリスト候補は、䞋蚘の質問に答えられる状態が望たしい 
• 「ビゞネス偎や開発偎や品質保蚌にずっお、普段困っおいるこずは䜕だろうか」 
• 「困り事が解決した結果の嬉しい状態はなんだろうか」 
• 人によっお困り事・嬉しい結果が異なる 
• 「自動化やTDDの導入の䞍安事は」どんなアプロヌチにも副䜜甚はある 
• 「どんな順番で着手するず、嬉しい結果が早くから 
埗られるだろうか」 
■ 芪身になっお話を聎くこずで、信頌関係づくりのきっか 
けになる副次的効果 
! 
:-( もちろん、各々の芋解があたりにバラバラであったり、誀解から過剰な期埅を持っおい 
る、無関心であるこずがわかり、頭を抱えるこずも 
Copyright (c) 2014 Eiwa System Management, Inc. 
16
4 むンタビュヌの準備 
5 共感のためのむンタビュヌ 
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
17 
個人的な接觊(20) 
http://designthinking.or.jp/bootleg.pdf 
協力を求める(6)
自動化・TDD導入甚のゎヌル蚭定 
泚むメヌゞ図です
自動化・TDD導入甚のゎヌル蚭定 
■ 取り組むべき問題の定矩、解くアプロヌチの抂 
芁を関係者ずすり合わせできる 
□ 「自動化」「TDDをやる」自䜓はゎヌルじゃないはず 
□ 「関係者の珟状の困り事や嬉しい状態はなにか」 
->「期埅する結果になるようにA,B,Cを実斜する」を敎理 
□ 倧たかな実斜項目のスケゞュヌルを䜜成 
■ 関係者に協力しお欲しいこずを䌝えるこず 
ができる 
! 
:-(もちろん、合意できないや協力が埗られない結論になる堎合も 
Copyright (c) 2014 Eiwa System Management, Inc. 
19
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
20 
むンセプションデッキ 
! 
協力を求める(6) 
テヌラメむド(26) 
身近な支揎者(35)
自動化・リファクタリング察象の優先順䜍付け 
泚むメヌゞ図です
自動化・リファクタリング察象の優先順䜍付け 
■ 自動化やTDDの効果が芋蟌めそうなものから順番 
に取り組むこずができる 
• バグが頻発しおいるコンポヌネントは 
• ビゞネスで重芁な機胜の䜿い方は 
• 手動のEnd to Endテストでは確認の手間がかかり過ぎるのは 
• コヌド・蚭蚈が耇雑化しおメンテナンス性を䜎䞋させおいる箇所は 
• etc 
Copyright (c) 2014 Eiwa System Management, Inc. 
! 
:-(もちろん、圓初考えおいたよりずっず自動化やリファクタリングする 
のに時間かかるこずを知っお萜胆しおしたうこずも 
22
小さな成功(2) 
ステップバむステップ(3) 
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
23 
テスト自動化戊略 
技術的負債 
http://blog.codeclimate.com/blog/2013/12/05/refactoring-without-good-tests/
ふりかえり 
泚むメヌゞ図です
ふりかえり 
■ 新しい取り組みのうたく行っおいる点、改善点を 
早期に定期的(1週間ごず)に明らかにできる 
■ 小さな成功が確認できれば、お祝いするチャンス 
■ 経隓を螏たえお、次のアクションを明らかにしお実 
斜できる 
! 
:-(もちろん、倱敗の連続で萜胆しおしたうこずも 
Copyright (c) 2014 Eiwa System Management, Inc. 
25
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
ふりかえりの時間(5) 
小さな成功(2) 
次のアクション(19) 
26
泚むメヌゞ図です 
孊びの蚘録(YWT+気分)
孊びの蚘録(YWT+気分) 
■ 察象者やコヌチが日を内省し、経隓したこず 
を敎理できる 
■ 次のアクションが具䜓化できる 
■ 呚囲の人からアドバむスがもらえる 
■ 読み返すこずで、再孊習できる 
! 
:-(もちろん、日誌を蚘録するのが苊手や手間に感じる人も 
Copyright (c) 2014 Eiwa System Management, Inc. 
28
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
29 
ふりかえりの時間(5) 
空間を挔出する(15) 
次のアクション(19) 
孊びを蚘録する 
孊びを共有する
厳遞オススメ本棚(+Web蚘事) 泚むメヌゞ図です
厳遞オススメ本棚Web蚘事 
■ 基瀎知識をコヌチず察象者で揃えるこずができる 
■ ゚ンゞニアずしおの基瀎的な孊びの姿勢を身に぀ 
けるこずが出来る 
孊びの姿勢ができるず自動化やTDDのコツをお 
䌝えしやすくなる 
Copyright (c) 2014 Eiwa System Management, Inc. 
! 
! 
:-(もちろん、本を読んで孊ぶこずが奜きじゃない人も 
31
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
32 
2章 カップを空にする 
読曞リスト 
継続した読曞 
空間を挔出する(15)
TDDの緎習瀟内TDDBootCamp 
泚むメヌゞ図です
TDDの緎習瀟内TDDBootCamp 
■ 緎習堎であれば安心しお倱敗できる倱敗から 
も孊ぶこずができる 
■ 緎習を繰り返すこずで、自動化やTDDのスキ 
ルを身に぀けるこずができる 
Copyright (c) 2014 Eiwa System Management, Inc. 
! 
! 
:-(もちろん、本番ず緎習の堎には倧きな差異あっお、 
本番ではどうすればよいか悩むこずも 
34
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
35 
勉匷䌚(25) 
コミュニティむベント 
TDD Boot Camp 
http://devtesting.jp/tddbc/ 
緎習、緎習、緎習
ペアで䜜業する 
泚むメヌゞ図です
ミニ・ラむブコヌディング 
泚むメヌゞ図です
ミニ・ラむブコヌディング 
■ ペアで䜜業よりも広くコヌチから察象者に䌝承できる 
□ 呚囲の人も芋孊できる 
■ 蚭蚈やテストコヌドの曞き方の良し悪しの刀断の 
議論が即時できる 
□ 近くにホワむトボヌドを 
■ 他人の゚ディタやリファクタリングツヌルの䜿い方や 
テストの曞き方を真䌌お孊ぶこずが出来る 
! 
:-( もちろん、知識レベルが揃っおいお、察象が簡単で䞀人でも解ける 
であれば非効率になる 
Copyright (c) 2014 Eiwa System Management, Inc. 
38
Copyright (c) 2014 Eiwa System Management, Inc. 
参考 
39 
各皮技術 
コミュニティむベント 
のラむブコヌディング 
ペアで開発する
レガシヌコヌド改善の 
シナリオの堎合 
Copyright (c) 2014 Eiwa System Management, Inc. 
40
絞り蟌み点・割り蟌み点・接合郚の発芋 
泚むメヌゞ図です
仕様化テストテストで保護 
泚むメヌゞ図です
ベむビヌステップ・リファクタリングTDD 
泚むメヌゞ図です
他にも工倫はたくさん
今日いちばん 
お䌝えしたいこずをもう䞀床
゚バンゞェリスト(1) [Evangelist]: 小さな成功(2) [Small Successes]: ステップバ 
むステップ(3) [Step by Step]: 予備調査(4) [Test the Waters]: ふりかえりの時間 
(5) [Time for Reflection]:協力を求める(6) [Ask for Help]: ブラりンバッグ・ミヌ 
ティング(7) [Brown Bag]: コネクタヌ(8) [Connector]: 䜕か食べながら(9) [Do 
Food]: 電子フォヌラム(10) [e-Forum]: アヌリヌアダプタヌ(11) [Early Adopter]: 
倖郚のお墚付き(12) [External Validation]:グルヌプのアむデンティティ(13) 
[Group Identity]:達人を味方に(14) [Guru on Your Side]: 空間を挔出する(15) [In 
Your Space]: むノベヌタヌ(16) [Innovator]: やっおみる(17) [Just Do It]: 感謝を 
䌝える(18) [Just Say Thanks]: 次のアクション(19) [Next Steps]: 個人的な接觊 
(20) [Personal Touch]: 䟿乗(21) [Piggyback]: 皮をたく(22) [Plant the Seeds]: 
適切な時期(23) [The Right Time]:定期的な連絡(24) [Stay in Touch]: 勉匷䌚(25) 
[Study Group]:テむラヌメむド(26) [Tailor Made]:著名人を招く(27) [Big Jolt]: 経 
営局の支持者(28) [Corporate Angel]:正匏な掚進担圓者(29) [Dedicated 
Champion]: アヌリヌマゞョリティ(30) [Early Majority]: 達人のレビュヌ(31) 
[Guru Review]:䜓隓談の共有(32) [Hometown Story]: みんなを巻き蟌む(33) 
[Involve Everyone]:ちょうど十分(34) [Just Enough]: 身近な支揎者(35) [Local 
Sponsor]: 堎所重芁(36) [Location, Location, Location]:メンタヌ(37) [Mentor]: 謁 
芋(38) [Royal Audience]: 盞談できる同志(39) [Shoulder to Cry On]: 成功の匂い 
(40) [Smell of Success]:勢いの持続(41) [Sustained Momentum]:トヌクン(42) 
[Token]:橋枡し圹(43) [Bridge-Builder]: 懐疑掟代衚(44) [Champion Skeptic]:æ ¹ 
回し(45) [Corridor Politics]: 怖れは無甚(46) [Fear Less]:お詊し期間(47) [Trial 
Run]: 将軍の耳元でささやく(48) [Whisper in the General’s Ear]: 
チヌトシヌトあるよhttps://github.com/kawaguti/fearless-change-pub/raw/master/Fearless%20Change%20patterns.pdf
゚バンゞェリスト(1) [Evangelist]: 小さな成功(2) [Small Successes]: ステップバ 
むステップ(3) [Step by Step]: 予備調査(4) [Test the Waters]: ふりかえりの時間 
(5) [Time for Reflection]:協力を求める(6) [テAsk スfor トHelp]: 自ブ動ラり化ンや 
バッグ・ミヌ 
ティング(7) [Brown Bag]: コネクタヌ(8) [Connector]: 䜕か食べながら(9) [Do 
Food]: 電子フォヌラム(10) [e-Forum]: アヌTDDリヌアダにプタもヌ(効11) く 
[Early Adopter]: 
倖郚のお墚付き(12) [External Validation]:グルヌプのアむデンティティ(13) 
[Group Identity]:達人を味方に(14) [Guru on Your Side]: 空間を挔出する(15) [In 
Your Space]: むノベヌタヌ(16) [Innovator]: やっおみる(17) [Just Do It]: 感謝を 
䌝える(18) [Just Say Thanks]: 次のアクション(19) [Next Steps]: 個人的な接觊 
(20) [Personal Touch]: 䟿乗(21) [Piggyback]: 皮をたく(22) [Plant the Seeds]: 
適切な時期(23) [The Right Time]:定期的な連ア絡む(24) デア[Stay をin 広Touch]: めるこ勉匷ず 
䌚(25) 
[Study Group]:テむラヌメむド(26) [Tailor Made]:著名人を招く(27) [Big Jolt]: 経 
営局の支持者(28) [Corporate Angel]:正匏な行掚き進担詰圓た者(っ29) た[Dedicated 
らこれ 
Champion]: アヌリヌマゞョリティ(30) [Early Majority]: 達人のレビュヌ(31) 
[Guru Review]:䜓隓談の共有(32) [Hometown Story]: みんなを巻き蟌む(33) 
[Involve Everyone]:ちょうど十分(34) [Just Enough]: 身近な支揎者(35) [Local 
Sponsor]: 堎所重芁(36) [Location, Location, Location]:メンタヌ(37) [Mentor]: 謁 
芋(38) [Royal Audience]: 盞談できる同志(39) [Shoulder to Cry On]: 成功の匂い 
(40) [Smell of Success]:勢いの持続(41) [Sustained Momentum]:トヌクン(42) 
Fearless [Token]:橋枡し圹(43) [Bridge-Builder]: 懐疑掟代衚(44) [Champion Skeptic]:æ ¹ 
回し(45) [Corridor Politics]: Change 
怖れは無甚(46) [Fear Less]:お詊し期間(47) [Trial 
Run]: 将軍の耳元でささやく(48) [Whisper in the General’s Ear]: チヌトシヌトあるよhttps://github.com/kawaguti/fearless-change-pub/raw/master/Fearless%20Change%20patterns.pdf

More Related Content

Similar to Install tdd

20121117 01 dir-mtgスラむド01
20121117 01 dir-mtgスラむド0120121117 01 dir-mtgスラむド01
20121117 01 dir-mtgスラむド01
Kenta Nakamura
 
アゞャむル開発を始めおみたせんか思い出線
アゞャむル開発を始めおみたせんか思い出線アゞャむル開発を始めおみたせんか思い出線
アゞャむル開発を始めおみたせんか思い出線
Miho Nagase
 

Similar to Install tdd (20)

スクラム再入門
スクラム再入門スクラム再入門
スクラム再入門
 
新入瀟員の方による就掻䜓隓談ず珟堎での人材育成
新入瀟員の方による就掻䜓隓談ず珟堎での人材育成新入瀟員の方による就掻䜓隓談ず珟堎での人材育成
新入瀟員の方による就掻䜓隓談ず珟堎での人材育成
 
20121117 01 dir-mtgスラむド01
20121117 01 dir-mtgスラむド0120121117 01 dir-mtgスラむド01
20121117 01 dir-mtgスラむド01
 
成長する組織ぞ導くコミュニケヌション倉革 - 事䟋に孊ぶコミュニケヌション革呜 -Agile Japan 2010
成長する組織ぞ導くコミュニケヌション倉革 - 事䟋に孊ぶコミュニケヌション革呜 -Agile Japan 2010成長する組織ぞ導くコミュニケヌション倉革 - 事䟋に孊ぶコミュニケヌション革呜 -Agile Japan 2010
成長する組織ぞ導くコミュニケヌション倉革 - 事䟋に孊ぶコミュニケヌション革呜 -Agile Japan 2010
 
成長する組織ぞ導くコミュニケヌション倉革 - Agile Japan 2010
成長する組織ぞ導くコミュニケヌション倉革 - Agile Japan 2010成長する組織ぞ導くコミュニケヌション倉革 - Agile Japan 2010
成長する組織ぞ導くコミュニケヌション倉革 - Agile Japan 2010
 
Scrum"再"入門
Scrum"再"入門Scrum"再"入門
Scrum"再"入門
 
eXtremeProgramming入門
eXtremeProgramming入門eXtremeProgramming入門
eXtremeProgramming入門
 
すくすくスクラム芁求開発入門(公開甚).Key
すくすくスクラム芁求開発入門(公開甚).Keyすくすくスクラム芁求開発入門(公開甚).Key
すくすくスクラム芁求開発入門(公開甚).Key
 
GMOテクノロゞヌブヌトキャンプ2015(アゞャむル線)
GMOテクノロゞヌブヌトキャンプ2015(アゞャむル線)GMOテクノロゞヌブヌトキャンプ2015(アゞャむル線)
GMOテクノロゞヌブヌトキャンプ2015(アゞャむル線)
 
アゞャむルず私
アゞャむルず私アゞャむルず私
アゞャむルず私
 
マシュマロ・チャレンゞでチヌムビルディング䜓隓
マシュマロ・チャレンゞでチヌムビルディング䜓隓マシュマロ・チャレンゞでチヌムビルディング䜓隓
マシュマロ・チャレンゞでチヌムビルディング䜓隓
 
ふ぀うの受蚗開発チヌムの぀くりかた
ふ぀うの受蚗開発チヌムの぀くりかたふ぀うの受蚗開発チヌムの぀くりかた
ふ぀うの受蚗開発チヌムの぀くりかた
 
Scrum talk at Agile Japan 2010
Scrum talk at Agile Japan 2010Scrum talk at Agile Japan 2010
Scrum talk at Agile Japan 2010
 
アゞャむル開発TFS導入
アゞャむル開発TFS導入アゞャむル開発TFS導入
アゞャむル開発TFS導入
 
ワヌクショップ 明日からはじめるアゞャむル
ワヌクショップ 明日からはじめるアゞャむルワヌクショップ 明日からはじめるアゞャむル
ワヌクショップ 明日からはじめるアゞャむル
 
玍涌みんなで持ち寄る『ゟッずする話』
玍涌みんなで持ち寄る『ゟッずする話』玍涌みんなで持ち寄る『ゟッずする話』
玍涌みんなで持ち寄る『ゟッずする話』
 
No42 01-suc3rum-20131031
No42 01-suc3rum-20131031No42 01-suc3rum-20131031
No42 01-suc3rum-20131031
 
アゞャむル開発を始めおみたせんか思い出線
アゞャむル開発を始めおみたせんか思い出線アゞャむル開発を始めおみたせんか思い出線
アゞャむル開発を始めおみたせんか思い出線
 
#agilejapan #agilesendai Agile Japan 2013 仙台サテラむト 『匷いチヌムに倉える぀のステップ 〜組織を倉革するリ...
#agilejapan #agilesendai Agile Japan 2013 仙台サテラむト 『匷いチヌムに倉える぀のステップ 〜組織を倉革するリ...#agilejapan #agilesendai Agile Japan 2013 仙台サテラむト 『匷いチヌムに倉える぀のステップ 〜組織を倉革するリ...
#agilejapan #agilesendai Agile Japan 2013 仙台サテラむト 『匷いチヌムに倉える぀のステップ 〜組織を倉革するリ...
 
KLabの゚ンジニアを支えるカルチャヌ
KLabの゚ンジニアを支えるカルチャヌKLabの゚ンジニアを支えるカルチャヌ
KLabの゚ンジニアを支えるカルチャヌ
 

More from eiji ienaga (6)

TDD & Pull Request入門
TDD & Pull Request入門TDD & Pull Request入門
TDD & Pull Request入門
 
XP再解釈
XP再解釈XP再解釈
XP再解釈
 
DDD
DDDDDD
DDD
 
XP Customer Testing
XP Customer TestingXP Customer Testing
XP Customer Testing
 
20100420
2010042020100420
20100420
 
What is JSpec
What is JSpecWhat is JSpec
What is JSpec
 

Install tdd