{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,25]],"date-time":"2025-11-25T06:56:04Z","timestamp":1764053764137,"version":"3.40.3"},"publisher-location":"Cham","reference-count":35,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030860431"},{"type":"electronic","value":"9783030860448"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-86044-8_15","type":"book-chapter","created":{"date-parts":[[2021,8,25]],"date-time":"2021-08-25T08:03:37Z","timestamp":1629878617000},"page":"207-222","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":9,"title":["Identifying Domain-Based Cyclic Dependencies in Microservice APIs Using Source Code Detectors"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-4236-5951","authenticated-orcid":false,"given":"Patric","family":"Genfer","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6233-2591","authenticated-orcid":false,"given":"Uwe","family":"Zdun","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2021,8,26]]},"reference":[{"doi-asserted-by":"crossref","unstructured":"Al-Mutawa, H.A., Dietrich, J., Marsland, S., McCartin, C.: On the shape of circular dependencies in java programs. In: 2014 23rd Australian Software Engineering Conference, pp. 48\u201357. IEEE (2014)","key":"15_CR1","DOI":"10.1109\/ASWEC.2014.15"},{"doi-asserted-by":"crossref","unstructured":"Assun\u00e7\u00e3o, W.K.G., Kr\u00fcger, J., Mendon\u00e7a, W.D.F.: Variability management meets microservices: six challenges of re-engineering microservice-based webshops. In: Proceedings of the 24th ACM Conference on Systems and Software Product Line, pp. 1\u20136. ACM, Montreal Quebec Canada (2020)","key":"15_CR2","DOI":"10.1145\/3382025.3414942"},{"unstructured":"Brown, K., Woolf, B.: Implementation patterns for microservices architectures. In: Proceedings of the 23rd Conference on Pattern Languages of Programs, pp. 1\u201335 (2016)","key":"15_CR3"},{"doi-asserted-by":"crossref","unstructured":"Dragoni, N., et al.: Microservices: Yesterday, today, and tomorrow. arXiv:1606.04036 [cs], April 2017","key":"15_CR4","DOI":"10.1007\/978-3-319-67425-4_12"},{"key":"15_CR5","series-title":"Lecture Notes in Business Information Processing","doi-asserted-by":"publisher","first-page":"74","DOI":"10.1007\/978-3-319-92901-9_8","volume-title":"Information Systems in the Big Data Era","author":"T Engel","year":"2018","unstructured":"Engel, T., Langermeier, M., Bauer, B., Hofmann, A.: Evaluation of microservice architectures: a metric and tool-based approach. In: Mendling, J., Mouratidis, H. (eds.) CAiSE 2018. LNBIP, vol. 317, pp. 74\u201389. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-92901-9_8"},{"issue":"4","key":"15_CR6","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1145\/3277539.3277541","volume":"16","author":"S Esparrachiari","year":"2018","unstructured":"Esparrachiari, S., Reilly, T., Rentz, A.: Tracking and controlling microservice dependencies: dependency management is a crucial part of system and software design. Queue 16(4), 44\u201365 (2018)","journal-title":"Queue"},{"key":"15_CR7","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"203","DOI":"10.1007\/978-3-319-74781-1_15","volume-title":"Software Engineering and Formal Methods","author":"M Garriga","year":"2018","unstructured":"Garriga, M.: Towards a taxonomy of microservices architectures. In: Cerone, A., Roveri, M. (eds.) SEFM 2017. LNCS, vol. 10729, pp. 203\u2013218. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-74781-1_15"},{"doi-asserted-by":"crossref","unstructured":"Granchelli, G., Cardarelli, M., Di Francesco, P., Malavolta, I., Iovino, L., Di Salle, A.: Towards recovering the software architecture of microservice-based systems. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW), pp. 46\u201353. IEEE, Gothenburg, April 2017. ISBN 978-1-5090-4793-2","key":"15_CR8","DOI":"10.1109\/ICSAW.2017.48"},{"unstructured":"Hohpe, G., Woolf, B.: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley Professional, Boston (2004)","key":"15_CR9"},{"doi-asserted-by":"crossref","unstructured":"Johnson, D.B.: Finding all the elementary circuits of a directed graph. SIAM J. Comput. 4(1), 77\u201384 (1975). ISSN 0097\u20135397, 1095\u20137111","key":"15_CR10","DOI":"10.1137\/0204007"},{"doi-asserted-by":"crossref","unstructured":"Kapferer, S., Zimmermann, O.: Domain-driven service design-context modeling, model refactoring and contract generation. In: Proceedings of the 14th Advanced Summer School on Service-Oriented Computing (SummerSOC\u201920) (to appear). Springer CCIS (2020)","key":"15_CR11","DOI":"10.1007\/978-3-030-64846-6_11"},{"key":"15_CR12","series-title":"Lecture Notes in Business Information Processing","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1007\/978-3-319-92901-9_14","volume-title":"Information Systems in the Big Data Era","author":"M Kleehaus","year":"2018","unstructured":"Kleehaus, M., Uluda\u011f, \u00d6., Sch\u00e4fer, P., Matthes, F.: MICROLYZE: a framework for recovering the software architecture in microservice-based environments. In: Mendling, J., Mouratidis, H. (eds.) CAiSE 2018. LNBIP, vol. 317, pp. 148\u2013162. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-92901-9_14"},{"unstructured":"Levcovitz, A., Terra, R., Valente, M.T.: Towards a Technique for Extracting Microservices from Monolithic Enterprise Systems. arXiv:1605.03175 [cs], May 2016","key":"15_CR13"},{"unstructured":"Lilienthal, C.: Sustainable Software Architecture: Analyze and Reduce Technical Debt. dpunkt. verlag, Heidelberg (2019)","key":"15_CR14"},{"doi-asserted-by":"crossref","unstructured":"Lotz, J., Vogelsang, A., Benderius, O., Berger, C.: Microservice architectures for advanced driver assistance systems: a case-study. In: 2019 IEEE International Conference on Software Architecture Companion (ICSA-C), pp. 45\u201352. IEEE, Hamburg, Germany (2019). ISBN 978-1-72811-876-","key":"15_CR15","DOI":"10.1109\/ICSA-C.2019.00016"},{"doi-asserted-by":"crossref","unstructured":"L\u00fcbke, D., Zimmermann, O., Pautasso, C., Zdun, U., Stocker, M.: Interface evolution patterns: balancing compatibility and extensibility across service life cycles. In: Proceedings of the 24th European Conference on Pattern Languages of Programs - EuroPLop \u201919, pp. 1\u201324. ACM Press, Irsee, Germany (2019). ISBN 978-1-4503-6206-1","key":"15_CR16","DOI":"10.1145\/3361149.3361164"},{"doi-asserted-by":"crossref","unstructured":"Ma, S.P., Fan, C.Y., Chuang, Y., Liu, I.H., Lan, C.W.: Graph-based and scenario-driven microservice analysis, retrieval, and testing. Future Gener. Comput. Syst. 100, 724\u2013735 (2019). ISSN 0167739X","key":"15_CR17","DOI":"10.1016\/j.future.2019.05.048"},{"doi-asserted-by":"crossref","unstructured":"McZara, J., Kafle, S., Shin, D.: Modeling and analysis of dependencies between microservices in devsecOps. In: 2020 IEEE International Conference on Smart Cloud (SmartCloud), pp. 140\u2013147. IEEE, Washington DC, WA, USA, November 2020. ISBN 978-1-72816-547-9","key":"15_CR18","DOI":"10.1109\/SmartCloud49737.2020.00034"},{"unstructured":"Nadareishvili, I., Mitra, R., McLarty, M., Amundsen, M.: Microservice Architecture: Aligning Principles, Practices, and Culture. \u201cO\u2019Reilly Media, Inc.\u201d, Sebastopol (2016)","key":"15_CR19"},{"unstructured":"Newman, S.: Building Microservices: Designing Fine-Grained Systems. 1st edn. O\u2019Reilly Media, Beijing Sebastopol (2015). ISBN 978-1-4919-5035-7","key":"15_CR20"},{"doi-asserted-by":"crossref","unstructured":"Ntentos, E., Zdun, U., Plakidas, K., Meixner, S., Geiger, S.: Detector-based component model abstraction for microservice-based systems. Submitted for publication (2020)","key":"15_CR21","DOI":"10.1007\/s00607-021-01002-z"},{"key":"15_CR22","series-title":"Lecture Notes in Business Information Processing","doi-asserted-by":"publisher","first-page":"311","DOI":"10.1007\/978-3-030-49418-6_21","volume-title":"Enterprise, Business-Process and Information Systems Modeling","author":"F Rademacher","year":"2020","unstructured":"Rademacher, F., Sachweh, S., Z\u00fcndorf, A.: A modeling method for systematic architecture reconstruction of microservice-based software systems. In: Nurcan, S., Reinhartz-Berger, I., Soffer, P., Zdravkovic, J. (eds.) BPMDS\/EMMSAD -2020. LNBIP, vol. 387, pp. 311\u2013326. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-49418-6_21"},{"unstructured":"Ren, Z., et al.: Migrating web applications from monolithic structure to microservices architecture. In: Proceedings of the Tenth Asia-Pacific Symposium on Internetware, pp. 1\u201310. ACM, Beijing, September 2018. ISBN 978-1-4503-6590-1","key":"15_CR23"},{"doi-asserted-by":"crossref","unstructured":"Runeson, P., H\u00f6st, M.: Guidelines for conducting and reporting case study research in software engineering. Empirical Softw. Eng. 14(2), 131\u2013164 (2009). ISSN 1382\u20133256, 1573\u20137616","key":"15_CR24","DOI":"10.1007\/s10664-008-9102-8"},{"doi-asserted-by":"crossref","unstructured":"Selmadji, A., Seriai, A.D., Bouziane, H.L., Oumarou Mahamane, R., Zaragoza, P., Dony, C.: From monolithic architecture style to microservice one based on a semi-automatic approach. In: 2020 IEEE International Conference on Software Architecture (ICSA), pp. 157\u2013168. IEEE, Salvador, Brazil, March 2020. ISBN 978-1-72814-659-1","key":"15_CR25","DOI":"10.1109\/ICSA47634.2020.00023"},{"doi-asserted-by":"crossref","unstructured":"Soares de Toledo, S., Martini, A., Przybyszewska, A., Sjoberg, D.I.: Architectural technical debt in microservices: a case study in a large company. In: 2019 IEEE\/ACM International Conference on Technical Debt (TechDebt), pp. 78\u201387. IEEE, Montreal, QC, Canada, May 2019. ISBN 978-1-72813-371-3","key":"15_CR26","DOI":"10.1109\/TechDebt.2019.00026"},{"issue":"3","key":"15_CR27","doi-asserted-by":"publisher","first-page":"56","DOI":"10.1109\/MS.2018.2141031","volume":"35","author":"D Taibi","year":"2018","unstructured":"Taibi, D., Lenarduzzi, V.: On the definition of microservice bad smells. IEEE Softw. 35(3), 56\u201362 (2018)","journal-title":"IEEE Softw."},{"doi-asserted-by":"crossref","unstructured":"Taibi, D., Lenarduzzi, V., Pahl, C.: Architectural patterns for microservices: a systematic mapping study. In: Proceedings of the 8th International Conference on Cloud Computing and Services Science, pp. 221\u2013232. SCITEPRESS - Science and Technology Publications, Funchal, Madeira, Portugal (2018). ISBN 978-989-758-295-0","key":"15_CR28","DOI":"10.5220\/0006798302210232"},{"issue":"2","key":"15_CR29","doi-asserted-by":"publisher","first-page":"146","DOI":"10.1137\/0201010","volume":"1","author":"R Tarjan","year":"1972","unstructured":"Tarjan, R.: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146\u2013160 (1972)","journal-title":"SIAM J. Comput."},{"doi-asserted-by":"crossref","unstructured":"Thones, J.: Microservices. IEEE Softw. 32(1), 116\u2013116 (2015). ISSN 0740\u20137459","key":"15_CR30","DOI":"10.1109\/MS.2015.11"},{"unstructured":"Vural, H., Koyuncu, M.: Does domain-driven design lead to finding the optimal modularity of a microservice? IEEE Access 9, 32721\u201332733 (2021). ISSN 2169\u20133536","key":"15_CR31"},{"doi-asserted-by":"crossref","unstructured":"Walker, A., Das, D., Cerny, T.: Automated code-smell detection in microservices through static analysis: a case study. Appl. Sci. 10(21), 7800 (2020). ISSN 2076\u20133417","key":"15_CR32","DOI":"10.3390\/app10217800"},{"unstructured":"Wolff, E.: Microservices: Flexible Software Architecture. Addison-Wesley, Boston (2017). 978-0-13-460241-7","key":"15_CR33"},{"unstructured":"Yin, R.K.: Case Study Research and Applications: Design and Methods. 6th edn. SAGE, Los Angeles (2018). 978-1-5063-3616-9","key":"15_CR34"},{"key":"15_CR35","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"411","DOI":"10.1007\/978-3-319-69035-3_29","volume-title":"Service-Oriented Computing","author":"U Zdun","year":"2017","unstructured":"Zdun, U., Navarro, E., Leymann, F.: Ensuring and assessing architecture conformance to microservice decomposition patterns. In: Maximilien, M., Vallecillo, A., Wang, J., Oriol, M. (eds.) ICSOC 2017. LNCS, vol. 10601, pp. 411\u2013429. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-69035-3_29"}],"container-title":["Lecture Notes in Computer Science","Software Architecture"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-86044-8_15","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,1,8]],"date-time":"2023-01-08T00:44:06Z","timestamp":1673138646000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-86044-8_15"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030860431","9783030860448"],"references-count":35,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-86044-8_15","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"26 August 2021","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ECSA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"European Conference on Software Architecture","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"13 September 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"17 September 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"ecsa2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"68","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"16","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"5","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"24% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}