A critical missing component of software development, especially agile software development, and even more especially agile software development is the notion of a System and a System of Systems.
The majority of the literature based on traditional and agile development paradigms is focused on creating software and calling that the creation of Value.
In the Systems Engineering and the System of Systems paradigm, there are three areas of considerations:
- A Capability refers to the ability to achieve user objectives in a mission or business context
- User capabilities are often based on the
- Collective effects of multiple systems (‘material’) as well as other factors beyond the systems themselves (training, procedures, etc. or ‘non-material’)
- The development of a system begins with a user need based on a gap in needed capability and a proposed system focuses on filling that capability gap
- From the earliest point in a system life cycle, need a description of
- Role of a new system in supporting the needed user capability
- How the system is envisioned to function in the operational or business context
- This description includes the constraints this domain and context places on the system and the relationships, interfaces and dependencies with other systems supporting the capability.
When we hear we focus on Value always ask:
- How are you measuring that Value, it had better in:
- Measures of Effectiveness
- Measures of Performance
- Key Performance Parameters
- Technical Performance Measures
- What cost are you expecting to pay for that Value
- When do you need that Value to appear to meet your business or mission goals that satisfy those measures of Value?
Without answers to these questions, those claiming we focus on the production of value are using the words with NO units of measure.
Another example of Deepty.