イテレーション開発とは?
イテレーション開発とは、いわゆるアジャイル開発のことを示すことが多いです。アジャイル開発における1つの期間のことをイテレーションといいます。なので、アジャイル開発のことをイテレーション開発とも言います。イテレーションの期間は1週間~2,3か月などプロジェクトによって異なります。
チケット駆動開発
昨今、イテレーション開発においては、チケットをもとにグルーピングし開発を進める事が多いです。チケットツールとしては、RedmineやBacklog、Jiraなどが有名です。
イテレーション開発においては、1つのイテレートに対し1つのリリースチケットを準備します。そのリリースチケットに改修内容のチケットをぶら下げるようにして管理をします。
イテレート単位
1イテレート = 1リリース管理チケットで管理する範囲です。
イテレートの期間はプロジェクトの特性に応じて変化します。CI/CDを充実させていたとしてもリリース行為にはリスクが伴います。そのため、安易に実施しない方向性を取ることが良いと考えます(IT企業の内部システムなどでしっかり体制がとられているのであれば別です)。
また不具合リスクを回避するため、異常に短いイテレートは存在させないことが大事です。日頃2,3か月に1度のリリースなのに、急に2週間に1度などにすると不具合が発生する可能性が高まります。
イテレーション開発の役割分担
主な役割分担としては以下図の通りです。
3つの領域に分割できます。
工程 | 工程名 | 主担当 |
上流工程 | 計画・分析 | プロジェクトマネージャ |
中流工程 | 設計・実装 | 開発 |
下流工程 | テスト・リリース | プロジェクトマネージャ |
特にプロジェクトマネージャが担当すべき業務内容を上流下流に分けて説明します。
上流工程(計画・分析)
開発計画を策定します。(開発着手より1か月前等、余裕をもって開始します。)必要な対応は以下の通りです。
- イテレート単位を決定する。
- 想定リリース日を設定し、確保可能な工数をチェックし、着手開始日を確定させる。
- リリース日のポイント:
できれば火曜~木曜が好ましい。理由としては、一般的に月曜日は休日明けであり、金曜日は翌日が休日となるためである。 - リリースリハーサル日のポイント:
短くともリリース日よりも3営業日以上前が好ましい。できれば1週間前が良い。
- リリース日のポイント:
- 使える開発工数 + 予備(想定要件外、保守対応)より、必須着手日を設定する。
- 必須着手日のポイント:
開発者の体調不良発生なども考慮し、前寄せで開発実施することが好ましい。
- 必須着手日のポイント:
- チケット管理ツールなどでマイルストーン設定/管理チケットの起票をする。
中流工程(設計・実装)
プロジェクトマネージャとしては、開発側・ビジネス側との調整を適宜実施しながら、テスト工程・リリース工程にて必要なドキュメントの準備を行う。
下流工程(テスト・リリース)
リリースリハーサル前には、すべての改修が完了しチケットに反映されていることを確認する。
リリース作業後、受入試験(UAT)を実施する
受入作業時のポイントは以下の通り
- 改修内容のチケット内容をもとにパターン出しを行い、試験を実施する。
- ビジネス側でも試験可能な内容は積極的にビジネス側にも確認をいただく
- 全受入試験完了後に、リリースチケットを完了に変更し、リリースを終結する。
コメント