Modelling Behavioural Requirements and Alignment with Verification in the Embedded Industry

Grischa Liebel, Anthony Anjorin, Eric Knauss, Florian Lorber, Matthias Tichy

Abstract

Formalising requirements has the potential to solve problems arising from deficiencies in natural language descriptions. While behavioural requirements are rarely described formally in industry, increasing complexity and new safety standards have renewed the interest in formal specifications. The goal of this paper is to explore how behavioural requirements for embedded systems can be formalised and aligned with verification tasks. Over the course of a 2.5-year project with industry, we modelled existing requirements from a safety-critical automotive software function in several iterations. Taking practical limitations and stakeholder preferences into account, we explored the use of models on different abstraction levels. The final model was used to generate test cases and was evaluated in three interviews with relevant industry practitioners. We conclude that models on a high level of abstraction are most suitable for industrial requirements engineering, especially when they need to be interpreted by other stakeholders.

References

  1. Agner, L. T. W., Soares, I. W., Stadzisz, P. C., and Sima˜o, J. M. (2013). A brazilian survey on UML and modeldriven practices for embedded software development.
  2. Aichernig, B. K., Brandl, H., Jöbstl, E., Krenn, W., Schlick, R., and Tiran, S. (2015a). Killing strategies for modelbased mutation testing. Software Testing, Verification and Reliability, 25(8):716-748.
  3. Aichernig, B. K., Hörmaier, K., and Lorber, F. (2014). Debugging with timed automata mutations. In Computer Safety, Reliability, and Security - 33rd International Conference, SAFECOMP 2014, Florence, Italy, September 10-12, 2014. Proceedings, pages 49-64.
  4. Aichernig, B. K., Hörmaier, K., Lorber, F., Nickovic, D., and Tiran, S. (2015b). Require, test and trace IT. In Formal Methods for Industrial Critical Systems - 20th International Workshop, FMICS 2015, Oslo, Norway, June 22-23, 2015 Proceedings, pages 113-127.
  5. Aichernig, B. K., Lorber, F., and Nickovic, D. (2013). Time for mutants - model-based mutation testing with timed automata. In Tests and Proofs - 7th International Conference, TAP 2013, Budapest, Hungary, June 16-20, 2013. Proceedings, pages 20-38.
  6. Albinet, A., Begoc, S., Boulanger, J., Casse, O., Dal, I., Dubois, H., Lakhal, F., Louar, D., Peraldi-Frati, M., Sorel, Y., et al. (2008). The memvatex methodology: from requirements to models in automotive application design. In 4th European Congress on Embedded Real Time Software (ERTS 7808).
  7. Alur, R. and Dill, D. L. (1994). A theory of timed automata. Theoretical Computer Science, 126(2):183-235.
  8. Belli, F., Beyazit, M., Takagi, T., and Furukawa, Z. (2012). Model-based mutation testing using pushdown automata. IEICE Transactions, 95-D(9):2211-2218.
  9. Böhm, W., Junker, M., Vogelsang, A., Teufl, S., Pinger, R., and Rahn, K. (2014). A formal systems engineering approach in practice: An experience report. In Proceedings of the 1st International Workshop on Software Engineering Research and Industrial Practices, SER&IPs 2014, pages 34-41.
  10. Boulanger, J.-L. and Va?n, Q. D. (2008). Requirements engineering in a model-based methodology for embedded automotive software. In IEEE International Conference on Research, Innovation and Vision for the Future (RIVF 7808).
  11. Braun, P., Broy, M., Houdek, F., Kirchmayr, M., Müller, M., Penzenstadler, B., Pohl, K., and Weyer, T. (2014). Guiding requirements engineering for software-intensive embedded systems in the automotive industry. Computer Science - Research and Development, 29(1):21-43.
  12. Broy, M., Dederichs, F., Dendorfer, C., Fuchs, M., Gritzner, T. F., and Weber, R. (1992). The design of distributed systems: an introduction to Focus. Technische Universität München.
  13. CESAR Project (2011). CESAR - Cost-efficient methods and processes for safety relevant embedded systems. http://www.cesarproject.eu. last accessed Mar. 2016.
  14. CRYSTAL Project (2013). CRYSTAL - CRitical sYSTem engineering AcceLeration. http://www.crystalartemis.eu. last accessed Jan. 2016.
  15. Graaf, B., Lormans, M., and Toetenel, H. (2003). Embedded software engineering: the state of the practice. IEEE Software, 20(6):61-69.
  16. Hessel, A. and Pettersson, P. (2007). Cover-a test-case generation tool for timed systems. Testing of Software and Communicating Systems, pages 31-34.
  17. Hutchinson, J., Whittle, J., Rouncefield, M., and Kristoffersen, S. (2011). Empirical assessment of mde in industry. In Software Engineering (ICSE), 2011 33rd International Conference on, pages 471-480.
  18. Liebel, G., Marko, N., Tichy, M., Leitner, A., and Hansson, J. (2016). Model-based engineering in the embedded systems domain: an industrial survey on the state-ofpractice. Software & Systems Modeling, pages 1-23.
  19. Lubars, M., Potts, C., and Richter, C. (1993). A review of the state of the practice in requirements modeling. In IEEE International Symposium on Requirements Engineering (RE 7893), pages 2-14.
  20. Mikucionis, M., Nielsen, B., and Larsen, K. G. Real-time system testing on-the-fly. In Sere, K. and Wald én, M., editors, NWPT 2003, number 34 in B, pages 36-38. Abo Akademi, Department of Computer Science, Finland.
  21. Nielsen, B. and Skou, A. (2001). Automated test generation from timed automata. In TACAS 2001, held as Part of ETAPS 2001 Genova, Italy, April 2-6, 2001, Proceedings, pages 343-357.
  22. Piques, J. and Andrianarison, E. (2011). Sysml for embedded automotive systems: lessons learned. Interfaces, 3:3b.
  23. Procaccino, J. D., Verner, J. M., Overmyer, S. P., and Darter, M. E. (2002). Case study: factors for early prediction of software development success. Information and Software Technology, 44(1):53-62.
  24. Sikora, E., Tenbergen, B., and Pohl, K. (2011). Requirements engineering for embedded systems: An investigation of industry needs. In Berry, D. and Franch, X., editors, Requirements Engineering: Foundation for Software Quality, volume 6606 of Lecture Notes in Computer Science, pages 151-165.
  25. Wieringa, R. J. (2014). Design science methodology for information systems and software engineering. Springer.
  26. Woodcock, J., Larsen, P. G., Bicarregui, J., and Fitzgerald, J. (2009). Formal methods: Practice and experience. ACM Comput. Surv., 41(4):19:1-19:36.
  27. Zave, P. (1982). An operational approach to requirements specification for embedded systems. IEEE Transactions on Software Engineering, SE-8(3):250-269.
Download


Paper Citation


in Harvard Style

Liebel G., Anjorin A., Knauss E., Lorber F. and Tichy M. (2017). Modelling Behavioural Requirements and Alignment with Verification in the Embedded Industry . In Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-210-3, pages 427-434. DOI: 10.5220/0006205604270434


in Bibtex Style

@conference{modelsward17,
author={Grischa Liebel and Anthony Anjorin and Eric Knauss and Florian Lorber and Matthias Tichy},
title={Modelling Behavioural Requirements and Alignment with Verification in the Embedded Industry},
booktitle={Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2017},
pages={427-434},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006205604270434},
isbn={978-989-758-210-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Modelling Behavioural Requirements and Alignment with Verification in the Embedded Industry
SN - 978-989-758-210-3
AU - Liebel G.
AU - Anjorin A.
AU - Knauss E.
AU - Lorber F.
AU - Tichy M.
PY - 2017
SP - 427
EP - 434
DO - 10.5220/0006205604270434