Abstract
Innovative software engineering methodologies, concepts and tools which focus on supporting the ongoing evolution of complex software, in particular regarding its continuous adaptation to changing functional and quality requirements as well as platforms over a long period are required. Supporting such a co-evolution of software systems along with their environment represents a very challenging undertaking, as it requires a combination or even integration of approaches and insights from different software engineering disciplines. To meet these challenges, the Priority Programme 1593 Design for Future—Managed Software Evolution has been established, funded by the German Research Foundation, to develop fundamental methodologies and a focused approach for long-living software systems, maintaining high quality and supporting evolution during the whole life cycle. The goal of the priority programme is integrated and focused research in software engineering to develop methods for the continuous evolution of software and software/hardware systems for making systems adaptable to changing requirements and environments. For evaluation, we focus on two specific application domains: information systems and production systems in automation engineering. In particular two joint case studies from these application domains promote close collaborations among the individual projects of the priority programme. We consider several research topics that are of common interest, for instance co-evolution of models and implementation code, of models and tests, and among various types of models. Another research topic of common interest are run-time models to automatically synchronise software systems with their abstract models through continuous system monitoring. Both concepts, co-evolution and run-time models contribute to our vision to which we refer to as knowledge carrying software. We consider this as a major need for a long life of such software systems.
Highlights
We would like to thank Zoya Durdik, Gregor Engels, Christof Momm, Andreas Rausch, and Stefan Sauer for their contributions and all projects of the priority programme for providing details on their goals and collaborations
We provide a joint case study based on Common Component Modelling Example (CoCoME) [15] in terms of a cash desk with an associated stock management for supermarkets, supervised by the Chair for Software Design and Quality2 at the Karlsruher Institute for Technology
ENSURE collaborates with MOCA on the Pick & Place Unit (PPU) system architecture and fault tree models, with FYPA2C on probabilistic quality of service (QoS) models, and with iObserve on learning performance attributes based on the CoCoME implementation for model update via dynamic analysis
Summary
Software has become an enabling factor in many ground breaking developments across the board. Software quality often decreases during the lifetime of long-living software systems in various aspects, e.g., conformance to user and system requirements, functionality, performance, reliability, and maintainability This is ageing not by wear and tear but by accommodating the required changes quickly in order not be become obsolete by being too slow. – The complexity and timing of the development of applications on the one hand and the development of platforms and technologies on the other hand, frequently interfere each other and prevent a focused and continuous development To address these challenges, in August 2012 the German Research Foundation (DFG) launched the Priority Programme 1593 (SPP1593) to encourage the German software engineering community to develop approaches for evolution in software and software/hardware systems. The priority programme projects, their collaboration and a clustering are presented in Sect. 5, before Sect. 6 concludes the paper
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.