{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,21]],"date-time":"2025-12-21T06:25:49Z","timestamp":1766298349588,"version":"3.37.3"},"reference-count":31,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2021,10,20]],"date-time":"2021-10-20T00:00:00Z","timestamp":1634688000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2021,10,20]],"date-time":"2021-10-20T00:00:00Z","timestamp":1634688000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["SOCA"],"published-print":{"date-parts":[[2022,3]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>The reengineering of systems into a microservice-based architecture can be seen as an implementation of a service-oriented architecture (SOA). However, the deployment of SOA into an enterprise is a challenging task, as it may involve the modernization of mission-critical systems with high technical debt and high maintenance costs. To this end, a process is required to provide an appropriate set of steps and techniques that minimize risks and at the same time ensure the quality of the systems during the migration process. Thus, this work presents the Service-oriented Process for Reengineering and DevOps\u2014SPReaD, an instantiation of the mainstream SOA methodology focusing on the reengineering of legacy systems integrating DevOps aspects for developing microservices systems. This process has been defined during a real software reengineering project of legacy systems from a Brazilian State Department of Taxation. The results obtained include a substantial improvement in the quality of the main taxation system used by the state, including not only code-related metrics but also performance improvements of the services offered, and a change in the methodology adopted by the software development team.<\/jats:p>","DOI":"10.1007\/s11761-021-00329-x","type":"journal-article","created":{"date-parts":[[2021,10,20]],"date-time":"2021-10-20T20:50:08Z","timestamp":1634763008000},"page":"1-16","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":10,"title":["SPReaD: service-oriented process for reengineering and DevOps"],"prefix":"10.1007","volume":"16","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-9608-439X","authenticated-orcid":false,"given":"Carlos Eduardo","family":"da Silva","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-7248-716X","authenticated-orcid":false,"given":"Yan de Lima","family":"Justino","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-8286-0017","authenticated-orcid":false,"given":"Eiji","family":"Adachi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,10,20]]},"reference":[{"issue":"1","key":"329_CR1","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1007\/s11761-013-0137-3","volume":"9","author":"Y Baghdadi","year":"2015","unstructured":"Baghdadi Y, Al-Bulushi W (2015) A guidance process to modernize legacy applications for soa. Ser Orient Comput Appl 9(1):41\u201358. https:\/\/doi.org\/10.1007\/s11761-013-0137-3","journal-title":"Ser Orient Comput Appl"},{"key":"329_CR2","doi-asserted-by":"publisher","unstructured":"Balalaie A, Heydarnoori A, Jamshidi P (2016) Migrating to cloud-native architectures using microservices: An experience report. In: Advances in service-oriented and cloud computing, pp. 201\u2013215. Cham: Springer. https:\/\/doi.org\/10.1007\/978-3-319-33313-7_15","DOI":"10.1007\/978-3-319-33313-7_15"},{"key":"329_CR3","unstructured":"Bass L, Weber I, Zhu L (2015) DevOps: a software architect\u2019s perspective. Addison-Wesley Professional"},{"key":"329_CR4","unstructured":"Erl T (2010) SOA Governance. Prentice Hall"},{"key":"329_CR5","volume-title":"SOA with REST: principles, patterns and constraints for building enterprise solutions with rest","author":"T Erl","year":"2012","unstructured":"Erl T, Carlyle B, Pautasso C, Balasubramanian R (2012) SOA with REST: principles, patterns and constraints for building enterprise solutions with rest, 1st edn. Prentice Hall Press, Upper Saddle River, NJ, USA","edition":"1"},{"key":"329_CR6","unstructured":"Erl T, Merson P, Stoffers R (2017) Service-oriented architecture: analysis and design for services and microservices. Prentice Hall"},{"key":"329_CR7","unstructured":"Erl T, Naserpour A (2020) Microservice and containerization patterns. Arcitura Education Inc. https:\/\/patterns.arcitura.com\/microservice-patterns"},{"key":"329_CR8","doi-asserted-by":"publisher","unstructured":"Escobar D, C\u00e1rdenas D, Amarillo R, Castro E, Garc\u00e9s K, Parra C, Casallas R (2016) Towards the understanding and evolution of monolithic applications as microservices. In: 2016 XLII Latin American computing conference (CLEI), pp. 1\u201311 . https:\/\/doi.org\/10.1109\/CLEI.2016.7833410","DOI":"10.1109\/CLEI.2016.7833410"},{"key":"329_CR9","doi-asserted-by":"publisher","unstructured":"Fan CY, Ma SP (2017) Migrating monolithic mobile application to microservice architecture: an experiment report. In: 2017 IEEE international conference on AI mobile services (AIMS), pp 109\u2013112. https:\/\/doi.org\/10.1109\/AIMS.2017.23","DOI":"10.1109\/AIMS.2017.23"},{"key":"329_CR10","unstructured":"Fowler SJ (2016) Production-ready microservices: building standardized systems across an engineering organization, 1st edn. O\u2019Reilly Media, Inc"},{"key":"329_CR11","doi-asserted-by":"publisher","unstructured":"Francesco PD, Lago P, Malavolta I (2018) Migrating towards microservice architectures: an industrial survey. In: 2018 IEEE international conference on software architecture (ICSA) (2018). https:\/\/doi.org\/10.1109\/ICSA.2018.00012","DOI":"10.1109\/ICSA.2018.00012"},{"key":"329_CR12","doi-asserted-by":"publisher","unstructured":"Garriga M (2017) Towards a taxonomy of microservices architectures. In: International conference on software engineering and formal methods, pp 203\u2013218. Springer . https:\/\/doi.org\/10.1007\/978-3-319-74781-1_15","DOI":"10.1007\/978-3-319-74781-1_15"},{"key":"329_CR13","doi-asserted-by":"publisher","unstructured":"Gouigoux JP, Tamzalit D (2017) From monolith to microservices: lessons learned on an industrial migration to a web oriented architecture. In: 2017 IEEE international conference on software architecture workshops (ICSAW), pp 62\u201365 . https:\/\/doi.org\/10.1109\/ICSAW.2017.35","DOI":"10.1109\/ICSAW.2017.35"},{"issue":"3","key":"329_CR14","doi-asserted-by":"publisher","first-page":"24","DOI":"10.1109\/MS.2018.2141039","volume":"35","author":"P Jamshidi","year":"2018","unstructured":"Jamshidi P, Pahl C, Mendon\u00e7a NC, Lewis J, Tilkov S (2018) Microservices: the journey so far and challenges ahead. IEEE Softw 35(3):24\u201335. https:\/\/doi.org\/10.1109\/MS.2018.2141039","journal-title":"IEEE Softw"},{"key":"329_CR15","doi-asserted-by":"publisher","unstructured":"Kecskemeti G, Marosi AC, Kertesz A (2016) The ENTICE approach to decompose monolithic services into microservices. In: 2016 international conference on high performance computing simulation (HPCS), pp 591\u2013596 . https:\/\/doi.org\/10.1109\/HPCSim.2016.7568389","DOI":"10.1109\/HPCSim.2016.7568389"},{"key":"329_CR16","doi-asserted-by":"crossref","unstructured":"Khadka R, Reijnders G, Saeidi A, Jansen S, Hage J (2011) A method engineering based legacy to soa migration method. In: Software maintenance (ICSM), 2011 27th IEEE international conference on, pp 163\u2013172. IEEE","DOI":"10.1109\/ICSM.2011.6080783"},{"key":"329_CR17","unstructured":"Lewis G, Smith D, Kontogiannis K (2010) A research agenda for service-oriented architecture (soa): Maintenance and evolution of service-oriented systems. Technical report. CMU\/SEI-2010-TN-003, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA . http:\/\/resources.sei.cmu.edu\/library\/asset-view.cfm?AssetID=9285"},{"key":"329_CR18","doi-asserted-by":"publisher","unstructured":"de\u00a0Lima\u00a0Justino Y, da\u00a0Silva CE (2018) Reengineering legacy systems for supporting SOA: a case study on the Brazilian\u2019s secretary of state for taxation. In: Proceedings of the 40th international conference on software engineering: companion proceedings, ICSE \u201918, pp 125\u2013126. ACM, New York, NY, USA . https:\/\/doi.org\/10.1145\/3183440.3195067","DOI":"10.1145\/3183440.3195067"},{"key":"329_CR19","doi-asserted-by":"publisher","unstructured":"Lin J, Lin LC, Huang S (2016) Migrating web applications to clouds with microservice architectures. In: 2016 International conference on applied system innovation (ICASI), pp 1\u20134 . https:\/\/doi.org\/10.1109\/ICASI.2016.7539733","DOI":"10.1109\/ICASI.2016.7539733"},{"key":"329_CR20","unstructured":"Millett S (2015) Patterns, principles and practices of domain-driven design. Wiley"},{"key":"329_CR21","unstructured":"Newman S (2015) Building microservices, 1st edn. O\u2019Reilly Media, Inc"},{"key":"329_CR22","unstructured":"Newman S (2019) Monolith to microservices: evolutionary patterns to transform your monolith. O\u2019Reilly Media, Incorporated . https:\/\/books.google.com.br\/books?id=iul3wQEACAAJ"},{"key":"329_CR23","unstructured":"Pressman RS, Maxim BA (2016) Software engineering: a practitioner\u2019s approach, $$8^{{\\rm a}}$$ Edition. McGraw Hill"},{"issue":"1","key":"329_CR24","doi-asserted-by":"publisher","first-page":"51","DOI":"10.1007\/s11219-008-9055-6","volume":"17","author":"VK Reddy","year":"2009","unstructured":"Reddy VK, Dubey A, Lakshmanan S, Sukumaran S, Sisodia R (2009) Evaluating legacy assets in the context of migration to soa. Softw Quality J 17(1):51\u201363. https:\/\/doi.org\/10.1007\/s11219-008-9055-6","journal-title":"Softw Quality J"},{"key":"329_CR25","unstructured":"Richards M (2015) Microservices versus service-oriented architecture. O\u2019Reilly Media"},{"key":"329_CR26","doi-asserted-by":"publisher","unstructured":"Santika H, Suhardi, Yustianto P (2017) Engineering local government financial service system under good governanceprinciples: case study: Cimahi government city. In: 2017 5th international conference on information and communication technology (ICoIC7), pp 1\u20136 . https:\/\/doi.org\/10.1109\/ICoICT.2017.8074657","DOI":"10.1109\/ICoICT.2017.8074657"},{"key":"329_CR27","doi-asserted-by":"publisher","unstructured":"Sheikh MAA, Aboalsamh HA, Albarrak A (2011) Migration of legacy applications and services to service-oriented architecture (soa). In: The 2011 international conference and workshop on current trends in information technology (CTIT 11), pp 137\u2013142 . https:\/\/doi.org\/10.1109\/CTIT.2011.6107949","DOI":"10.1109\/CTIT.2011.6107949"},{"key":"329_CR28","unstructured":"Vernon V (2013) Implementing domain-driven design. Pearson Education, Inc"},{"key":"329_CR29","doi-asserted-by":"publisher","unstructured":"Wagner C (2014) Model-driven software migration: a methodology reengineering, recovery and modernization of legacy systems. Springer. https:\/\/doi.org\/10.1007\/978-3-658-05270-6","DOI":"10.1007\/978-3-658-05270-6"},{"key":"329_CR30","doi-asserted-by":"publisher","unstructured":"Waseem M, Liang P, Shahin M (2020) A systematic mapping study on microservices architecture in DevOps. J Syst Softw 170. https:\/\/doi.org\/10.1016\/j.jss.2020.110798","DOI":"10.1016\/j.jss.2020.110798"},{"issue":"3","key":"329_CR31","doi-asserted-by":"publisher","first-page":"301","DOI":"10.1007\/s00450-016-0337-0","volume":"32","author":"O Zimmermann","year":"2017","unstructured":"Zimmermann O (2017) Microservices tenets. Comput Sci Res Develop 32(3):301\u2013310. https:\/\/doi.org\/10.1007\/s00450-016-0337-0","journal-title":"Comput Sci Res Develop"}],"container-title":["Service Oriented Computing and Applications"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s11761-021-00329-x.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s11761-021-00329-x\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s11761-021-00329-x.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,2,18]],"date-time":"2022-02-18T06:21:21Z","timestamp":1645165281000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s11761-021-00329-x"}},"subtitle":["Developing microservices for a Brazilian state department of taxation"],"short-title":[],"issued":{"date-parts":[[2021,10,20]]},"references-count":31,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2022,3]]}},"alternative-id":["329"],"URL":"https:\/\/doi.org\/10.1007\/s11761-021-00329-x","relation":{},"ISSN":["1863-2386","1863-2394"],"issn-type":[{"type":"print","value":"1863-2386"},{"type":"electronic","value":"1863-2394"}],"subject":[],"published":{"date-parts":[[2021,10,20]]},"assertion":[{"value":"29 September 2020","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"2 September 2021","order":2,"name":"revised","label":"Revised","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"19 September 2021","order":3,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"20 October 2021","order":4,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}