Agile Samurai Base Camp 2014 Re:TDDに参加してきた!
うらら〜。うらら〜。春うらら〜。
今日、日曜日は、渋谷マークシティのCA社(2回目)に行ってきました。
実は1回目は昨年12/8。このblogを始めるきっかけにもなった、感動と、衝撃と、自分も動き出さなきゃ!っていう最高の刺激を頂いた機会であり、はてブやTwitterのプロフ写真も・・・(ry とにかく個人的にとても想い深いイベントでありまして・・・
とにかく、その刺激がリフレインしまくったそんな一日でした。
※ピザとbeerの交流会もあったり、前回以上にいろいろなお話を聞いたり、質問できたり、満腹♪満腹♪
※この手作り感も大好き!!
※スピーカーの皆様、スタッフの皆様、お話しできた皆様、本当にありがとうございましたm(_ _)m
12/8の最初の記事。
Agile Samurai Base Campに参加してみた - 部屋とアジャイルと私(仮称)
その後、社内勉強会でTDDのサワリを発表したり、すんごいモチベーションもゲッツ。
明日からTDDをやってみよう! - 部屋とアジャイルと私(仮称)
TDDと直接関係ないが、前回もご説明いただいた同じスライドでも、1回目に感じなかったことが、沢山あったこと自体、blogを始めたおかげであり、そんなきっかけを頂けたことを改めてここに感謝♪感謝♪感謝♪
しかも前回に増して、参加者メンバの中でも、TDDを実際にやっている方(チームだったり、個人だったりはさておき)が結構いて、その現場の本音を聞けたのもすごい収穫でした。
自分は、まだまだ、TDDを「分かった気になってしまっていた」ってことに気づかせていただいたのも、とっても良かった。
分かったつもり、一番の自分の悪い癖。
(・A・)イクナイ!! (・A・)イクナイ!!
うむむ。相変わらず前振り長すぎ・・・orz
~~~~~~~~~~~~~~~~~
■当記事のアジェンダ
(1)今日の自分テーマ
(2)結果サマリ
(3)その他、雑メモ
(4)補足・・・関連リンク集とか
~~~~~~~~~~~~~~~~~
(1)今日の自分テーマ
事前に考えていた、今日ノ場で学びたいこと主な5つ
●仕様のテストと実装のテストの件。実装詳細をテストする必要はないとある。でも不安をテストするともある。自分が前回一番理解できなかった(勘違いしてるっぽいところ)
●レガシーコード改善から始めるTDDに取り組む件(これが一番自分の周辺にハマりそう)
●テスト粒度(テストコードのメンテナンスと、テストコードの資産価値、小さいテストを積み上げてEnd2Endのテスト、どこまでがTDDなのか)
(2)感想サマリ
※自分テーマと順不同
●テストを必ず先に書かなければいけない訳ではない。そこにテストコードが存在することが重要。あまり原理的になる必要はなく、その辺の加減・工夫がいろいろな現場でいろいろ方にノウハウあり、自分なりにTDDをうまく使えるようになることが一番大事だろう。
●TDDはプログラミングの一部であり、TDDだけで品質が保証される(担保される)わけではない。TDDでソースもエンジニア自身も「健康に」というメッセージは非常に深い!
●仕様のテストこそ、テストコードとして価値がある。実装のテストはリファクタリングすることでテストコードが崩れてしまうので、積極的に書くのではなく、でも不安がある場合は、一歩一歩階段を上るという意味でも実装を確認する。(=思った通りに動くことを確認する=つまり不安をテストする=TDD)
※「仕様のテスト」と「実装のテスト」についての参考:
●エンジニアのスキルアップには、フィードバックが細かければ細かいほど良い。TDDのサイクルは小さく小さく回したほうがいい。(でも自信があるときは大股で走ってもよく、でも一歩一歩確認しながら、赤くして自信があってたことを確認する癖をつける)
●自身のモチベーションを保つための工夫は人それぞれ。ひとりから始められるのもTDDのいいところ。こういう社外勉強会にも今後積極的に参加していきたい!
(3)その他、雑メモ
・チームで考えるワークショップいかにボールにチーム全員が触るか(19秒→3秒→0.9秒)
・今年後半ぐらいに「テスト駆動開発入門」が本屋に並ぶかも
・リファクタリングがし難い環境が身近にある・・・動けばいいじゃん。壊したくない。という堕落と恐怖(グサっ!)
・必ずテストコードから書かなくてもよい。少し実装してからテストから書いてみるのもあり。
・リファクタリングは、気づいたときにすぐにやったほうがいい(溜まれば溜まるほどリファクタリングに時間がかかり、理解がないとそんな時間はモラエナイ)ただし、少し先にどのようにリファクタリングすればいいかの答えが見つかりそうなときは一時的にtodoリストに書いておくのもあり
・テストコードが無い現場にて、TDDを普及させていくため、まず最初、まずは依存の少ない部分を狙い撃ちして、テストコードをつくりはじめるとよい。また、その際は大きな仕様のどんどん荒いテストから作り始めて、テストして、カバレッジ範囲を少しづつ広げていくことを繰り返していくとよい
・JUnitの場合、テストコードにGroovyを使うとよい。(これは良いことを聞いた〜)JUnit実践入門「テストフィクスチャ」をあとで見る。
・オフショアでTDD(というかアジャイルプロセスでの開発)を導入している事例。交流会で「アドバイスください」と図々しく・・・、でも、そのチームだけにMacを与えて、周囲が憧れる開発環境のチームをつくるとよい。実は投資額としてはちょっとしたもの。何よりMacでの開発は良いyo!とかナルホドー
・新人研修でテストコードを書かせて、TDD実践のハードルを下げて組織的に取り組む姿とか眩し(真似したいけどなぁぁぁ)
・テストを書きながら進めることで、安全に前にすすめる
(4)補足・・・関連リンク集とか
Agile Samurai Base Camp 2014 Re:TDD #agilesamurai - Togetterまとめ
Agile Samurai Base Camp 2014 Re:TDDに参加してきました - 個人的なまとめ
Agile Samurai Base Camp Re:TDD に行ってきた! - 終電23時15分って早くね?
アジャイルサムライ TDDトラック行ってきた - まっつんの日記
Agile Samurai Base Camp 2014 Re:TDD|ラブリー東京♡気まぐれコリアンの東京日記
※随時追記ヨテイ(しかしみんなblogうp早〜! )
JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)
- 作者: 渡辺修司
- 出版社/メーカー: 技術評論社
- 発売日: 2012/11/21
- メディア: 単行本(ソフトカバー)
- 購入: 14人 クリック: 273回
- この商品を含むブログ (67件) を見る
Fearless Change アジャイルに効く アイデアを組織に広めるための48のパターン
- 作者: Mary Lynn Manns,Linda Rising,川口恭伸,木村卓央,高江洲睦,高橋一貴,中込大祐,安井力,山口鉄平,角征典
- 出版社/メーカー: 丸善出版
- 発売日: 2014/01/30
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (8件) を見る
まだまだ整理が必要で混乱もしている。
自分で手を動かしながら、体現しつつ、少しづつでも前に進みたい。
いきなりTDDというおっきな相手に立ち向かうのではなく、分解して1体づつ倒していく・・・そんなTDDのイメージで、これからもTDDを続けていこう!!
余談
インセプションデッキの2回目もあるらしいよ〜〜〜〜っ ( ̄ー ̄)ニヤリ