Smart living environments require appropriate software infrastructures able to integrate independent subsystems and support their seamless cooperation: for example, cities abound with private and independent surveillance systems, which miss the opportunity to provide wider coverage of the city due to their inability to cooperate opportunistically.
Each subsystem must both exist as an independent entity and become part of wider systems when needed. This vision radically changes the notion of “integrated” system:
- Subsystems offer limited interaction capabilities and little possibility to be controlled
- Although the number of subsystems available at runtime might be huge, their cooperation can be ad-hoc and only needed in specific cases or conditions
- Often there is no prior, complete, knowledge of the subsystems, thus their presence and capabilities must be inferred dynamically when the need for cooperation arises.
- Recent solutions for the integration of these large-scale Systems of Systems (SoS) are domain and technology specific, aimed to solve particular problems or focused on systems heterogeneity, rather than aimed to manage these systems in different contexts and conditions.
The GAUSS project will deliver the methodological enablers required to identify, integrate, and manage “emergent” SoS (eSoS). These require dynamic and opportunistic engineering due to their intrinsically variable nature tied to their scale and heterogeneity. GAUSS will release a set of integrated technologies to address these engineering problems of eSoS at runtime, when specific execution contexts may invalidate design-time solutions. GAUSS will govern eSoS by enriching initial lightweight designs with concrete and contextualised aspects obtained from the runtime context.
GAUSS will contribute in three areas:
Models. GAUSS will extensively exploit models of functional and nonfunctional requirements, of the context and of the governance policies, to successfully integrate independently designed subsystems. GAUSS will define lightweight design methods and techniques to infer these models at runtime from systems not designed to obey to GAUSS requirements.
Runtime analysis. GAUSS will address the dynamic evolution of the system architecture and integration logic by combining: architecture synthesis techniques based on parameterized integration, coordination and adaptation patterns; techniques that automatically extract accurate behavior models from streams of continuous observations; online V&V procedures that continuously assess the fitness-for-purpose and dependability of eSoS.
Automatic governance. GAUSS will raise the level of confidence that people and society place on eSoS by: defining adaptation rules compatible with governance policies and context to avoid negative interferences and unstable behaviors; reconfiguring and optimizing inefficient and critical eSoS subsystems; providing self-protection mechanisms to avoid failures.