Skip to main content

Model Checking Requirements

  • Conference paper
  • First Online:
Formal Methods: Foundations and Applications (SBMF 2016)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10090))

Included in the following conference series:

Abstract

In software engineering, system requirements are written in a natural language such as English. Later in the design phase, these requirements are usually translated to a semi-formal language such as UML. This design model gives support to the development of the system in a programming language. Although natural language is easy to use, it is intrinsically ambiguous. Undesired effects may arise, as the errors generated by misinterpretation of the requirements can lead to a late discovery of a problem with a costly solution. In this paper, we propose the use of a Controlled Natural Language (CNL) (a subset of English that obeys a formal grammar) as a language for writing requirements. Moreover, we developed a translator from a CNL to the modelling language of the NuSMV model checker. In addition, we propose another CNL to describe properties in the style of a temporal logic. A second translator transforms this CNL into Computation Tree Logic. Therefore, our toolset allows the user to benefit from the user-friendliness of a natural language and to perform a formal analysis on the requirements using the NuSMV model checker. We are thus able to assert whether the requirements satisfy a property. The user only deals with CNLs as we hide all formal languages involved in the inputs of a model checker. Counter-examples are produced in the NuSMV notation, but they are fairly intuitive to understand. We illustrate our work in a case study.

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

Notes

  1. 1.

    http://www.omg.org/spec/UML.

  2. 2.

    www.embraer.com.br.

References

  1. Aceituna, D., Do, H., Srinivasan, S.: A systematic approach to transforming system requirements into model checking specifications. In: Companion Proceedings of the 36th International Conference on Software Engineering, ICSE Companion 2014, pp. 165–174. ACM, New York (2014)

    Google Scholar 

  2. Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2006)

    MATH  Google Scholar 

  3. Aichernig, B., Brandl, H., Jöbstl, E., Krenn, W., Schlick, R., Tiran, S.: Killing strategies for model-based mutation testing. Softw. Test. Verif. Reliab. 25(8), 716–748 (2015)

    Article  Google Scholar 

  4. Badger, J., Throop, D., Claunch, C.: Vared: verification and analysis of requirements and early designs. In: 2014 IEEE 22nd International Requirements Engineering Conference (RE), pp. 325–326, August 2014

    Google Scholar 

  5. Behrmann, G., David, A., Larsen, K.: A Tutorial on UPPAAL 4.0. Department of Computer Science, Aalborg University, Denmark (2006)

    Google Scholar 

  6. Boddu, R., Guo, L., Mukhopadhyay, S., Cukic, B.: RETNA: from requirements to testing in a natural way. In: Proceedings of the RE, pp. 262–271 (2004)

    Google Scholar 

  7. Cadete, D., Cunha, A., Faria, J., Oliveira, J., Passos, A.: From boilerplated requirements to alloy: half-way between text and formal model. Technical report, Universidade do Minho (2012)

    Google Scholar 

  8. Carvalho, G., Barros, F., Carvalho, A., Cavalcanti, A., Mota, A., Sampaio, A.: NAT2TEST tool: from natural language requirements to test cases based on CSP. In: Calinescu, R., Rumpe, B. (eds.) SEFM 2015. LNCS, vol. 9276, pp. 283–290. Springer, Heidelberg (2015). doi:10.1007/978-3-319-22969-0_20

    Chapter  Google Scholar 

  9. Carvalho, G., Barros, F., Lapschies, F., Schulze, U., Peleska, J.: Model-based testing from controlled natural language requirements. In: Artho, C., Ölveczky, P.C. (eds.) FTSCS 2013. CCIS, vol. 419, pp. 19–35. Springer, Heidelberg (2014a). doi:10.1007/978-3-319-05416-2_3

    Chapter  Google Scholar 

  10. Carvalho, G., Cavalcanti, A., Sampaio, A.: Modelling timed reactive systems from natural-language requirements. Formal Aspects Comput. 28(5), 725–765 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  11. Carvalho, G., Falcão, D., Barros, F., Sampaio, A., Mota, A., Motta, L., Blackburn, M.: Test case generation from natural language requirements based on SCR specifications. In: Proceedings of Symposium on Applied Computing, Coimbra, Portugal, vol. 2, pp. 1217–1222 (2013a)

    Google Scholar 

  12. Carvalho, G., Falcão, D., Barros, F., Sampaio, A., Mota, A., Motta, L., Blackburn, M.: NAT2TEST\(_{SCR}\): test case generation from natural language requirements based on SCR specifications. Sci. Comput. Program. 95(Part 3(0)), 275–297 (2014)

    Article  Google Scholar 

  13. Cavada, R., Cimatti, A., Jochim, C.A., Keighren, G., Olivetti, E., Pistore, M., Roveri, M., Tchaltsev, A.: NuSMV 2.6 User Manual. FBK-irst - Via Sommarive 18, 38055 Povo (Trento), Italy (2010)

    Google Scholar 

  14. Cavada, R., Cimatti, A., Mariotti, A., Mattarei, C., Micheli, A., Mover, S., Pensallorto, M., Roveri, M., Susi, A., Tonetta, S.: Supporting requirements validation: the EuRailCheck tool. In: 24th IEEE/ACM International Conference on Automated Software Engineering, ASE 2009, pp. 665–667, November 2009

    Google Scholar 

  15. Choi, Y., Heimdahl, M.P.: Model checking RSML-e requirements. In: Proceedings of the 7th IEEE International Symposium on High Assurance Systems Engineering, pp. 109–118. IEEE (2002)

    Google Scholar 

  16. Esser, M., Struss, P.: Obtaining models for test generation from natural-language like functional specifications. In: International Workshop on Principles of Diagnosis, pp. 75–82 (2007)

    Google Scholar 

  17. Fillmore, C.: The case for case. In: Bach, E., Harms, R. (eds.) Universals in Linguistic Theory, pp. 1–88. Holt, Rinehart, and Winston, New York (1968)

    Google Scholar 

  18. Fuchs, N.: Controlled Natural Language. LNCS, vol. 5972. Springer, Heidelberg (2010). doi:10.1007/978-3-642-14418-9

    Book  MATH  Google Scholar 

  19. Holt, A.: Formal verification with natural language specifications: guidelines, experiments and lessons so far. S. Afr. Comput. J., 253–257 (1999)

    Google Scholar 

  20. Nipkow, T., Paulson, L., Wenzel, M.: Isabelle/HOL – A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

Download references

Acknowledgements

This work was partially supported by the National Institute of Science and Technology for Software Engineering (INES), funded by CNPq and FACEPE, grants 573964/2008-4, 560256/2010-8 and APQ-1037-1.03/08.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sérgio Barza .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Barza, S., Carvalho, G., Iyoda, J., Sampaio, A., Mota, A., Barros, F. (2016). Model Checking Requirements. In: Ribeiro, L., Lecomte, T. (eds) Formal Methods: Foundations and Applications. SBMF 2016. Lecture Notes in Computer Science(), vol 10090. Springer, Cham. https://doi.org/10.1007/978-3-319-49815-7_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-49815-7_13

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-49814-0

  • Online ISBN: 978-3-319-49815-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics