U.S. Leadership in Software Engineering & AI Engineering: Critical Needs & Priorities Workshop Report

SPSQ-CMU-Software-AI-Engineering-Workshop-Report-2024

View Full Text: SPSQ-CMU-Software-AI-Engineering-Workshop-Report-2024.pdf

To inform a community strategy for building and maintaining U.S. leadership in software engineering and AI engineering, the Carnegie Mellon University’s Software Engineering Institute (CMU SEI) and the Software Productivity, Sustainability, and Quality (SPSQ) Interagency Working Group co-hosted the workshop at the National Science Foundation from June 20th to the 21st, 2023.

The event gathered thought leaders from federal research funding agencies, research laboratories, mission agencies, and commercial organizations. Participants used the SEI’s Architecting the Future of Software Engineering: A National Agenda for Software Engineering Research and Development [1] as a starting point because the areas of focus that the study identifies have been confirmed as increasingly critical, particularly due to the rapid advances of generative artificial intelligence (AI) in the two years since its release. Specifically, participants identified the following three research areas from the study as having direct relevance: AI-augmented Software Development, Assuring Continuously Evolving Software Systems, and Engineering AI-Enabled Software Systems.

Speakers and participants at the event worked to explore software-related challenges that are critical for multidisciplinary research across domains of importance to the nation, as well as the promising research that is needed to engineer the necessary systems reliably and well. In sessions organized around these research areas and in breakout discussions, participants almost unanimously remarked on the rapid acceleration of new technologies in the software development lifecycle and the role of AI in shaping the future of software systems. As attendees discussed the critical need for new approaches to navigate both the opportunities and the challenges of this changing landscape, five main themes emerged.

1. AI is transforming the software engineering process and how we engineer software systems. The increasing symbiosis of humans and machines is transforming every phase of the software development lifecycle.
2. Generative AI has reached a level of sophistication that may seem to resemble human intelligence, but it remains difficult to determine the level of trust that should be placed in its outputs.
3. It is imperative to redefine the discipline of software engineering to encompass the use of new technologies (including, but not limited to, generative AI), and to rethink the curricula, tools, and technologies associated with its practice. This effort is key to designing, building, evolving, and evaluating trustworthy software systems in a responsible, ethical way.
4. New technologies, including generative AI, seem to hold the promise of making almost everyone a programmer. As a result, AI literacy and the development of new skills are needed throughout the workforce.
5. The use of AI tools, such as large language models (LLMs), can mask the trade-offs being made between the functionality of software systems and their safety and security. Research is needed to identify and make explicit the key engineering trade-offs being made during the design, development, training, testing, and authorization of systems that include AI components.

[1] See https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=741193 to download a copy of the study.