来日中の James O. Coplien と話をする機会があり、いまTDDをクライアントに推薦していると話したら目を剥いて "Are you still doing TDD!?" と詰め寄られ、TDDの問題について大変熱烈に語ってくれました(ディスカッションをした体ではあるんだけど、だいた…
10月5日におこなわれた、TDD Boot Camp 横浜 3rdに参加してきました。今回は基調講演を務めさせてもらったのですが、どうして和田さん(id:t-wada)でなくわたしが講演を担当することになったのか、当日の懇親会LTでその辺の話をしました。したと思うんですが…
ベロシティの話をしていて山登りのメタファを思いつきました。どっかで似た話がありそうな気もするけれど。 山登りを考えてください。開けた平らなところでは、時速4kmで進めます。林の中の山道になると、時速2kmになります。岩場では500m、すごい崖を登るな…
バグを見つけたとき、どうするか。プログラマなら3つの選択肢がある。 直す 原因を調べる 再現テストをする プログラマなら、直感的に脊髄反射的に1番を選ばないだろうか。 バグを見つけた! このへんが怪しい! よし直そう! やった直った! というのが典型…
https://sites.google.com/a/scrumplop.org/published-patterns/product-organization-pattern-language/scrummaster を訳してみた。精読するために訳したので、どっかに正式の日本語版があったらごめんなさい。 ScrumMaster スクラムマスター スクラムチー…
スクラムのエッセンスを手軽に体験できる、トランプゲームを使ったワークショップを紹介します。短時間(20〜30分程度)でスクラムの役割の意味を把握し、スクラムにどんな効果があるのか理解できます。チームで理解のベースラインを合わせて、チームビルディ…
前回はテストのリファクタリングをしました。テストのリファクタリングについてはこちらもどうぞ。リファクタリングの続きとして、TODOリストの「文字列のI/Oを別クラスにする」というのもやってしまおうと思います。これは前にも書いていましたが、ライフゲ…
TDDのサイクルはRed-Green-Refactoringです。このリファクタリングは、プロダクトコードはもちろんですが、テストにも適用されます。しかしテストのリファクタリングには、プロダクトコードのリファクタリングと違うところもあります。プロダクトコードのリ…
今回はライフゲームTDDその4、その1、その2と、その3で誕生の実装ができました。基本的な枠組みはできているので、完成までは間近です。しかしあらためてコードを眺めてみると、特にテストコードのほうがゴチャゴチャして読みにくくなっています。プロダクト…
よく「ほんとに最初にRedにするんですか?毎回必ず絶対に?」と聞かれます。ひとことで答えるなら、すみませんたまに飛ばしちゃいます三ことぐらいですかね。だけど、ほとんど毎回Redを経由するようにしているのも、本当です。なぜ最初にRedにするのか。理由…
その1、その2と続いて、今回はライフゲームTDDその3です。なかなか完了しない、誕生の処理を完成させたいと思っておりますが、どうなることやら。前回はスパイクをへてCellクラスを抽出し、TDDで実装しました。このあたりのコーディング、本来はTODOリストに…
偉いプログラマとは、仕様書を一読して内容を完璧に把握し、沈思黙考して完璧な設計を脳裏に描き、神速のキーボードさばきで一気にコーディングを終えると、ノーエラーでコンパイルが通り期待通りに動作する完璧なプログラムが完成する、デバッガなんてのは…
さて、前回は誕生のテストを書いたところまででした。ここからは、誕生の処理を実装します。テストの書き方によっては、中央の1セルだけ考えれば済んでいたかもしれないのですが、3x3のグリッド全体をちゃんと対応しなくてはいけなくなってしまいました。マ…
実はモデリングが大好きです。元々はオブジェクト指向プログラミングを勉強しているところからUMLに(自然に)興味が向き、そこからオブジェクト指向設計とかオブジェクト指向分析とかそういう脇道にそれ(脇道とか言ったら怒られる!)、仕様も設計もこれからは…
アジャイルなソフトウェア開発を導入する手伝いという仕事の中で、ペアプロでTDDをやってみせるという機会がよくあります。ここ最近のバディであるid:haru01と組んで、ライフゲームをやってみせるのが定番化しています。ライフゲームをテーマにしてどんなふ…
プログラミングは大学生の頃からしていました。さらに辿れば小学生からBASICでゲームを書いたりしていたので、期間だけで言えば30年近くプログラミングをしてきたことになります。大学のときにはアルバイトでプログラマをやっていて、小さいながら1システム…
10月22日におこなわれた、Regional Scrum Gathering® Tokyo 20192日目のワークショップとして、「スクラムプロジェクト逆計画ゲーム」をやってきました。ゲームは「プロジェクトが成功して終わった」ところから、どうやって成功までたどりついたのかを、時間…
昨日、4/15はアジャイルジャパン2011でした。私は岡山サテライトに参加して、午後後半のワークショップをやらせていただきました。内容は、Linda Risingの基調講演を受けて、アジャイルジャパンで得たものを実際に自分の現場に持ち帰るのに、パターンをどう…
一昨年くらいから、ゲームにはまっているのです。ゲームと言っても、ドラクエとかシビライゼーションとかのコンピュータゲームではなく(それもはまってるけど)、カードゲームとかボードゲームといったアナログなやつです。それも、ゲームをやることではなく(…
ツール・環境編が鈴木雄介さん(グロースエクスパートナーズ)、組織・意識改革編が西村直人さん(永和システムマネジメント)という2本立ての事例セッション。西村さんとは同僚として、同じような立場でアジャイルソフトウェア開発のプロジェクトやチームのサポ…
土曜午前に、リーンカンバンのプル開発に対応したカンバンゲームのワークショップを担当しました。これはAgile2009でやってきたものの翻訳版です。元ネタからいちど英訳したのを再度日本語に戻したんだけど、我ながら翻訳調になっててヘコんだ。資料を公開し…
圧倒的な情報のシャワーに打たれてずぶ濡れになり、必死になって持ち出せたのは両手にひとすくいだけ、それでもそのひとすくいには千金の価値があった。そんな感じでした。それを人に伝えるのは、また難しいのですが。自分の仕事との関連で感じたのは、現場…
4/9、10の両日とも、AgileJapan2010に参加してきました。去年に引き続いての参加でしたが、とても充実したイベントでした。全体に感じたのは、参加者のスーツ率が高いこと。アジャイルというモノに興味を持つ人が、純粋な開発者だけでなく、経営者やユーザー…
あまりに放置していたので、復活してみるテスト。家サーバーをまめにメンテナンスできる人材ではないことを深く自覚したので、やっぱりこちらをメインにしよう。
もう明日開催の話なんですが、id:ebackyさんら主催の第4回すくすくスクラムで新しいプロジェクトゲームをやります。オブラブ合宿やアジャイルジャパンでもやったタスクボードシミュレーションを元として、最近流行のリーン&カンバンを体験できるものとしま…
7/7(火)にオブジェクト倶楽部 2009夏イベントが開催されました。今回は中の人としての仕事は、ほとんどなにもせず、「プロジェクトポートフォリオ」のワークショップをやりました。参加していただいた皆さん、ありがとうございます。当日使ったカードのデー…
システム開発ジャーナルVol.10の 「【特集1】困ったら読む! 困る前に読む! 今すぐ使える エンジニアのためのソフトウェアテスト術」に、TDDのコラムを書きました。システム開発ジャーナルVol.10TDDの歴史や位置づけから、BDDや自動受け入れテストにも触れな…
先日わたしがやった「タスクかんばんシミュレーション」ワークショップの記事が、InfoQ Japanで掲載されました。 体験レポート:ゲームで学ぶアジャイルな反復型開発 http://www.infoq.com/jp/articles/report-agile-game 加納さんは主催側だった方で、加納…
QCon Tokyoの1日目でいちばん印象的だったセッションが、アーキテクチャトラック、鈴木雄介さんの「現場のITアーキテクトが知っておくべき10のこと - あるいは、技術が分かるPMが知っておくべき10のこと」でした。アーキテクチャとはなにか、アーキテクトと…
3月27日の第24回XPユーザー会「期末がなんだ全速前進」もとい「アジャイルな見積りと計画づくり」の話を書きました。動画や、資料公開なんかもしてます。 http://yattom.jp/trac/public/blog/20090331 4/1 10:51追記: yattom.jpがずっとつながらない状態でし…