Skip to main content
Log in

A toolset for conformance testing against UML sequence diagrams based on event-driven colored Petri nets

  • ICTSS 2013
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

Novel techniques and a toolset are presented for automatically testing the conformance of software implementations against partial behavioral models constituted by a set of parameterized UML sequence diagrams, describing both external interactions with users or client applications and internal interactions between objects in the system. Test code is automatically generated from the sequence diagrams and executed on the implementation under test, and test results and coverage information are presented back visually in the model. A runtime test library handles internal interaction checking, test stubs, and user interaction testing, taking advantage of aspect-oriented programming techniques. Incremental conformance checking is achieved by first translating sequence diagrams to Extended Petri Nets that combine the characteristics of Colored Petri Nets and Event-Driven Petri Nets.

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
Fig. 14
Fig. 15

Similar content being viewed by others

References

  1. OMG Unified Modeling Language\(^{{\rm TM}}\) (OMG UML): Superstructure, Version 2.4.1. Object Management Group (OMG) (2011)

  2. Mellor, S.J., Clark, A.N., Futagami, T.: Model-driven development. IEEE Softw. Mag. 20(5), 1418 (2003)

    Google Scholar 

  3. Uttin, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann, Burlington (2007)

    Google Scholar 

  4. Faria, J.P., Paiva, A.C.R., Yang, Z.: Test generation from UML sequence diagrams. In: 8th International Conference on the Quality of Information and Communications Technology, pp. 245–250 (2012)

  5. JUnit testing framework: http://www.junit.org (2014)

  6. Faria, J.P., Castro, M.V., Paiva, A.C.R.: Techniques and toolset for conformance testing against UML sequence diagrams. In: 25th IFIP International Conference on Testing Software and Systems (ICTSS’13), LNCS vol. 8254, pp. 180–195. Springer, Berlin, Heidelberg, New York  (2013). http://link.springer.com/chapter/10.1007%2F978-3-642-41707-8_12#

  7. Stotts, P.D., Pugh, W.: Parallel finite automata for modeling concurrent software systems. J. Syst. Softw. 27, 27–43 (1994)

    Article  Google Scholar 

  8. Micskei, Z., Waeselynck, H.: The many meanings of UML 2 sequence diagrams: a survey. J. Softw. Syst. Model. 10, 489–514 (2011)

    Article  Google Scholar 

  9. Jensen, K., Kristensen, L.M., Wells, L.: Coloured Petri nets and CPN tools for modelling and validation of concurrent systems. Int. J. Softw. Tools Technol. Trans. 9, 213–254 (2007). (Springer)

    Article  Google Scholar 

  10. Jorgensen, P.C.: Event-driven Petri nets. In: Modeling Software Behavior: A Craftsman’s Approach, pp. 137–153. Auerbach Publications, Boca Raton (2009)

  11. Faria, J.P., Paiva, A.C.R.: UML Checker: Formal Specification in VDM++ of the Petri Net-based Conformance Checking Engine, TR-SDBT-2013-04, FEUP (2013). https://blogs.fe.up.pt/sdbt/files/2013/04/TR-2013-04.pdf

  12. Enterprise Architect. http://www.sparxsystems.com.au (2014)

  13. AspectJ. http://www.eclipse.org/aspectj (2014)

  14. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Pearson, London (1994)

    MATH  Google Scholar 

  15. Hallal, H., Boroday, S., Petrenko, A., Ulrich, A.: A formal approach to property testing in causally consistent distributed traces. Formal Aspects Comput. 18(1), 63–83 (2006)

    Article  MATH  Google Scholar 

  16. Castro, M.V.: Automating Scenario Based Testing with UML and AOP. MSc thesis, FEUP (2013) https://blogs.fe.up.pt/sdbt/files/2013/04/Castro.pdf (in Portuguese)

  17. JaCoCo Java Code Coverage Library. http://www.eclemma.org/jacoco/ (2014)

  18. Google’s Guava libraries. https://code.google.com/p/guava-libraries/ (2014)

  19. Harel, D., Maoz, S.: Assert and negate revisited: modal semantics for UML sequence diagrams. J. Softw. Syst. Model. 7(2), 237–253 (2008). (Springer)

    Article  Google Scholar 

  20. Knapp, A., Wuttke, J.: Model checking of UML 2.0 interactions. Models Softw. Eng. LNCS 4364, 42–51 (2007). (Springer)

    Article  Google Scholar 

  21. Bouabana-Tebibel, T., Rubin, S.H.: An interleaving semantics for UML 2 interactions using Petri nets. Inform. Sci. 232, 276–293 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  22. Fernandes, J.M., Tjell, S., Jørgensen, J.B., Ribeiro, O.: Designing tool support for translating use cases and UML 2.0 sequence diagrams into coloured Petri net. In: SCESM’07, IEEE CS (2007)

  23. Briand, L., Labiche, Y., Leduc, J.: Towards the reverse engineering of UML sequence diagrams for distributed java software. IEEE Trans. Soft. Eng. 32(9), 642–663 (2006)

    Article  Google Scholar 

  24. Kansomkeat, S., Offutt, J., Abdurazik, A., Baldini, A.: A comparative evaluation of tests generated from different UML diagrams. SNPD 2008, 867–872 (2008)

    Google Scholar 

  25. Philip, S., Joseph, A.T.: Test sequence generation from UML sequence diagrams. SNPD 2008, 879–887 (2008)

    Google Scholar 

  26. Samuel, P., Mall, R.: A novelt test case design technique using dynamic slicing of UML sequence diagrams. e-Informatica 2(1), 71–92 (2008)

    Google Scholar 

  27. Nayak, A., Samanta, D.: Automatic test data synthesis using UML sequence diagrams. J. Object Technol. 9(2), 115–144 (2010)

    Article  Google Scholar 

  28. Benattou, M., Bruel, J., Hameurlain, N.: Generating test data from OCL specification. In: ECOOP Workshop Integration and Transformation of UML Models (2002)

  29. Engels, G., Gldali, B., Lohmann, M.: Towards model-driven unit testing. In: Khne, T. (ed.) MoDELS 2006 Workshops, LNCS, vol. 4364, pp. 182–192 (2007)

  30. Fraikin, F., Leonhardt, T.: SeDiTeC-testing based on sequence diagrams. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE 2002), IEEE (2002)

  31. Wittevrongel, J., Maurer, F.: SCENTOR: scenario-based testing of E-business applications. In: 2nd International Workshop on Automation of Software Test (AST) (2007)

  32. Javed, A., Strooper, P., Watson, G.: Automated generation of test cases using model-driven architecture. In: 2nd International Workshop on Automation of Software Test (AST) (2007)

  33. IBM Rational Rhapsody: IBM Rational Rhapsody Automatic Test Conductor Add on User Guide, v2.5.2 (2013)

  34. Boroday, S., Petrenko, A., Ulrich, A.: Implementing MSC tests with quiescence observation. In: TESTCOM/FATES 2009. LNCS, vol. 5826, pp. 49–65 (2009)

  35. Ambler, S.: Agile Modeling (AM) Home Page—Effective Practices for Modeling and Documentation. http://www.agilemodeling.com (2014)

Download references

Acknowledgments

This work is financed by the ERDF European Regional Development Fund through the COMPETE Programme (operational programme for competitiveness) and by National Funds through the FCT—Fundação para a Ciência e a Tecnologia (Portuguese Foundation for Science and Technology) within project FCOMP-01-0124-FEDER-020554.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ana C. R. Paiva.

Appendix: Transition generation rules

Appendix: Transition generation rules

The following tables present the transition generation rules for several types of interactions’ features. The generated elements are superimposed in red.

See Tables 6, 7, 8, 9 and 10.

Table 6 Translation of messages and ordering constraints
Table 7 Translation of sequencing operators
Table 8 Translation of option and alternative
Table 9 Translation of loop, break and interaction use
Table 10 Translation of conformance related operators

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Faria, J.P., Paiva, A.C.R. A toolset for conformance testing against UML sequence diagrams based on event-driven colored Petri nets. Int J Softw Tools Technol Transfer 18, 285–304 (2016). https://doi.org/10.1007/s10009-014-0354-x

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-014-0354-x

Keywords

Navigation