この記事について
この記事は、aslead Agileの開発チーム「オキザリス」にて行っているアウトプット企画である
「チーム「オキザリス」Advent Calendar」の6日目の記事です。
チーム「オキザリス」で活用しているプラクティス
この記事では、アジャイルなプラクティスをどのように採用・利用しているかをまとめています。
XPのプラクティス
全員同席(Sit Together)
(論理上)全員同席になっています。
スクラムチームが全員常にZoomに入って、コミュニケーションを取っている状態です。
チーム全体(Whole Team)
プロダクトや事業の遂行に必要なメンバーを揃えています。
また、チームとしての一体感もかなり高まっていると感じています。
情報満載のワークスペース(Informative Workspace)
Miroを使って、チームの活動に必要な情報をすべてMiro上に集約しています。
コミュニケーションもMiro上で行われます。
(バックログの管理のみ、Jiraで行っています)。
いきいきとした仕事(Energized Work)
チームでリズムを決めて働いています。
- 09:30-10:00 Learning Session
- 10:00-17:00 30分 Sprint × 12
それ以上は無理はしません。
最大のパフォーマンスで働き続けられる環境を作っています。
ペアプログラミング(Pair Programming)
リモート上でペアプロが頻繁に行われます。
また、モブプロが基本動作となっています。
ストーリー(Stories)
価値あるインクリメントを生み出す単位にチームのプロダクトバックログを管理しています。
ストーリーには、以下の情報を記載しています。
- ストーリー名(届ける価値)
- 前提条件
- 受入条件
- デモ手順
前提条件は、事前知識や調整事など、Readyになる条件を記載しています。
週次サイクル(Weekly Cycle)
チームでは30分フラクタルスプリントを取り入れながら、1週間の単位で働いています。
画像右下の1週間スプリントのSprint Planningの時間で、1週間の計画を立ててからスプリントを開始します。
ゆとり(Slack)
1日スプリントの中にはゆとりを持たせています。1日では30分スプリント×12回行われますが、計画するのは10スプリント分です。他の部分は変化や不確実性に備えます。
コードの共有(Shared Code)
チームの誰もが、チームのプロダクトコードや資産にアクセスし、修正・リリースできるようになっています。
デイリーデプロイ(Daily Deploy)
プロダクトの特性上、ソフトウェア開発からやや離れている部分も多い開発内容となっていますが、1日の中で頻繁に本番へのデプロイ(プロダクトの更新)が発生します。リリース権限はチームに委譲されており、PO不在の時にも開発者の判断でリリースしています。
DevOpsのプラクティス
※DASA DevOps Fundamentalより導出。
カルチャー
継続的学習と継続的改善
1日30分のLearning Sessionの時間を設けています。
また、30分に1回1分のふりかえりにより、改善を続けています。
実験とリスクを取る
積極的な実験を事業・チームレベルで推奨・実施しています。
チームの過去の実験はこちらの記事から参照できます。
品質を作りこむ
品質面での妥協はせず(品質を落とすことはせず)、品質を高め続ける意識で活動しています。
エンジニアリング文化
エンジニアの集団として、日々問題解決や知識の向上に励んでいます。
有効性のカルチャー
継続的なデリバリーとフィードバックループの改善を日々図っています。
最低でも1週間に1度はリリースが行われるように改善中です。
プロダクト思考のカルチャー
より価値の高いプロダクトを提供するために出来ることや、それによって今できることを、チーム全員で定期的に検討しています。
責任を果たすカルチャー
チーム全員でプロダクトの完成に責任を負います。
インスピレーションに満ちた楽しい環境
とにかく楽しく、効果的に働けるためのチーム作りを目指しています。
プロセス
VSM
チームのバリューストリームが複数あるため、それを明確化しています。
リードタイムの長い部分は適宜排除・改善を行っています。
カンバンのプラクティス
カンバンボード
タスクの状況をMiroのカンバンで可視化しています。
フロー制御
チームのWIPは基本的に1です。
30分スプリントの中で分散作業をすることはありますが、30分スプリント終了時にWIP>2にはならにようになっています。
Management 3.0のプラクティス
Kudo Card
MiroやMattermostにKudo(感謝)を書き合っています。
30分に一度のふりかえりの時間や、雑談の時間に頻繁に感謝が行われています。
スクラムのプラクティス
スクラムのロール
プロダクトオーナー
POは一人で役割を担います。ただ、POの権限は開発者にほぼ委譲されており、誰でも意思決定ができる状態を作り上げています。
スクラムマスター
SMは一人で役割を担います。
開発者
チーム全員が開発者です。全員が協業しながら行ってます。
スクラムのイベント
スプリント
30分、1時間、3時間、1日、1週間という単位でフラクタルなスプリント構成で行っています。
スプリントプランニング
1週間スプリントで、スプリントゴールを決め、プロダクトバックログをコミットします。
1日スプリントで、最初に1日分の大まかなプランニングを行います。
30分スプリントで、30分分のプロダクトバックログをタスクに落とし込みます。
スプリントレビュー
ステークホルダーを多数呼び、Zoomで毎週30分実施しています。
デモをしたり、今後の方向性についてフィードバックをいただきます。
スプリントレトロスペクティブ
30分に1回ふりかえりをします。
ふりかえりの方法はこちらの記事をご参照ください。
スクラムの作成物
プロダクトバックログ
プロダクトバックログをJiraで作成・管理します。
毎週頻繁に更新が入ります。
スプリントバックログ
Miroのカンバンボードでスプリントゴール、スプリントバックログを管理します。
インクリメント
プロダクトの性質上、インクリメントが多様な形をしています(サービスが複数ある、など)。ただ、インクリメンタルに開発を進めています。
その他の導出プラクティス
モブプログラミング
基本的にモブプログラミングで開発を行っています。
必要に応じてペア、分散作業に自然と別れていきます。
インセプションデッキ
インセプションデッキを作り、プロダクトの指針としています。3-6か月に一度定期更新します。
頻繁なペア交代
1日単位でペアが変わります。
チームでの外部イベント参加
チーム全員でイベントに参加し、全員でふりかえりをします。
学びを最大化するためにこのような活動を行っています。
スクラムマスターの宣言
1スプリント中に「スクラムマスター」を宣言します。チームの開発から一歩引き、スクラムマスターの観点でスプリントを見守ります。主に、スクラムマスターの育成のために行っています。
チームパターンライティング
Scrapboxにチームのパターンを記載しています。
みんなでたまにわいわいしながら書いています。
https://scrapbox.io/OxalisTeamPattern/
Learning Session
毎日09:30-10:00は学びの時間です。
30分フラクタルスプリント
こちらの記事をご参照ください。
Delivery Sprint
開発のためのスプリントです。30分スプリント×42回が1週間のうちのDelivery Sprintにあたります。
Discovery Sprint
ディスカバリのためのスプリントです。プロダクトバックログリファインメントなどを行います。30分スプリント×6回がこの時間です。
Marketing Sprint
マーケティングチームと合流し、マーケティングに特化した内容を30分スプリント×6で行っています。
フルリモート開発
チームの結成から一貫してフルリモートです。
Face-to-Face
常にZoomではカメラオンです。
アウトプットファースト
日々様々なアウトプット(社内外発信)をチームメンバーが行います。
他のチームと比べても、アウトプットのアジリティは100倍以上です。
終わりに
他にも色々ありそう…ですがぱっと思いつかなかったのでここまで。
今後も色々なことを実験しながら、チームとして成長していきます。