Skip to main content

Advertisement

Log in

Enhancing traceability of persistent data access flows in process-driven SOAs

  • Published:
Distributed and Parallel Databases Aims and scope Submit manuscript

Abstract

In process-driven, service-oriented architectures (SOAs), process activities can perform service operations, data transformations, or human tasks. Unfortunately, the process activities are usually tightly coupled. Thus, when the number of activities in the process grows, focusing on particular activities of the flow such as the service operations reading or writing persistent data is a time-consuming task. In particular, in order to solve structural problems concerning persistent data access such as deadlocks in data-intensive business processes, stakeholders need to understand the underlying persistent data access details of the activities i.e. physical storage schemes, and database connections.

With our view-based model-driven approach, we provide a solution to generate flows of persistent data access activities (which we refer to as persistent data access flows). To the best of our knowledge these persistent data access flows are not used to solve structural problems in process-driven SOAs, yet. Moreover, our persistent data access flows can be flattened by diverse filer criteria e.g. by filtering all activities reading or writing from a specific database or table. Using our approach, we can enhance traceability and documentation of persistent data access in business processes. In a series of motivating scenarios from an industrial case study we present how our persistent data access flow concept can contribute to enhance productivity in service-oriented, process-driven environments. We qualitatively evaluate our concepts and prototypes, and finally, discuss the correctness and the complexity of the underlying algorithms.

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
Algorithm 1
Algorithm 2
Algorithm 3
Algorithm 4
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Algorithm 5

Similar content being viewed by others

References

  1. OASIS Web Services Business Process Execution Language (WSBPEL) TC: Web Services Business Process Execution Language Version 2.0 (2007). http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html

  2. Turner, M., Budgen, D., Brereton, P.: Turning software into a service. Computer 36, 38–44 (2003)

    Article  Google Scholar 

  3. SD network: Core J2EE pattern catalog. http://java.sun.com/blueprints/corej2eepatterns/Patterns/DataAccessObject.html (Copyright 1994–2008 Sun Microsystems, Inc.)

  4. OMG: Unified modeling language. http://www.uml.org/. Retrieved January 2012

  5. Hentrich, C., Zdun, U.: Patterns for process-oriented integration in service-oriented architectures. In: EuroPLoP, pp. 141–198 (2006)

    Google Scholar 

  6. Sadiq, W., Orlowska, M.E.: Applying graph reduction techniques for identifying structural conflicts in process models. In: Proceedings of the 11th Conference on Advanced Information Systems Engineering (CAiSE’99), pp. 195–209. Springer, Berlin (1999)

    Google Scholar 

  7. Weske, M.: Business Process Management: Concepts, Languages, Architectures. Springer, Berlin (2007)

    Google Scholar 

  8. Russell, N., ter Hofstede, A.H.M., Edmond, D., van der Aalst, W.M.P.: Workflow data patterns: identification, representation and tool support. In: ER, pp. 353–368 (2005)

    Google Scholar 

  9. Software AG: Webmethods bpms. http://www.softwareag.com/at/products/wm/bpm/default.asp. Retrieved January 2012

  10. Tran, H., Zdun, U., Dustdar, S.: View-based and model-driven approach for reducing the development complexity in process-driven SOA. In: Abramowicz, W., Maciaszek, L.A. (eds.) Business Process and Services Computing: 1st International Conference on Business Process and Services Computing (BPSC’07), Leipzig, Germany, 25–26 September 2007. LNI, vol. 116, pp. 105–124 (2007)

    Google Scholar 

  11. Mayr, C., Zdun, U., Dustdar, S.: Model-driven integration and management of data access objects in process-driven soas. In: ServiceWave ’08: Proceedings of the 1st European Conference on Towards a Service-Based Internet, pp. 62–73. Springer, Berlin (2008)

    Google Scholar 

  12. Mayr, C., Zdun, U., Dustdar, S.: View-based model-driven architecture for enhancing maintainability of data access services. Data Knowl. Eng. 70, 794–819 (2011)

    Article  Google Scholar 

  13. Carey, M.J., Reveliotis, P., Thatte, S., Westmann, T.: Data service modeling in the aqualogic data services platform. In: SERVICES I, pp. 78–80 (2008)

    Google Scholar 

  14. Zhang, G., Fu, X., Song, S., Zhu, M., Zhang, M.: Process driven data access component generation. In: DEECS, pp. 81–89 (2006)

    Google Scholar 

  15. Guang Zhang, X.: Model driven data service development. In: ICNSC’08, pp. 1668–1673 (2008)

    Google Scholar 

  16. Wang, J., Yu, A., Zhang, X., Qu, L.: A dynamic data integration model based on soa. In: ISECS International Colloquium on Computing, Communication, Control, and Management, pp. 196–199. IEEE Computer Society, Washington (2009)

    Chapter  Google Scholar 

  17. Habich, D., Richly, S., Preissler, S., Grasselt, M., Lehner, W., Maier, A.: Bpel-dt—data-aware extension of bpel to support data-intensive service applications. In: WEWST (2007)

    Google Scholar 

  18. IBM: Websphere mq workflow. http://www-01.ibm.com/software/integration/wmqwf/. Retrieved January 2012

  19. TIBCO: Bpm. http://www.tibco.com/products/bpm/. Retrieved January 2012

  20. JBoss Community: jbpm. http://www.jboss.org/jbpm. Retrieved January 2012

  21. Intalio: Bpm. http://www.intalio.com/bpm. Retrieved January 2012

  22. JBoss Community: Jboss messaging. http://www.jboss.org/jbossmessaging. Retrieved January 2012

  23. Kurz, S., Guppenberger, M., Freitag, B.: A uml profile for modeling schema mappings. In: ER Workshops, pp. 53–62 (2006)

    Google Scholar 

  24. Awad, A., Puhlmann, F.: Structural detection of deadlocks in business process models. In: BIS, pp. 239–250 (2008)

    Google Scholar 

  25. Duesterwald, E., Gupta, R., Soffa, M.L.: A practical framework for demand-driven interprocedural data flow analysis. ACM Trans. Program. Lang. Syst. 19(6), 992–1030 (1997)

    Article  Google Scholar 

  26. Le, W., Soffa, M.L.: Refining buffer overflow detection via demand-driven path-sensitive analysis. In: PASTE ’07: Proceedings of the 7th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering, pp. 63–68. ACM, New York (2007)

    Chapter  Google Scholar 

  27. Fischer, S., Kuchen, H.: Data-flow testing of declarative programs. In: ICFP, pp. 201–212 (2008)

    Chapter  Google Scholar 

  28. Rapps, S., Weyuker, E.J.: Data flow analysis techniques for test data selection. In: ICSE, pp. 272–278 (1982)

    Google Scholar 

  29. Isloor, S., Marsland, T.: The deadlock problem: an overview. Computer 13(9), 58–78 (1980)

    Article  Google Scholar 

  30. Reddy, P.K., Bhalla, S.: Deadlock prevention in a distributed database system. SIGMOD Rec. 22(3), 40–46 (1993)

    Article  Google Scholar 

  31. Naik, M., Park, C.S., Sen, K., Gay, D.: Effective static deadlock detection. In: ICSE ’09: Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, pp. 386–396. IEEE Computer Society, Washington (2009)

    Google Scholar 

  32. Dedene, G., Snoeck, M.: Formal deadlock elimination in an object oriented conceptual schema. Data Knowl. Eng. 15(1), 1–30 (1995)

    Article  MATH  Google Scholar 

  33. Zhou, Y., Lee, E.A.: A causality interface for deadlock analysis in dataflow. In: EMSOFT ’06: Proceedings of the 6th ACM & IEEE International Conference on Embedded Software, pp. 44–52. ACM, New York (2006)

    Chapter  Google Scholar 

  34. Object Management Group (OMG): Business process model and notation (bpmn) version 2.0. http://www.omg.org/spec/BPMN/2.0. Release Date January 2011

  35. Lang, N.: Schlaer-mellor object-oriented analysis rules. SIGSOFT Softw. Eng. Notes 18(1), 54–58 (1993)

    Article  Google Scholar 

  36. Hentrich, C., Zdun, U.: Patterns for business object model integration in process-driven and service-oriented architectures. In: PLoP ’06: Proceedings of the 2006 Conference on Pattern Languages of Programs, pp. 1–14. ACM, New York (2006)

    Chapter  Google Scholar 

  37. Georgakopoulos, D., Hornick, M.F., Sheth, A.P.: An overview of workflow management: from process modeling to workflow automation infrastructure. Distrib. Parallel Databases 3(2), 119–153 (1995)

    Article  Google Scholar 

  38. Eclipse: Eclipse modeling framework project (2011). http://www.eclipse.org/modeling/emf/. Retrieved October 2011

  39. OM Group: MOF 2.0/XMI mapping specification, v2.1.1. http://www.omg.org/technology/documents/formal/xmi.htm. January 2010

  40. Palkovits, S., Wimmer, M.: Processes in e-government—a holistic framework for modelling electronic public services. In: Traunmüller, R. (ed.) EGOV. Lecture Notes in Computer Science, vol. 2739, pp. 213–219. Springer, Berlin (2003)

    Google Scholar 

  41. JST Database: The java database connectivity (jdbc) (2001). http://java.sun.com/javase/technologies/database/

  42. Schmit, B.A., Dustdar, S.: Model-driven development of web service transactions. In: Proceedings of the Second GI-Workshop XML for Business Process Management, March (2005)

    Google Scholar 

  43. The Eclipse Foundation: Eclipse (2012). http://www.eclipse.org/

  44. Harrold, M.J.: Testing: a roadmap. In: ICSE ’00: Proceedings of the Conference on The Future of Software Engineering, pp. 61–72. ACM, New York (2000)

    Chapter  Google Scholar 

  45. Lethbridge, T.C., Singer, J., Forward, A.: How software engineers use documentation: the state of the practice. IEEE Softw. 20(6), 35–39 (2003)

    Article  Google Scholar 

  46. Völter, M., Stahl, T.: Model-Driven Software Development: Technology, Engineering, Management. Wiley, New York (2006)

    Google Scholar 

  47. Weidlich, M., Decker, G., Großkopf, A., Weske, M.: Bpel to bpmn: the myth of a straight-forward mapping. In: OTM Conferences, vol. 1, pp. 265–282 (2008)

    Google Scholar 

  48. Al-Khalifa, S., Jagadish, H.V., Patel, J.M., Wu, Y., Koudas, N., Srivastava, D.: Structural joins: a primitive for efficient xml query pattern matching. In: Agrawal, R., Dittrich, K.R. (eds.) ICDE, pp. 141–152. IEEE Computer Society, Los Alamitos (2002)

    Google Scholar 

  49. Bruno, N., Koudas, N., Srivastava, D.: Holistic twig joins: optimal xml pattern matching. In: SIGMOD Conference, pp. 310–321 (2002)

    Google Scholar 

  50. Ghezzi, C., Jazayeri, M., Mandrioli, D.: Fundamentals of Software Engineering. Prentice Hall, Englewood Cliffs (1991)

    MATH  Google Scholar 

  51. Cardoso, J.: Control-flow complexity measurement of processes and weyuker’s properties. In: 6th International Informatika Conference. Transactions on Informatika, Systems Sciences and Engineering, vol. 8, pp. 213–218 (2005)

    Google Scholar 

Download references

Acknowledgements

This work was supported by the European Union FP7 projects COMPAS, grant no. 215175, and INDENICA, grant no. 257483.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Christine Mayr.

Additional information

Communicated by Athman Bouguettaya.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Mayr, C., Zdun, U. & Dustdar, S. Enhancing traceability of persistent data access flows in process-driven SOAs. Distrib Parallel Databases 31, 1–45 (2013). https://doi.org/10.1007/s10619-012-7102-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10619-012-7102-6

Keywords

Navigation