Skip to main content

Use Case Analysis Based on Formal Methods: An Empirical Study

  • Conference paper
  • First Online:
Recent Trends in Algebraic Development Techniques (WADT 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9463))

Included in the following conference series:

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).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

References

  1. Alagar, V.S., Periyasamy, K.: Specification of Software Systems. Texts in Computer Science, 2nd edn. Springer, London (2011)

    Book  Google Scholar 

  2. 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)

    Google Scholar 

  3. Cockburn, A.: Writing Effective Use Cases, 1st edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2000)

    Google Scholar 

  4. Diev, S.: Use cases modeling and software estimation: applying use case points. SIGSOFT Softw. Eng. Notes 31(6), 1–4 (2006)

    Article  Google Scholar 

  5. Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.): Applications, languages, and tools, vol. 2. World Scientific, River Edge (1999)

    MATH  Google Scholar 

  6. 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)

    Google Scholar 

  7. Hurlbut, R.R.: A survey of approaches for describing and formalizing use cases. Technical report XPT-TR-97-03, Expertech, Ltd. (1997)

    Google Scholar 

  8. 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)

    Google Scholar 

  9. Klimek, R., Szwed, P.: Formal analysis of use case diagrams. Comp. Sci. 11, 115–131 (2010)

    Google Scholar 

  10. Köters, G., werner Six, H., Winter, M.: Validation and verification of use cases and class models. In: Proceedings of the 6th REFSQ (2001)

    Google Scholar 

  11. Myers, G., Sandler, C., Badgett, T.: The Art of Software Testing. ITPro Collection. Wiley, New York (2011)

    Google Scholar 

  12. Patton, R.: Software Testing, vol. 408, 2nd edn. Sams Publishing, Indianapolis (2005)

    Google Scholar 

  13. Powers, D.M.: Evaluation: from precision, recall and F-factor to ROC, informedness, markedness & correlation. Technical Report SIE-07-001, FUSA (2007)

    Google Scholar 

  14. Rozenberg, G. (ed.): Foundations, vol. 1. World Scientific, River Edge (1997)

    MATH  Google Scholar 

  15. 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)

    Chapter  Google Scholar 

  16. Sinnig, D., Chalin, P., Khendek, F.: LTS semantics for use case models. In: Proceedings of the ACM SAC, pp. 365–370. ACM (2009)

    Google Scholar 

  17. Sinnig, D., Chalin, P., Khendek, F.: Use case and task models: an integrated development methodology and its formal foundation. ACM ToSEM 22 (2013)

    Article  Google Scholar 

  18. 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)

    Chapter  Google Scholar 

  19. Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer, Berlin (2012)

    Book  Google Scholar 

  20. 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)

    Chapter  Google Scholar 

  21. Ziemann, P., Hǎ\(\grave{\rm {v}}\)lscher, K., Gogolla, M.: From UML models to graph transformation systems. ENTCS 127(4), 17–33 (2005)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Marcos Oliveira Jr. .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics