🙆
フルリモート・フルフレックス組織でのスクラム開発(開発ステータス・ブランチ運用編)
フルリモート・フルフレックス組織のスクラム開発(開発ステータス・ブランチ運用編)
はじめに
株式会社BYARD CTO の辰本です。
業務設計プラットフォームBYARDの開発・運用を行っています。
弊社では全職種のメンバーがフルリモート・フルフレックスで勤務しています。
弊社ではアジャイル開発フレームワークにスクラムを採用しています。
ここでは弊社の開発チームがその中でどのように開発ステータス管理やブランチ管理をしているかお伝えします。 参考にして頂ければ幸いです。
概要
BYARDの開発チームでは以下のようなブランチおよびPBIの開発ステータスの管理をしています。
ブランチ毎に対応する環境が定められており、マージされる毎にCI/CDが実行されます。
ブランチ
ブランチ名 | 対応環境 | 備考 |
---|---|---|
production | 本番環境 | - |
staging | ステージング環境 | - |
integration | 統合環境 | 主にQAで使用します。 |
dev-xxx | 開発者毎のリモート環境 | 開発者は少なくとも1つ自分専用のホスティングされた環境を持っています。 |
feature/xxx | ローカルおよび開発者毎のバックエンド環境 | 機能追加時はローカルから開発者毎のリモート環境のバックエンドに接続します。 |
開発ステータス
ステータス名 | 定義 | 対応環境 |
---|---|---|
Not Started | 担当メンバーアサインされた状態 | - |
SBI レビュー済 | PBIの内容がSBIに分割されメンバー間のレビューが終わった状態。 | - |
作業中 | 実際に開発作業を実施している状態です | ローカル環境 / 開発者毎のリモート環境 |
セルフレビュー | 開発が完了し、開発者自身で動作確認・テストケースの作成をしている状態。この時点でドラフトPRが作成される | ローカル環境 / 開発者毎のリモート環境 |
レビュー | PR が Open され レビューを受けている状態 | ローカル環境 / 開発者毎のリモート環境 |
QA | PR が Approveされ統合環境でQAを実行している状態 | 統合環境 |
受け入れ中 | PRがマージされステージング環境でカスタマーサポートチームが変更内容を確認している状態 | ステージング環境 |
リリース待ち | カスタマーサポートチームの確認が完了した状態。 | ステージング環境 |
完了 | stagingブランチproductionブランチへマージされから本番環境で稼働している状態 | 本番環境 |
実際に使用しているKANBAN
このような運用をしている理由
当初の開発ステータスはTodo→Doing→Done程度のごく簡素なステータス管理でしたが 試行錯誤の末、現在の運用に落ち着きました。
フルリモート・フルルレックスの環境でチームメンバー同士が効率よく協力し合うためには、ある程度詳細なステータスの可視化が必要でした。
また、ステータスに対応した環境をそれぞれ用意することで、レビュワーは開発者にどこにデプロイされているか確認しなくてもレビューを行うことが可能になりました。
おわりに
今回はBYARDの開発の運用方法の極一部をお伝えしました。
他にもチーム開発を運用する上で工夫していることがたくさんあります。
例えば..
- CI/CD パイプラインの構築
- 静的解析
- ユニットテスト
- E2Eテスト
- デプロイ
- PBIの管理
- Notionの活用
- 開発ロードマップの公開方法
これはまた別の記事で詳細をお伝えしてきます🙏
ご清覧ありがとうございました🙏
Discussion