この特集シリーズの前回の記事では、アジャイル開発とDevOpsの概要と、導入のハードルとなる課題を説明した。今回は課題を踏まえつつ、企業がアジャイル開発とDevOpsを活用するためのポイントを見ていこう。

 まず前提として重要なのが、開発するシステムの種類、開発元の企業の規模にかかわらず、「マネジメントを担う組織の長がアジャイル開発やDevOpsを正しく理解したうえで採用を推奨している」ことだ。

 問題になるのは、例えばアジャイル開発・DevOpsで開発を始めたものの、ウオーターフォールの考え方が抜けきらない組織の長が「いつ完成するのか?」「トータルでいくらかかるのか?」「設計書を確認したい」などと、頻繁に報告を要求してくるケースである。開発チームのメンバーが回答に余計な時間を割かざるを得なくなり、肝心の開発が遅れかねない。

 そのため筆者は、開発プロジェクトが始動する前に役員・プロジェクト責任者・各部門長など「組織のマネジメントを担い、かつソフトウエア開発のステークホルダーである人々」に対してアジャイル開発・DevOpsの概要を説明し、その有効性を説得することを推奨する。

 プロジェクトが動き始めた後は、ステークホルダー陣に月に1回以上の定期的な報告の場を設けるとよい。実際に構築したプロダクトや、現在の作業進捗状況が予定とどのくらい異なるか分かる「バーンダウンチャート」、要件や開発すべき機能をまとめ、タスクの進捗状況が分かる「プロダクト・バックログ」などを提示して説明し、ステークホルダーの理解を得る。

 そのほか、特に大規模な企業情報システム(エンタープライズシステム)にアジャイル開発・DevOpsを導入する際は、大規模ゆえの課題が発生する。今回は「システム」「体制や組織」という切り口で、課題とその解決策を紹介する。もう1つ「開発プロセス」という観点もあるのだが、こちらは特集の次回で詳しく解説する予定だ。

システムのポイント:適切な開発手法の見極めとシステム分割

 一般にスクラムの手法でアジャイル開発・DevOpsを実施する際、適切な開発チーム(スクラムチーム)の人数は3~9人といわれている。ところが大規模な企業情報システムの開発現場では、もっと多人数の開発メンバーを必要とすることが多い。規模が大き過ぎて、3~9人のチームで開発を進めるのは現実的ではない。

 この場合、取り得る手段は2通りある。「大規模システムを3~9人の適正人数で対応可能な細かいシステムに分割したうえでアジャイル開発・DevOpsを導入する」か、または「分割が難しいならアジャイル開発・DevOpsは採用せず、システム全体をウオーターフォールで一括開発する」かのどちらかだ。

 可能な範囲で、システムの一部だけにアジャイル開発・DevOpsを導入する手もある。まず、システム全体をサブシステム単位または機能単位に分割し、「改修などの変化が多いと想定されるもの」と「そうでないもの」に分類する。前者はアジャイル開発とDevOps、後者はウオーターフォールと、特性に合わせて開発手法を選択できれば理想的だ。

 とはいえ、ただ単純にシステムを分割しただけでは不都合も生じる。例えば「システム分割後に、複数のシステム間で機能が重複していると分かった」ケースや、「システム間で異なるデータ連携方式を想定して設計などを進めてしまった」ケースだ。こうした事象が起こると、後日システムを結合する際に多大な工数を割くことになってしまう。アジャイル開発・DevOpsの目標であるスピードとアジリティーが実現できない。そのため、システム分割の際には複数の開発チーム間で方針およびルールを統一する必要がある。方針策定時に考慮すべき点の例を、以下に挙げた。

システム分割時に共有しておくべき方針の例
  • 業務モデル(業務の内容・機能や手順などを図式化したもの)と分割されたシステムがリンク(対応)していること
  • 分割されたシステム同士が疎結合であること(あるシステム内部の変更が、他システムに影響を与えない)
  • 分割されたシステム同士は標準的なインターフェースでデータをやり取りすること

 開発サイクルを回し始める前に、以上のようにシステム分割後の絵姿や、各システム間のデータ受け渡しの方式などを取り決めておこう。

 なお、これはウオーターフォールを採用したシステムと並行して開発を進める場合も同様である。こうした方針を取り決めて共有しておかないと、アジャイル開発・DevOpsで開発したシステムとウオーターフォールで開発したシステムとの間で仕様の整合性が取れないといった問題が起こり得る。相互の開発チームに悪影響が出ないよう、十分な情報共有が必要だ。

この先は日経クロステック Active会員の登録が必要です

日経クロステック Activeは、IT/製造/建設各分野にかかわる企業向け製品・サービスについて、選択や導入を支援する情報サイトです。製品・サービス情報、導入事例などのコンテンツを多数掲載しています。初めてご覧になる際には、会員登録(無料)をお願いいたします。