is shown. The work shows positive impacts on in-
ter model consistency during evolution of the sys-
tem. Similar to the ViewPoint templates, macromod-
els could be used to further formalize the relationships
between the models of our approach. While we follow
an analytical approach, i.e., models are constructed
separately and their consistency is maintained and
checked by analysis procedures, there also exist sev-
eral constructive approaches, i.e., models are trans-
formed (semi)automatically and thus are correct-by-
construction. (Guti
´
errez et al., 2008) describe an ap-
proach to automatically transform Use Cases into Ac-
tivity Diagrams. In our approach, this technique could
be used to derive an initial micro architecture for the
formal specification of a use case as the micro archi-
tectures often resemble a kind of activity oriented ar-
chitecture. (Sinha et al., 2008) follow the same ideas
as proposed in this paper by stepwise extending the
use case notion to add precision without discouraging
practitioners, who might not be familiar with formal
languages. Their two-phased definition of a use case,
which accepts use case descriptions in their impre-
cise form and then assists in adding precision through
a wizard driven process, might be a valuable exten-
sion of our use case artifact model. Since scenario
and interaction models are only partial descriptions of
the system’s functionality, there also exists work that
aims at the integration of several scenarios into one
specification (e.g., (Liang et al., 2008)). The work
presented in (Kr
¨
uger et al., 1999) could for example
be used to derive a formal specification from the set
of MSCs in our approach.
5 CONCLUSIONS AND FUTURE
WORK
In this paper we introduced a model-based approach
for the stepwise concurrent development of require-
ments and component architecture. We structured the
used modeling concepts of the approach in an arti-
fact model and defined their relations to each other.
We furthermore showed how these relations can be
backed up by analysis procedures that are formal and
automated to a large degree.
Our experiences from a feasibility study show that
our approach allows for detecting inconsistencies in
requirements early because of the early employment
of (semi)formal techniques. Furthermore, the ap-
proach facilitates concurrent development of require-
ments and architecture due to continuous checks that
guarantee consistency between requirements and ar-
chitecture. These checks can be done in early phases
and therefore allow for concurrently developing re-
quirements and architecture from these phases to the
end of development. In addition, the relations be-
tween the proposed artifacts capture design decisions
explicitly. Furthermore, as far as we can see, the ap-
proach scales well for bigger systems because of the
decomposition of requirements and architecture.
While the approach currently focuses on func-
tional requirements in the form of use cases, we think
that it is well suited to also integrate nonfunctional
requirements into the formal specifications. The idea
is that formal specifications integrate the formalized
functional requirements from a use case as well as
other behavioral properties related to the use case,
e.g., safety or reliability properties. This idea is based
on the hypothesis that many nonfunctional proper-
ties manifest themselves in behavioral properties of
the system. An idea on how to formalize availability
properties and reflect them as behavioral properties is
for example given by (Junker and Neubeck, 2012).
REFERENCES
Braun, P., Broy, M., Houdek, F., Kirchmayr, M., M
¨
uller,
M., Penzenstadler, B., Pohl, K., and Weyer, T.
(2010). Guiding requirements engineering for
software-intensive embedded systems in the automo-
tive industry. Computer Science - Research and De-
velopment.
Cockburn, A. (2001). Writing Effective Use Cases.
Addison-Wesley Professional.
Etien, A. and Salinesi, C. (2005). Managing requirements
in a co-evolution context. In RE 2005.
Guti
´
errez, J., Nebut, C., Escalona, M., Mejas, M., and
Ramos, I. (2008). Visualization of use cases through
automatically generated activity diagrams. In MOD-
ELS 2008.
ITU-T (1999). Formal description techniques - message
sequence chart (msc). Technical report, International
Telecommunication Union (Standardization Sector).
Junker, M. and Neubeck, P. (2012). A rigorous approach to
availability modeling. In MISE 2012.
Kr
¨
uger, I., Grosu, R., Scholz, P., and Broy, M. (1999). From
MSCs to statecharts. In Distributed and Parallel Em-
bedded Systems. Springer US.
Liang, H., Diskin, Z., Dingel, J., and Posse, E. (2008). A
general approach for scenario integration. In MOD-
ELS 2008.
M
´
endez, D., Penzenstadler, B., Kuhrmann, M., and Broy,
M. (2010). A meta model for artefact-orientation:
Fundamentals and lessons learned in requirements en-
gineering. In MODELS 2010.
Mou, D. and Ratiu, D. (2012). Binding requirements and
component architecture by using model-based test-
driven development. In Twin Peaks 2012.
Nuseibeh, B. (2001). Weaving together requirements and
architectures. IEEE Computer.
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
594