The current trend in software development towards shorter development cycles and continuous integration of new functionality is becoming a reality also for embedded software in domains such as automotive and telecommunication. This change towards more agile software development has a big impact on the way architecture and design artifacts are used and managed. Rather than being defined once and possibly adjusted when needed, the first version will correspond to the initial delivery of the system, intended to be incremented several times as new functions are added, changed and possibly removed, even after the system has been released and is up and running. This imposes a new set of challenges to allow a team of developers, possibly distributed over multiple sites, to concurrently update and extend these artefacts while at the same time ensure consistency and traceability. At code level, this is to some extent handled by existing configuration management systems, but for more high-level artefacts, including architectural models and detailed design models, existing solutions are scarce and insufficient.
The long term goal of the project is to develop means to manage the evolution of high-level architectural artefacts in a continuous integration context, including improved support for distributed multi-site development, model versioning and conflict handling. The project goals for Sprint 10 include identifying the current state-of-practice at the participating companies and identifying common key challenges and some suitable problems to focus on in future sprints.
|Associate Professor,Docent,Head of Research Education
Software Evolution Management: Industrial Practices (Oct 2016) Antonio Cicchetti, Federico Ciccozzi, Jan Carlson 10th Workshop on Models and Evolution (ME 2016)