Abstract
UML2PROV is an approach to address the gap between application design, through UML diagrams, and provenance design, using PROV-Template. Its original design (i) provides a mapping strategy from UML behavioural diagrams to templates, (ii) defines a code generation technique based on Proxy pattern to deploy suitable artefacts for provenance generation in an application, (iii) is implemented in Java, using XSLT as a first attempt to implement our mapping patterns. In this paper, we complement and improve this original design in three different ways, providing a more complete and accurate solution for provenance generation. First, UML2PROV now supports UML structural diagrams (Class Diagrams), defining a mapping strategy from such diagrams to templates. Second, the UML2PROV prototype is improved by using a Model Driven Development-based approach which not only implements the overall mapping patterns, but also provides a fully automatic way to generate the artefacts for provenance collection, based on Aspect Oriented Programming as a more expressive and compact technique for capturing provenance than the Proxy pattern. Finally, there is an analysis of the potential benefits of our overall approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Holland, D., Braun, U., Maclean, D., Muniswamy-Reddy, K.K., Seltzer, M.I.: Choosing a data model and query language for provenance. In: Proceedings of IPAW 2008, pp. 98–115 (2008)
Glavic, B., Alonso, G.: Perm: processing provenance and data on the same data model through query rewriting. In: Proceedings of the 25th IEEE International Conference on Data Engineering (ICDE 2009), pp. 174–185 (2009)
Wolstencroft, K.: The Taverna workflow suite: designing and executing workflows of Web Services on the desktop, web or in the cloud. Nucleic Acids Res. 41, 557–561 (2013)
Groth P., Moreau L. (eds.): PROV-Overview. An Overview of the PROV Family of Documents. W3C Working Group Note prov-overview-20130430 (2013). http://www.w3.org/TR/2013/NOTE-prov-overview-20130430/
OMG. Unified Modeling Language (UML). Version 2.5: (2015) formal/03 Jan 2015. http://www.omg.org/spec/UML/2.5/. Last visited, March 2018
Miles, S., Groth, P.T., Munroe, S., Moreau, L.: Prime: a methodology for developing provenance-aware applications. ACM Trans. Softw. Eng. Methodol. 20(3), 8:1–8:42 (2011)
Moreau, L., Batlajery, B.V., Huynh, T.D., Michaelides, D., Packer, H.: A templating system to generate provenance. IEEE Trans. Softw. Eng. (2017). http://eprints.soton.ac.uk/405025/
Sáenz-Adán, C., Pérez, B., Huynh, T.D., Moreau, L.: UML2PROV: automating provenance capture in software engineering. In: Proceedings of Sofsem 2018, pp. 667–681 (2018)
OMG: Object Constraint Language, Version 2.4 formal/02 March 2014 (2014). http://www.omg.org/spec/OCL/2.4/PDF
Supplementary material of UML2PROV (2018). https://uml2prov.github.io/
Reverse Engineering Method Stereotypes. In: Proceedings of the 22nd IEEE International Conference on Software Maintenance (2006)
Costa, C.M., Marcos Menárguez-Tortosa, J.T.F.B.: Clinical data interoperability based on archetype transformation. J. Biomed. Inform. 44(5), 869–880 (2011)
Selic, B.: The pragmatics of model-driven development. IEEE Softw. 20(5), 19–25 (2003)
Moreau, L., et al.: PROV-DM: The PROV Data Model. W3C Recommendation REC-prov-dm-20130430, World Wide Web Consortium (2013). http://www.w3.org/TR/2013/REC-prov-dm-20130430/
ATL - a model transformation technology, version 3.8, May 2017. http://www.eclipse.org/atl/. Last visited, March 2018
XPand: Eclipse platform (2018). https://wiki.eclipse.org/Xpand, Last visited, March 2018
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-oriented Software. Addison Wesley, Reading (1995)
Kiczales, G., et al.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0053381
Pérez, B., Sáenz-Adán, C., Rubio, J.: A systematic review of provenance systems. Knowl. Inf, Syst (2018)
Glavic, B., Dittrich, K.R.: Data Provenance: A Categorization of Existing Approaches. In: Proceedings of Datenbanksysteme in Büro, Technik und Wissenschaft (BTW 2007), pp. 227–241 (2007)
Silva, C.T., Anderson, E., Santos, E., Freire, J.: Using vistrails and provenance for teaching scientific visualization. Comput. Graph. Forum 30(1), 75–84 (2011)
Altintas, I., Barney, O., Jaeger-Frank, E.: Provenance collection support in the kepler scientific workflow system. In: Moreau, L., Foster, I. (eds.) IPAW 2006. LNCS, vol. 4145, pp. 118–132. Springer, Heidelberg (2006). https://doi.org/10.1007/11890850_14
Tariq, D., Ali, M., Gehani, A.: Towards automated collection of application-level data provenance. In: Proceedings of TaPP 2012 (2012)
Pimentel, J.F., Murta, L., Braganholo, V., Freire, J.: noworkflow: a tool for collecting, analyzing, and managing provenance from python scripts. In: Proceedings of VLDB 2017, vol. 10, pp. 1841–1844 (2017)
Brauer, P.C., Fittkau, F., Hasselbring, W.: The aspect-oriented architecture of the CAPS framework for capturing, analyzing and archiving provenance data. In: Ludäscher, B., Plale, B. (eds.) IPAW 2014. LNCS, vol. 8628, pp. 223–225. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-16462-5_19
Acknowledgements
This work was partially supported by the spanish MINECO project EDU2016-79838-P, and by the U. of La Rioja (grant FPI-UR-2015).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Sáenz-Adán, C., Moreau, L., Pérez, B., Miles, S., García-Izquierdo, F.J. (2018). Automating Provenance Capture in Software Engineering with UML2PROV. In: Belhajjame, K., Gehani, A., Alper, P. (eds) Provenance and Annotation of Data and Processes. IPAW 2018. Lecture Notes in Computer Science(), vol 11017. Springer, Cham. https://doi.org/10.1007/978-3-319-98379-0_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-98379-0_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-98378-3
Online ISBN: 978-3-319-98379-0
eBook Packages: Computer ScienceComputer Science (R0)