第5回:アジャイルに対する誤解(2)–ウォーターフォールと比べて品質はどうなの?

今回は「第5回:アジャイルに対する誤解(2)–ウォーターフォールと比べて品質はどうなの?」についてご紹介します。

関連ワード (不確実性の時代に、アジャイル開発で向き合っていこう、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


 現代社会は多くのものがソフトウェアで成り立っており、絶えず変化するニーズに応じられる柔軟でスピーディーな開発が求められています。その一方、何が正解(ゴール)なのかが分からない、という不確実性の時代でもあります。不確実性に対処するには「アジャイル開発」が最も有望ですが、その成功裏の実践には、従来の常識の解体と再構築が必要です。エンタープライズにおけるアジャイル開発の実践が待ったなしの状況の中、理論、課題、近年の動向も踏まえ、実例を交えながら幅広く解説します。

 第4回では、アジャイルについてよく誤解されるテーマの1つである「文書化」について解説しました。今回は根深い誤解がみられるもう1つの最頻テーマ、「品質」についてひも解いていきます。

 なお、「品質」といった場合の対象には大きく2つあり、1つ目は作成されたものが仕様通りに安定して動くという意味(生成されたシステムの品質)、2つ目は、システムの仕様を決定する元となる要求自体が安定し、完全性があるという意味(要求自体の品質)です。このうち2つ目については、これまでに触れてきた通り、アジャイルではスプリント(反復)ごとに実施するデモを通じて得られたフィードバックを基に軌道修正を図ることで、要求の品質向上を図る仕組みがプロセスに組み込まれており、その優位性は明らかでしょう。よって、ここでは1つ目の「生成されたシステムの品質」に主眼を置いて解説します。

 筆者の推測では、「アジャイル(俊敏な)」という言葉から、「アジャイルは確かに早く開発できるのかもしれないが、早さを優先する結果、品質が犠牲にされ、その点ではウォーターフォールに劣るのではないか」という連想をされている方が非常に多いように思います。別の言い方をすれば、ある一定の品質を確保するために必要な工数が、ウォーターフォールとアジャイルで同じであるという前提に基づき、アジャイルでは「そこの工数を削る(その分出来上がりは早い)」、という理屈なのだと思われます。この誤解を解くためには、両者の「品質(Q)」「コスト(C)」「納期(D)」に関する根本的な考え方の違いを押さえる必要があります。

 従来のウォーターフォール方式では、まずシステムが満たすべき全ての要求を洗い出し、それらの要求を実現するためにどの程度のコスト(C)と納期(D)がかかるのかを見積ります。この方式の問題は、大きく2つあります。1つ目は第2回で見たように、何といっても要求自体の確度が低いプロジェクト初期の段階で、正確にコスト(C)と納期(D)を見積もることは至難の業であるということ。2つ目は、1つ目の難しさがあるにもかかわらず、ビジネス上その他の理由からコスト(C)と納期(D)を固定し、さらに、出来上がったシステムが使い物にならないと困るので品質(Q)も固定してしまえ、となるわけですが、このような方程式が成立しないことは容易に想像できるでしょう。

 品質(Q)を確保するためにはレビューやテストなどの工数をかける必要があり、コスト(C)と納期(D)とはトレードオフの関係にあります。つまり、満たすべき要求の数(量)が一定という条件の下、後者2つを固定した状態で何か想定外のことが発生した場合(実際、システム開発では往々にして想定外のことが起きるわけですが)、やむを得ず品質(Q)を調整弁とすることが開発チームにとって唯一の窮余の策となってしまうのです。

 一方のアジャイル方式では、あらかじめコスト(C)と納期(D)を固定し、その制約内で実現可能な要求がどの程度かを見積もります。つまり、優先度の高い要求から実現していくことで、品質を最優先しつつ、ユーザーにとっての価値(実現される要求の数または量)を最大化していくという考え方です。

 このように書くと、アジャイルではユーザーが必要としている機能が充足されていない印象を持つかもしれませんが、システムで実際に使われている機能は全体の20%程度であり、64%はなくてもほぼ困ることはない、という米国の調査会社Standish Groupによる調査結果があります(図1)。これは有名な「パレート原理(20%の機能が80%の使用率を占める)」とも整合性のある結果といえます。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
5月17日は「くぁwせdrftgyふじこlp」「AQUOS R6」が話題に 今日のトレンドをサクッとおさらい : ほぼ日刊ITトレンドワード
ネットトピック
2021-05-18 05:42
「チェック・ポイントはファイアウォールだけではない」–佐賀新社長が方針表明
IT関連
2023-07-15 00:41
三井不動産リアルティ、住宅ローン業務システムをマルチクラウド化
IT関連
2023-11-09 18:44
組込系OS最新世代「Windows 10 IoT Enterprise」はどう使うべきか
IT関連
2021-06-26 17:58
マイクロソフトとNECの協業拡大は何が新しいのか、どんな意味があるのか
IT関連
2021-07-15 20:49
仮想通貨、米有力企業で受け入れ拡大 ビットコイン急上昇、5万ドル台に
IT関連
2021-02-19 06:04
IFSジャパン、ビジネス拡大に向け国内の事業戦略
IT関連
2023-04-15 15:11
在宅勤務でうつ病「早期受診が大切」 コミュニケーション不足から不安増幅の恐れ
IT関連
2021-01-26 21:00
【3月17日】掲載記事アクセスランキング・トップ5―1位は2022年10月1日から実施Google Cloud値上げ
IT関連
2022-03-18 10:10
ローコード開発は実際にどこまで使えるのか
IT関連
2022-12-28 09:43
下げ止まらない日経平均–業績好調でも景気敏感・製造業が買われにくい理由
IT関連
2021-08-02 11:41
Snyk、AI型アプリケーションセキュリティ管理の「AppRisk Pro」を発表
IT関連
2024-05-03 01:49
セキュリティの観点から議論される、オープンソース開発者への適切な対価の必要性
IT関連
2022-01-29 11:52
「脅威ハンティング」による脆弱性悪用攻撃対策の実例
IT関連
2023-07-19 22:17