6,868 research outputs found
A Model-Based Approach to Impact Analysis Using Model Differencing
Impact analysis is concerned with the identification of consequences of
changes and is therefore an important activity for software evolution. In
modelbased software development, models are core artifacts, which are often
used to generate essential parts of a software system. Changes to a model can
thus substantially affect different artifacts of a software system. In this
paper, we propose a modelbased approach to impact analysis, in which explicit
impact rules can be specified in a domain specific language (DSL). These impact
rules define consequences of designated UML class diagram changes on software
artifacts and the need of dependent activities such as data evolution. The UML
class diagram changes are identified automatically using model differencing.
The advantage of using explicit impact rules is that they enable the
formalization of knowledge about a product. By explicitly defining this
knowledge, it is possible to create a checklist with hints about development
steps that are (potentially) necessary to manage the evolution. To validate the
feasibility of our approach, we provide results of a case study.Comment: 16 pages, 5 figures, In: Proceedings of the 8th International
Workshop on Software Quality and Maintainability (SQM), ECEASST Journal, vol.
65 201
Auto-coding UML statecharts for flight software
Statecharts have been used as a means to
communicate behaviors in a precise manner between
system engineers and software engineers. Handtranslating
a statechart to code, as done on some
previous space missions, introduces the possibility of
errors in the transformation from chart to code. To
improve auto-coding, we have developed a process
that generates flight code from UML statecharts. Our
process is being used for the flight software on the
Space Interferometer Mission (SIM)
Metamodel-based model conformance and multiview consistency checking
Model-driven development, using languages such as UML and BON, often makes use of multiple diagrams (e.g., class and sequence diagrams) when modeling systems. These diagrams, presenting different views of a system of interest, may be inconsistent. A metamodel provides a unifying framework in which to ensure and check consistency, while at the same time providing the means to distinguish between valid and invalid models, that is, conformance. Two formal specifications of the metamodel for an object-oriented modeling language are presented, and it is shown how to use these specifications for model conformance and multiview consistency checking. Comparisons are made in terms of completeness and the level of automation each provide for checking multiview consistency and model conformance. The lessons learned from applying formal techniques to the problems of metamodeling, model conformance, and multiview consistency checking are summarized
An Exploratory Study of Forces and Frictions affecting Large-Scale Model-Driven Development
In this paper, we investigate model-driven engineering, reporting on an
exploratory case-study conducted at a large automotive company. The study
consisted of interviews with 20 engineers and managers working in different
roles. We found that, in the context of a large organization, contextual forces
dominate the cognitive issues of using model-driven technology. The four forces
we identified that are likely independent of the particular abstractions chosen
as the basis of software development are the need for diffing in software
product lines, the needs for problem-specific languages and types, the need for
live modeling in exploratory activities, and the need for point-to-point
traceability between artifacts. We also identified triggers of accidental
complexity, which we refer to as points of friction introduced by languages and
tools. Examples of the friction points identified are insufficient support for
model diffing, point-to-point traceability, and model changes at runtime.Comment: To appear in proceedings of MODELS 2012, LNCS Springe
- …