{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T18:11:43Z","timestamp":1775067103364,"version":"3.50.1"},"publisher-location":"Cham","reference-count":86,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783319674247","type":"print"},{"value":"9783319674254","type":"electronic"}],"license":[{"start":{"date-parts":[[2017,1,1]],"date-time":"2017-01-01T00:00:00Z","timestamp":1483228800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2017]]},"DOI":"10.1007\/978-3-319-67425-4_12","type":"book-chapter","created":{"date-parts":[[2017,11,1]],"date-time":"2017-11-01T12:54:32Z","timestamp":1509540872000},"page":"195-216","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":762,"title":["Microservices: Yesterday, Today, and Tomorrow"],"prefix":"10.1007","author":[{"given":"Nicola","family":"Dragoni","sequence":"first","affiliation":[]},{"given":"Saverio","family":"Giallorenzo","sequence":"additional","affiliation":[]},{"given":"Alberto Lluch","family":"Lafuente","sequence":"additional","affiliation":[]},{"given":"Manuel","family":"Mazzara","sequence":"additional","affiliation":[]},{"given":"Fabrizio","family":"Montesi","sequence":"additional","affiliation":[]},{"given":"Ruslan","family":"Mustafin","sequence":"additional","affiliation":[]},{"given":"Larisa","family":"Safina","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2017,9,6]]},"reference":[{"key":"12_CR1","unstructured":"Akentev, E., Tchitchigin, A., Safina, L., Mazzara, M.: Verified type-checker for Jolie. https:\/\/arxiv.org\/pdf\/1703.05186.pdf"},{"key":"12_CR2","doi-asserted-by":"crossref","unstructured":"Allen, E.B., Khoshgoftaar, T.M., Chen, Y.: Measuring coupling and cohesion of software modules: an information-theory approach. In: Proceedings Seventh International Software Metrics Symposium, pp. 124\u2013134 (2001)","DOI":"10.1109\/METRIC.2001.915521"},{"key":"12_CR3","doi-asserted-by":"crossref","unstructured":"Bandura, A., Kurilenko, N., Mazzara, M., Rivera, V., Safina, L., Tchitchigin, A.: Jolie community on the rise. In: 9th IEEE International Conference on Service-Oriented Computing and Applications, SOCA (2016)","DOI":"10.1109\/SOCA.2016.16"},{"key":"12_CR4","volume-title":"Software Architecture in Practice","author":"L. Bass","year":"2007","unstructured":"Bass, L.: Software Architecture in Practice. Pearson Education India, New Delhi (2007)"},{"key":"12_CR5","volume-title":"Quality attributes and service-oriented architectures","author":"L. Bass","year":"2005","unstructured":"Bass, L., Merson, P., O\u2019Brien, L.: Quality attributes and service-oriented architectures. Department of Defense, Technical Report September (2005)"},{"key":"12_CR6","doi-asserted-by":"crossref","unstructured":"Bieman, J.M., Kang, B.-K.: Cohesion and reuse in an object-oriented system. In: Proceedings of the 1995 Symposium on Software Reusability, SSR \u201995, pp. 259\u2013262. ACM, New York (1995)","DOI":"10.1145\/211782.211856"},{"issue":"5","key":"12_CR7","doi-asserted-by":"publisher","first-page":"217","DOI":"10.1145\/173668.168637","volume":"27","author":"A. Birrell","year":"1993","unstructured":"Birrell, A., Nelson, G., Owicki, S., Wobber, E.: Network objects. SIGOPS Oper. Syst. Rev. 27(5), 217\u2013230 (1993)","journal-title":"SIGOPS Oper. Syst. Rev."},{"key":"12_CR8","doi-asserted-by":"publisher","first-page":"194","DOI":"10.1007\/978-3-540-24769-2_14","volume-title":"Software Architecture","author":"Jan Bosch","year":"2004","unstructured":"Bosch, J.: Software architecture: the next step. In: Software Architecture, pp. 194\u2013199. Springer, Berlin (2004)"},{"key":"12_CR9","doi-asserted-by":"crossref","unstructured":"Bravetti, M., Zavattaro, G.: Towards a unifying theory for choreography conformance and contract compliance. In: Software Composition, pp. 34\u201350. Springer, Berlin, Heidelberg (2007)","DOI":"10.1007\/978-3-540-77351-1_4"},{"issue":"1","key":"12_CR10","doi-asserted-by":"publisher","first-page":"91","DOI":"10.1109\/32.748920","volume":"25","author":"L.C. Briand","year":"1999","unstructured":"Briand, L.C., Daly, J.W., W\u00fcst, J.K.: A unified framework for coupling measurement in object-oriented systems. IEEE Trans. Softw. Eng. 25(1), 91\u2013121 (1999)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"12_CR11","volume-title":"The Mythical Man-Month","author":"F.P. Brooks","year":"1975","unstructured":"Brooks, F.P.: The Mythical Man-Month, vol. 1995. Addison-Wesley, Reading (1975)"},{"key":"12_CR12","doi-asserted-by":"publisher","first-page":"74","DOI":"10.1007\/978-3-319-39570-8_6","volume-title":"Formal Techniques for Distributed Objects, Components, and Systems","author":"Lu\u00eds Caires","year":"2016","unstructured":"Caires, L., P\u00e9rez, J.A.: Multiparty session types within a canonical binary theory, and beyond. In: Formal Techniques for Distributed Objects, Components, and Systems - 36th IFIP WG 6.1 International Conference, FORTE 2016, Held as Part of the 11th International Federated Conference on Distributed Computing Techniques, DisCoTec 2016, Heraklion, Crete,June 6\u20139, 2016, Proceedings, pp. 74\u201395 (2016)"},{"key":"12_CR13","doi-asserted-by":"publisher","first-page":"222","DOI":"10.1007\/978-3-642-15375-4_16","volume-title":"CONCUR 2010 - Concurrency Theory","author":"Lu\u00eds Caires","year":"2010","unstructured":"Caires, L., Pfenning, F.: Session types as intuitionistic linear propositions. In: CONCUR, pp. 222\u2013236 (2010)"},{"issue":"1","key":"12_CR14","doi-asserted-by":"publisher","first-page":"263","DOI":"10.1145\/2480359.2429101","volume":"48","author":"Marco Carbone","year":"2013","unstructured":"Carbone, M., Montesi, F.: Deadlock-freedom-by-design: multiparty asynchronous global programming. In: POPL, pp. 263\u2013274 (2013)","journal-title":"ACM SIGPLAN Notices"},{"issue":"2","key":"12_CR15","doi-asserted-by":"publisher","first-page":"8","DOI":"10.1145\/2220365.2220367","volume":"34","author":"M. Carbone","year":"2012","unstructured":"Carbone, M., Honda, K., Yoshida, N.: Structured communication-centered programming for web services. ACM Trans. Program. Lang. Syst. 34(2), 8 (2012)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"12_CR16","doi-asserted-by":"crossref","first-page":"47","DOI":"10.1007\/978-3-662-44584-6_5","volume-title":"CONCUR 2014 \u2013 Concurrency Theory","author":"Marco Carbone","year":"2014","unstructured":"Carbone, M., Montesi, F., Sch\u00fcrmann, C.: Choreographies, logically. In: CONCUR, pp. 47\u201362 (2014)"},{"key":"12_CR17","unstructured":"Carbone, M., Montesi, F., Sch\u00fcrmann, C., Yoshida, N.: Multiparty session types as coherence proofs. In: CONCUR, pp. 412\u2013426 (2015)"},{"key":"12_CR18","doi-asserted-by":"publisher","unstructured":"Carbone, M., Lindley, S., Montesi, F., Sch\u00fcrmann, C., Wadler, P.: Coherence generalises duality: a logical explanation of multiparty session types. In: Desharnais, J., Jagadeesan, R. (eds.) 27th International Conference on Concurrency Theory (CONCUR 2016). Leibniz International Proceedings in Informatics (LIPIcs), vol. 59, pp. 33:1\u201333:15. Schloss Dagstuhl\u2013Leibniz-Zentrum fuer Informatik, Dagstuhl (2016). doi: 10.4230\/LIPIcs.CONCUR.2016.33 , ISBN:978-3-95977-017-0. http:\/\/drops.dagstuhl.de\/opus\/volltexte\/2016\/6181","DOI":"10.4230\/LIPIcs.CONCUR.2016.33"},{"key":"12_CR19","unstructured":"Christensen, E., Curbera, F., Meredith, G., Weerawarana, S., et al.: Web services description language (wsdl) 1.1 (2001)"},{"key":"12_CR20","volume-title":"Best Kept Secrets of Peer Code Review","author":"J. Cohen","year":"2006","unstructured":"Cohen, J., Brown, E., DuRette, B., Teleki, S.: Best Kept Secrets of Peer Code Review. Smart Bear, Somerville (2006)"},{"issue":"3","key":"12_CR21","doi-asserted-by":"publisher","first-page":"199","DOI":"10.1016\/0164-1212(90)90040-S","volume":"12","author":"B.T. Compton","year":"1990","unstructured":"Compton, B.T., Withrow, C.: Prediction and control of ADA software defects. J. Syst. Softw. 12(3), 199\u2013207 (1990)","journal-title":"J. Syst. Softw."},{"issue":"4","key":"12_CR22","first-page":"28","volume":"14","author":"M.E. Conway","year":"1968","unstructured":"Conway, M.E.: How do committees invent. Datamation 14(4), 28\u201331 (1968)","journal-title":"Datamation"},{"key":"12_CR23","unstructured":"Cruz-Filipe, L., Montesi, F.: Choreographies, computationally. In: CoRR, abs\/1510.03271 (2015)"},{"key":"12_CR24","unstructured":"Cruz-Filipe, L., Montesi, F.: Choreographies, divided and conquered. In: CoRR, abs\/1602.03729 (2016)"},{"issue":"1","key":"12_CR25","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1016\/0164-1212(94)00128-A","volume":"29","author":"H. Dhama","year":"1995","unstructured":"Dhama, H.: Quantitative models of cohesion and coupling in software. J. Syst. Softw. 29(1), 65\u201374 (1995)","journal-title":"J. Syst. Softw."},{"key":"12_CR26","doi-asserted-by":"crossref","unstructured":"Dragoni, N., Lanese, I., Larsen, S.T., Mazzara, M., Mustafin, R., Safina, L.: Microservices: how to make your application scale. In: A.P. Ershov Informatics Conference (the PSI Conference Series, 11th edn.). Springer, Berlin (2017)","DOI":"10.1007\/978-3-319-74313-4_8"},{"key":"12_CR27","unstructured":"Dragoni, N., Dustdar, S., Larse, S.T., Mazzara, M.: Microservices: migration of a mission critical system. https:\/\/arxiv.org\/abs\/1704.04173"},{"issue":"5","key":"12_CR28","doi-asserted-by":"publisher","first-page":"494","DOI":"10.1109\/TSE.2002.1000452","volume":"28","author":"K. Emam El","year":"2002","unstructured":"El Emam, K., Goel, N., Melo, W., Lounis, H., Rai, S.N., et al.: The optimal class size for object-oriented software. IEEE Trans. Softw. Eng. 28(5), 494\u2013509 (2002)","journal-title":"IEEE Trans. Softw. Eng."},{"key":"12_CR29","doi-asserted-by":"publisher","first-page":"575","DOI":"10.1007\/978-3-642-59412-0_35","volume-title":"Software Pioneers","author":"Michael Fagan","year":"2002","unstructured":"Fagan, M.: Design and code inspections to reduce errors in program development. In: Software Pioneers, pp. 575\u2013607. Springer, Berlin (2002)"},{"key":"12_CR30","unstructured":"Fielding, R.T.: Architectural styles and the design of network-based software architectures. PhD thesis, University of California, Irvine (2000)"},{"key":"12_CR31","unstructured":"Flow: A static type checker for JavaScript. https:\/\/flowtype.org\/"},{"key":"12_CR32","volume-title":"Patterns of Enterprise Application Architecture","author":"M. Fowler","year":"2002","unstructured":"Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman, Boston (2002)"},{"key":"12_CR33","unstructured":"Fowler, M., Foemmel, M.: Continuous integration. https:\/\/www.thoughtworks.com\/continuous-integration (2006)"},{"key":"12_CR34","unstructured":"Fowler, M., Lewis, J.: Microservices. http:\/\/martinfowler.com\/articles\/microservices.html (2014)"},{"key":"12_CR35","unstructured":"Gabbrielli, M., Giallorenzo, S., Montesi, F.: Applied choreographies. In: CoRR, abs\/1510.03637 (2015)"},{"key":"12_CR36","doi-asserted-by":"publisher","first-page":"194","DOI":"10.1007\/978-3-319-30734-3_14","volume-title":"Theory and Practice of Formal Methods","author":"Maurizio Gabbrielli","year":"2016","unstructured":"Gabbrielli, M., Giallorenzo, S., Guidi, C., Mauro, J., Montesi, F.: Self-reconfiguring microservices. In: Theory and Practice of Formal Methods, pp. 194\u2013210. Springer, Berlin (2016)"},{"key":"12_CR37","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1995","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Pearson Education India, New Delhi (1995)"},{"key":"12_CR38","doi-asserted-by":"publisher","unstructured":"Gao, J., Rahman, M.: A reusable automated acceptance testing architecture for microservices in behavior-driven development. In: Proceedings of the 2015 IEEE Symposium on Service-Oriented System Engineering (SOSE \u201915), pp. 321\u2013325. IEEE Computer Society, Washington, DC (2015). doi: 10.1109\/SOSE.2015.55 , ISBN:978-1-4799-8356-8. http:\/\/dx.doi.org\/10.1109\/SOSE.2015.55","DOI":"10.1109\/SOSE.2015.55"},{"issue":"4","key":"12_CR39","doi-asserted-by":"publisher","first-page":"14","DOI":"10.1145\/1142055.1142065","volume":"4","author":"J. Gray","year":"2006","unstructured":"Gray, J.: A conversation with Werner Vogels. ACM Queue 4(4), 14\u201322 (2006)","journal-title":"ACM Queue"},{"key":"12_CR40","unstructured":"Grosso, W.: Java RMI, 1st edn. O\u2019Reilly & Associates, Inc., Newton (2001)"},{"key":"12_CR41","doi-asserted-by":"crossref","unstructured":"Guidi, C.: Formalizing languages for service oriented computing. Ph.D. thesis, University of Bologna (2007)","DOI":"10.4304\/jsw.2.1.1-13"},{"issue":"2","key":"12_CR42","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1109\/52.582978","volume":"14","author":"L. Hatton","year":"1997","unstructured":"Hatton, L.: Reexamining the fault density-component size connection. IEEE Softw. 14(2), 89\u201397 (1997)","journal-title":"IEEE Softw."},{"key":"12_CR43","unstructured":"Hewitt, C., Bishop, P., Steiger, R.: A universal modular actor formalism for artificial intelligence. In: Proceedings of the 3rd International Joint Conference on Artificial Intelligence, IJCAI\u201973, pp. 235\u2013245. Morgan Kaufmann, Burlington (1973)"},{"key":"12_CR44","unstructured":"Hitz, M., Montazeri, B.: Measuring coupling and cohesion in object-oriented systems. Citeseer (1995)"},{"key":"12_CR45","doi-asserted-by":"publisher","first-page":"122","DOI":"10.1007\/BFb0053567","volume-title":"Programming Languages and Systems","author":"Kohei Honda","year":"1998","unstructured":"Honda, K., Vasconcelos, V., Kubo, M.: Language primitives and type disciplines for structured communication-based programming. In: Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems, pp. 22\u2013138 (1998)"},{"key":"12_CR46","doi-asserted-by":"crossref","unstructured":"Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. J. ACM 63(1), 9 (2016). Also: POPL, pp. 273\u2013284 (2008)","DOI":"10.1145\/1328897.1328472"},{"key":"12_CR47","unstructured":"Krause, L.: Microservices: Patterns and Applications, 1 edn. Lucas Krause, Paris (2014). 1 April 2015"},{"key":"12_CR48","doi-asserted-by":"crossref","unstructured":"Le, V.D., Neff, M.M., Stewart, R.V., Kelley, R., Fritzinger, E., Dascalu, S.M., Harris, F.C.: Microservice-based architecture for the NRDC. In: 2015 IEEE 13th International Conference on Industrial Informatics (INDIN), July 2015, pp. 1659\u20131664","DOI":"10.1109\/INDIN.2015.7281983"},{"key":"12_CR49","doi-asserted-by":"publisher","first-page":"195","DOI":"10.1007\/978-3-319-39570-8_13","volume-title":"Formal Techniques for Distributed Objects, Components, and Systems","author":"Hugo A. L\u00f3pez","year":"2016","unstructured":"L\u00f3pez, H.A., Nielson, F., Nielson, H.R.: Enforcing availability in failure-aware communicating systems. In: Formal Techniques for Distributed Objects, Components, and Systems - 36th IFIP WG 6.1 International Conference, FORTE 2016, Held as Part of the 11th International Federated Conference on Distributed Computing Techniques, DisCoTec 2016, Heraklion, Crete, June 6\u20139, 2016, Proceedings, pp. 195\u2013211 (2016)"},{"issue":"1","key":"12_CR50","doi-asserted-by":"publisher","first-page":"96","DOI":"10.1016\/j.jlap.2006.05.007","volume":"70","author":"R. Lucchi","year":"2007","unstructured":"Lucchi, R., Mazzara, M.: A pi-calculus based semantics for WS-BPEL. J. Logic Algebraic Program. 70(1), 96\u2013118 (2007)","journal-title":"J. Logic Algebraic Program."},{"key":"12_CR51","unstructured":"MacKenzie, M.C., Laskey, K., McCabe, F., Brown, P.F., Metz, R., Hamilton, B.A.: Reference model for service oriented architecture 1.0. OASIS Standard, 12 Oct 2006"},{"key":"12_CR52","unstructured":"Mauro, T.: Adopting microservices at netflix: lessons for team and process design. http:\/\/nginx.com\/blog\/adopting-microservices-at-netflix-lessons-for-team-and-process-design\/ (2015)"},{"key":"12_CR53","doi-asserted-by":"crossref","unstructured":"Mazzara, M.: Towards abstractions for web services composition. Ph.D. thesis, University of Bologna (2006)","DOI":"10.1007\/11841197_17"},{"key":"12_CR54","first-page":"1","volume-title":"Lecture Notes in Computer Science","author":"Manuel Mazzara","year":"2005","unstructured":"Mazzara, M., Govoni, S.: A Case Study of Web Services Orchestration, pp. 1\u201316. Springer, Berlin, Heidelberg (2005)"},{"key":"12_CR55","volume-title":"Microservices: a language-based approach","author":"M. Mazzara","year":"2017","unstructured":"Mazzara, M., Montesi, F., Guidi, C., Lanese, I.: Microservices: a language-based approach. In: Present and Ulterior Software Engineering. Springer, Berlin (2017)"},{"issue":"239","key":"12_CR56","first-page":"2","volume":"2014","author":"D. Merkel","year":"2014","unstructured":"Merkel, D.: Docker: lightweight Linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014)","journal-title":"Linux J."},{"key":"12_CR57","doi-asserted-by":"crossref","unstructured":"Milner, R.: A Calculus of Communicating Systems. Lecture Notes in Computer Science, vol. 92. Springer, Berlin (1980)","DOI":"10.1007\/3-540-10235-3"},{"key":"12_CR58","doi-asserted-by":"crossref","unstructured":"Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, I and II. Inf. Comput. 100(1), 1\u201340, 41\u201377 (1992)","DOI":"10.1016\/0890-5401(92)90009-5"},{"key":"12_CR59","unstructured":"Mingela, B., Troshkov, N., Mazzara, M., Safina, L., Tchitchigin, A.: Towards static type-checking for Jolie. https:\/\/arxiv.org\/pdf\/1702.07146.pdf"},{"key":"12_CR60","unstructured":"Montesi, F.: Choreographic programming. Ph.D. thesis, IT University of Copenhagen. http:\/\/www.fabriziomontesi.com\/files\/choreographic_programming.pdf (2013)"},{"key":"12_CR61","doi-asserted-by":"publisher","first-page":"69","DOI":"10.1016\/j.scico.2016.05.002","volume":"130","author":"F. Montesi","year":"2016","unstructured":"Montesi, F.: Process-aware web programming with Jolie. Sci. Comput. Program. 130, 69\u201396 (2016)","journal-title":"Sci. Comput. Program."},{"key":"12_CR62","doi-asserted-by":"publisher","first-page":"425","DOI":"10.1007\/978-3-642-40184-8_30","volume-title":"CONCUR 2013 \u2013 Concurrency Theory","author":"Fabrizio Montesi","year":"2013","unstructured":"Montesi, F., Yoshida, N.: Compositional choreographies. In: CONCUR, pp. 425\u2013439 (2013)"},{"key":"12_CR63","first-page":"81","volume-title":"Web Services Foundations","author":"Fabrizio Montesi","year":"2013","unstructured":"Montesi, F., Guidi, C., Zavattaro, G.: Service-Oriented Programming with Jolie. In: Web Services Foundations, pp. 81\u2013107. Springer, Berlin (2014)"},{"key":"12_CR64","volume-title":"Building Microservices","author":"S. Newman","year":"2015","unstructured":"Newman, S.: Building Microservices. O\u2019Reilly Media, Sebastopol (2015)"},{"issue":"03","key":"12_CR65","doi-asserted-by":"publisher","first-page":"205","DOI":"10.1017\/S026988890000789X","volume":"11","author":"Hyacinth S. Nwana","year":"1996","unstructured":"Nwana, H.S.: Software agents: an overview. Knowl. Eng. Rev. 11, 205\u2013244, 9 (1996)","journal-title":"The Knowledge Engineering Review"},{"key":"12_CR66","unstructured":"OASIS: Web Services Business Process Execution Language. http:\/\/docs.oasis-open.org\/wsbpel\/2.0\/wsbpel-v2.0.html"},{"key":"12_CR67","unstructured":"OMG: Common Object Request Broker Architecture. http:\/\/www.omg.org\/spec\/CORBA\/"},{"key":"12_CR68","unstructured":"Ongaro, D., Ousterhout, J.K.: In search of an understandable consensus algorithm. In: 2014 USENIX Annual Technical Conference, USENIX ATC \u201914, Philadelphia, PA, 19\u201320 June 2014, pp. 305\u2013319"},{"issue":"10","key":"12_CR69","doi-asserted-by":"publisher","first-page":"46","DOI":"10.1109\/MC.2003.1236471","volume":"36","author":"C. Peltz","year":"2003","unstructured":"Peltz, C.: Web services orchestration and choreography. Computer 36(10), 46\u201352 (2003)","journal-title":"Computer"},{"issue":"4","key":"12_CR70","doi-asserted-by":"publisher","first-page":"40","DOI":"10.1145\/141874.141884","volume":"17","author":"D.E. Perry","year":"1992","unstructured":"Perry, D.E., Wolf, A.L.: Foundations for the study of software architecture. ACM SIGSOFT Softw. Eng. Notes 17(4), 40\u201352 (1992)","journal-title":"ACM SIGSOFT Softw. Eng. Notes"},{"key":"12_CR71","volume-title":"Apache thrift","author":"A. Prunicki","year":"2009","unstructured":"Prunicki, A.: Apache thrift (2009)"},{"key":"12_CR72","volume-title":"The Art of Unix Programming","author":"E.S. Raymond","year":"2003","unstructured":"Raymond, E.S.: The Art of Unix Programming. Addison-Wesley Professional, Indianapolis (2003)"},{"key":"12_CR73","unstructured":"Rotem-Gal-Oz, A.: Fallacies of distributed computing explained, p. 20. http:\/\/www.rgoarchitects.com\/Files\/fallacies.pdf (2006)"},{"key":"12_CR74","doi-asserted-by":"crossref","unstructured":"Safina, L., Mazzara, M., Montesi, F., Rivera, V.: Data-driven workflows for microservices (genericity in Jolie). In: Proc. of The 30th IEEE International Conference on Advanced Information Networking and Applications (AINA) (2016)","DOI":"10.1109\/AINA.2016.95"},{"key":"12_CR75","volume-title":"Software architecture: perspectives on an emerging discipline","author":"M. Shaw","year":"1996","unstructured":"Shaw, M., Garlan, D.: Software architecture: perspectives on an emerging discipline, vol. 1. Prentice Hall, Englewood Cliffs (1996)"},{"key":"12_CR76","doi-asserted-by":"crossref","unstructured":"Sun, Y., Nanda, S., Jaeger, T.: Security-as-a-service for microservices-based cloud applications. In: Proceedings of the 2015 IEEE 7th International Conference on Cloud Computing Technology and Science (CloudCom), CLOUDCOM \u201915, pp. 50\u201357. IEEE Computer Society, Washington, DC (2015)","DOI":"10.1109\/CloudCom.2015.93"},{"key":"12_CR77","volume-title":"Component Software: Beyond Object-Oriented Programming","author":"C. Szyperski","year":"2002","unstructured":"Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)","edition":"2"},{"key":"12_CR78","volume-title":"Refinement types in Jolie","author":"A. Tchitchigin","year":"2016","unstructured":"Tchitchigin, A., Safina, L., Mazzara, M., Elwakil, M., Montesi, F., Rivera, V.: Refinement types in Jolie. In: Spring\/Summer Young Researchers Colloquium on Software Engineering, SYRCoSE (2016)"},{"key":"12_CR79","doi-asserted-by":"publisher","first-page":"350","DOI":"10.1007\/978-3-642-37036-6_20","volume-title":"Programming Languages and Systems","author":"Bernardo Toninho","year":"2013","unstructured":"Toninho, B., Caires, L., Pfenning, F.: Higher-order processes, functions, and sessions: a monadic integration. In: Programming Languages and Systems - 22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, March 16\u201324, 2013. Proceedings, pp. 350\u2013369 (2013)"},{"key":"12_CR80","unstructured":"Varda, K.: Protocol buffers: Google\u2019s data interchange format. Google Open Source Blog, Available at least as early as July 2008"},{"key":"12_CR81","unstructured":"W3C: Web services architecture. http:\/\/www.w3.org\/TR\/ws-arch\/"},{"key":"12_CR82","unstructured":"W3C: Web services choreography description language. https:\/\/www.w3.org\/TR\/ws-cdl-10\/"},{"issue":"2-3","key":"12_CR83","doi-asserted-by":"publisher","first-page":"384","DOI":"10.1017\/S095679681400001X","volume":"24","author":"PHILIP WADLER","year":"2014","unstructured":"Wadler, P.: Propositions as sessions. J. Funct. Program. 24(2\u20133), 384\u2013418 (2014). Also: ICFP, pp. 273\u2013286 (2012)","journal-title":"Journal of Functional Programming"},{"key":"12_CR84","unstructured":"Wang, A., Tonse, S.: Announcing ribbon: tying the netflix mid-tier services together, January 2013. http:\/\/techblog.netflix.com\/2013\/01\/announcing-ribbon-tying-netflix-mid.html"},{"key":"12_CR85","unstructured":"Web Services Choreography Working Group et al.: Web services choreography description language (2002)"},{"key":"12_CR86","unstructured":"Yan, Z., Mazzara, M., Cimpian, E., Urbanec, A.: Business process modeling: classifications and perspectives. In: Business Process and Services Computing: 1st International Working Conference on Business Process and Services Computing, BPSC 2007, September 25\u201326, 2007, Leipzig, p. 222 (2007)"}],"container-title":["Present and Ulterior Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-67425-4_12","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,26]],"date-time":"2025-06-26T20:42:05Z","timestamp":1750970525000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-67425-4_12"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017]]},"ISBN":["9783319674247","9783319674254"],"references-count":86,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-67425-4_12","relation":{},"subject":[],"published":{"date-parts":[[2017]]},"assertion":[{"value":"6 September 2017","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}