The SEI helps advance software engineering principles and practices and serves as a national resource in software engineering, computer security, and process improvement. The SEI works closely with defense and government organizations, industry, and academia to continually improve software-intensive systems. Its core purpose is to help organizations improve their software engineering capabilities and develop or acquire the right software, defect free, within budget and on time, every time.

System-of-Systems Engineering

The focus of our research in this area is on the ways in which the characteristics of systems of systems call for a transformation of engineering practices. In particular, we see that the successful development of complex systems of systems requires a new set of concepts, a revised set of life-cycle activities, attention to the role of emergence, and the application of a different set of technologies and techniques.

One life-cycle phase we are looking at is requirements engineering. Our investigation tells us that techniques and approaches for requirements engineering in a system-of-systems environment are not well understood because

A system of systems is owned and evolved by different organizations.

Constituents of a system of systems are at different points in their life cycles.

Several factors complicate the requirements engineering process in the system-of-systems context:

scale—increases the flexibility required of constituents of a system of systems while increasing the constraints imposed on the engineered solution

multi-domain—constituents from different domains may belong to different domains and a capability may be used in different domains

varied operational context—users operating with different workflows and under different business processes may use the same capability

decentralized control—a system of systems has more than one decision-making authority

rapidly evolving contexts—changes in technology, unpredictable user demands, and other modifications ripple through a system of systems

continuous and often disconnected execution of multiple life-cycle phases—constituents often are in different phases of their life cycles and those life cycles may differ from one another

opportunistic needs to collaborate and integrate—new demands create new opportunities that require more adaptation by constituents and the system of systems