Anita Carleton on the Past and Future of Software Engineering Research at the CMU Software Engineering Institute

Anita Carleton on the Past and Future of Software Engineering Research at the CMU Software Engineering Institute

Facebook
Twitter
LinkedIn

Anita Carleton is an Executive Leadership Team Member and Director of the Software Solutions Division (SSD) at the Software Engineering Institute (SEI), Carnegie Mellon University.

Carleton received her bachelor’s degree in Applied Mathematics from Carnegie Mellon University and her MBA from the MIT Sloan School of Management, where she was the recipient of the MIT Sloan Leadership Fellowship. She serves on the IEEE Software Advisory Board and is a Fellow of the IEEE Computer Society.

Carleton recently served as guest editor for two IEEE Software Special Issues: “The Future of Software Engineering” and “The AI Effect: Working at the Intersection of Software Engineering and Artificial Intelligence.” She is an author, with Forest Shull and Erin Harper, of “Architecting the Future of Software Engineering” (Computer, 55(9):89-93, 2022). She is also an author, with Robert K. Cunningham, Tom Longstaff, Forrest J. Shull, and Deborah A. Frincke, of “A Research Road Map for Building Secure and Resilient Software-Intensive Systems” (IEEE Secur. Priv. 19(6): 8-1, 2021).

The 2022 International Conference on Software and Systems Process, held jointly with the International Conference on Global Software Engineering, was honored to have Anita Carleton serve as its General Chair. The conference was a virtual event co-sponsored by the International Software and Systems Process Association (ISSPA) and the SEI. The theme of the conference was “Envisioning the Future of Software Engineering Process & Practice for Global Competitiveness & Innovation.”

This interview with Anita Carleton was conducted by Stanley Sutton via email during January and February, 2023.

Questions and Answers

SS (Q1): Can you remind us of the origin story of the SEI?

AC (A1):  The Carnegie Mellon University (CMU) Software Engineering Institute (SEI) was established in 1984 as a federally funded research and development center sponsored by the U.S. Department of Defense. Since then, the SEI has operated at the nexus of academia, industry, and DoD to deliver innovative methods, frameworks, algorithms, and tools that not only address today’s challenges but also future software engineering needs. SEI remains in a unique position to define and shape the discipline of software engineering through research collaborations with CMU and others in academia, directly engaging with DoD major defense acquisition projects (MDAPs), partnering with industry, and informing DoD policy makers.

SS (Q2): The SEI achieved high impact in its early years with its widely known work on capability maturity modeling.  What motivated that work?

AC (A2): The original and ongoing mission of the SEI is to provide leadership to advance the state of the practice of software engineering to improve the quality of systems that depend on software. Delivering on this mission called first for the SEI to establish a discipline of software engineering based on repeatable, quantitative, and sound software practices that enable the production of predictable, high-quality software within cost and schedule constraints. This included the development, application, and transition of models and analysis techniques for software lifecycle approaches designed to yield high quality software and high-performance teams including the Capability Maturity Models, Capability Maturity Model Integration (CMMI), and the Team Software Process/Personal Software Process.

Through this early work, the SEI established tenets for modern software engineering practice in architecture, assurance, formal analysis, virtual integration, testing and evaluation, as well as measurement and analysis.

SS (Q3): The SEI stopped working on CMMI (in its various specializations) in the early 2010s.  What has happened with CMMI since then?

AC (A3): While the CMMI was developed at SEI CMU, it is now operated and maintained by the CMMI Institute. In 2013, the entire CMMI product suite was transferred from the SEI to the CMMI Institute, a newly created organization at Carnegie Mellon charged with CMMI training, certification, licensing, and appraisal services as well as future model development. In March 2016, the CMMI Institute was acquired by ISACA, an international professional association focused on IT governance. CMU SEI was pleased to transition this technology area to an outside organization to help expand its adoption in practice.

SS (Q4): How has the work of the SEI continued?

AC (A4): Moving forward, the SEI continues its broad-based research, development, and transition of software engineering, cybersecurity engineering, and AI engineering technologies and methods.  While the software ecosystem continues to dramatically change through new technologies and commercial investments in software, the SEI’s mission remains the same and the SEI—and others worldwide—continue to build on and evolve these software engineering tenets for modern software engineering practice.

SS (Q5): You’re the Director of the SEI’s Software Solutions Division.  What is the Software Solutions Division working on currently?

AC (A5): Today, architecture, assurance, and automation drive the SEI’s software engineering research in its Software Solutions Division. For example, the SEI develops and pilots DevSecOps approaches, prototypes Machine Learning (ML)/Artificial Intelligence (AI) applications, and strives to incorporate automation throughout the DoD software lifecycle. We study the impact of new technologies through the architecture lens, such as cloud architectures, architecting for a DevSecOps enabled deployment, and architecture for AI systems. We use AI in technical debt prediction algorithms and for automation in design and code analysis. Enabling verification of the DoD’s complex, mission-critical systems is another area of SEI research. The SEI uses and develops analysis techniques and architectures to formally assure system behavior. This work focuses on multi-core, cyber-physical, IoT, and ML-enabled systems.

SS (Q6): You are one of the lead authors (along with SEI colleagues) of “Architecting the Future of Software Engineering.”  This presents a road map for software engineering research with focus areas and objectives on a 10 to 15 year time horizon.  It addresses an impressive range of concerns.  Can you summarize a few of the top-level recommendations or themes of that report?

AC (A6): So the premise of the study is that the stakes for software are elevated…it’s the connective tissue to everything we do. And our ever-growing dependence on these software systems makes it imperative to maintain leadership and strategic advantage in software engineering. We realized that new types of systems will continue to push beyond the bounds of what current software engineering theories, tools, and practices can support.

Working closely with the software engineering community, we created a multi-year research and development vision, strategy, and roadmap for engineering the next-generation software systems.  We thought about how we might build software systems 10-15 years out…which is challenging because our field is changing so rapidly and technology is changing so rapidly.  So as we thought about how we might develop software-intensive systems in the future, we could imagine it as more of a technical conversation between humans and computers than a process of manually refining specifications and code.  While the exact roles that intelligent algorithms and humans have remains to be seen, our vision was that Humans and AI will be trustworthy collaborators that rapidly evolve systems based on programmer intent (based on desired capability or desired outcomes).  The thinking here is that as software engineers continually interact with smart software assistants, computers and humans will be able to do what they both do best.

Our primary considerations in the study are:

  1. The software engineering pipeline is changing rapidly…accelerating the production of code and the ability to deploy software at high velocity.
  2. As systems get more complex, we need to think about smart automation of the software pipeline.
  3. Scale motivates the need for safe and resilient software composition.
  4. Need evidence-based assurance that a system behaves as intended
  5. Data privacy, trust and ethics are increasingly important design considerations for software systems.
  6. Primacy of data—data is becoming as important as code
  7. And we need to think about how we engineer for new computational models:  systems with AI, systems with people (such as social media systems), and then other examples are multi-core, quantum, hypersonics systems…

If you have time to look even briefly at the report, I recommend reading the Executive Summary and checking out the three new development paradigms and the three architectural paradigms. https://resources.sei.cmu.edu/asset_files/Book/2021_014_001_741195.pdf

SS (Q7): What is the significance of process in the ongoing work of the SEI?

AC (A7): The process work forms a key tenet on which the SEI is building much of its ongoing and future work in modern software engineering practice. As Watts Humphrey said, “Innovation is the process of turning ideas into manufacturable and marketable form.” Although we talk differently about the work we do now than we did back when Watts was at the SEI, innovation remains the most important thing we can do for software engineering and for the nation. And our focus on process is one of the things that underpins all of our innovative work today in modern software engineering practice.

Thank you, Anita Carleton.

More to explore

This photo shows the skyline in Seoul, South Korea, the location of ICSP 2020.

Conference Summary: ICSSP 2020

Summary of the 1st ICSSP-ICGSE Joint Event Paolo Tell, David Raffo, LiGuo Huang, Igor Steinmacher, Ricardo Britto, Eray Tüzün, Paul Clarke Published

This photo shows a conference room at ICSSE 2019, where a session is being held.

Conference Summary: ICSSP 2019

Summary of the 2019 International Conference on Software and System Processes (ICSSP 2019) Stanley M. Sutton, Jr., Ove Armbrust, Regina Hebig, Paul

Thanks! We will process your request ASAP.