Abstract
Creating use case models is a popular method of requirements analysis. Unfortunately, guidelines for the identification of use cases are quite general. Thus, inconsistencies with state machines that model lifecycles of entity types can easily appear. Traditionally, one writes use cases as requirements and uses these as an input for creating analysis models. We propose a data-centric algorithm that partially turns this process upside down. It takes a set of system actors, a set of their informational requirements, an initial conceptual data model, and state machines of the main entity types as an input. It produces a set of use case descriptions, each of which contains the name of the use case, its primary actors, and general understanding of its functionality. One would use this model for the elaboration of use cases and writing their textual specifications.
Similar content being viewed by others
References
Jacobson, I.: Use cases—Yesterday, today, and tomorrow. Softw. Syst. Model. 3, 210–220 (2004)
OMG Unified Modeling Language TM (OMG UML) Version 2.5
Cockburn, A.: Writing Effective Use Cases. Addison Wesley (2001)
Larman, C.: Applying UML and Patterns. An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2nd edn. Prentice Hall, Upper Saddle River (2002)
Sein, M.K., Henfridsson, O., Purao, S., Rossi, M., Lindgren, R.: Action design research. MIS Q. 35, 37–56 (2011)
Shu, X.: Fitting design patterns into object-oriented methods. PhD thesis, Graduate College of the University of Illinois at Chicago (1996)
Ferg, S.: What’s Wrong with Use Cases? (2003)
Rational Unified Process. http://sce.uhcl.edu/helm/rationalunifiedprocess/
Zachman, J.A.: The Zachman Framework for Enterprise Architecture TM. The Enterprise Ontology, Version 3.0. http://www.zachman.com/about-the-zachman-framework
Dijkman, R.M., Joosten, S.M.M.: An algorithm to derive use case diagrams from business process models. In: 6th International Conference on Software Engineering and Applications, pp. 679–684 (2002)
Zhang, L., Qin, T., Zhou, Z., Hao, D., Sun, J.: Identifying use cases in source code. J. Syst. Softw. 79, 1588–1598 (2006)
Tiwari, S., Gupta, A.: Statechart-based use case requirement validation of event-driven systems. In: 27th ACM Symposium on Applied Computing, pp. 1091–1093. ACM, New York (2012)
Somé, S.S.: Supporting use case based requirements engineering. Inf. Softw. Technol. 48, 43–58 (2006)
Kanyaru, J.M., Phalp, K.T.: A lightweight state machine for validating use case descriptions. Technical report, ESERG, Bournemouth (2004)
Yue, T., Ali, S., Briand, L.: Automated transition from use cases to UML state machines to support state-based testing. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds.) ECMFA 2011. LNCS, vol. 6698, pp. 115–131. Springer, Heidelberg (2011)
Verelst, J., Silva, A.R., Mannaert, H., Ferreira, D.A., Huysmans, P.: Identifying combinatorial effects in requirements engineering. In: Proper, H., Aveiro, D., Gaaloul, K. (eds.) EEWC 2013. LNBIP, vol. 146, pp. 88–102. Springer, Heidelberg (2013)
Yue, T., Briand, L.C., Labiche, Y.: A systematic review of transformation approaches between user requirements and analysis models. Requirements Eng. 16, 75–99 (2011)
Fliedl, G., Kop, C., Mayr, H.C., Salbrechter, A., Vöhringer, J., Weber, G., Winkler, C.: Deriving static and dynamic concepts from software requirements using sophisticated tagging. Data Knowl. Eng. 61, 433–448 (2007)
Estañol, M., Queralt, A., Sancho, M.R., Teniente, E.: Artifact-centric business process models in UML. In: La Rosa, M., Soffer, P. (eds.) BPM 2012 International Workshops. LNBIP, vol. 132, pp. 292–303. Springer, Heidelberg (2013)
Estañol, M., Sancho, M.R., Teniente, E.: Reasoning on UML data-centric business process models. In: Basu, S., Pautasso, C., Zhang, L., Fu, X. (eds.) ICSOC 2013. LNCS, vol. 8274, pp. 437–445. Springer, Heidelberg (2013)
Eessaar, E.: A set of practices for the development of data-centric information systems. In: 22nd International Conference on Information Systems Development, pp. 73–84. Springer (2014)
Burns, L.: Building the Agile Database. How to Build a Successful Application Using Agile Without Sacrificing Data Management. Technics Publications, LLC, New Jersey (2011)
Sandhu, R.S.: Separation of duties in computerized information systems. In: IFIP WG11.3 Workshop on Database Security, pp. 179–190 (1990)
Parnas, D.L., Clements, P.C.: A rational design process: how and why to fake it. IEEE Trans. Softw. Eng. SE-12, 251–257 (1986)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Eessaar, E. (2016). A Data-Centric Algorithm for Identifying Use Cases. In: Silhavy, R., Senkerik, R., Oplatkova, Z.K., Silhavy, P., Prokopova, Z. (eds) Software Engineering Perspectives and Application in Intelligent Systems. ICTIS CSOC 2017 2016. Advances in Intelligent Systems and Computing, vol 465. Springer, Cham. https://doi.org/10.1007/978-3-319-33622-0_28
Download citation
DOI: https://doi.org/10.1007/978-3-319-33622-0_28
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-33620-6
Online ISBN: 978-3-319-33622-0
eBook Packages: EngineeringEngineering (R0)