永和システムマネジメント 東京支社
〒101-0041 東京都千代田区 神田須田町2-3-1 NBF神田須田町ビル 7F
「チームはコードを使ってコミュニケーションする。そうだ、コードもKAIZENしよう」
プログラマー、スクラムマスター
スクラムマスターの大事な仕事の1つに、周囲の環境を整える5Sのカイゼン活動の推進です。目で見える形状あるものは、すべて5Sの対象です。プロダクトバックログやタスクボードの形状を整えるだけではなく、コードの形状を整えることも欠かせません。Scrumパターンの Good House Keeping の別名は、 Daily Clean Code で知られています。
https://sites.google.com/a/scrumplop.org/published-patterns/value-stream/good-housekeeping
スクラムマスターにとってコードの5Sの活動のとっかかりは、CIによる可視化のほか、プログラマーとペアプロを通じて現地現物で現状のありのままを知ること、ユニットテスト&リファクタリングでコードをクリーン保つ習慣が具体的に何なのかを知るところからです。
幸いテスト駆動開発はScrumと同様にフィードバックを基本とした技法で類似点があり理解は容易となっています。この機会にぜひ、プログラマーを誘ってペアプロでテスト駆動開発を学んでみませんか。当日は、Scrumのエッセンスにも触れながら、簡単なお題を使って、テスト駆動開発を学びます。
自動のユニットテストとリファクタリングなしに開発を続けたコードは、デバック地獄の沼にもがくコード、コピペの重複で修正範囲の判断に戸惑うコード、不要になったはずの残骸のコード、他人が読めないコード、動作確認に時間がかかるコード、動作確認すらできないコード、バグが潜伏してしまうコード、後から障害対応に追われるコード、障害対応の解析が難しいコード、となりがちです。
放置すれば、プログラマーはプログラミングに対するハッピネスが著しく低下し、技術的負債の重みで身動きが取れなくなってしまいます。
上の問題に陥らないように、プログラマーとしてできることは、プログラミング(設計・実装・テスト)の習慣を変えることです。テスト駆動開発を学ぶはその習慣を身につける一歩です。ぜひこの機会にテスト駆動開発を楽しく学び、日常のプログラミングをハッピーにするヒントを見つけてみませんか。
家永英治