3 PROBLEMS CONSIDERED
As we have seen in previous sections, there are two
solutions: Chastek et al.’s system of models and data
dictionary (2001) enabling the requirements of a
product line to be represented and validated, and
Muñoz & Pelechano’s mixed MDA-software factory
model allowing source code to be generated from a
framework and specific language. The
“shortcoming” of the first option is that it does not
allow source code to be generated since it goes no
further than representing and validating the
requirements; the “shortcoming” of the second
option, on the other hand, is that while it does
generate source code, it does not solve requirement
representation and validation.
We are therefore faced with the following question:
Would it be possible to create a system which would
enable the requirements of a product line to be
represented and validated and also for the source
code of this family to be generated? Would it be
possible to combine the previously mentioned
solutions for such a purpose? In the following
section, we will present a solution to both of these
questions.
4 OUR PROPOSED
IMPROVEMENT TO THE
SOLUTION
As we have seen in previous sections, there are two
lines of work: a system of models and data
dictionary enabling the requirements of a product
line to be represented and validated (Chastek, G.,
Donohoe, P., Kang, K.C., Thiel, S., 2001) and the
mixed MDA-software factory model (Muñoz, J.,
Pelechano, V.) which allows source code to be
generated but does not consider requirement
representation.
We offer the following contribution: to connect
these two lines of work in order to cover everything
from requirement representation and validation of
the product family to source code generation. In
order to resolve this problem, we aim to combine the
output of Chastek et al.’s work (i.e. requirement
object model, feature model, use case model and
dictionary of specific terms) with the input of the
mixed MDA-software factory model (i.e. product
line, framework and specific use language as
indicated by its authors, Muñoz & Pelechano).
We will structure the solution in the following way:
4.1. Methodological contribution
4.2. Consideration of the practical study case
4.3. Practical study case
4.4. Validation and assessment of the practical
study case
We will validate our proposal on the basis of the real
case presented in the Diputación Provincial de
Granada’s Community Centres (Muñoz, G., Granja,
J.C., Sempere, C., 2006).
4.1 Methodological Contribution:
Connection between the Output of
One Systems and the Input of the
Other
As we mentioned in the previous section, the way to
connect a product line’s requirement representation
with the mixed MDA-software factory system is to
connect the output of the first with the input of the
second; in this way, we will obtain a product line, a
framework and a domain-specific language.
We present our proposal for finding this input
below:-
PRODUCT LINE: Given that the product line is the
information compiled about the product family to be
developed, this is clearly established according to
the requirements and the dictionary of specific
terms, represented in both the feature and object
models, and validated by means of use case
diagrams for the different views held by the
advanced users/collaborators.
FRAMEWORK: The framework for the programme
family is a design object diagram which represents
the product line, and an initial view of this comes
from the requirement object model. In order to
achieve the framework (since it is a design object
model), it is necessary to compile the set of design
objects (their names), and these are obtained from
the STATE objects obtained in our requirement
object model. The names of the design objects are
given by the state objects of the requirement model.
DESIGN OBJECT ATTRIBUTES: These will be
extracted from the object description and
responsibilities, as shown in the object definition
table.
DESIGN OBJECT METHODS: These will be
obtained by means of the BEHAVIOR objects
relating to the state object in question and the
requirement object responsibilities.
RELATIONS BETWEEN THE OBJECTS: Initially,
those existing between the state objects of the
requirement object model will be taken but it will be
necessary to typify each in accordance with the ones
indicated for the design object models according to
the description and responsibilities.
ICSOFT 2007 - International Conference on Software and Data Technologies
388