Page 154 - Software and Systems Requirements Engineering in Practice
P. 154
120 S o f t w a r e & S y s t e m s R e q u i r e m e n t s E n g i n e e r i n g : I n P r a c t i c e
Add Competition
<<include>>
<<include>>
<<include>>
Selecct Team
Selecct Team
FIGURE 4.29 Using the tool DesignAdvisor to find errors
4.11 Use of Tooling for MDRE
When a large model or set of models is created, there is just too much
material for visual inspection. Unlike natural languages, models have a
mathematical grounding that enables programmatic checks. For
example, analysis models are usually acyclic directed graphs, and
feature models are normally tree structures. Such graphs lend themselves
to programmatic traversal and data mining. Ideally, any tools used can
be customized and simplified with profiles and semantics (rules). A
plug-in tool, DesignAdvisor, was developed at Siemens Corporate
Research and used successfully to provide automated checking of
critical model heuristics (see Figure 4.29) [Berenbach 2003]. As
mentioned previously, with judicious use, instrumented models can
be made to generate specifications, tests, and project plans.
If a model is not in the final requirements repository, a first set of
requirements is mined from the model and then imported into the
requirements repository. Decisions will have to be made about how
the two different data stores will be kept synchronized. We suggest
the creation of an artifact model (Chapter 2) and the identification of
all the possible traces or links, and how they will be maintained
(during and after project completion) when defining a tool integration
strategy.
4.12 Tips for Modeling Requirements
The tips shown below are “food for thought”. Holistically, they
suggest an engineered rather than an ad hoc or artistic approach to
model creation.
• Develop models at different levels of abstraction for different
purposes.