To address these weaknesses, we proposed (i) a
formal semantics of the use case model, including
the CAREN use cases, specific semantic/functional
roles actors can play, specific types of basic and
alternative flow actions for each CAREN use case,
and specific question patterns to identify the actors;
(ii) a semi-formal, NL-based syntax of the UC
specification including a specific sequence of
actions, for the basic and alternative flows of the
CAREN use case specifications.
To evaluate the effectiveness and efficiency of
the proposed formalization, we performed a short-
scale empirical study through which we compared it
to the classical UCDA approach, as described by
Cockburn (2000), by applying both of them during
the development of a subsystem of the Library
Information System (LIS) of the University of
Cyprus. Our evaluation tested the quality of the use
case model (that is, use case specifications and use
case diagrams) produced by the application of both
approaches. The results showed that in general the
proposed formalization performed much better than
the classical approach in the various objective
quality assessment metrics used, such as
completeness, correctness and consistency.
A detailed description of this comparative empirical
study may be found in Georgiades and Andreou’s
work (2011).
Future work will involve the extension of the
approach and the CASE tool in order to support the
requirements design phase, with the creation of
sequence, collaboration and state diagrams. The
construction of such diagrams may be facilitated
with the application of specific rules on the use case
elements, such as the use case actions. Furthermore,
we will work towards the enhancement of current
types of actions (e.g., study of the circumstances
within an action is performed) and identification and
formalization of new ones. Additionally, alternative
flow types of actions will be thoroughly explored, in
addition to the exception condition types which are
currently formalized. Moreover, although the
proposed approach produced encouraging empirical
results, it remains to be tested on real-world projects
of a larger scale.
REFERENCES
Chalin, P., Sinnig, D., Torkzadeh, K. 2008. Capturing
Business Transaction Requirements in Use Case
Models. In Proceedings of ACM Symposium on
Applied Computing, pp. 602-606.
Cockburn, A. 2000. Writing Effective Use Cases. Reading,
Massachusetts: Addison Wesley.
Cox, K., Phalp, K. 2003. Exploiting Use Case
Descriptions for Specifications and Design. In
Proceedings of EASE, UK.
Dias, G., Schmitz, A., Campos, M. Correa, A., Alencar, A.
2008. Elaboration of use case specifications: an
approach based on use case fragments. In ACM
Symposium on Applied Computing (SAC), Fortaleza,
Ceara, Brazil, pp. 614-618.
Eriksson, M., Börstler, K., Borg, K. 2004. Marrying
Features and Use Cases for Product Line
Requirements Modeling of Embedded Systems. In
Proceedings of the Fourth Conference on Software
Engineering Research and Practice (SERPS'04),
Sweden, pp.73-82.
Georgiades, M., Andreou A., Pattichis, C. 2005. A
Requirements Engineering Methodology Based On
Natural Language Syntax and Semantics. In
Proceedings of the 13th IEEE International
Conference on Requirements Engineering (RE'05),
Paris, France. IEEE Computer Society, Washington,
pp.73-74.
Georgiades, M., Andreou, A. 2010. A Novel Methodology
to Formalize the Requirements Engineering Process
with the Use of Natural Language. In Proceedings of
the IADIS Conference on Applied Computing,
Timisoara, Romania. IADIS Digital Library, pp.11-18.
Georgiades, M., Andreou, A. 2011. Formalizing and
Automating Use Case Model Development, The Open
Software Engineering Journal. Accepted.
Kim, J., Sooyong, P., Vijayan, S. 2004. A Linguistics-
Based Approach for Use Case Driven Analysis Using
Goal and Scenario Authoring. In Proceedings of
Applications of Natural Language to Data Bases, pp.
159-170.
Leite, J., Rossi, G., Balaguer, M., Kaplan, G., Hadad, G.,
Oliveros, A. 1997. Enhancing a Requirements
Baseline with Scenarios. In Proceedings of
Requirements Engineering, Annapolis, USA.
Ochodek, M., Nawrocki, J. 2007. Automatic Transactions
Identification in Use Cases. In Second IFIP TC 2
Central and East European Conference on Software
Engineering Techniques, CEE-SET 2007, Poznan,
Poland, October 2007, pp. 55-68.
Pooley, R., Stevens, P. 1999. Using UML - Software
Engineering with Objects and Components, Harlow:
Addison Wesley Longman.
Salinesi, C. 2004. Authoring Use Cases. Chapter in
Scenarios, Stories, Use Cases: I. Alexander and N.
Maiden, John Wiley.
Somé, S. 2007. Petri Nets Based Formalization of Textual
Use Cases, Tech. Report in SITE, TR2007-11, Uni. of
Ottawa.
Sybase, 2002.
PowerDesigner. Object Oriented User's
Guide. Sybase.
ASemanticFormalizationforUseCaseModeling
175