Category: Business Intelligence

アジャイル開発を進める6つのポイント 0

アジャイル開発を進める6つのポイント

[ad_1] 6割以上の企業がアジャイル開発を導入 コロナ禍以降、大企業はこぞってDXを推進している。急速な社会の変化の中で企業の生産性や顧客満足度を向上しコストを削減していくためにはデジタル化は不可欠の要素だからだ。 そうしたDX戦略の要となるシステム開発は、インターネットの普及やクラウド化などの影響で開発手法も大きく変わろうとしている。 これまでは要件の定義から設計、開発、テストといった具合に滝のように流れるウォーターフォールという手法でシステム開発が進められてきた。 ところが最近では開発の単位を細かく区切り、それぞれで実装とテストを反復しつつ開発を進めていくアジャルという開発手法に注目が集まっている。 世界屈指のテクノロジー調査会社、ガートナーが2023年7月10日~12日にかけて行ったアジャイルの採用状況の調査(対象は400件)によると、「全てアジャイル開発」と答えた企業は17.5%、「一部アジャイル開発」と答えた企業は44.3%、すでに6割以上の企業がアジャイル開発を導入していることが明らかになっている。 「数年前からアジャイル的な開発は増えてきています。大企業では多くの開発案件が存在するのでどこかの案件でアジャイル開発が行われているということも珍しくはなくなりました。ビジネス環境の変化に迅速に対応する必要があるからです。アジャイル開発でより早くより安く開発したいという思いがあるのだと思います。ただ今までウォーターフォールで開発してきたものをいきなりアジャイルで開発するのは難しい。新しく作る部分や新しいアプリなどでそうした手法が注目されているのだと感じています。一方でアジャイル開発には向かないと思われていた領域でもアジャイル開発の採用が検討されるケースも出てきています」 ガートナージャパンのシニアディレクターアナリストの片山治利氏はこう解説する。 「アジャイル開発とは何か」 そもそもアジャイル開発とは何か。片山氏は「正解がわからない状態で、正解に近づくためのアプローチ(開発手法)」であるという。 Incremental(少しづつ)とIterative(繰り返し)を行い試行錯誤の中でValue(ビジネス価値)を実現していくのが大きな特徴だ。 ウォーターフォールとの違いについて片山氏は「従来のウォーターフォール型開発では外注にお願いしてプロジェクトを進め、いったんプロジェクトが完了すればチームが解散する。後どうなっているのかがわからない。それに対してアジャイル開発では正解に近づくために少しずつ、繰り返しながら進めていく開発なので、成果を確認しながらやっていくことができます。作りっぱなしにならないというのが大きな特徴だと思います」と語る。 片山氏はアジャイルを4つのパターンに類型化している。 1番目は短期間のうちに開発を繰り返していくやり方。1週間から2週間(期間は案件で決められる)を基準にタイムボックスという期間を構築し、そのタイムボックスごとに仕様設計や開発、リリースを行うスプリントを固め、この工程を何度も繰り返して開発を行う手法だ。製造の工程から無駄を省き必要なものだけを残すリーン開発(トヨタの生産方式が応用されたもの)などでよく利用されている。 2番目は上流工程を少しずつ繰り返すパターン。要件定義の部分を繰り返して議論を重ね、開発工程をウォーターフォールで進める手法だ。ユーザーの視点に立ってサービスやプロダクトの本質的な課題・ニーズを発見し、ビジネス上の課題を解決するデザインシンキングなどで利用されている。 3番目は、要件定義・設計をやった後にプロトタイプを作成し、ユーザーが試したフィードバックを受けつつ改善を繰り返す手法だ。パッケージソフトウエアなどを採用する際に利用される手法で、大手航空会社が海外で利用されている予約・発券システムを導入する際に活用された。 4番目は最初に要件定義やグランドデザインを決め、機能単位、稼働単位で五月雨式に開発する手法だ。基幹系のシステム開発など大規模な開発などで活用されている。大手不動産会社がマンション管理や販売管理などの業務システム群の統合と改善をおこなったときにこの手法を利用したほか、大手損害保険会社でも自賠責保険のシステムを再構築した時に活用している。 「議論の中には、1番は本物だけれども2番から4番は偽物なんだという意見もありますが、現場で案件を進める立場からすると、本物も偽物もない。案件の特徴によって合理的な手法を選択すればいいわけです。最近はローコード、ノーコードなどの開発も進んでいます。こうした開発手法では2番と3番を一緒にしたような開発手法も珍しくないようです」(片山氏) アジャイルは「安い」「早い」というイメージが持たれているが必ずしもそうではない。 「アジャイルは試行錯誤の中で開発を進めますが、ウォーターフォールは段取りよく進めていくわけですから、ある程度の規模をもつシステムを開発する場合、アジャイル開発の方がウォーターフォールよりも工数もかかりますし、期間が延びたりすることもあります。(ゴールが明確でプロセスの予測可能性が高い場合などでは)ウォーターフォールをアジャイル的なやり方に変えただけでは、逆にコストが高くなってしまうということもあるのです」(片山氏) アジャイル開発を始めるときに抑えておくべきポイント ではアジャイル開発を進めていく際にどのようなことに注意すればいいのだろうか。片山氏は6つのポイントを挙げている。 「なぜアジャイルか?」について共通認識を持つ...