Holger Giese, Hasso Plattner Institute, Germany
Title:Towards Smart Systems of Systems
Abstract: Systems of systems (SoS) have started to emerge as a consequence of the general trend
toward the integration of beforehand isolated systems. To unleash the full potential the contained systems must
be able to operate as elements in open, dynamic, and deviating SoS architectures and to adapt to open and dynamic
contexts while being developed, operated, evolved, and governed independently. We name the resulting SoS to be
smart as they must be self-adaptive at the level of the individual systems and self-organizing at the SoS-level
to cope with the emergent behavior at that level.
In this presentation we will analyze the current state-of-the-art and open challenges for the envisioned smart
SoS. In addition, we will outline our ideas how to approach this vision via a generic approach employing open
and adaptive collaborations and models at runtime for trustworthy self-adaptation, self-organization, and
evolution of the individual systems and the SoS-level taking the independent development, operation, management,
and evolution of these systems into account.
John Hughes, Chalmers University of Technology, Sweden
Title:Experiences with property-based testing: testing the hard stuff and staying sane
Abstract: QuickCheck is a testing tool originally developed in and for Haskell, which generates
random tests from a formal specification in the form of properties, and minimizes any counterexamples found to
small, easily understandable test cases. For the last seven years, QuickCheck has been deployed in industry and
has helped track down innumerable bugs in telecom systems, databases, embedded vehicle software, and many
others. In this talk I will introduce QuickCheck and describe some of these applications, including debugging
notorious race conditions that plagued the DBMS delivered along with Erlang for years.
Paola Inverardi, University of L'Aquila, Italy
Title:Automated Integration of Service-oriented Software Systems
Abstract: In the next future we will be surrounded by a virtually infinite number of software applications
that provide services in the digital space. This situation radically changes the way software will be produced and
used: (i) software is increasingly produced according to a certain goal and by integrating existing software; (ii) it
shifts the focus of software production on reuse of third-parties software, typically black-box, that is often provided
without a machine readable documentation. The evidence underlying this scenario is that the price to pay for this
software availability is a lack of knowledge on the software itself, notably on its interaction behaviour.
A producer will operate with software artefacts that are not completely known in terms of their functional and
non-functional characteristics. The general problem is therefore directed to the ability of interacting with the
artefacts to the extent the goal is reached. This is not a trivial problem given the virtually infinite
interaction protocols that can be defined at application level. Different software artefacts with heterogeneous
interaction protocols may need to interoperate in order to reach the goal.
In this presentation we focus on techniques and tools for integration code synthesis, which are able to
deal with partial knowledge and automatically produce correct-by-construction service-oriented systems with
respect to functional goals. The research approach we propose builds around two phases: elicit and integrate.
The first concerns observation theories and techniques to elicit functional behavioural models of the interaction
protocol of black-box services. The second deals with compositional theories and techniques to automatically
synthesize appropriate integration means to compose the services together in order to realize a service
choreography that satisfies the goal.