A 社は,電車や飛行機などの移動手段と宿泊施設をセットにしたパッケージツアーをインターネットで販売している。このサービスを提供している現行システムに,移動途中や宿泊先近辺の商業施設と提携して,観光地の情報提供やクーポン配布を行うサービスを追加することになった。その開発手法として,アジャイルソフトウェア開発手法(以下,アジャイル開発という)の一つであるスクラムを適用する。
〔開発体制の検討〕 本開発を通して,A 社でアジャイル開発の経験者を育成するために,プロジェクトメンバーに求められる役割と割り当てるメンバー(M1~M7)を検討した。開発体制を表1 に示す。
表1 開発体制
役割 | 役割の説明 | メンバー | メンバーの経験 |
|---|---|---|---|
プロダクトオーナー | 提携する商業施設との調整を行い,追加するサービスに必要な機能を定義し,その機能を順位付けする。 | M1 | パッケージツアーの企画経験が豊富である。 アジャイル開発の経験はなく,知識もほとんどない。 |
スクラムマスター | メンバー全員が a に協働できるように支援,マネジメントする。 | M2 | アジャイル開発の経験はあるがスクラムマスターの経験はない。 |
アジャイルコーチ | 週に2 日,社外から招へいされ,メンバーに対してアジャイル開発手法の導入や改善を支援する。 | M3 | スクラムマスターの経験が豊富である。 |
開発チーム | 実際に開発を行う。 | M4,M5 | アジャイル開発の経験はないが,現行システムをウォータフォールで開発した経験はある。 |
開発チーム | 実際に開発を行う。 | M6,M7 | アジャイル開発の経験はあるが,現行システムを開発した経験はない。 |
〔開発プロセスの検討〕 アジャイル開発の経験者からアジャイル開発の経験が少ないメンバーに経験を伝えるために,プランニングポーカーやペアプログラミングなどのプラクティスを幾つか導入することにした。検討した開発プロセスを表2 に示す。
表2 開発プロセス(抜粋)
大分類 | 小分類 | 実施項目 |
|---|---|---|
プロジェクト立上げ | プロジェクト方針の検討 | 追加するサービスの目標,あるべき姿,基本的価値観の共有を図る。 |
プロダクトバックログの決定 | システムの目的の合意 | システムの目的やゴールの共有を行う。 |
プロダクトバックログの決定 | リリース計画 | プロダクトバックログのグルーピングを行い,プロダクトバックログアイテムを見積もる。 |
スプリント | スプリント計画(イテレーション計画) | プランニングポーカーを用いて,チーム全員の知識や経験を共有しながら見積りを行う。実施するタスクをスプリントバックログに追加する。 |
スプリント | スプリント | タスクを実施する。プロダクトコードを開発する際は,ペアプログラミングを行う。デイリースクラム(日次ミーティング)でチームの状況を共有する。 |
スプリント | スプリントレビュー(デモ) | スプリントの成果物をプロダクトオーナーにデモする。その結果を,次のスプリント計画のインプットにする。 |
スプリント | レトロスペクティブ(ふりかえり) | スプリント中の改善事項を検討し,次回以降のスプリントで取り組むべき課題にする。 |
ペアプログラミングを行う際,メンバーの割当てとして b 担うことにした結果,経験と知識を共有することができた。
設問 表1 中の a ,本文中の b に入れる字句の組合せはどれか。解答群の中から最も適切なものを選べ。
(一) 自律的
(二) 組織的
(三) M4 がドライバー,M5 がナビゲーターを
(四) M4 がドライバー,M6 がナビゲーターを
(五) M4 がナビゲーター,M6 がドライバーを
(六) M4 とM5 がドライバーとナビゲーターを交代で
(七) M4 とM6 がドライバーとナビゲーターを交代で
a | b | |
|---|---|---|
ア | (一) | (三) |
イ | (一) | (四) |
ウ | (一) | (五) |
エ | (一) | (六) |
オ | (一) | (七) |
カ | (二) | (三) |
キ | (二) | (四) |
ク | (二) | (五) |
ケ | (二) | (六) |
コ | (二) | (七) |