Authors: Joy Beatty and Karl Wiegers
Agile development approaches are currently used in most software organizations at least some of the time. With the rise in popularity of agile methods, business analysts and product owners often use the term “agile requirements” to label their work.
We do not care for the term “agile requirements” because it implies that the requirements for an agile project are somehow qualitatively different from those for projects following other life cycles. A developer needs to know the same information to be able to correctly implement the right functionality regardless of the life cycle being used. Agile and traditional projects do handle requirements differently in various respects, particularly with regard to the timing and depth of requirements activities and the extent of written requirements documentation. Nonetheless, most established techniques for requirements development and management are useful on agile projects when thoughtfully applied, as described in our book Software Requirements, 3rd Edition (Microsoft Press, 2013). This is why we prefer the term “requirements for agile projects” over “agile requirements.”