[論文レビュー] A Multi-dimensional Study of Requirements Changes in Agile Software Development Projects
本研究は、ニュージーランドおよびオーストラリアの50名の実務者を対象とした混合研究手法を通じて、アジャイルソフトウェア開発における要件変更(RCs)の多次元的分類を提示する。その結果、RCsは主に機能的であり、人間中心的であり、日常のステンドアップ会議で最も頻繁に発生することが明らかになった。アジャイルチームは変更を受け入れることに消極的である一方で、多様な処理手法を用いているが、これはアジャイル手法の導入の主な動機が変更への対応であるという一般的な認識とは対照的である。
Agile processes are now widely practiced by software engineering (SE) teams, and the agile manifesto claims that agile methods support responding to changes well. However, no study appears to have researched whether this is accurate in reality. Requirements changes (RCs) are inevitable in any software development environment, and we wanted to acquire a holistic picture of how RCs occur and are handled in agile SE teams in practice. We also wanted to know whether responding to changes is the only or a main reason for software teams to use agile in their projects. To do this we conducted a mixed-methods research study which comprised of interviews of 10 agile practitioners from New Zealand and Australia, a literature review, and an in-depth survey with the participation of 40 agile practitioners world-wide. Through this study we identified different types of RCs, their origination including reasons for origination, forms, sources, carriers, and events at which they originate, challenging nature, and finally whether agile helps to respond to changes or not. We also found that agile teams seem to be reluctant to accept RCs, and therefore, they use several mitigation strategies. Additionally, as they accept the RCs, they use a variety of techniques to handle them. Furthermore, we found that agile allowing better response to RCs is only a minor reason for practicing agile. Several more important reasons included being able to deliver the product in a shorter period and increasing team productivity. Practitioners stated this improves the agile team environment and thus are the real motivators for teams to practice agile. Finally, we provide a set of practical recommendations that can be used to better handle RCs effectively in agile software development environments.
研究の動機と目的
- 実際のアジャイルソフトウェア開発プロジェクトにおける要件変更(RCs)の発生源、伝達方法、処理方法を理解すること。
- アジャイル・マニフェストに謳われる通り、アジャイル手法がRCへの対応をより効果的に行えるかどうかを検証すること。
- アジャイル手法の導入の主な動機が変更への対応であるかどうか、特にその動機が中心的であるかどうかを特定すること。
- アジャイル文脈におけるRCの包括的分類(種別、発生源、形態、困難さの指標を含む)を構築すること。
- アジャイルチームが実務においてRCの処理を改善するための実用的提言を提供すること。
提案手法
- ニュージーランドおよびオーストラリアの10名のアジャイル実務者を対象とした半構造化インタビューを実施し、研究設計の策定を支援した。
- 既存のRC分類とアジャイル特有の研究におけるギャップを特定するため、体系的文献レビューを実施した。
- アジア、オセアニア、北米、ヨーロッパをカバーする40名のグローバルなアジャイル実務者を対象に、詳細なアンケート調査を実施した。
- RCの種別、発生源、発生イベント(例:日常のステンドアップ会議)、形態、伝達経路、変更理由に関するデータを収集した。
- 質的および量的データを分析し、人間的および非人間的側面に基づくRCの概念的枠組みを構築した。
- RCの困難さを測定するための指標を提案した。これには、変更要請の到着レートや要件の変動性が含まれる。
実験結果
リサーチクエスチョン
- RQ1アジャイルソフトウェア開発プロジェクトにおける要件変更の主な種別、発生源、形態は何か?
- RQ2どのアジャイルカンファレンスやイベントで要件変更が最も頻繁に発生するか?
- RQ3アジャイルチームは要件変更をどのように認識し、処理しているのか。どのような戦略を用いているか?
- RQ4変更への対応がアジャイル手法を導入する主な理由であるのか、それとも他の主要な動機が存在するのか?
- RQ5実際の現場において、アジャイル手法が要件変更の処理をより効果的に行える程度はどの程度か?
主な発見
- 要件変更の大多数は機能的性質を有しており、ソフトウェア中心の変更よりも人間中心の変更がより一般的である。
- 日常のステンドアップ会議が、要件変更が最も頻繁に発生するイベントであり、次いで顧客対応会議およびスプリント計画会議が続く。
- 顧客が要件変更の主な発生源であるが、プロダクトオーナーやチームメンバーなど他のステークホルダーも貢献している。
- アジャイルチームは新しい要件を受け入れることに対して消極的である傾向があり、バックログの精練や受容基準の明確化といった緩和戦略を用いている。
- 変更への対応がアジャイル導入の主な動機ではない。むしろ、迅速な納品とチーム生産性の向上が主な動機として挙げられている。
- 要件変更の顕著な割合が、不十分な文書化、分析の急ぎ、初期要件の誤りといったソフトウェア中心の要因に起因しており、これはアジャイル原則の誤った適用を示唆している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。