Skip to main content

ChIP: A Choreographic Integration Process

  • Conference paper
  • First Online:
On the Move to Meaningful Internet Systems. OTM 2018 Conferences (OTM 2018)

Abstract

Over the years, organizations acquired disparate software systems, each answering one specific need. Currently, the desirable outcomes of integrating these systems (higher degrees of automation and better system consistency) are often outbalanced by the complexity of mitigating their discrepancies. These problems are magnified in the decentralized setting (e.g., cross-organizational cases) where the integration is usually dealt with ad-hoc “glue” connectors, each integrating two or more systems. Since the overall logic of the integration is spread among many glue connectors, these solutions are difficult to program correctly (making them prone to misbehaviors and system blocks), maintain, and evolve. In response to these problems, we propose ChIP, an integration process advocating choreographic programs as intermediate artifacts to refine high-level global specifications (e.g., UML Sequence Diagrams), defined by the domain experts of each partner, into concrete, distributed implementations. In ChIP, once the stakeholders agree upon a choreographic integration design, they can automatically generate the respective local connectors, which are guaranteed to faithfully implement the described distributed logic. In the paper, we illustrate ChIP with a pilot from the EU EIT Digital project SMAll, aimed at integrating pre-existing systems from government, university, and transport industry.

The original version of this chapter was revised: An acknowledgment has been added. The correction to this chapter is available at https://doi.org/10.1007/978-3-030-02671-4_39

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Change history

  • 05 December 2018

    The chapter was inadvertently published with error and the same has been corrected later.

Notes

  1. 1.

    Project description: https://forumvirium.fi/en/small-develops-mobility-as-a-service/.

  2. 2.

    Deployable platform: https://hub.docker.com/u/smallproject/ Documentation: https://github.com/small-dev/SMAll.Wiki/wiki.

  3. 3.

    The compiled connectors are available at http://www.cs.unibo.it/projects/jolie/aiocj_examples/ChIP_example/ChIP_example.zip.

  4. 4.

    https://github.com/thesave/aiocj/tree/SeparateCompilation.

References

  1. van der Aalst, W.M.P., Weske, M.: The P2P approach to interorganizational workflows. In: Dittrich, K.R., Geppert, A., Norrie, M.C. (eds.) CAiSE 2001. LNCS, vol. 2068, pp. 140–156. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45341-5_10

    Chapter  Google Scholar 

  2. AIOCJ website. http://www.cs.unibo.it/projects/jolie/aiocj.html

  3. Allweyer, T.: BPMN 2.0: introduction to the standard for business process modeling. BoD-Books on Demand (2016)

    Google Scholar 

  4. Arbab, F.: Reo: a channel-based coordination model for component composition. MSCS 14(3), 329–366 (2004)

    MathSciNet  MATH  Google Scholar 

  5. Autili, M., Inverardi, P., Tivoli, M.: CHOREOS: large scale choreographies for the future Internet. In: CSMR-WCRE, pp. 391–394. IEEE (2014)

    Google Scholar 

  6. Autili, M., Di Ruscio, D., Di Salle, A., Inverardi, P., Tivoli, M.: A model-based synthesis process for choreography realizability enforcement. In: Cortellessa, V., Varró, D. (eds.) FASE 2013. LNCS, vol. 7793, pp. 37–52. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37057-1_4

    Chapter  Google Scholar 

  7. Basu, A., et al.: Rigorous component-based system design using the BIP framework. IEEE Softw. 28(3), 41–48 (2011)

    Article  Google Scholar 

  8. Basu, S., Bultan, T.: Automated choreography repair. In: Stevens, P., Wąsowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 13–30. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49665-7_2

    Chapter  Google Scholar 

  9. Basu, S., Bultan, T., Ouederni, M.: Deciding choreography realizability. In: POPL, pp. 191–202. ACM (2012)

    Google Scholar 

  10. Bhargavan, K., et al.: Cryptographic protocol synthesis and verification for multiparty sessions. In: CSF, pp. 124–140. IEEE Computer Society (2009)

    Google Scholar 

  11. Bocchi, L., et al.: Monitoring networks through multiparty session types. Theor. Comput. Sci. 669, 33–58 (2017)

    Article  MathSciNet  Google Scholar 

  12. Booch, G.: The Unified Modeling Language User Guide. Pearson Education, New Delhi (2005)

    Google Scholar 

  13. Callegati, F., et al.: Smart mobility for all: a global federated market for mobility-as-a-service operators. In: ITSC, pp. 1–8. IEEE (2017)

    Google Scholar 

  14. Carbone, M., Montesi, F.: Deadlock-freedom-by-design: multiparty asynchronous global programming. In: POPL, pp. 263–274. ACM (2013)

    Article  Google Scholar 

  15. Dalla Preda, M., Giallorenzo, S., Lanese, I., Mauro, J., Gabbrielli, M.: AIOCJ: a choreographic framework for safe adaptive distributed applications. In: Combemale, B., Pearce, D.J., Barais, O., Vinju, J.J. (eds.) SLE 2014. LNCS, vol. 8706, pp. 161–170. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11245-9_9

    Chapter  Google Scholar 

  16. Dalla Preda, M., et al.: Dynamic choreographies: theory and implementation. Log. Methods Comput. Sci. 13(2) (2017)

    Google Scholar 

  17. Decker, G., Zaha, J.M., Dumas, M.: Execution semantics for service choreographies. In: Bravetti, M., Núñez, M., Zavattaro, G. (eds.) WS-FM 2006. LNCS, vol. 4184, pp. 163–177. Springer, Heidelberg (2006). https://doi.org/10.1007/11841197_11

    Chapter  Google Scholar 

  18. Endres, A., Rombach, H.D.: A Handbook of Software and Systems Engineering: Empirical Observations, Laws, and Theories. Pearson Education, London (2003)

    Google Scholar 

  19. Evans, P.C., Basole, R.C.: Revealing the API ecosystem and enterprise strategy via visual analytics. Commun. ACM 59(2), 26–28 (2016)

    Article  Google Scholar 

  20. Garlan, D., Allen, R., Ockerbloom, J.: Architectural mismatch or why it’s hard to build systems out of existing parts. In: ICSE, pp. 179–185. ACM/IEEE (1995)

    Google Scholar 

  21. Hasselbring, W.: Information system integration: introduction. Commun. ACM 43(6), 32–38 (2000)

    Article  Google Scholar 

  22. He, W., Da Xu, L.: Integration of distributed enterprise applications: a survey. IEEE Trans. Ind. Informat. 10(1), 35–42 (2014)

    Article  Google Scholar 

  23. Hildebrandt, T., Mukkamala, R.R., Slaats, T.: Nested dynamic condition response graphs. In: Arbab, F., Sirjani, M. (eds.) FSEN 2011. LNCS, vol. 7141, pp. 343–350. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29320-7_23

    Chapter  Google Scholar 

  24. Hitt, L.M., Wu, D., Zhou, X.: Investment in enterprise resource planning: business impact and productivity measures. JMIS 19(1), 71–98 (2002)

    Google Scholar 

  25. Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. J. ACM 63(1), 9:1–9:67 (2016)

    Article  MathSciNet  Google Scholar 

  26. Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation. Pearson Education, London (2010)

    Google Scholar 

  27. Hüttel, H., et al.: Foundations of session types and behavioural contracts. ACM Comput. Surv. 49(1), 3 (2016)

    Article  Google Scholar 

  28. International Telecommunication Union: Message Sequence Chart (MSC). Series Z: Languages and General Software Aspects for Telecommunication Systems (2011)

    Google Scholar 

  29. Jolie website. http://www.jolie-lang.org/

  30. Jongmans, S., Arbab, F.: Global consensus through local synchronization: a formal basis for partially-distributed coordination. SCP 115, 199–224 (2016)

    Google Scholar 

  31. Lanese, I., Montesi, F., Zavattaro, G.: Amending choreographies. In: WWV. EPTCS, vol. 123, pp. 34–48 (2013)

    Article  Google Scholar 

  32. Leesatapornwongsa, T., et al.: TaxDC: a taxonomy of non-deterministic concurrency bugs in datacenter distributed systems. ACM SIGPLAN Not. 51(4), 517–530 (2016)

    Article  Google Scholar 

  33. McIlvenna, S., Dumas, M., Wynn, M.T.: Synthesis of orchestrators from service choreographies. In: APCCM. CRPIT, vol. 96, pp. 129–138. Australian Computer Society (2009)

    Google Scholar 

  34. Montesi, F.: Kickstarting choreographic programming. In: Hildebrandt, T., Ravara, A., van der Werf, J.M., Weidlich, M. (eds.) WS-FM 2014-2015. LNCS, vol. 9421, pp. 3–10. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33612-1_1

    Chapter  Google Scholar 

  35. Montesi, F., Guidi, C., Zavattaro, G.: Service-oriented programming with Jolie. In: Bouguettaya, A., Sheng, Q., Daniel, F. (eds.) Web Services Foundations, pp. 81–107. Springer, New York (2014). https://doi.org/10.1007/978-1-4614-7518-7_4

    Chapter  Google Scholar 

  36. Montesi, F., Yoshida, N.: Compositional choreographies. In: D’Argenio, P.R., Melgratti, H. (eds.) CONCUR 2013. LNCS, vol. 8052, pp. 425–439. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40184-8_30

    Chapter  Google Scholar 

  37. Peterson, D., et al.: W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes. W3C (2012)

    Google Scholar 

  38. Qiu, Z., Zhao, X., Cai, C., Yang, H.: Towards the theoretical foundation of choreography. In: WWW, pp. 973–982. ACM (2007)

    Google Scholar 

  39. Rodríguez, P., et al.: Continuous deployment of software intensive products and services: a systematic mapping study. JSS 123, 263–291 (2017)

    Google Scholar 

  40. Russo, D., et al.: Software quality concerns in the Italian bank sector: the emergence of a meta-quality dimension. In: ICSE, pp. 63–72. ACM/IEEE (2017)

    Google Scholar 

  41. Scribble website. http://www.jboss.org/scribble

  42. Seiifzadeh, H., et al.: A survey of dynamic software updating. J. Softw.: Evol. Process 25(5), 535–568 (2013)

    Google Scholar 

  43. Zaha, J.M., Barros, A., Dumas, M., ter Hofstede, A.: Let’s dance: a language for service behavior modeling. In: Meersman, R., Tari, Z. (eds.) OTM 2006. LNCS, vol. 4275, pp. 145–162. Springer, Heidelberg (2006). https://doi.org/10.1007/11914853_10

    Chapter  Google Scholar 

Download references

Acknowledgements

This work was partially supported by the Independent Research Fund Denmark, grant no. DFF-7014-00041.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Saverio Giallorenzo .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Giallorenzo, S., Lanese, I., Russo, D. (2018). ChIP: A Choreographic Integration Process. In: Panetto, H., Debruyne, C., Proper, H., Ardagna, C., Roman, D., Meersman, R. (eds) On the Move to Meaningful Internet Systems. OTM 2018 Conferences. OTM 2018. Lecture Notes in Computer Science(), vol 11230. Springer, Cham. https://doi.org/10.1007/978-3-030-02671-4_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-02671-4_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-02670-7

  • Online ISBN: 978-3-030-02671-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics