Title
Change-Driven Consistency for Component Code, Architectural Models, and Contracts
Abstract
During the development of component-based software systems, it is often impractical or even impossible to include all development information into the source code. Instead, specialized languages are used to describe components and systems on different levels of abstraction or from different viewpoints: Component-based architecture models and contracts, for example, can be used to describe the system on a high level of abstraction, and to formally specify component constraints. Because models, contracts, and code contain redundant information, inconsistencies can occur if they are modified independently. Keeping this information consistent manually can require considerable effort, and can lead to costly errors, for example, when security-relevant components are verified against inconsistent contracts. In this paper, we present an approach for keeping component-based architecture models and contracts specified in the Java Modeling Language (JML) consistent with Java source code. We use change-driven incremental transformations and the \\vitruvius framework to automate the consistency preservation where this is possible. Using two case studies, we demonstrate how to detect and propagate changes and refactoring operations to keep models and contracts consistent with the source code.
Year
DOI
Venue
2015
10.1145/2737166.2737177
Component-Based Software Engineering
Keywords
Field
DocType
Model-Driven Engineering, Formal Specification, Co-Evolution
Programming language,Systems engineering,Model-driven architecture,Computer science,Source code,Java annotation,Common Component Architecture,Software system,Real-time computing,Formal specification,Java Modeling Language,Code refactoring
Conference
Citations 
PageRank 
References 
1
0.41
7
Authors
5
Name
Order
Citations
PageRank
Max E. Kramer1457.51
Michael Langhammer252.58
Dominik Messinger310.41
s seifermann476.45
Erik Burger5469.73