Abstract
Use Cases (UC) are a popular way of describing system behavior and represent important artifacts for system design, analysis, and evolution. Hence, UC quality impacts the overall system quality and defect rates. However, they are presented in natural language, which is usually the cause of issues related to imprecision, ambiguity, and incompleteness. We present the results of an empirical study on the formalization of UCs as Graph Transformation models (GTs) with the goal of running tool-supported analyses on them and revealing possible errors (treated as open issues). We describe initial steps for a translation from a UC to a GT, how to use an existing tool to analyze the produced GT, and present some diagnostic feedback based on the results of these analyses and the possible level of severity of the detected problems. To evaluate the effectiveness of the translation and of the analyses in identifying problems in UCs, we applied our approach on a set of real UC descriptions obtained from a software developer company and measured the results using a well-known metric. The final results demonstrate that this approach can reveal real problems that could otherwise go undetected and, thus, help improve the quality of the UCs.
This work is partially supported by the VeriTeS project (FAPERGS and CNPq).
References
Alagar, V.S., Periyasamy, K.: Specification of Software Systems. Texts in Computer Science, 2nd edn. Springer, London (2011)
Basili, V., Caldiera, C., Rombach, H.: Goal question metric paradigm. In: Marciniak, J.J. (ed.) Encyclopedia of Software Engineering, vol. 1. Wiley, New York (1994)
Cockburn, A.: Writing Effective Use Cases, 1st edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2000)
Diev, S.: Use cases modeling and software estimation: applying use case points. SIGSOFT Softw. Eng. Notes 31(6), 1–4 (2006)
Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.): Applications, languages, and tools, vol. 2. World Scientific, River Edge (1999)
Hausmann, J.H., Heckel, R., Taentzer, G.: Detection of conflicting functional requirements in a use case-driven approach: a static analysis technique based on graph transformation. In: Proceedings of the 24th ICSE, pp. 105–115 (2002)
Hurlbut, R.R.: A survey of approaches for describing and formalizing use cases. Technical report XPT-TR-97-03, Expertech, Ltd. (1997)
Jin, N., Yang, J.: An approach of inconsistency verification of use case in XML and the model of verification tool. In: Proceedings of MINES 2010, pp. 757–761 (2010)
Klimek, R., Szwed, P.: Formal analysis of use case diagrams. Comp. Sci. 11, 115–131 (2010)
Köters, G., werner Six, H., Winter, M.: Validation and verification of use cases and class models. In: Proceedings of the 6th REFSQ (2001)
Myers, G., Sandler, C., Badgett, T.: The Art of Software Testing. ITPro Collection. Wiley, New York (2011)
Patton, R.: Software Testing, vol. 408, 2nd edn. Sams Publishing, Indianapolis (2005)
Powers, D.M.: Evaluation: from precision, recall and F-factor to ROC, informedness, markedness & correlation. Technical Report SIE-07-001, FUSA (2007)
Rozenberg, G. (ed.): Foundations, vol. 1. World Scientific, River Edge (1997)
Shen, W., Liu, S.: Formalization, testing and execution of a use case diagram. In: Dong, J.S., Woodcock, J. (eds.) ICFEM 2003. LNCS, vol. 2885, pp. 68–85. Springer, Heidelberg (2003)
Sinnig, D., Chalin, P., Khendek, F.: LTS semantics for use case models. In: Proceedings of the ACM SAC, pp. 365–370. ACM (2009)
Sinnig, D., Chalin, P., Khendek, F.: Use case and task models: an integrated development methodology and its formal foundation. ACM ToSEM 22 (2013)
Taentzer, G.: AGG: a tool environment for algebraic graph transformation. In: Münch, M., Nagl, M. (eds.) AGTIVE 1999. LNCS, vol. 1779, pp. 481–488. Springer, Heidelberg (2000)
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer, Berlin (2012)
Zhao, J., Duan, Z.: Verification of use case with petri nets in requirement analysis. In: Gervasi, O., Taniar, D., Murgante, B., Laganà, A., Mun, Y., Gavrilova, M.L. (eds.) ICCSA 2009, Part II. LNCS, vol. 5593, pp. 29–42. Springer, Heidelberg (2009)
Ziemann, P., Hǎ\(\grave{\rm {v}}\)lscher, K., Gogolla, M.: From UML models to graph transformation systems. ENTCS 127(4), 17–33 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Oliveira, M., Ribeiro, L., Cota, É., Duarte, L.M., Nunes, I., Reis, F. (2015). Use Case Analysis Based on Formal Methods: An Empirical Study. In: Codescu, M., Diaconescu, R., Țuțu, I. (eds) Recent Trends in Algebraic Development Techniques. WADT 2015. Lecture Notes in Computer Science(), vol 9463. Springer, Cham. https://doi.org/10.1007/978-3-319-28114-8_7
Download citation
DOI: https://doi.org/10.1007/978-3-319-28114-8_7
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-28113-1
Online ISBN: 978-3-319-28114-8
eBook Packages: Computer ScienceComputer Science (R0)