全4228文字
PR

 DX(Digital Transformation)を進めるうえで押さえておきたいアジャイル開発とDevOps。前回の記事では「システム分割の粒度」や「体制や組織」の観点から、の導入・活用に必要なポイントを紹介した。今回は「開発プロセス」に着目し、導入の勘所を探る。実際に開発に入った際、どのようなプロセスで作業を進めるべきかを整理しておこう。

開発プロセスのポイント①:コードデプロイプロセスの実現

 開発環境や一部の本番環境で、コードコミット(コードの変更点を確定させること)の自動化やテスト自動化を実現している企業は多い。だがエンタープライズシステムにおいて、コードコミットから本番環境までのプロセス全体を自動化できている例はまだ少ない。

 アジャイル開発・DevOpsにおいて自動化は、スピードとアジリティーを実現する重要な要素だ。しかし、ソフトウエア開発の各工程の担当者が個別に自動化を進めると、「自動化範囲の重複」「セキュリティー試験など必要なテストの欠落」「リリースの受け入れ基準の不明確化」といった問題が起こりかねない。

 こうした事態を避けるには、ソフトウエア開発の全体プロセスと⾃動化を⼀貫して整備する必要がある。そのためにアジャイル開発・DevOpsで⼀般的に使われているのが、「コードデプロイプロセス」だ。

 コードデプロイプロセスとは、ソフトウエアを開発(コーディング)し始めてからユーザーに提供するまでの一連のプロセスを5つのステージに分け、自動化したものである。コードデプロイプロセスではコミットやテスト作業だけでなくプロセスまで自動化することで、高速かつ高品質な開発を目指す。

基本的なコードデプロイプロセス
基本的なコードデプロイプロセス
(図は筆者が作成。以下も同じ)
[画像のクリックで拡大表示]

 コードデプロイプロセスを5段階でもう少し詳しく説明すると、以下のようになる。

コードデプロイプロセスにおける5つのステージ
  • コードコミットステージ:単体テストとコード解析を自動化することで、技術レベルでの検証を行う。
  • 機能試験ステージ:機能および非機能レベルの検証を行う。
  • ユーザー受け入れ試験ステージ:実際の業務の確認だけでなく、魅力品質(使いやすさ)などのユーザー価値の検証を行う。
  • 性能試験ステージ:性能面での検証を行う。
  • 本番リリースステージ:ユーザー環境へのリリースを実施し、最終確認を行う。