Skip to main content

A Test Specification Language for Information Systems Based on Data Entities, Use Cases and State Machines

  • Conference paper
  • First Online:
Model-Driven Engineering and Software Development (MODELSWARD 2018)

Abstract

Testing is one of the most important activities to ensure the quality of a software system. This paper proposes and discusses the TSL (Test Specification Language) that adopts a model-based testing approach for both human-readable and computer-executable specifications of test cases. TSL is strongly inspired on the grammar, nomenclature and writing style as defined by the RSLingo RSL, which is a rigorous requirements specification language. Both RSL and TSL are controlled natural languages that share common concepts such as data entities, use cases and state machines. However, by applying black-box functional testing design techniques, TSL includes and supports four complementary testing strategies, namely: domain analysis testing; use case tests; state machine testing; and acceptance criteria. This paper focuses on the first three testing strategies of TSL. Finally, a simple but effective case study illustrates the overall approach and supports the discussion.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd., Birmingham (2016)

    Google Scholar 

  2. Ten Buuren, R.A.: Domain-Specific Language Testing Framework. Master of Science, University of Twente, Enschede (2015)

    Google Scholar 

  3. Fagan, M.E.: Advances in software inspections. In: Broy, M., Denert, E. (eds.) Pioneers and Their Contributions to Software Engineering. Springer, Heidelberg (2001). https://doi.org/10.1007/978-3-642-48354-7_14

    Chapter  Google Scholar 

  4. Ferreira, D., Silva, A.R.: RSLingo: an information extraction approach toward formal requirements specifications. In: Proceedings of MoDRE 2012. IEEE CS (2012)

    Google Scholar 

  5. Ferreira, D., Silva, A.R.: RSL-PL: a linguistic pattern language for documenting software requirements. In: Proceedings of RePa 2013. IEEE CS (2013)

    Google Scholar 

  6. Ferreira, D., Silva, A.R.: RSL-IL: an interlingua for formally documenting requirements. In: Proceedings of the of Third IEEE International Workshop on Model Driven Requirements Engineering. IEEE CS (2013a)

    Google Scholar 

  7. Ibe, M.: Decomposition of test cases in model-based testing. In: CEUR Workshop Proceedings (2013)

    Google Scholar 

  8. King, T.: Functional testing with domain-specific languages (2014)

    Google Scholar 

  9. Kovitz, B.: Practical Software Requirements: Manual of Content and Style. Manning, Shelter Island (1998)

    Google Scholar 

  10. Monteiro, T., Paiva, A.C.R.: Pattern based GUI testing modeling environment. In: Sixth International Conference on Software Testing, Verification and Validation (ICST) Workshops Proceedings (2013)

    Google Scholar 

  11. Morgado, I., Paiva, A.C.R.: Mobile GUI testing. Softw. Qual. J. 26, 1–18 (2017)

    Google Scholar 

  12. Paiva, A.C.R.: Automated specification-based testing of graphical user interfaces, Ph.D. thesis, Faculty of Engineering, Porto University, Porto, Portugal (1997)

    Google Scholar 

  13. Reis, A., Silva, A.R.: XIS-Reverse: a model-driven reverse engineering approach for legacy information systems. In: Proceedings of MODELSWARD 2017. SCITEPRESS (2017)

    Google Scholar 

  14. Ribeiro, A., Silva, A.R.: XIS-mobile: a DSL for mobile applications. In: Proceedings of the 29th Annual ACM Symposium on Applied Computing (SAC) (2014)

    Google Scholar 

  15. Ribeiro, A., Silva, A.R.: Evaluation of XIS-mobile, a domain specific language for mobile application development. J. Softw. Eng. Appl. 7(11), 906–919 (2014a)

    Article  Google Scholar 

  16. Moreira, R.M.L.M., Paiva, A.C.R., Nabuco, M., Memon, A.: Pattern-based GUI testing: bridging the gap between design and quality assurance. Softw. Test. Verif. Reliab. J. 27(3), e1629 (2017)

    Article  Google Scholar 

  17. Savic, D., et al.: SilabMDD: a use case model driven approach. In: ICIST 2015 5th International Conference on Information Society and Technology (2015)

    Google Scholar 

  18. Silva, A.R.: Model-driven engineering: a survey supported by a unified conceptual model. Comput. Lang. Syst. Struct. 43(C), 139–155 (2015)

    Google Scholar 

  19. Silva, A.R.: SpecQua: towards a framework for requirements specifications with increased quality. In: Cordeiro, J., Hammoudi, S., Maciaszek, L., Camp, O., Filipe, J. (eds.) ICEIS 2014. LNBIP, vol. 227, pp. 265–281. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22348-3_15

    Chapter  Google Scholar 

  20. Silva, A.R., et al.: A pattern language for use cases specification. In: Proceedings of EuroPLOP 2015. ACM (2015)

    Google Scholar 

  21. Silva, A.R., Saraiva, J., Ferreira, D., Silva, R., Videira, C.: Integration of RE and MDE paradigms: the ProjectIT approach and tools. IET Softw. 1(6), 294–314 (2007)

    Article  Google Scholar 

  22. Silva, A.R., Saraiva, J., Silva, R., Martins, C.: XIS - UML profile for eXtreme modeling interactive systems. In: Proceedings of MOMPES 2007. IEEE Computer Society (2007)

    Google Scholar 

  23. Silva, A.R., Verelst, J., Mannaert, H., Ferreira, D., Huysmans, P.: Towards a system requirements specification template that minimizes combinatorial effects. In: Proceedings of QUATIC 2014 Conference. IEEE CS (2014)

    Google Scholar 

  24. Silva, A.R.: Linguistic patterns and linguistic styles for requirements specification (i): an application case with the rigorous RSL/business-level language. In: Proceedings of EuroPLOP2017. ACM (2017)

    Google Scholar 

  25. Silva, A.R.: A rigorous requirement specification language for information systems: focus on RSL’s use cases, data entities and state machines, INESC-ID Technical Report (2017)

    Google Scholar 

  26. Solis, C., Wang, X.: A study of the characteristics of behaviour driven development. In: 37th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), pp. 383–387. IEEE (2011)

    Google Scholar 

  27. Stahl, T., Volter, M.: Model-Driven Software Development. Wiley, Hoboken (2005)

    MATH  Google Scholar 

  28. Verelst, J., Silva, A.R., Mannaert, H., Ferreira, D.A., Huysmans, P.: Identifying combinatorial effects in requirements engineering. In: Proper, H.A., Aveiro, D., Gaaloul, K. (eds.) EEWC 2013. LNBIP, vol. 146, pp. 88–102. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38117-1_7

    Chapter  Google Scholar 

  29. Videira, C., Silva, A.R.: Patterns and metamodel for a natural-language-based requirements specification language. In: CAiSE Short Paper Proceedings (2005)

    Google Scholar 

  30. Videira, C., Ferreira, D., Silva, A.R.: A linguistic patterns approach for requirements specification. In: Proceedings 32nd Euromicro Conference on Software Engineering and Advanced Applications, Euromicro 2006. IEEE Computer Society (2006)

    Google Scholar 

  31. Bhat, A., Quadri, S.M.K.: Equivalence class partitioning and boundary value analysis - a review. In: 2nd International Conference on Computing for Sustainable Global Development (INDIACom) (2015)

    Google Scholar 

  32. Silva, A.R., Paiva, A.C.R., Silva, V.E.R.: Towards a test specification language for information systems: focus on data entity and state machine tests. In: The 6th International Conference on Model-Driven Engineering and Software Development (2018)

    Google Scholar 

  33. Jacobson, I., et al.: Object oriented Software engineering: A Use Case Driven Approach. Addison- Wesley, Boston (1992)

    MATH  Google Scholar 

  34. Silva, A.R.: RSLingo RSL Excel Template, v4.0, October 2017. https://www.researchgate.net/publication/320256323_RSLingo_RSL_Excel_Template_v40 (2017)

  35. Neto, A.C.D., Subramanyan, R., Vieira, M., Travassos, G.H.: A survey on model-based testing approaches: a systematic review. In: Proceedings of the 1st ACM International Workshop on Empirical Assessment of Software Engineering Languages and Technologies: Held in Conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (2007)

    Google Scholar 

  36. Hasling, B., Goetz. H., Beetz, K.: Model based testing of system requirements using UML use case models. In: 1st International Conference on IEEE Software Testing, Verification, and Validation (2008)

    Google Scholar 

  37. Utting, M., Pretschner, A., Legeard, B.: A taxonomy of model-based testing approaches. Softw. Test. Verif. Reliab. 22(5), 297–312 (2012)

    Article  Google Scholar 

  38. Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.): Model-Based Testing of Reactive Systems. LNCS, vol. 3472. Springer, Heidelberg (2005). https://doi.org/10.1007/b137241

    Book  MATH  Google Scholar 

  39. Wynne, M., Hellesoy, A., Tooke, S.: The Cucumber Book: Behaviour-Driven Development for Testers and Developers. Pragmatic Bookshelf, Raleigh (2017)

    Google Scholar 

  40. Cucumber & Gherkin. https://cucumber.io/docs/reference. Accessed March 2018

  41. Paiva, A.C.R., Vilela, L.: Multidimensional test coverage analysis: PARADIGM-COV tool. Cluster Comput.-J. Netw. Softw. Tools Appl. 20, 633–649 (2017)

    Google Scholar 

  42. Nabuco, M., Paiva, A.C.R.: Model-based test case generation for web applications. In: Murgante, B., et al. (eds.) ICCSA 2014. LNCS, vol. 8584, pp. 248–262. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09153-2_19

    Chapter  Google Scholar 

Download references

Acknowledgments

This work was partially supported by national funds under FCT project UID/CEC/50021/2019.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ana C. R. Paiva .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

da Silva, A.R., Paiva, A.C.R., da Silva, V.E.R. (2019). A Test Specification Language for Information Systems Based on Data Entities, Use Cases and State Machines. In: Hammoudi, S., Pires, L., Selic, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2018. Communications in Computer and Information Science, vol 991. Springer, Cham. https://doi.org/10.1007/978-3-030-11030-7_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-11030-7_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-11029-1

  • Online ISBN: 978-3-030-11030-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics