Skip to main content
Log in

Formal translation of YAWL workflow models to the Alloy formal specifications: a testing application

  • Regular Paper
  • Published:
Software and Systems Modeling Aims and scope Submit manuscript

Abstract

Within microservice architecture-based systems, some microservices are integrated to build the software. The integration of these services may be defined based on a workflow model. There are also a variety of different languages available for defining these workflow models. BPMN and YAWL are two such options. It is important that testers test the integration of these microservices. This paper proposes the formal method as the solution for integration testing. This method translates the workflow model to the Alloy. The algorithm has suggested a translation of workflow models to formal specifications. This specification takes into consideration both structural and behavioral aspects. The first perspective is about general structures, while the second is about the behavior of the objects in a specific model. We have proved the correctness of the suggested specifications. For this purpose, the paper has shown that formal definitions are sound and are complete with nine theorems for these properties. The translation from YAWL to Alloy is defined based on their BNF grammar. The generated model is an appropriate source for different purposes containing software testing. The suggested method for software testing is model-driven testing. Logical predicates define the structure of Alloy models. This method uses these logical predicates for generating tests. The test method has used RACC coverage as an example criterion. Alloy Analyzer tests the model by generating test predicates.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

Notes

  1. Satisfiability Problem.

References

  1. Fowler, M.: Microservices. martinFowler.com. 25 March 2014 [Cited: 28 June 2021]. https://martinfowler.com/articles/microservices.html (2014)

  2. Nadareishvili, I., et al.: Microservice Architecture: Aligning Principles, Practices, and Culture. O’Reilly Media, Sebastopol, CA (2016)

    Google Scholar 

  3. Camunda Group: Zeebe. Zeebe. 5 Feb 2018 [Cited: 28 June 2021]. https://docs.zeebe.io/introduction/what-is-zeebe.html (2018)

  4. Lamancha, B.P., et al.: Model-driven test code generation. In: International Conference on Evaluation of Novel Approaches to Software Engineering, vol. 275, pp. 155–168. Springer, Heraklion (2011)

  5. Clemson, T.: Testing Strategies in a microservice architecture. martinfowler. 18 Nov 2014 [Cited: 28 June 2021]. https://martinfowler.com/articles/microservice-testing/ (2014)

  6. Jackson, D.: Software Abstractions: Logic, Language, and Analysis. The MIT Press, Cambridge (2012)

    Google Scholar 

  7. Meinke, K., Nycander, P.: Learning-based testing of distributed microservice architectures: correctness and fault injection. In: Bianculli, D., Calinescu, R., Rumpe, B. (eds.) Software Engineering and Formal Methods, vol. 9509, pp. 3–10. Springer, Berlin (2015)

    Chapter  Google Scholar 

  8. Peuster, M., et al.: Joint testing and profiling of microservice-based network services using TTCN-3. ICT Express 5, 150–153 (2019)

    Article  Google Scholar 

  9. Savchenko, D., Radchenko, G., Taipale, O.: Microservices validation: Mjolnirr platform case study. In: International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), pp. 235–240. IEEE, Opatija (2015)

  10. Reeve, J., Frost, M.P.,Thorpe, P.: Automated integration testing with mock microservices. 20190155721 United States of America, 23 May 2019 (2019)

  11. Castillos, K.C., Dadeau, F., Julliand, J.: Scenario-based testing from UML/OCL behavioral models application to POSIX compliance. Int. J. Softw. Tools Technol. Transfer 13, 431–448 (2011)

    Article  Google Scholar 

  12. Falcone, Y., Mounier, L., Fernandez, J.-C.: j-POST: a java toolchain for property oriented software testing. Electron. Notes Theor. Comput. Sci. 220, 29–41 (2008)

    Article  Google Scholar 

  13. Castillos, K.C., et al.: A compositional automata-based semantics for property patterns. In: 10th International Conference on Integrated Formal Methods, vol. 7940, pp. 316–330. Springer, Berlin (2013)

  14. Achour, S., Benattou, M.: Test case generation for Java Bytecode programs annotated with BML specifications. In: International Conference on Multimedia Computing and Systems (ICMCS), vol. 5, pp. 605–610. IEEE, Morocco (2016)

  15. Aichernig, B.K., et al.: Model-based mutation testing of hybrid systems. In: de Boer, F.S., Bonsangue, M.M., Hallerstede, S., Leuschel, M. (eds.) Formal Methods for Components and Objects, vol. 6286, pp. 228–249. Springer, Berlin (2009)

    Chapter  Google Scholar 

  16. Yamasathien, S., Vatanawood, W.: An approach to construct formal model of business process model from BPMN workflow patterns. In: IEEE, 2014. Fourth International Conference on Digital Information and Communication Technology and its Applications (DICTAP), Bangkok, pp. 211–215 (2014)

  17. Prandi, D., Quaglia, P., Zannone, N.: Formal analysis of BPMN via a translation into COWS. In: 10th International Conference on Coordination Models and Languages, pp. 249–263. Springer, Oslo (2008)

  18. Ouyang, C., et al.: Pattern-based translation of BPMN process models to BPEL web services. Int. J. Web Serv. Res. (IJWSR) 5, 42–62 (2008)

    Article  Google Scholar 

  19. Decker, G., et al.: Transforming BPMN Diagrams into YAWL Nets. In: International Conference on Business Process Management, vol. 5240, pp. 386–389. Springer, Berlin (2008)

  20. Zhao, C., et al.: Pattern-based design evolution using graph transformation. J. Vis. Lang. Comput. 18, 378–398 (2007)

    Article  Google Scholar 

  21. Ye, J., et al.: Formal semantics of BPMN process models using YAWL. In: Second International Symposium on Intelligent Information Technology Application, pp. 70–74. IEEE, Shanghai (2008)

  22. Mendling, J., et al.: Errors in the SAP reference model. In: International Conference on Business Process Management, pp. 451–457. Springer, Berlin (2006)

  23. Wynn, M.T., et al.: Business process verification: finally a reality! Bus. Process. Manag. J. 15, 74–92 (2009)

    Article  Google Scholar 

  24. Bueno, A.S., Gumbrecht, A., Porter, J.: Testing Java Microservices Using Arquillian, Hoverfly, AssertJ, JUnit, Selenium, and Mockito, vol. 1. Manning Publication, New York (2018)

    Google Scholar 

  25. Yuan, E.: Architecture interoperability and repeatability with microservices: an industry perspective. In: 2nd International Workshop on Establishing a Community-Wide Infrastructure for Architecture-Based Software Engineering, pp. 26–33. IEEE/ACM, Montreal (2019)

  26. van der Aalst, W.M.P.: Process-aware information systems: lessons to be learned from process mining. In: Jensen, K., van der Aalst, W.M.P. (eds.) Transactions on Petri Nets and Other Models of Concurrency, pp. 1–26. Springer, Berlin (2009)

    Google Scholar 

  27. Russell, N., et al.: Workflow control-flow patterns: a revised view. BPM Center Report, vol. 0622, pp. 6–22. s.n., Netherland (2006)

  28. Object Management Group: BPMN. OMG [Cited: 28 June 2021]. https://www.omg.org/spec/BPMN/2.0/About-BPMN/

  29. ter Hofstede, A., et al.: Modern Business Process Automation: YAWL and Its Support Environment. Springer, New York (2010)

    Book  Google Scholar 

  30. Verbeek, E., Basten, T., van der Aalst, W.: diagnosing workflow processes using Woflan. Comput. J. 44, 246–279 (2001)

    Article  MATH  Google Scholar 

  31. Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press, New York (2017)

    Google Scholar 

  32. Brader, L., Hilliker, H., Wills, A.: Chapter 2. Unit testing: testing the inside. In: Brader, L., Hilliker, H., Hilliker, H.F., Wills, A.C. (eds.) Testing for Continuous Delivery with Visual Studio 2012, p. 30. Microsoft, Redmond, Washington (2013)

    Google Scholar 

  33. Bazzana, G., et al.: Model-Based Testing Essentials—Guide to the ISTQB Certified Model-Based Tester. John Wiley & Sons, Hoboken (2016).. (ISBN: 9781119130017)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Seyed-Hassan Mirian-Hosseinabadi.

Additional information

Communicated by Kevin Lano.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Supplementary Information

Below is the link to the electronic supplementary material.

Supplementary file1 (ZIP 55 kb)

Supplementary file2 (DOCX 81 kb)

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Rivadeh, M., Mirian-Hosseinabadi, SH. Formal translation of YAWL workflow models to the Alloy formal specifications: a testing application. Softw Syst Model 22, 941–968 (2023). https://doi.org/10.1007/s10270-022-01043-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-022-01043-8

Keywords

Navigation