短期間の開発を繰り返してソフトウエアを完成させるアジャイル開発の監査を取り上げる。アジャイル開発は柔軟性が高い分、リスクも発生しやすい。内部監査人は客観的に全体的な視点を持って監査することが求められる。

 本連載は、AI(人工知能)時代に求められるIT監査のあり方について、内部監査人の立場から解説する。

 「AI時代」と題しているが、AIの影響のみを対象にしているわけではない。アジャイル開発やクラウドコンピューティング、ビッグデータといった、AIとともに急速に普及してきたIT関連の事象を、内部監査にてどのように扱うべきかを広く取り上げていく。

 監査人の視点を知ることは、監査を受ける側となる情報システム部門やユーザー部門に所属する情報システムの管理者などにも役立つ。監査人の視点は、日ごろの情報システムの開発や運用において重視すべき視点となるからだ。

 今回はアジャイル開発の監査について取り上げる。企業を取り巻く急速な環境変化に追いつくために、企業経営を支える情報システムも迅速な開発が必要になっている。

 今回は柔軟なシステム開発手法として採用が増えているアジャイル開発について、手法の概要を改めて確認した後に、内部監査人が監査時に注目すべき要点を解説していこう。

繰り返して全体を完成させる

 監査の対象となるアジャイル開発について、簡単に概要とその特徴を振り返っていこう。

 アジャイル開発を簡単に表現すれば、「従来の開発手法に比べて柔軟にソフトウエアを開発する手法の総称」となる。以下ではアジャイル開発の代表的な手法であるスクラムと従来手法のウオーターフォール型の開発を比較して、その特徴を見ていこう。

 なじみのあるウオーターフォール型の場合、ソフトウエアの開発工程を、企画、要件定義、設計、プログラミング、テスト、リリースに分け、段階を経て順に実行するのが一般的だ。上流から下流まで水の流れのごとく開発が進むことからウオーターフォール型と呼ばれている。

 一方のスクラムの場合は、企画、開発などに工程を分けずに、1週間~4週間で完成が可能な「スプリント」と呼ぶ単位に分けて開発していく。スプリントごとに成果物である「プロダクト」を開発して、リリースしていき、これを繰り返す(イテレーション)ことでシステムを開発する。

図 アジャイル開発の概念
短期間のスプリントを繰り返してシステムを完成させる
[画像のクリックで拡大表示]

 ウオーターフォール型とスクラムでは開発の工程だけでなく、考え方も大きく異なる。ウオーターフォール型開発の特徴は、開発の企画段階から精密に計画を立て、リリースまでの各工程をあらかじめ定めた計画に沿って厳格に行うことだ。工程ごとに文書が作成されていく。数カ月から数年の長期間を要するプロジェクトもあり、大規模なソフトウエアの開発に採用されるケースが多い。

 一方のスクラムの場合、計画段階で決めるのは大まかな仕様と要求だ。開発途中に仕様や設計の変更があるのは当然との前提に立っている。スクラムの場合、ソフトウエア全体として必要な要件を「プロダクトバックログ」として決め、その中から、スプリント期間中に行う要件「スプリントバックログ」を抽出して開発していく。

 開発の結果スプリント終了時にリリース可能な成果(インクリメント)を含んだソフトウエアをプロダクトとしてリリースする。このスプリントをイテレーションしていくことにより、最終的なプロダクトとしてソフトウエアが開発していく。

この先は有料会員の登録が必要です。「日経コンピュータ」定期購読者もログインしてお読みいただけます。今なら有料会員(月額プラン)が2020年1月末まで無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら