先日(3/3)、表題のセミナー
https://devlove-kansai.doorkeeper.jp/events/70480
に参加してきたのでざっとまとめる。
及部さんのスライド
https://speakerdeck.com/takaking22/mobupuroguraminguwoyarou-aziyairumonsutafalsemobupuroru-men-number-koberb
やったこと
自販機プログラムの製作
言語:Python
開発環境:
最初replt.it https://repl.it/
すぐにcyber-dojo http://cyber-dojo.org/ にかえる
中間で 5人中2人 メンバ入替
###わかったこと
想像以上にハードワーク。50分で10分休憩くらいのペースでやるくらいじゃないとキツイ。
Web上のIDE環境が使えることがわかった。すぐに開発・テストができるので便利。
組み込み系ではまず環境を整えるので一苦労なので雲泥の差。
Python の言語仕様ははじめてだったけど、わかった気になった。
実のところ、コードを書いたのは hogehoge年だったのは内緒。
TDDでプログラミングをすすめたが、最後まとめの説明するのがとても楽だった。
この点はTDDの(隠れた)利点じゃないかなと再認識。
モブワークと役割分担ワークの違い
製造ラインっぽくいうと段取り替えが頻繁にかわるならモブ、
同じものをテンプレート的につくるなら役割分担の方がいいじゃないかと。
人から人への段取り替え(引継ぎ)や、作るものがころころ変わるならモブの方が賢い。
ペアプログラミングとの違い
モブワークだとメンバ全員が全体にかかわっている点。
ペアプログラミングだと、全体にかかわっていないので、別途結合テスト、基本設計・ポリシーレビューなど統合に必要な作業がどうしてもでてくる。
モブワークでの工夫:やったー!
やったー!は、ライブの盛り上げみたいなもの、テーマに集中するために(マインドフルネス状態になるために)役立ちそう。
###つぎやること
社内(組み込み開発環境)でやるには、こんな段取りかな。
- 声かける。3~5人で1チーム、2チームは欲しい
- ちょっと大きめ会議室確保、ディスプレイ チーム当たり1台。
- 最初は2時間。どんなに欲張っても4時間か。
- 資料目次
- モブプログラミングの簡単な説明、進め方
- お題 これは自販機でええか
- 開発環境指定 これは cyber-dojo がいいな
- 開発言語はお任せ
- 最初のターン 40min で到達する状態
- 人を入替
- 次のターン 40min で到達する状態
- ふりかえり やったこと・わかったこと
(ミリオタなので(^^;;;)AARっぽくやりたい 「何があったか」「みんなで何故そう決めたのか」「もっとよい決定をするには」 - ふりかえり 次やること 組み込みWebSystemでやるには相談
- まとめ
####謝辞
話し手の及部 敬雄さん、
スタッフの中村 洋さん、Akiさん、
TAM Coworkingさん、会場提供ありがとうございました!
###参考リンク
TDD(テスト駆動開発)+モブプログラミングを社内でやってみた話