Abstract | |
For the development of complex software systems, two paradigms have become popular in industry: model-based development and Agile software development. In model-based development, models are the core development artifacts, particularly in early development phases such as specification and design. The short development cycles of Agile development, and in particular continuous integration, are sometimes seen as conflicting with the apparent longer develop- ment phases in model-based development. We study how software development can benefit from combining these two paradigms successfully into continuous model-based development.
In this licentiate thesis, we present four papers studying continuous model- based development of complex embedded systems in industry. The first two papers present investigations of the current state-of-the-art and state-of-practice of combining model-based development and continuous integration. In particular, specific challenges to the combination are identified. In the third and fourth papers, we focus on one of those challenges: model synchronization, i.e., the management of consistency between disparate development artifacts describing the same system or parts of it. We propose a lightweight approach that notifies developers of arisen inconsistency between different models. Lastly, we consider the aspect of variability among different development artifacts. In particular, we provide automated support for alleviating manual tasks in maintaining consistency across model variants organized in a product line.
|