Bogner, J., Wagner, S., Zimmermann, A.: Automatically measuring the maintainability of service- and microservice-based systems: a literature review. In: Proceedings of the 27th International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement, IWSM Mensura 2017, pp. 107–115. ACM, New York (2017). https://doi.org/10.1145/3143434.3143443
Chen, R., Li, S., Li, Z.: From monolith to microservices: a dataflow-driven approach. In: 2017 24th Asia-Pacific Software Engineering Conference (APSEC), pp. 466–475, December 2017
Google Scholar
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Softw. Eng. 20(6), 476–493 (1994)
CrossRef
Google Scholar
De Alwis, A.A.C., Barros, A., Polyvyanyy, A., Fidge, C.: Function-splitting heuristics for discovery of microservices in enterprise systems. In: Pahl, C., Vukovic, M., Yin, J., Yu, Q. (eds.) ICSOC 2018. LNCS, vol. 11236, pp. 37–53. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03596-9_3
CrossRef
Google Scholar
Deb, K.: Evolutionary algorithms for multi-criterion optimization in engineering design. In: EUROGEN 1999, pp. 135–161 (1999)
Google Scholar
Fenton, N., Bieman, J.: Software Metrics: A Rigorous and Practical Approach, 3rd edn. CRC Press, Boca Raton (2014)
CrossRef
Google Scholar
Fowler, M., Lewis, J.: Microservices (2014). http://martinfowler.com/articles/microservices.html
Fritzsch, J., Bogner, J., Zimmermann, A., Wagner, S.: From monolith to microservices: a classification of refactoring approaches. In: Bruel, J.-M., Mazzara, M., Meyer, B. (eds.) DEVOPS 2018. LNCS, vol. 11350, pp. 128–141. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-06019-0_10
CrossRef
Google Scholar
Gysel, M., Kölbener, L., Giersche, W., Zimmermann, O.: Service cutter: a systematic approach to service decomposition. In: Aiello, M., Johnsen, E.B., Dustdar, S., Georgievski, I. (eds.) ESOCC 2016. LNCS, vol. 9846, pp. 185–200. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-44482-6_12
CrossRef
Google Scholar
Jabangwe, R., Börstler, J., Šmite, D., Wohlin, C.: Empirical evidence on the link between object-oriented measures and external quality attributes: a systematic literature review. Empir. Softw. Eng. 20(3), 640–693 (2014). https://doi.org/10.1007/s10664-013-9291-7
CrossRef
Google Scholar
Kecskemeti, G., Marosi, A.C., Kertesz, A.: The entice approach to decompose monolithic services into microservices. In: 2016 International Conference on High Performance Computing Simulation (HPCS), pp. 591–596, July 2016
Google Scholar
Khadka, R., Saeidi, A., Jansen, S., Hage, J., Haas, G.P.: Migrating a large scale legacy application to SOA: challenges and lessons learned. In: 2013 20th Working Conference on Reverse Engineering (WCRE), pp. 425–432, October 2013. https://doi.org/10.1109/WCRE.2013.6671318
Kramer, S., Kaindl, H.: Coupling and cohesion metrics for knowledge-based systems using frames and rules. ACM Trans. Softw. Eng. Methodol. 13(3), 332–358 (2004)
CrossRef
Google Scholar
Lehman, M.M.: On understanding laws, evolution, and conservation in the large-program life cycle. J. Syst. Softw. 1, 213–221 (1984). https://doi.org/10.1016/0164-1212(79)90022-0
CrossRef
Google Scholar
Lenarduzzi, V., Sillitti, A., Taibi, D.: Analyzing forty years of software maintenance models. In: 39th International Conference on Software Engineering Companion, ICSE-C 2017, IEEE Press (2017). https://doi.org/10.1109/ICSE-C.2017.122
Lenarduzzi, V., Stan, C., Taibi, D., Venters, G.: A dynamical quality model to continuously monitor software maintenance. In: 11th European Conference on Information Systems Management (ECISM) (2017)
Google Scholar
Martin, R.C.: Agile Software Development: Principles, Patterns, and Practices. Prentice Hall PTR, Upper Saddle River (2003)
Google Scholar
Mikkonen, T., Systä, K.: Maximizing product value: continuous maintenance. In: Jedlitschka, A., Kuvaja, P., Kuhrmann, M., Männistö, T., Münch, J., Raatikainen, M. (eds.) PROFES 2014. LNCS, vol. 8892, pp. 298–301. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-13835-0_26
CrossRef
Google Scholar
Newman, S.: Building Microservices, 1st edn. O’Reilly Media Inc., Newton (2015)
Google Scholar
Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972)
CrossRef
Google Scholar
Rahman, M., Taibi, D.: Microservice dependency graph (microdepgraph) (2019). https://github.com/clowee/MicroDepGraph
Rahman, M., Taibi, D.: The microservice dependency graph dataset. In: Proceedings of the Joint Summer School on Software Evolution, Software Quality and Bug Prediction with Machine Learning. CEUR-WS, September 2019
Google Scholar
Richardson, C.: Pattern: Microservice Architecture (2017). http://microservices.io/patterns/microservices.html
Richardson, C.: The Scale Cube (2017). https://microservices.io/articles/scalecube.html
Soldani, J., Tamburri, D.A., Heuvel, W.J.V.D.: The pains and gains of microservices: a systematic grey literature review. J. Syst. Softw. 146, 215–232 (2018)
CrossRef
Google Scholar
Suonsyrjä, S., Mikkonen, T.: Designing an unobtrusive analytics framework for monitoring Java applications. In: Kobyliński, A., Czarnacka-Chrobot, B., Świerczek, J. (eds.) IWSM/Mensura -2015. LNBIP, vol. 230, pp. 160–175. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-24285-9_11
CrossRef
Google Scholar
Taibi, D., Janes, A., Lenarduzzi, V.: How developers perceive smells in source code: a replicated study. Inf. Softw. Technol. 92, 223–235 (2017)
CrossRef
Google Scholar
Taibi, D., Lenarduzzi, V.: On the definition of microservice bad smells. IEEE Softw. 35(3), 56–62 (2018)
CrossRef
Google Scholar
Taibi, D., Lenarduzzi, V., Ahmad, M.O., Liukkunen, K.: Comparing communication effort within the scrum, scrum with Kanban, XP, and Banana development processes. In: Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, EASE 2017, pp. 258–263 (2017)
Google Scholar
Taibi, D., Lenarduzzi, V., Janes, A., Liukkunen, K., Ahmad, M.O.: Comparing requirements decomposition within the scrum, scrum with Kanban, XP, and Banana development processes. In: Agile Processes in Software Engineering and Extreme Programming, pp. 68–83 (2017)
Google Scholar
Taibi, D., Lenarduzzi, V., Pahl, C.: Processes, motivations, and issues for migrating to microservices architectures: an empirical investigation. IEEE Cloud Comput. 4(5), 22–32 (2017)
CrossRef
Google Scholar
Taibi, D., Lenarduzzi, V., Pahl, C.: Architectural patterns for microservices: a systematic mapping study. In: 8th International Conference on Cloud Computing and Services Science, CLOSER 2018 (2018)
Google Scholar
Taibi, D., Lenarduzzi, V., Pahl, C.: Microservices anti-patterns: a taxonomy. IWSM/Mensura -2015. LNBIP, vol. 1073, pp. 111–128. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-31646-4_5
CrossRef
Google Scholar
Taibi, D., Lenarduzzi, V., Pahl, C.: Continuous architecting with microservices and DevOps: a systematic mapping study. In: Muñoz, V.M., Ferguson, D., Helfert, M., Pahl, C. (eds.) CLOSER 2018. CCIS, vol. 1073, pp. 126–151. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-29193-8_7
CrossRef
Google Scholar
Taibi, D., Lenarduzzi, V., Pahl, C., Janes, A.: Microservices in agile software development: a workshop-based study into issues, advantages, and disadvantages. In: XP Workshops, pp. 23:1–23:5. ACM (2017)
Google Scholar
Taibi, D., Systa, K.: From monolithic systems to microservices: a decomposition framework based on process mining. In: 9th International Conference on Cloud Computing and Services Science, CLOSER 2019, Heraklion, Greece, 05 2019 (2019)
Google Scholar
Tosi, D., Lavazza, L., Morasca, S., Taibi, D.: On the definition of dynamic software measures. In: ESEM, pp. 39–48. ACM (2012)
Google Scholar
Vresk, T., Cavrak, I.: Architecture of an interoperable IoT platform based on microservices. In: MIPRO, pp. 1196–1201. IEEE (2016)
Google Scholar
Zimmermann, O.: Microservices tenets. Comput. Sci. Res. Dev. 32(3), 301–310 (2016). https://doi.org/10.1007/s00450-016-0337-0
CrossRef
Google Scholar