The scale and complexity of systems is increasing dramatically. Ultra-large-scale (ULS) systems are systems of unprecedented scale in some of these dimensions:
- lines of code
- amount of data stored, accessed, manipulated, and refined
- number of connections and interdependencies
- number of hardware elements
- number of computational elements
- number of system purposes and user perception of these purposes
- number of routine processes, interactions, and “emergent behaviors”
- number of (overlapping) policy domains and enforceable mechanisms
- number of people involved in some way
How are ULS systems different?
The sheer scale of ULS systems changes everything. ULS systems will necessarily be decentralized in a variety of ways, developed and used by a wide variety of stakeholders with conflicting needs, evolving continuously, and constructed from heterogeneous parts. People will not just be users of a ULS system; they will be elements of the system. Software and hardware failures will be the norm rather than the exception. The acquisition of a ULS system will be simultaneous with its operation and will require new methods for control.
These characteristics may appear in today’s systems and systems of systems, but in ULS systems, they will dominate. Consequently, ULS systems will place unprecedented demands on software acquisition, production, deployment, management, documentation, usage, and evolution practices.
The ULS systems notion has inspired us to ask new questions about software-reliant systems:
- What new quality attributes arise due to scale?
- What types of analyses are required to understand and design (at all levels) systems at scale?
- Are new architecture design principles needed?
- What new strategies are needed to control, predict, and bound the behavior of systems at scale?
The SEI strives to answer these questions and to develop principles and technology to understand, control, and bound the behavior of systems that exhibit characteristics of ULS systems. Specifically, we focus on socio-adaptive systems and cyber-physical systems.
The book Ultra-Large-Scale Systems: The Software Challenge of the Future is the product of a 12-month study of ULS systems software led by the SEI in 2005-2006. The study brought together experts in software and other fields to examine the consequences of rapidly increasing scale in software-reliant systems. The report detailed a broad, multidisciplinary research agenda for developing the ULS systems of the future.