Advertisement

Example-Based Sequence Diagrams to Colored Petri Nets Transformation Using Heuristic Search

  • Marouane Kessentini
  • Arbi Bouchoucha
  • Houari Sahraoui
  • Mounir Boukadoum
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6138)

Abstract

Dynamic UML models like sequence diagrams (SD) lack sufficient formal semantics, making it difficult to build automated tools for their analysis, simulation and validation. A common approach to circumvent the problem is to map these models to more formal representations. In this context, many works propose a rule-based approach to automatically translate SD into colored Petri nets (CPN). However, finding the rules for such SD-to-CPN transformations may be difficult, as the transformation rules are sometimes difficult to define and the produced CPN may be subject to state explosion. We propose a solution that starts from the hypothesis that examples of good transformation traces of SD-to-CPN can be useful to generate the target model. To this end, we describe an automated SD-to-CPN transformation method which finds the combination of transformation fragments that best covers the SD model, using heuristic search in a base of examples. To achieve our goal, we combine two algorithms for global and local search, namely Particle Swarm Optimization (PSO) and Simulated Annealing (SA). Our empirical results show that the new approach allows deriving the sought CPNs with at least equal performance, in terms of size and correctness, to that obtained by a transformation rule-based tool.

Keywords

Model transformation Petri nets Sequence diagrams Search-based software engineering 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    France, R., Rumpe, B.: Model-driven Development of Complex Software: A Research Roadmap. In: ICSE 2007: Future of Software Engineering (2007)Google Scholar
  2. 2.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Muller, P., Fleurey, F., Jezequel, J.M., et al.: Weaving Executability into object-oriented meta-languages. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 264–278. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Varró, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 290–304. Springer, Heidelberg (2004)Google Scholar
  5. 5.
    Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: OOSPLA 2003, Anaheim, USA (2003)Google Scholar
  6. 6.
    Ehrig, H., Ehrig, K., de Lara, J., Taentzer, G., Varró, D., Varró-Gyapay, S.: On the Correspondence Between Conformance Testing and Regular Inference. In: Cerioli, M. (ed.) FASE 2005. LNCS, vol. 3442, pp. 175–189. Springer, Heidelberg (2005)Google Scholar
  7. 7.
    Booch, G., Jacobson, I., Rumbaugh, J.: The Unified Modeling Language Users Guide. Addison Wesley, Reading (1998)Google Scholar
  8. 8.
    Saldhana, J., Shatz, S.M.: UML Diagrams to Object Petri Net Models: An Approach for Modeling and Analysis. In: SEKE 2000, July 2000, pp. 103–110 (2000)Google Scholar
  9. 9.
    Lilius, J., Paltor, I.P.: vUML: A Tool for Verifying UML Models. In: ASE 1999 (1999)Google Scholar
  10. 10.
    Murata, T.: Petri Nets: Properties, Analysis, and Applications. Proceedings of the IEEE 77(4), 541–580 (1989)CrossRefGoogle Scholar
  11. 11.
    Ribeiro, O.R., Fernandes, J.M.: Some Rules to Transform Sequence Diagrams into Coloured Petri Nets. In: Jensen, K. (ed.) CPN 2006, Aarhus, Denmark, October 2006, pp. 237–256 (2006)Google Scholar
  12. 12.
    Varro, D.: Model transformation by example. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 410–424. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Varro, D., Balogh, Z.: Automating Model Transformation by Example Using Inductive Logic Programming. In: SAC (2007)Google Scholar
  14. 14.
    Kessentini, M., Sahraoui, H., Boukadoum, M.: Model Transformation as an Optimization Problem. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 159–173. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  15. 15.
    Kessentini, M., Sahraoui, H., Boukadoum, M.: Search-based Model Transformation by Example. Submitted to SoSym (under review)Google Scholar
  16. 16.
    Distefano, S., Scarpa, M., Puliafito, A.: Software Performance Analysis in UML Models. FIRB-Perf 2005: 115-125, https://mdslab.unime.it/webspn/mapping.htm
  17. 17.
    Jensen, K.: Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. In: Basic Concepts. Monographs in Theoretical Computer Science, vol. 1 (1997)Google Scholar
  18. 18.
    Kennedy, J., Eberhart, R.C.: Particle swarm optimization. In: Proc. IEEE Intl.Conf. on Neural Networks, pp. 1942–1948 (1995)Google Scholar
  19. 19.
    Kirkpatrick, D.S., Gelatt, J., Vecchi, M.P.: Optimization by simulated annealing. Science 220(4598), 671–680 (1983)CrossRefMathSciNetGoogle Scholar
  20. 20.
    Kelner, V., Capitanescu, F., Léonard, O., Wehenkel, L.: A hybrid optimization technique coupling an evolutionary and a local search algorithm. In: J. Comput. Appl. Math (2008)Google Scholar
  21. 21.
    Aamodt, A., Plaza, E.: Case-Based Reasoning: Foundational Issues, Methodological Variations, and System Approaches. In: AIC 1994, pp. 39–52 (1994)Google Scholar
  22. 22.
    Andries, M., Engels, G., Habel, A., Hoffmann, B., Kreowski, H.-J., Kuske, S., Kuske, D., Plump, D., Schürr, A., Taentzer, G.: Graph Transformation for Specification and Programming. Technical Report 7/96, Universität Bremen (1996)Google Scholar
  23. 23.
    Akehurst, D.H., Kent, S.: A Relational Approach to Defining Transformations in a Metamodel. In: Jézéquel, J.-M., Hussmann, H., Cook, S. (eds.) UML 2002. LNCS, vol. 2460, pp. 243–258. Springer, Heidelberg (2002)Google Scholar
  24. 24.
    Interactive Objects Software GmbH, Project Technology, Inc. MOF 2.0 Query/Views/Transformations RFP, Revised SubmissionGoogle Scholar
  25. 25.
    Egyed, A.: Heterogeneous Views Integration and its Automation, Ph.D. Thesis (2000)Google Scholar
  26. 26.
    Galvão, I., Goknil, A.: Survey of Traceability Approaches in Model-Driven Engineering. In: EDOC 2007, pp. 313–326 (2007)Google Scholar
  27. 27.
    Jouault, F.: Loosely coupled traceability for atl. In: ECMDA 2005(2005)Google Scholar
  28. 28.
    Marvie, R.: A transformation composition framework for model driven engineering. Technical Report LIFL-2004-10, LIFL (2004)Google Scholar
  29. 29.
    Ouardani, A., Esteban, P., Paludetto, M., Pascal, J.-C.: A Meta-modeling Approach for Sequence Diagrams to Petri Nets Transformation. In: ESMC (2006)Google Scholar
  30. 30.
    Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards model transformation generation by-example. HICSS-40 Hawaii International Conference on System SciencesGoogle Scholar
  31. 31.
    Harman, M., Jones, B.F.: Search-based software engineering. Information & Software Technology 43(14), 833–839 (2001)CrossRefGoogle Scholar
  32. 32.
    Seng, O., Stammel, J., Burkhart, D.: Search-based determination of refactorings for improving the class structure of object-oriented systems. In: GECCO 2006, pp. 1909–1916 (2006)Google Scholar
  33. 33.
    Harman, M.: The Current State and Future of Search Based Software Engineering. In: Proceedings of ICSE 2007, Minneapolis, USA, May, pp. 20–26 (2007)Google Scholar
  34. 34.
    Sun, Y., White, J., Gray, J.: Model Transformation by Demonstration. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 712–726. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  35. 35.
    Uzam, M.: The use of Petri net reduction approach for an optimal deadlock prevention policy for flexible manufacturing systems. Int. J. Adv. Manuf. Technol 23, 204–219Google Scholar
  36. 36.
    Hu, Z., Shatz, S.M.: Mapping UML Diagrams to a Petri Net Notation for System Simulation (SEKE), Banff, Canada, June 2004, pp. 213–219 (2004)Google Scholar
  37. 37.
    Bernardi, S., Donatelli, S., Merseguer, J.: From UML Sequence Diagrams and StateCharts to analysable Petri Net models. In: WOSP 2002, Rome, Italy, pp. 35–45 (July 2002)Google Scholar
  38. 38.

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Marouane Kessentini
    • 1
  • Arbi Bouchoucha
    • 1
  • Houari Sahraoui
    • 1
  • Mounir Boukadoum
    • 2
  1. 1.DIROUniversité de Montréal 
  2. 2.DIUniversité du Québec àMontréal

Personalised recommendations