Managing Mission Critical Requirements in an Agile Environment
Over the last two decades, Agile has been demonstrated to be a powerful approach to software and systems development. It has taken on a number of representations but there are features that most representations share – namely “flexibility” when dealing with requirements.
The common theme is for the user community (or the representative of the user community) to state in very broad terms what user functionality would be beneficial and then leave the details (and often the priorities’) to the software “whiz.”
This is seen by many as antithetical to mission or safety critical systems. Systems where the operational characteristics must be well understood to prevent loss of life or mission failure when the product performs differently than expected. In a similar manner the system must be reliable since it is essential for mission success or human safety.
Whether your system is essential to weapons deployment, autonomous vehicle control, space launch, or a medical device, the theme is the same:
- First, we need to understand the user’s needs and risks
- Second, we need to be able to depend on the product
- Third, we need to effectively communicate changes in needs as the product evolves
All of these involve requirements. The historical approach in the mission/safety-critical world has been overlapping reviews by stakeholders and Subject Matter Experts (SME) followed by rigid control of requirements.
The question is: Does the need to tightly control requirements mean Agile is not a candidate for software that impacts people’s lives and performs essential missions? At Afuzion, we believe the answer is NO. We see Agile as advantageous in developing mission and safety-critical software. But doing so requires “agility” in the techniques to be applied – techniques that meet the reliability and through vetting required of critical software but retain Agile’s cost and schedule benefits. One of the areas requiring agility is requirements management which will be the focus of this talk.
In this webinar, attendees will learn more about how:
- Agile can deliver cost and schedule benefits when developing mission or safety critical software
- Exploiting Agile requires adapting approaches often assumed for Agile – especially when it comes to requirements management
- When appropriately applied, Agile can give you a product that is more reliable/dependable than classical methods