概要
技術者の親友のために 結婚式の乾杯の発声でLTをさせていただきました。
新郎とは 同じアジャイルチームで育ち、切磋琢磨してきました。
その経験をネタに「夫婦」というプロジェクトにどう立ち向かうべきか? を独身の私から提案させていただきました。
LTの背景にあるもの
プロジェクトの成功とは何か?
プロジェクトの成功とは何でしょうか? 人それぞれ考えがあると思います。
当然 「完成したモノが顧客の納得の行くものである」 ということは最低条件となるでしょうが、加えて以下の点も重要だと私は考えます。
- 完成したモノがチームメンバーにとっても納得の行くものである
- メンバーが次も同じチームで仕事したいと思える
- 顧客から再度、別の仕事を依頼していただける
プロジェクト終了時によく見かけるのは
完成したモノは問題ないレベルだが、チームメンバーが疲弊しきっている/顧客と不仲になると言った状況です。
終了時の"数字"には見えてこないですが、組織にとって重要な要素だと思うのです。
人を第一に考える
では、どのようにプロジェクトを行えば上記のような状況を解消できるでしょうか?
その方法の1つに 「アジャイル開発」 があると私は思います。
アジャイル開発の考えは アジャイルソフトウェア開発宣言やアジャイル宣言の背後にある原則 から来ています。この文書の通りアジャイル開発には、人(顧客/チームメンバー)を第一に想うという側面があります。つまりは、無理な見積もりをせずにできる範囲で実施し、その姿を見て顧客が意見し、全員で話し合う。
誰も妥協せず必要な議論を続けるこの考えがプロダクトやチームに愛を吹き込むと確信しています。
チーム×アジャイル開発
ここからはLTの内容について触れていきます。
アジャイル開発 (scrum)
大まかな流れとしては 以下のようになります。
- やりたいことを書き出す
- できる分だけ選択する
- どう実現するかを話し合う
- 実際にやってみる
- ふりかえる
ただ、やはり進め方に不安があるという場合は rascal-scheme をベースにし、1週間スプリントをこなす上でチームの特色を出していくと良いでしょう。
やりたいことを書き出す
スプリント全体計画。
ここでは顧客からの要望を受け、チームでストーリー単位に分割していきます。
1つのストーリーの内容は多くても1週間でできるくらいの大きさに分けるのが望ましいです。
(スプリントに収まらなくなってしまうため)
できる分だけ選択する
スプリント計画ミーティングの第1部。
チームで無理なくできる範囲を話し合い、ストーリーを選びましょう。
週を追うごとに、チームが1週間でどれくらいストーリーを消化できるのか?(Velocity)が分かってくるので、最初の内は 少なめに選択するとよいでしょう。
どう実現するかを話し合う
スプリント計画ミーティングの第2部。
選択したストーリーを、これが全てできたらストーリー達成!といえる細かい単位の作業に分割していきます。
1つの作業は 1~3時間でできるほど細かくすると進めやすいでしょう。
実際にやってみる
日々の作業。
LTでは語れませんでしたが、細分化したタスクについていまどれくらい進んでいるか?を見える化することが望ましいです。チームで実施する際には 【Will Do / Doing / Done】 3種類のグループに分けて管理することで、「進んでいる」感が出てやる気も増してきます。
ふりかえる
スプリントレビュー。
ふりかえりは 次の週をさらに良くするための重要な作業です。
短い期間でふりかえることで大きなミスを未然に防ぎ、後の争いや障害を取り除いてくれます。
ふりかえりの方法はKPTが良いでしょう。
結び
アジャイル開発やそのやり方に関しては、数多ある書物やネット上の記事にあるのでこの記事では大幅に省略しました。エンジニア家庭の皆さま、あなたのチームにもアジャイル開発を取り入れてみませんか?
※ 記事の読み方: 文章に出てくる 「顧客」を妻(あるいは夫)・「チーム」を夫婦 と読み替えてみましょう。