Abstract
Use case modeling, including use case diagrams and use case specifications (UCSs), is commonly applied to structure and document requirements. UCSs are usually structured but unrestricted textual documents complying with a certain use case template. However, because Use Case Models (UCMods) remain essentially textual, ambiguity is inevitably introduced. In this article, we propose a use case modeling approach, called Restricted Use Case Modeling (RUCM), which is composed of a set of well-defined restriction rules and a modified use case template. The goal is two-fold: (1) restrict the way users can document UCSs in order to reduce ambiguity and (2) facilitate the manual derivation of initial analysis models which, when using the Unified Modeling Language (UML), are typically composed of class diagrams, sequence diagrams, and possibly other types of diagrams.
Though the proposed restriction rules and template are based on a clear rationale, two main questions need to be investigated. First, do users find them too restrictive or impractical in certain situations? In other words, can users express the same requirements with RUCM as with unrestricted use cases? Second, do the rules and template have a positive, significant impact on the quality of the constructed analysis models? To investigate these questions, we performed and report on two controlled experiments, which evaluate the restriction rules and use case template in terms of (1) whether they are easy to apply while developing UCMods and facilitate the understanding of UCSs, and (2) whether they help users manually derive higher quality analysis models than what can be generated when they are not used, in terms of correctness, completeness, and redundancy. This article reports on the first controlled experiments that evaluate the applicability of restriction rules on use case modeling and their impact on the quality of analysis models. The measures we have defined to characterize restriction rules and the quality of analysis class and sequence diagrams can be reused to perform similar experiments in the future, either with RUCM or other approaches.
Results show that the restriction rules are overall easy to apply and that RUCM results into significant improvements over traditional approaches (i.e., with standard templates, without restrictions) in terms of class correctness and class diagram completeness, message correctness and sequence diagram completeness, and understandability of UCSs.
Supplemental Material
Available for Download
Supplemental movie, appendix, image and software files for, Facilitating the transition from use case models to analysis models: Approach and experiments
- Achour, C. B., Rolland, C., Maiden, N. A. M., and Souveyet, C. 1999. Guiding use case authoring: Results of an empirical study. In Proceedings of the International Symposium on Requirements Engineering. 36--43. Google ScholarDigital Library
- Anda, B., Sjoberg, D., and Jorgensen, M. 2001. Quality and understandability of use case models. In Proceedings of the European Conference on Object-Oriented Programming. Springer, 402--428. Google ScholarDigital Library
- Anda, B. and Sjoberg, D. I. K. 2005. Investigating the role of use cases in the construction of class diagrams. Empirical Soft. Engin. 10, 285--309. Google ScholarDigital Library
- Arisholm, E. and Sjoberg, D. I. K. 2004. Evaluating the effect of a delegated versus centralized control style on the maintainability of object-oriented software. IEEE Trans. Soft. Engin. 30, 521--534. Google ScholarDigital Library
- Basili, V. R., Caldiera, G., and Rombach, H. D. 1994. The goal question metric approach. Encyclopedia of Software Engineering 1, 528--532.Google Scholar
- Belgamo, A., Fabbri, S., and Maldonado, J. C. 2005. TUCCA: Improving the effectiveness of use case construction and requirement analysis. In Proceedings of the IEEE International Symposium on Empirical Software Engineering. 266--275.Google Scholar
- Bittner, K. and Spence, I. 2002. Use Case Modeling. Addison-Wesley Boston. Google ScholarDigital Library
- Bruegge, B. and Dutoit, A. H. 2009. Object-Oriented Software Engineering Using UML, Patterns, and Java. Prentice Hall. Google ScholarDigital Library
- Cockburn, A. 2001. Writing Effective Use Cases. Addison-Wesley Boston. Google ScholarDigital Library
- Cox, K. 2002. Heuristics for use case descriptions, PhD Thesis, Bournemouth University, UK.Google Scholar
- Cruz-Lemus, J., Maes, A., Genero, M., Poels, G., and Piattini, M. 2010. The impact of structural complexity on the understandability of UML statechart diagrams. Inf. Sci. 180, 2209--2220. Google ScholarDigital Library
- Dobing, B. and Parsons, J. 2006. How UML is used. Commun. ACM 49, 109--113. Google ScholarDigital Library
- Genero, M., Piattini, M., and Calero, C. 2000. Early measures for UML class diagrams. L'Objet 6, 489--505.Google Scholar
- Gomaa, H. 2000. Designing Concurrent, Distributed, and Real-Time Applications with UML. Addison-Wesley. Google ScholarDigital Library
- Holt, R. W., Boehm-Davis, D. A. and Shultz, A. C. 1987. Mental representations of programs for student and professional programmers. In Empirical Studies of Programmers II. Ablex Publishing Corp., 33--46. Google ScholarDigital Library
- Höst, M., Regnell, B., and Wohlin, C. 2000. Using students as subjects - comparative study of students and professionals in lead-time impact assessment. Empirical Soft. Engin. 5, 201--214. Google ScholarDigital Library
- Insfrán, E., Pastor, O., and Wieringa, R. 2002. Requirements engineering-based conceptual modelling. Requirements Eng. 7, 61--72.Google ScholarDigital Library
- Jacobson, I. 1987. Object-oriented development in an industrial environment. In Proceedings of the Conference on Object-Oriented Programming, Systems, Languages&Applications. ACM, 183--191. Google ScholarDigital Library
- Jacobson, I. 2004. Use cases - yesterday, today, and tomorrow. Soft. Syst. Model. 3, 210--220.Google ScholarDigital Library
- Jacobson, I., Christerson, M., Jonsson, P., and Overgaard, G. 1992. Object-Oriented Software Engineering: A Use Case Driven Approach. Addison-Wesley. Google Scholar
- Kim, H. and Boldyreff, C. 2002. Developing software metrics applicable to UML models. In Proceedings of the International Workshop on Quantitative Approaches in Object-Oriented Software Engineering.Google Scholar
- Kruchten, P. 2003. The Rational Unified Process: An Introduction. Addison-Wesley. Google ScholarDigital Library
- Kulak, D. and Guiney, E. 2000. Use Cases: Requirements in Context. ACM Press. Google ScholarDigital Library
- Lange, C. F. J., Chaudron, M. R. V., and Muskens, J. 2006. In practice: UML software architecture and design description. IEEE Softw. 23, 40--46. Google ScholarDigital Library
- Larman, C. 2004. Applying UML and Patterns. Prentice-Hall.Google Scholar
- Liang, Y. 2003. From use cases to classes: a way of building object model with UML. Inf. Softw. Tech. 45, 83--93.Google ScholarCross Ref
- Liu, D. 2003. Automating transition from use cases to class model. In Proceedings of the Canadian Conference on Electrical and Computer Engineering. 125.Google ScholarCross Ref
- Major, M. L. and McGregor, J. D. 1999. Using guided inspection to validate UML models. In Proceedings of the 24th Annual IEEE/NASA Software Engineering Workshop. 485--507.Google Scholar
- Marchesi, M. 1998. OOA metrics for the Unified Modeling Language. In Proceedings of the 2nd Euromicro Conference on Software Maintenance and Reengineering. 67--73. Google ScholarDigital Library
- Maldonado, J. C., Carver, J., Shull, F., Fabbri, S., Doria, E., Martimiano, L., Mendonca, M., and Basili, V. 2006. Perspective-based reading: A replicated experiment focused on individual reviewer effectiveness. Empirical Soft. Engin. 11, 119--142. Google ScholarDigital Library
- OMG 2005. UML 2.0 Superstructure Specification Object Management Group.Google Scholar
- Oppenheim, A. N. 1992. Questionnaire Design, Interviewing, and Attitude Measurement. Pinter Pub Ltd.Google Scholar
- Phalp, K. T., Vincent, J., and Cox, K. 2007a. Assessing the quality of use case descriptions. Software Quality Journal 15, 69--97. Google ScholarDigital Library
- Phalp, K. T., Vincent, J., and Cox, K. 2007b. Improving the quality of use case descriptions: empirical assessment of writing guidelines. Softw. Qual. J. 15, 383--399. Google ScholarDigital Library
- Reinhartz-Berger, I. and Sturm, A. 2008. Enhancing UML models: a domain analysis approach. J. Datab. Manage. 19, 74--94.Google ScholarCross Ref
- Reissing, R. 2001. Towards a model for object-oriented design measurement. In Proceedings of the ECOOP Workshop on Quantative Approaches in Object-Oriented Software Engineering. 71--84.Google Scholar
- Schneider, G. and Winters, J. P. 1998. Applying Use Cases: A Practical Guide. Addison-Wesley. Google ScholarDigital Library
- Śmiałek, M., Bojarski, J., Nowakowski, W., Ambroziewicz, A., and Straszak, T. 2007. Complementary use case scenario representations based on domain vocabularies. In Proceedings of the International Conference on Model Driven Engineering Languages and Systems. Google ScholarDigital Library
- Somé, S. S. 2006. Supporting use case based requirements engineering. Inf. Softw. Tech. 48, 43--58. Google ScholarDigital Library
- Subramaniam, K., Liu, D., Far, B. H., and Eberlein, A. 2004. UCDA: Use case driven development assistant tool for class model generation. In Proceedings of the International Conference on Software Engineering&Knowledge Engineering. 324--329.Google Scholar
- Wahono, R. S. and Far, B. H. 2002. A framework for object identification and refinement process in object-oriented analysis and design. In Proceedings of the 1st IEEE International Conference on Cognitive Informatics. 351--360. Google ScholarDigital Library
- Wohlin, C. and Wesslen, A. 2000. Experimentation in Software Engineering: An Introduction. Springer. Google ScholarDigital Library
- Xu, B., Kang, D., and Lu, J. 2004. A structural complexity measure for UML class diagrams. In Proceedings of the International Conference on Computational Science. 421--424.Google Scholar
- Yue, T. 2010. Automatically deriving a uml analysis model from a use case model, PhD Thesis, Department of Systems and Computer Engineering, Carleton University, Ottawa, 350. Google ScholarDigital Library
- Yue, T., Ali, S., and Briand, L. 2011a. Automated transition from use cases to UML state machines to support state-based testing. In Proceedings of the European Conference on Modeling Foundations and Applications. 115--131. Google ScholarDigital Library
- Yue, T., Briand, L. C., and Labiche, Y. 2009. A use case modeling approach to facilitate the transition towards analysis models: Concepts and empirical evaluation. In Proceedings of the International Conference on Model Driven EngineeringLanguages and Systems. Springer, 484--498. Google ScholarDigital Library
- Yue, T., Briand, L. C., and Labiche, Y. 2010a. An automated approach to transform use cases into activity diagrams. In Proceedings of the European Conference on Modeling Foundations and Applications. Springer, 337--353. Google ScholarDigital Library
- Yue, T., Briand, L. C., and Labiche, Y. 2010b. Automatically deriving a UML analysis model from a use case model, Simula Research Laboratory, Tech. Rep. 2010--15.Google Scholar
- Yue, T., Briand, L. C., and Labiche, Y. 2011b. A systematic review of transformation approaches between user requirements and analysis models. Requirements Eng. 16, 2, 75--99. Google ScholarDigital Library
Index Terms
- Facilitating the transition from use case models to analysis models: Approach and experiments
Recommendations
aToucan: An Automated Framework to Derive UML Analysis Models from Use Case Models
The transition from an informal requirements specification in natural language to a structured, precise specification is an important challenge in practice. It is particularly so for object-oriented methods, defined in the context of the OMG's Model ...
A Use Case Modeling Approach to Facilitate the Transition towards Analysis Models: Concepts and Empirical Evaluation
MODELS '09: Proceedings of the 12th International Conference on Model Driven Engineering Languages and SystemsUse case modeling (UCM) is commonly applied to document requirements. Use case specifications (UCSs) are usually structured, unrestricted textual documents complying with a certain template. However, because they remain essentially textual, ambiguities ...
Formalization of UML diagrams and their consistency verification: A Z notation based approach
ISEC '08: Proceedings of the 1st India software engineering conferenceIn this paper, we have suggested a methodology for formalizing some of the commonly used UML diagrams that are used in different phases of software development in Z notation, establish their relationship and then represent the "formalized" diagrams ...
Comments