David Garlan Professor Website Office 420 TCS Hall Email garlan@cs.cmu.edu Phone (412) 268-5056 Department Software And Societal Systems Department Computer Science Department Research Interests Formal Methods Mobile and Pervasive Computing Security and Privacy Software Engineering My field of interest is software engineering, and specifically the areas of software architecture, self-adaptive systems, and cyber-physical systems. The common thread that links these areas is the problem of controlling the complexity of large software systems by providing a scientific basis for software design and analysis. Software Architecture. Successful design of software architecture has always been a major factor in determining the success of a software system. Until recently architectural design has been largely based on ad hoc choice, informal experience, and local expertise. The goal of my research is make this knowledge precise, codified, and available to engineers as a matter of routine engineering. My research group has developed a number of languages and tools to support architectural design, including a widely used architecture design environment called AcmeStudio. Recently we have been investigating the possibility of putting such languages and tools in the hands of "end-user architects" — people in domains such as brain imaging, intelligence analysis, and computational biology who have to compose computational elements, but lack deep technical knowledge of computing to do this effectively. Self-adaptive Systems. Increasingly systems must continue to operate continuously, interacting with diverse external services not under the control of the system designer. A new paradigm is emerging to handle this challenge: a system is augmented with a control layer that takes responsibility for observing the system's behavior, and for maintaining or improving that behavior through run-time adaptation. Currently we are particularly interested in the application of these ideas to achieve self-securing systems. Additionally we are investigating the use of techniques such as probabilistic model checking, machine learning, and planning to augment adaptive capabilities over time. Cyber-physical Systems. Today many of the computing systems that we depend on involve a combination of physical and computational elements. These systems include the energy grid, air traffic control, modern automotive/highway systems, and building control and automation systems. These systems are difficult to design in part because they require expertise in many disciplines, such as control theory, physical design, software systems, and distributed systems. In our research we are exploring multi-view design methods, in which different domains of expertise can work with models appropriate to that domain, but the models can be integrated and checked for consistency through shared architectural models. Currently we are working with Toyota on advanced automotive systems involving car-to-highway, and car-to-car communication. Publications Chapter Tolerance of Reinforcement Learning Controllers Against Deviations in Cyber Physical Systems 2025 • Lecture Notes in Computer Science • 14934:267-285 Zhang C, Kapoor P, Meira-Góes R, Garlan D, Kang E, Ganlath A, Mishra S, Ammar N Journal Article A declarative approach and benchmark tool for controlled evaluation of microservice resiliency patterns 2024 • Software - Practice and Experience Aderaldo CM, Costa TM, Vasconcelos DM, Mendonca NC, Camara J, Garlan D Conference Challenges in Creating Effective Automated Design Environments: An experience report from the domain of generative manufacturing 2024 • PROCEEDINGS OF THE 2024 IEEE/ACM INTERNATIONAL WORKSHOP ON DESIGNING SOFTWARE, DESIGNING 2024 • 15-20 Garlan D, Schmerl B, Wohirab R, Camara J Preprint CURE: Simulation-Augmented Auto-Tuning in Robotics 2024 Hossen MA, Kharade S, O'Kane JM, Schmerl B, Garlan D, Jamshidi P Journal Article Focusing on What Matters: Explaining Quality Tradeoffs in Software-Intensive Systems Via Dimensionality Reduction 2024 • IEEE Software • 41(1):64-73 Camara J, Wohlrab R, Garlan D, Schmerl B
Chapter Tolerance of Reinforcement Learning Controllers Against Deviations in Cyber Physical Systems 2025 • Lecture Notes in Computer Science • 14934:267-285 Zhang C, Kapoor P, Meira-Góes R, Garlan D, Kang E, Ganlath A, Mishra S, Ammar N
Journal Article A declarative approach and benchmark tool for controlled evaluation of microservice resiliency patterns 2024 • Software - Practice and Experience Aderaldo CM, Costa TM, Vasconcelos DM, Mendonca NC, Camara J, Garlan D
Conference Challenges in Creating Effective Automated Design Environments: An experience report from the domain of generative manufacturing 2024 • PROCEEDINGS OF THE 2024 IEEE/ACM INTERNATIONAL WORKSHOP ON DESIGNING SOFTWARE, DESIGNING 2024 • 15-20 Garlan D, Schmerl B, Wohirab R, Camara J
Preprint CURE: Simulation-Augmented Auto-Tuning in Robotics 2024 Hossen MA, Kharade S, O'Kane JM, Schmerl B, Garlan D, Jamshidi P
Journal Article Focusing on What Matters: Explaining Quality Tradeoffs in Software-Intensive Systems Via Dimensionality Reduction 2024 • IEEE Software • 41(1):64-73 Camara J, Wohlrab R, Garlan D, Schmerl B