consistency heuristics are satisfied, the FSM
difference between the UML-CD (12 CFP) and the
UML-AD (14 CFP) can be justified by the
difference in the levels of abstraction. Since UML-
AD represents software at a more detailed level and
UML-CD represents software at a high-level of
abstraction, UML-CD does not represent all
software details as well as UML-AD. Looking
closely, in the UML-AD FP2, the extra CFP is due
to the guard conditions which are not represented in
the UML-CD.Table 3: Measurement results
(Activity diagram of the "Rice Cooker")
Compared to existing works, our measurement
results are consistent with those of (Lavazza and
Bianco, 2009) and they ensure the correctness of our
measurement procedures. Albeit, it can appear that
there are some distinctions in the FSM results. For
instance, we measured 14 CFP for UML-AD and 12
CFP for UML-CD of the "Rice Cooker" case study,
while the FSM of the same case study calculated by
(Lavazza and Bianco, 2009) is equal to 11 CFP.
Their value is provided according to the
identification of data movement involved in
functional processes. It is independent of the UML
diagrams. It can be observed that, for UML-AD,
there is an extra of 3 CFP for three "Exits". Because
of FP1 contains the transition "Get elapsed time", it
should be considered as a data movement type
"Exit". However, (Lavazza and Bianco, 2009)
ignored this data movement. In FP2, the extra 2 CFP
are due to: (i) the guard conditions which were not
treated by (Lavazza and Bianco, 2009) for both
actions "Start heater" and "Stop heater". They
considered the command “HeaterOn and HeaterOff”
as 1 data movement “Exit”; and (ii) the action "Get
Actual Temperature" was not identified by (Lavazza
and Bianco, 2009) since they considered the “Actual
Temperature” to be returned by “Temperature
Sensor” following the demand of “Software
Controller”.
Furthermore, for the UML-CD, the extra 1 CFP
is due to the operation
"
SetMode(mod:Cooking_mode)". Indeed, this operation
corresponds to another functional process (stop
cooking). If we take into account the ‘scope’
according to COSMIC method, this operation will
not be considered. In addition, our measuring scope
is limited by the three FP (Set Target Temperature,
Adjust Temperature and Lamp Control).
6 CONCLUSIONS
Applying COSMIC FSM method in the design phase
for checking consistency between activity diagram
(UML-AD) and components diagram (UML-CD) is
the main purpose of this paper. To meet this
purpose, functional size measurement procedures for
UML-AD and UML-CD were presented. These
procedures were defined based on the mapping
between COSMIC concepts and those of UML
diagrams concepts. We have proposed a
measurement interval that it can be used as a
guideline by designers and developers to verify
consistency between UML-AD and UML-CD and to
identify modeling errors. We have also proposed a
set of modeling rules to ensure the consistency
between those diagrams. Finally, we have illustrated
the proposed measurement procedures by using the
"Rice Cooker" case study, and confronted our
measurement results with those of (Lavazza and
Bianco, 2009).
Further works including the use of measurement
results of UML-AD and UML-CD should be
investigated. These measures can also be helpful to
software managers and leaders to complete their
project within the scheduled dates. The proposed
formulas need to be applied on larger case studies to
ensure the quality of measurement results. Finally,
implementation is also required not only to find
faster the FSM of each UML diagram, but also alert
users (developers, designers, etc.) with the presence
of any modeling errors in the design phase.
REFERENCES
Ali, M., Ben Abdallah, H., and Gargouri, F. 2006.
Validation des besoins dans les modèles UML 2.0. In
XIVème congrés INFORSID. Hammamet, Tunisia.
Azzouz, S., Abran, A., 2004. A proposed measurement
role in the Rational Unified Process (RUP) and its
implementation with ISO 19761: COSMIC-FFP. In
SMEF 2004, Rome, Italy.
Berg, K. v. d., Dekkers, T., Oudshoorn, R., 2005.
Functional size measurement applied to UML-based
user requirements. In SMEF 2005, Rome, Italy.
Bévo, V., Levesque, G., Abran, A., 1999. Application de
la méthode FFP à partir d'une spécification selon la
notation UML: In IWSM’99, Lac Supérieur, Canada.
Chong, K. W., Cho, Y.S., Know, S.G., 1999. Detecting
Errors and Checking Consistency in the Object-
Oriented Design Models. In Journal of KIPS. Korea.
COSMIC Group. Case Study: Rice Cooker. May 22, 2008.
Gabay, J., Gabay, D. UML 2 Analyse et conception: mise
en oeuvre guidée avec des études de cas. Paris:
Dunod, 2008.
Knieke, C., Huhn, M., Lochau, M., 2008. Modeling and
Validation of Executable Requirements Using Live
Activity Diagrams. In SERA'08, Prague.
AnalyzingUMLActivityandComponentDiagrams-AnApproachbasedonCOSMICFunctionalSizeMeasurement
43