{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,18]],"date-time":"2026-05-18T23:21:11Z","timestamp":1779146471771,"version":"3.51.4"},"reference-count":69,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2021,6,30]],"date-time":"2021-06-30T00:00:00Z","timestamp":1625011200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Auton. Adapt. Syst."],"published-print":{"date-parts":[[2021,6,30]]},"abstract":"<jats:p>Microservices have gained acceptance in software industries as an emerging architectural style for autonomic, scalable, and more reliable computing. Among the critical microservice architecture design decisions is when to adapt the granularity of a microservice architecture by merging\/decomposing microservices. No existing work investigates the following question: How can we reason about the trade-off between predicted benefits and cost of pursuing microservice granularity adaptation under uncertainty? To address this question, we provide a novel formulation of the decision problem to pursue granularity adaptation as a real options problem. We propose a novel evaluation process for dynamically evaluating granularity adaptation design decisions under uncertainty. Our process is based on a novel combination of real options and the concept of Bayesian surprises. We show the benefits of our evaluation process by comparing it to four representative industrial microservice runtime monitoring tools, which can be used for retrospective evaluation for granularity adaptation decisions. Our comparison shows that our process can supersede and\/or complement these tools. We implement a microservice application\u2014Filmflix\u2014using Amazon Web Service Lambda and use this implementation as a case study to show the unique benefit of our process compared to traditional application of real options analysis.<\/jats:p>","DOI":"10.1145\/3502724","type":"journal-article","created":{"date-parts":[[2022,3,4]],"date-time":"2022-03-04T10:03:48Z","timestamp":1646388228000},"page":"1-35","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":7,"title":["Dynamic Evaluation of Microservice Granularity Adaptation"],"prefix":"10.1145","volume":"16","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-7481-0434","authenticated-orcid":false,"given":"Sara","family":"Hassan","sequence":"first","affiliation":[{"name":"Birmingham City University, Millennium Point, Birmingham, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1139-5795","authenticated-orcid":false,"given":"Rami","family":"Bahsoon","sequence":"additional","affiliation":[{"name":"University of Birmingham, Edgbaston, Birmingham, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2639-0671","authenticated-orcid":false,"given":"Leandro","family":"Minku","sequence":"additional","affiliation":[{"name":"University of Birmingham, Edgbaston, Birmingham, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-0161-5600","authenticated-orcid":false,"given":"Nour","family":"Ali","sequence":"additional","affiliation":[{"name":"Brunel University London, London, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2022,3,4]]},"reference":[{"key":"e_1_3_2_2_2","doi-asserted-by":"publisher","DOI":"10.1109\/REW.2016.026"},{"key":"e_1_3_2_3_2","doi-asserted-by":"publisher","DOI":"10.1109\/MTD.2013.6608680"},{"key":"e_1_3_2_4_2","volume-title":"Real Options: Managing Strategic Investment in an Uncertain World","author":"Amram Martha","year":"1999","unstructured":"Martha Amram and Nalin Kulatilaka. 1999. Real Options: Managing Strategic Investment in an Uncertain World. Harvard Business School Press."},{"key":"e_1_3_2_5_2","doi-asserted-by":"publisher","DOI":"10.21236\/ADA399151"},{"key":"e_1_3_2_6_2","unstructured":"Istio Authors. Istio. Retrieved from https:\/\/istio.io\/."},{"key":"e_1_3_2_7_2","volume-title":"AWS Lambda Metrics.","year":"2017","unstructured":"AWS. 2017. AWS Lambda Metrics.https:\/\/docs.aws.amazon.com\/lambda\/latest\/dg\/monitoring-metrics.html#monitoring-metrics-types."},{"key":"e_1_3_2_8_2","volume-title":"What is AWS Lambda?","year":"2017","unstructured":"AWS. 2017. What is AWS Lambda?https:\/\/aws.amazon.com\/lambda\/features\/."},{"key":"e_1_3_2_9_2","doi-asserted-by":"publisher","DOI":"10.7551\/mitpress\/2366.001.0001"},{"key":"e_1_3_2_10_2","first-page":"460","volume-title":"Proceedings of the 36th International Conference on Software Engineering","author":"Bencomo Nelly","year":"2014","unstructured":"Nelly Bencomo and Amel Belaggoun. 2014. A world full of surprises: Bayesian theory of surprise to quantify degrees of uncertainty. In Proceedings of the 36th International Conference on Software Engineering. 460\u2013463."},{"key":"e_1_3_2_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/336512.336584"},{"key":"e_1_3_2_12_2","first-page":"528","article-title":"The goal question metric approach","author":"Caldiera Victor R. Basili, Gianluigi","year":"1994","unstructured":"Victor R. Basili, Gianluigi Caldiera, and H. Dieter Rombach. 1994. The goal question metric approach. Encyclopedia of Software Engineering (1994), 528\u2013532.","journal-title":"Encyclopedia of Software Engineering"},{"key":"e_1_3_2_13_2","first-page":"1","volume-title":"ACM SIGSOFT Software Engineering Notes","author":"Arora Shawn Butler, Mary Shaw, Chris Scaffidi, and Ashish","year":"2005","unstructured":"Shawn Butler, Mary Shaw, Chris Scaffidi, and Ashish Arora. 2005. A value-based approach to predicting system properties from design. In ACM SIGSOFT Software Engineering Notes. 1\u20135."},{"key":"e_1_3_2_14_2","volume-title":"The Black-Scholes and Beyond and the Black-Scholes and Beyond Interactive Toolkit: A Step-By-Step Guide to In-Depth Option Pricing Models","author":"Chriss Neil A.","year":"1997","unstructured":"Neil A. Chriss. 1997. The Black-Scholes and Beyond and the Black-Scholes and Beyond Interactive Toolkit: A Step-By-Step Guide to In-Depth Option Pricing Models. McGraw-Hill Trade."},{"key":"e_1_3_2_15_2","article-title":"Zhamak Dehghani Real World Microservices: Lessons from the Frontline","author":"Dehghani Zhamak","year":"2015","unstructured":"Zhamak Dehghani. 2015. Zhamak Dehghani Real World Microservices: Lessons from the Frontline. Retrieved from https:\/\/youtu.be\/hsoovFbpAoE.","journal-title":"https:\/\/youtu.be\/hsoovFbpAoE"},{"key":"e_1_3_2_16_2","article-title":"Micronaut Tutorial: How to Build Microservices with this JVM-based Framework","author":"Caballero Sergio del Amo","year":"2018","unstructured":"Sergio del Amo Caballero. 2018. Micronaut Tutorial: How to Build Microservices with this JVM-based Framework. Retrieved from https:\/\/www.infoq.com\/articles\/micronaut-tutorial-microservices-jvm.","journal-title":"Retrieved from https:\/\/www.infoq.com\/articles\/micronaut-tutorial-microservices-jvm"},{"key":"e_1_3_2_17_2","volume-title":"Proceedings of the 5th Annual Conference on Real Options: Theory Meets Practice","author":"Erdogmus Hakan","year":"2001","unstructured":"Hakan Erdogmus. 2001. Management of license cost uncertainty in software development: A real options approach. In Proceedings of the 5th Annual Conference on Real Options: Theory Meets Practice."},{"key":"e_1_3_2_18_2","unstructured":"Hakan Erdogmus and John Favaro. 2002. Keep Your Options Open: Extreme Programming and Economics of Flexibility . Addison Wesley 503\u2013552."},{"key":"e_1_3_2_19_2","doi-asserted-by":"publisher","DOI":"10.1109\/METRIC.1999.809749"},{"key":"e_1_3_2_20_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICAC.2016.25"},{"key":"e_1_3_2_21_2","unstructured":"The Linux Foundation. Production-Grade Container Orchestration. Retrieved from https:\/\/kubernetes.io\/."},{"key":"e_1_3_2_22_2","article-title":"Strangler Application","author":"Fowler Martin","year":"2004","unstructured":"Martin Fowler. 2004. Strangler Application. Retrieved from https:\/\/www.martinfowler.com\/bliki\/StranglerApplication.html.","journal-title":"Retrieved from https:\/\/www.martinfowler.com\/bliki\/StranglerApplication.html"},{"key":"e_1_3_2_23_2","volume-title":"From Monolithic Applications to Microservices Guidance on Refactoring Techniques and Result Evaluation","author":"Fritzsch Jonas","year":"2018","unstructured":"Jonas Fritzsch. 2018. From Monolithic Applications to Microservices Guidance on Refactoring Techniques and Result Evaluation. Master\u2019s thesis. Reutlingen University."},{"key":"e_1_3_2_24_2","unstructured":"Andrea Gamba. 2003. Real Options valuation: A Monte Carlo approach.http:\/\/citeseerx.ist.psu.edu\/viewdoc\/download?doi=10.1.1.197.1857&rep=rep1&type=pdf."},{"key":"e_1_3_2_25_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSAW.2017.48"},{"key":"e_1_3_2_26_2","doi-asserted-by":"publisher","DOI":"10.5555\/2821357.2821383"},{"key":"e_1_3_2_27_2","volume-title":"Proceedings of the 10th ZEUS Workshop (ZEUS)","author":"Herzberg N.","year":"2018","unstructured":"N. Herzberg, C. Hochreiner, O. Kopp, and J. Lenhard. 2018. Challenges of microservices architecture: A survey on the state of the practice. In Proceedings of the 10th ZEUS Workshop (ZEUS)."},{"key":"e_1_3_2_28_2","unstructured":"Tom Huston. What is Microservices Architecture? Retrieved from https:\/\/smartbear.com\/learn\/api-design\/what-are-microservices\/."},{"key":"e_1_3_2_29_2","volume-title":"IBM BlueMix Container Service-Monitoring and Logging.","year":"2017","unstructured":"IBM. 2017. IBM BlueMix Container Service-Monitoring and Logging.https:\/\/www.ibm.com\/support\/pages\/overview-ibm-bluemix."},{"key":"e_1_3_2_30_2","article-title":"Compound Option","unstructured":"Investopedia. Compound Option. Retrieved from https:\/\/www.investopedia.com\/terms\/c\/compoundoption.asp.","journal-title":"Retrieved from https:\/\/www.investopedia.com\/terms\/c\/compoundoption.asp"},{"key":"e_1_3_2_31_2","doi-asserted-by":"publisher","DOI":"10.21236\/ADA382629"},{"key":"e_1_3_2_32_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-58943-5_23"},{"key":"e_1_3_2_33_2","doi-asserted-by":"publisher","DOI":"10.1109\/HPCSim.2016.7568389"},{"key":"e_1_3_2_34_2","unstructured":"Fondazione Brundo Kessler. 2014. ASTRO-CAptEvo. Retrieved from http:\/\/das.fbk.eu\/astro-captevo."},{"key":"e_1_3_2_35_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSA.2017.38"},{"key":"e_1_3_2_36_2","volume-title":"Microservices: Patterns and Applications: Designing Fine-Grained Services by Applying Patterns","author":"Krause L.","year":"2015","unstructured":"L. Krause. 2015. Microservices: Patterns and Applications: Designing Fine-Grained Services by Applying Patterns. Lucas Krause."},{"key":"e_1_3_2_37_2","doi-asserted-by":"publisher","DOI":"10.1109\/SERVICES-1.2008.86"},{"key":"e_1_3_2_38_2","doi-asserted-by":"publisher","DOI":"10.1145\/2996890.2996901"},{"key":"e_1_3_2_39_2","unstructured":"Alessandra Levcovitz Ricardo Terra and Marco Tulio Valente. 2016. Towards a technique for extracting microservices from monolithic enterprise systems. Retrieved from http:\/\/arxiv.org\/abs\/1605.03175."},{"key":"e_1_3_2_40_2","article-title":"Micro Services: Java, the Unix Way","author":"Lewis James","year":"2013","unstructured":"James Lewis. 2013. Micro Services: Java, the Unix Way. Retrieved from http:\/\/www.infoq.com\/presentations\/Micro-Services.","journal-title":"Retrieved from http:\/\/www.infoq.com\/presentations\/Micro-Services"},{"key":"e_1_3_2_41_2","volume-title":"Monitoring Logstash.","year":"2017","unstructured":"Logstash. 2017. Monitoring Logstash.https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/setup-xpack.html."},{"key":"e_1_3_2_42_2","doi-asserted-by":"publisher","DOI":"10.1145\/3092893.3092899"},{"key":"e_1_3_2_43_2","doi-asserted-by":"crossref","first-page":"3","DOI":"10.1007\/978-3-662-49224-6_1","volume-title":"Software Engineering and Formal Methods","author":"Meinke Karl","year":"2015","unstructured":"Karl Meinke and Peter Nycander. 2015. Learning-based testing of distributed microservice architectures: Correctness and fault injection. In Software Engineering and Formal Methods. 3\u201310."},{"key":"e_1_3_2_44_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-65687-8_25"},{"key":"e_1_3_2_45_2","volume-title":"Proceedings of the International Conference on Sustainability and Environmental Management: Sustainability Dialogue","author":"Mustafa Ola","year":"2017","unstructured":"Ola Mustafa and Jorge Marx G\u00f3mez. 2017. Sustainable approach for improving microservices-based web application. In Proceedings of the International Conference on Sustainability and Environmental Management: Sustainability Dialogue."},{"key":"e_1_3_2_46_2","volume-title":"Modern Developments in Financial Management","author":"Myers S. C.","year":"1976","unstructured":"S. C. Myers. 1976. Modern Developments in Financial Management. Praeger."},{"key":"e_1_3_2_47_2","doi-asserted-by":"publisher","DOI":"10.5555\/2904388"},{"key":"e_1_3_2_48_2","volume-title":"Release It! Design and Deploy Production-Ready Software","author":"Nygard Michael","year":"2007","unstructured":"Michael Nygard. 2007. Release It! Design and Deploy Production-Ready Software. Pragmatic Bookshelf."},{"key":"e_1_3_2_49_2","doi-asserted-by":"publisher","DOI":"10.21236\/ADA468620"},{"key":"e_1_3_2_50_2","first-page":"32","volume-title":"Proceedings of the 24th IEEE International Requirements Engineering Conference Workshops (REW\u201916)","author":"Paucar L. H. G.","year":"2016","unstructured":"L. H. G. Paucar and N. Bencomo. 2016. The reassessment of preferences of non-functional requirements for better informed decision-making in self-adaptation. In Proceedings of the 24th IEEE International Requirements Engineering Conference Workshops (REW\u201916). 32\u201338."},{"key":"e_1_3_2_51_2","article-title":"The Hardest Part of Microservices: Calling Your Services","author":"Posta Christian","year":"2017","unstructured":"Christian Posta. 2017. The Hardest Part of Microservices: Calling Your Services. Retrieved from http:\/\/blog.christianposta.com\/microservices\/the-hardest-part-of-microservices-calling-your-services\/.","journal-title":"Retrieved from http:\/\/blog.christianposta.com\/microservices\/the-hardest-part-of-microservices-calling-your-services\/"},{"key":"e_1_3_2_52_2","article-title":"Engineering Trade-Offs and The Netflix API Re-Architecture","author":"Probst Katharina","year":"2016","unstructured":"Katharina Probst and Justin Becker. 2016. Engineering Trade-Offs and The Netflix API Re-Architecture. Retrieved from http:\/\/techblog.netflix.com\/2016\/08\/engineering-trade-offs-and-netflix-api.html.","journal-title":"Retrieved from http:\/\/techblog.netflix.com\/2016\/08\/engineering-trade-offs-and-netflix-api.html"},{"key":"e_1_3_2_53_2","volume-title":"Microservice Patterns","author":"Richardson C.","year":"2018","unstructured":"C. Richardson. 2018. Microservice Patterns. Manning Publications Company."},{"key":"e_1_3_2_54_2","volume-title":"Riemann Concepts.","year":"2017","unstructured":"Riemann. 2017. Riemann Concepts.https:\/\/riemann.io\/concepts.html."},{"key":"e_1_3_2_55_2","article-title":"GOTO 2016\u2014Chaos & Intuition Engineering at Netflix\u2014Casey Rosenthal","author":"Rosenthal Casey","year":"2016","unstructured":"Casey Rosenthal. 2016. GOTO 2016\u2014Chaos & Intuition Engineering at Netflix\u2014Casey Rosenthal. Retrieved from https:\/\/www.youtube.com\/watch?v=Q4nniyAarbs.","journal-title":"Retrieved from https:\/\/www.youtube.com\/watch?v=Q4nniyAarbs"},{"key":"e_1_3_2_56_2","volume-title":"Artificial Intelligence: A Modern Approach","author":"Russell Stuart","year":"2009","unstructured":"Stuart Russell and Peter Norvig. 2009. Artificial Intelligence: A Modern Approach. Pearson Education Limited."},{"key":"e_1_3_2_57_2","first-page":"11","volume-title":"Proceedings of the IEEE International Conference on Software Architecture (ICSA\u201917)","author":"Werf J. P. Guelen S. Klock, J. M. E. M. van der","year":"2017","unstructured":"J. P. Guelen S. Klock, J. M. E. M. van der Werf, and S. Jansen. 2017. Workload-based clustering of coherent feature sets in microservice architectures. In Proceedings of the IEEE International Conference on Software Architecture (ICSA\u201917). 11\u201320."},{"key":"e_1_3_2_58_2","doi-asserted-by":"publisher","DOI":"10.1145\/1094811.1094824"},{"key":"e_1_3_2_59_2","doi-asserted-by":"publisher","DOI":"10.1109\/MIPRO.2015.7160271"},{"key":"e_1_3_2_60_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-01680-6_32"},{"key":"e_1_3_2_61_2","doi-asserted-by":"publisher","DOI":"10.1016\/0304-405X(77)90037-X"},{"key":"e_1_3_2_62_2","doi-asserted-by":"publisher","DOI":"10.5555\/3035701"},{"key":"e_1_3_2_63_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSECOMPANION.2007.15"},{"issue":"10","key":"e_1_3_2_64_2","first-page":"215","article-title":"Software design as an investment activity: A real options perspective","author":"Sullivan Kevin J.","year":"1999","unstructured":"Kevin J. Sullivan, Prasad Chalasani, Somesh Jha, and Vibha Sazawal. 1999. Software design as an investment activity: A real options perspective. Real Options Business Strat,: Appl. Decision Making10 (1999), 215\u2013262.","journal-title":"Real Options Business Strat,: Appl. Decision Making"},{"key":"e_1_3_2_65_2","doi-asserted-by":"publisher","DOI":"10.1145\/503209.503224"},{"key":"e_1_3_2_66_2","doi-asserted-by":"publisher","DOI":"10.1109\/MS.2018.2141031"},{"key":"e_1_3_2_67_2","volume-title":"Real Options: Managerial Flexibility and Strategy in Resource Allocation","author":"Trigeorgis L.","year":"1996","unstructured":"L. Trigeorgis and P. F. L. Trigeorgis. 1996. Real Options: Managerial Flexibility and Strategy in Resource Allocation. Paperbackshop UK Import."},{"key":"e_1_3_2_68_2","unstructured":"Tim Wagner. 2015. Microservices without the Servers. Retrieved from https:\/\/aws.amazon.com\/blogs\/compute\/microservices-without-the-servers\/."},{"key":"e_1_3_2_69_2","volume-title":"Microservices: Flexible Software Architecture","author":"Wolff E.","year":"2016","unstructured":"E. Wolff. 2016. Microservices: Flexible Software Architecture. Pearson Education."},{"key":"e_1_3_2_70_2","doi-asserted-by":"publisher","DOI":"10.1145\/1350802.1350816"}],"container-title":["ACM Transactions on Autonomous and Adaptive Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3502724","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3502724","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T18:09:47Z","timestamp":1750183787000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3502724"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,6,30]]},"references-count":69,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2021,6,30]]}},"alternative-id":["10.1145\/3502724"],"URL":"https:\/\/doi.org\/10.1145\/3502724","relation":{},"ISSN":["1556-4665","1556-4703"],"issn-type":[{"value":"1556-4665","type":"print"},{"value":"1556-4703","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,6,30]]},"assertion":[{"value":"2020-04-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2021-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2022-03-04","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}