R & D · Advising

Research lines

Topics of interest for research and development at undergraduate, master's and doctoral levels.

Software Engineering

Evolution and Impact of Design Patterns in Cloud-Native Applications

Summary. Investigates how classic patterns (MVC, Singleton, Factory, Observer) are reinterpreted in cloud-native architectures and how paradigm-specific patterns — serverless, sidecar, circuit breaker, API gateway, saga and asynchronous inter-service communication — affect coupling, resilience and cost. Combines a systematic literature review with real case studies to map when each pattern helps or hurts.

Objective. Produce an evidence-based catalogue relating patterns, forces and trade-offs to high-scalability scenarios, offering a decision guide for architects.

References

  • E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software. Reading, MA, USA: Addison-Wesley, 1994.
  • G. Hohpe and B. Woolf, Enterprise Integration Patterns. Boston, MA, USA: Addison-Wesley, 2003.
  • C. Richardson, Microservices Patterns. Shelter Island, NY, USA: Manning, 2018.
  • D. Taibi, V. Lenarduzzi, and C. Pahl, "Architectural patterns for microservices: A systematic mapping study," in Proc. 8th Int. Conf. Cloud Computing and Services Science (CLOSER), 2018, pp. 221–232, doi: 10.5220/0006798302210232.
  • C. Pahl, P. Jamshidi, and O. Zimmermann, "Architectural principles for cloud software," ACM Trans. Internet Technol., vol. 18, no. 2, art. no. 17, pp. 1–23, 2018, doi: 10.1145/3104028.

Integrating Agile and DevOps Practices in Contemporary Software Engineering

Summary. Explores how agile frameworks (Scrum, Kanban, XP) combine with DevOps practices — continuous integration and delivery, infrastructure as code, test automation and observability — to shorten the feedback cycle without sacrificing quality. Analyzes DORA metrics (deployment frequency, lead time, restore time and change-failure rate) and the cultural impact on cross-functional teams.

Objective. Propose a metrics-driven hybrid framework that integrates agile ceremonies into the DevOps flow and optimizes continuous value delivery.

References

  • J. Humble and D. Farley, Continuous Delivery. Boston, MA, USA: Addison-Wesley, 2010.
  • G. Kim, J. Humble, P. Debois, and J. Willis, The DevOps Handbook. Portland, OR, USA: IT Revolution Press, 2016.
  • N. Forsgren, J. Humble, and G. Kim, Accelerate: The Science of Lean Software and DevOps. Portland, OR, USA: IT Revolution Press, 2018.
  • A. Balalaie, A. Heydarnoori, and P. Jamshidi, "Microservices architecture enables DevOps: Migration to a cloud-native architecture," IEEE Softw., vol. 33, no. 3, pp. 42–52, 2016, doi: 10.1109/MS.2016.64.
  • M. Waseem, P. Liang, and M. Shahin, "A systematic mapping study on microservices architecture in DevOps," J. Syst. Softw., vol. 170, art. no. 110798, 2020, doi: 10.1016/j.jss.2020.110798.

Distributed Systems

Transforming Monolithic Architectures into Scalable Microservices

Summary. Analyzes strategies, patterns and tools to decompose monolithic systems into scalable microservices — context-boundary identification (DDD), the strangler fig pattern, incremental extraction, per-service data management and observability during the transition. It also studies the anti-patterns and hidden costs of distribution.

Objective. Develop a taxonomy of patterns and tools that reduces risk and effort when migrating monoliths to microservices.

References

  • S. Newman, Building Microservices, 2nd ed. Sebastopol, CA, USA: O’Reilly Media, 2021.
  • E. Evans, Domain-Driven Design: Tackling Complexity in the Heart of Software. Boston, MA, USA: Addison-Wesley, 2003.
  • J. Fritzsch, J. Bogner, A. Zimmermann, and S. Wagner, "From monolith to microservices: A classification of refactoring approaches," in Software Engineering Aspects of Continuous Development (DEVOPS 2018), LNCS 11350. Cham, Switzerland: Springer, 2019, pp. 128–141, doi: 10.1007/978-3-030-06019-0_10.
  • G. Mazlami, J. Cito, and P. Leitner, "Extraction of microservices from monolithic software architectures," in Proc. IEEE Int. Conf. Web Services (ICWS), 2017, pp. 524–531.
  • D. Taibi, V. Lenarduzzi, and C. Pahl, "Processes, motivations, and issues for migrating to microservices architectures: An empirical investigation," IEEE Cloud Comput., vol. 4, no. 5, pp. 22–32, 2017.

Observability and Resilience in Critical Distributed Architectures

Summary. Investigates how the three pillars of observability — metrics, logs and distributed traces — connect with SLIs, SLOs and error budgets to reveal the real behavior of systems in production. Correlates telemetry signals with resilience, latency and graceful degradation under failure.

Objective. Propose an evaluation model that measures and actionably improves observability and resilience in critical distributed systems.

References

  • M. Kleppmann, Designing Data-Intensive Applications. Sebastopol, CA, USA: O’Reilly Media, 2017.
  • M. T. Nygard, Release It!: Design and Deploy Production-Ready Software, 2nd ed. Raleigh, NC, USA: Pragmatic Bookshelf, 2018.
  • C. Sridharan, Distributed Systems Observability. Sebastopol, CA, USA: O’Reilly Media, 2018.
  • B. Beyer, C. Jones, J. Petoff, and N. R. Murphy, Eds., Site Reliability Engineering. Sebastopol, CA, USA: O’Reilly Media, 2016.
  • A. Basiri et al., "Chaos engineering," IEEE Softw., vol. 33, no. 3, pp. 35–41, 2016, doi: 10.1109/MS.2016.60.

Reliability Engineering Applied to Highly Critical Systems

Summary. Investigates Site Reliability Engineering (SRE) and Chaos Engineering as disciplines to anticipate failure: controlled fault injection, production experiments, steady-state hypotheses and recovery automation. Examines how to turn reliability into a measurable, repeatable practice rather than operational heroics.

Objective. Create practical guidelines for SRE teams to implement reliability and chaos experimentation safely and with discipline.

References

  • B. Beyer, C. Jones, J. Petoff, and N. R. Murphy, Eds., Site Reliability Engineering. Sebastopol, CA, USA: O’Reilly Media, 2016.
  • C. Rosenthal and N. Jones, Chaos Engineering: System Resiliency in Practice. Sebastopol, CA, USA: O’Reilly Media, 2020.
  • A. Basiri et al., "Chaos engineering," IEEE Softw., vol. 33, no. 3, pp. 35–41, 2016, doi: 10.1109/MS.2016.60.
  • A. Basiri, L. Hochstein, N. Jones, and H. Tucker, "Automating chaos experiments in production," in Proc. IEEE/ACM 41st Int. Conf. Software Engineering: SEIP (ICSE-SEIP), 2019, pp. 31–40, doi: 10.1109/ICSE-SEIP.2019.00012.
  • J. Owotogbe, I. Kumara, W.-J. van den Heuvel, and D. A. Tamburri, "Chaos engineering: A multi-vocal literature review," ACM Comput. Surv., vol. 58, no. 7, pp. 1–44, 2025, doi: 10.1145/3777375.

Cloud Computing

Capacity Planning of Workloads Without Historical Precedent

Summary. Addresses techniques, methods and models to plan capacity when there is no load history — launches, seasonal peaks and emerging workloads. Contrasts reactive, synthetic and predictive approaches and integrates workload semantics, architectural characteristics and operational objectives (SLO, PLO, RLO).

Objective. Evolve the C2PF (Cloud Capacity Planning Framework) toward proactive, explainable and repeatable capacity decisions for workloads without history.

References

  • N. J. Gunther, Guerrilla Capacity Planning. Berlin, Germany: Springer, 2007.
  • T. Lorido-Botran, J. Miguel-Alonso, and J. A. Lozano, "A review of auto-scaling techniques for elastic applications in cloud environments," J. Grid Comput., vol. 12, no. 4, pp. 559–592, 2014, doi: 10.1007/s10723-014-9314-7.
  • N. R. Herbst, S. Kounev, and R. Reussner, "Elasticity in cloud computing: What it is, and what it is not," in Proc. 10th Int. Conf. Autonomic Computing (ICAC), USENIX, 2013, pp. 23–27.
  • C. D. Cavalcanti Pereira, "Capacity planning of cloud computing workloads: A systematic review," in Proc. 15th Int. Conf. Software Engineering Advances (ICSEA), IARIA, 2020.
  • C. D. Cavalcanti Pereira, "A functional paradigm for capacity planning of cloud computing workloads," in Proc. IEEE/ACM 43rd Int. Conf. Software Engineering Companion (ICSE-Companion), 2021, pp. 281–283, doi: 10.1109/ICSE-Companion52605.2021.00128.

Scalable Capacity Modeling in Hybrid Cloud

Summary. Studies techniques and tools to forecast demand and size resources in hybrid-cloud environments, balancing cost, performance and compliance across public and private cloud. Explores time-series and machine-learning models for proactive autoscaling and cost-aware allocation.

Objective. Develop a machine-learning-based predictive model for hybrid-cloud capacity sizing that optimizes cost and performance.

References

  • T. Lorido-Botran, J. Miguel-Alonso, and J. A. Lozano, "A review of auto-scaling techniques for elastic applications in cloud environments," J. Grid Comput., vol. 12, no. 4, pp. 559–592, 2014, doi: 10.1007/s10723-014-9314-7.
  • C. Qu, R. N. Calheiros, and R. Buyya, "Auto-scaling web applications in clouds: A taxonomy and survey," ACM Comput. Surv., vol. 51, no. 4, art. no. 73, pp. 1–33, 2018, doi: 10.1145/3148149.
  • M. Masdari and A. Khoshnevis, "A survey and classification of the workload forecasting methods in cloud computing," Cluster Comput., vol. 23, pp. 2399–2424, 2020, doi: 10.1007/s10586-019-03010-3.
  • A. N. Toosi, R. N. Calheiros, and R. Buyya, "Interconnected cloud computing environments: Challenges, taxonomy, and survey," ACM Comput. Surv., vol. 47, no. 1, art. no. 7, pp. 1–47, 2014, doi: 10.1145/2593512.
  • C. D. Cavalcanti Pereira, "Capacity planning of cloud computing workloads," in Cloud Computing — Applications and Sustainable Developments. London, U.K.: IntechOpen, 2025, doi: 10.5772/intechopen.1011100.

Native Architecture for Optimizing SaaS Applications

Summary. Explores cloud-native patterns applied to SaaS — multi-tenancy (database-, schema- or row-level isolation), horizontal scalability, elasticity, usage metering and billing models. Investigates the balance between isolation, tenant density and cost per customer.

Objective. Create a best-practices guide for SaaS architecture focused on scalability, tenant isolation and cost efficiency.

References

  • C. Fehling, F. Leymann, R. Retter, W. Schupeck, and P. Arbitter, Cloud Computing Patterns. Vienna, Austria: Springer, 2014.
  • C. D. Weissman and S. Bobrowski, "The design of the Force.com multitenant internet application development platform," in Proc. ACM SIGMOD Int. Conf. Management of Data, 2009, pp. 889–896, doi: 10.1145/1559845.1559942.
  • C.-P. Bezemer and A. Zaidman, "Multi-tenant SaaS applications: Maintenance dream or nightmare?," in Proc. Joint ERCIM Workshop on Software Evolution (EVOL) and Int. Workshop on Principles of Software Evolution (IWPSE), ACM, 2010, pp. 88–92, doi: 10.1145/1862372.1862393.
  • J. Kabbedijk, C.-P. Bezemer, S. Jansen, and A. Zaidman, "Defining multi-tenancy: A systematic mapping study on the academic and the industrial perspective," J. Syst. Softw., vol. 100, pp. 139–148, 2015, doi: 10.1016/j.jss.2014.10.034.
  • R. Krebs, C. Momm, and S. Kounev, "Architectural concerns in multi-tenant SaaS applications," in Proc. 2nd Int. Conf. Cloud Computing and Services Science (CLOSER), 2012, pp. 426–431.

Maturity Models for Cloud Infrastructures

Summary. Analyzes maturity models (inspired by CMMI and cloud frameworks) to assess, in a structured way, an organization's cloud usage — governance, automation, FinOps, security and observability. Proposes dimensions and levels that guide evolution from initial use to advanced optimization.

Objective. Propose a maturity framework that measures and guides an organization's cloud adoption and optimization journey.

References

  • M. C. Paulk, B. Curtis, M. B. Chrissis, and C. V. Weber, "Capability maturity model, version 1.1," IEEE Softw., vol. 10, no. 4, pp. 18–27, 1993, doi: 10.1109/52.219617.
  • J. Becker, R. Knackstedt, and J. Pöppelbuß, "Developing maturity models for IT management," Bus. Inf. Syst. Eng., vol. 1, no. 3, pp. 213–222, 2009, doi: 10.1007/s12599-009-0044-5.
  • J. Pöppelbuß and M. Röglinger, "What makes a useful maturity model? A framework of general design principles for maturity models and its demonstration in business process management," in Proc. 19th European Conf. Information Systems (ECIS), 2011.
  • T. Mettler, "Maturity assessment models: A design science research approach," Int. J. Society Systems Science, vol. 3, no. 1/2, pp. 81–98, 2011, doi: 10.1504/IJSSS.2011.038934.
  • C. D. C. Pereira, C. A. C. Filho, and F. S. Ferraz, "Cloud maturity framework: A guideline to assess and modernize cloud computing applications and workloads," in Proc. 17th Int. Conf. Software Engineering Advances (ICSEA), 2022, pp. 53–57.

Data & Artificial Intelligence

Data Lakes as a Centralized Enterprise Integration Layer

Summary. Investigates the Data Lake as a central integration layer between legacy systems, distributed applications and analytical platforms — ingestion patterns, zoned architecture (raw, trusted, refined), metadata and catalog management, governance, scalability and query performance. It discusses the lake-warehouse convergence (lakehouse).

Objective. Propose and validate a Data Lake architectural model oriented toward enterprise integration, with governance and performance.

References

  • R. Hai, C. Koutras, C. Quix, and M. Jarke, "Data lakes: A survey of functions and systems," IEEE Trans. Knowl. Data Eng., vol. 35, no. 12, pp. 12571–12590, 2023, doi: 10.1109/TKDE.2023.3270101.
  • F. Nargesian, E. Zhu, R. J. Miller, K. Q. Pu, and P. C. Arocena, "Data lake management: Challenges and opportunities," Proc. VLDB Endow., vol. 12, no. 12, pp. 1986–1989, 2019.
  • P. N. Sawadogo and J. Darmont, "On data lake architectures and metadata management," J. Intell. Inf. Syst., vol. 56, no. 1, pp. 97–120, 2021, doi: 10.1007/s10844-020-00608-7.
  • C. Giebler, C. Gröger, E. Hoos, H. Schwarz, and B. Mitschang, "Leveraging the data lake: Current state and challenges," in Proc. Int. Conf. Big Data Analytics and Knowledge Discovery (DaWaK), LNCS 11708. Cham, Switzerland: Springer, 2019, pp. 179–188, doi: 10.1007/978-3-030-27520-4_13.
  • C. D. Cavalcanti Pereira, "Data lakes as a centralized integration layer in enterprise environments," J. Data Analysis and Information Processing, vol. 13, pp. 467–486, 2025, doi: 10.4236/jdaip.2025.134027.

Data-Centric Pipeline for Trustworthy AI

Summary. Treats integrity, bias, synthetic data and provenance as an interdependent system for trustworthy AI, covering the full data lifecycle — collection, labeling, validation, lineage and auditing. It emphasizes the data-centric turn: systematically improving the data, not only the model, to raise transparency and accountability.

Objective. Define and empirically evaluate the Data-Centric Trust Pipeline as a data-governance model for sensitive domains.

References

  • D. Schwabe et al., "The METRIC-framework for assessing data quality for trustworthy AI in medicine: A systematic review," npj Digit. Med., vol. 7, no. 1, art. no. 11, 2024, doi: 10.1038/s41746-024-01196-4.
  • N. Sambasivan, S. Kapania, H. Highfill, D. Akrong, P. Paritosh, and L. M. Aroyo, "Everyone wants to do the model work, not the data work: Data cascades in high-stakes AI," in Proc. CHI Conf. Human Factors in Computing Systems, 2021, art. no. 39, doi: 10.1145/3411764.3445518.
  • D. Zha et al., "Data-centric artificial intelligence: A survey," ACM Comput. Surv., vol. 57, no. 5, pp. 1–42, 2025, doi: 10.1145/3711118.
  • S. Longpre et al., "A large-scale audit of dataset licensing and attribution in AI," Nat. Mach. Intell., vol. 6, no. 8, pp. 975–987, 2024, doi: 10.1038/s42256-024-00878-8.
  • C. D. Cavalcanti Pereira, "A data-centric trust pipeline: An empirical framework for trustworthy AI in sensitive domains," AI and Ethics, vol. 6, art. no. 383, 2026, doi: 10.1007/s43681-026-01247-4.