By John P. Desmond, AI Trends Editor
The Software Engineering Institute (SEI) of Carnegie Mellon University has begun to formalize the practice of AI engineering, as it did for software engineering in the 1980s.
AI engineering is defined as a field of research and practice that combines the principles of systems engineering, software engineering, computer science and human-centered design to create AI systems, according to a press release from SEI.
The development follows a sponsorship of SEI by the US Office of the Director of National Intelligence in October 2020 to lead an initiative to advance the discipline of AI engineering for defense and national security. This followed the release of 11 foundation principles of AI released by SEI after a 2019 workshop with thought leaders to identify areas of focus. The pillars of AI engineering were released after collaboration with the government, the armed services, industry and academia.
“It’s been reported that most AI projects fail to capture the intended business value,” stated Rachel Dzombak, digital transformation lead at the SEI’s Emerging Technology Center and a leader of the SEI’s work in AI engineering. “A lot of that comes from the inability to transition prototypes into systems that achieve the right outcomes over time and at scale.”
The first pillar of AI engineering is scalability, which includes three areas of focus:
- scalable management of data and models;
- enterprise scalability of AI development and deployment; and
- scalable algorithms and infrastructure
The second pillar of AI engineering is that systems must be robust and secure, with three focus areas:
- improving robustness of AI components and systems, including going beyond measuring accuracy to measuring mission outcome achievements;
- development of processes and tools for testing, evaluating, and analyzing AI systems; and
- designing for security challenges in modern AI systems
The third pillar of AI engineering is human-centered design.
“If your smart device at home recommends the wrong song, it doesn’t necessarily have long-term effects,” stated Dzombak. “But for the applications and problems in the national security space, AI output has consequences for human lives.”
The human-centered pillar of AI engineering is intended to ensure that AI systems are built in alignment with the ethical principles of the DoD and other government agencies. “We’re challenging ourselves to ask what transparent and responsible systems really are,” said Dzombak, “and how to measure and ensure system integrity over time.”
Human-centered AI engineering has these focus areas:
- the need for designers and systems to understand context of use and sense changes over time;
- development of tools, processes, and practices to scope and facilitate human-machine teaming; and
- methods, mechanisms, and mindsets to engage in critical oversight
“By putting these pillars in place as AI system design and development starts, you’re more likely to build systems that achieve mission outcomes,” stated Dzombak. The SEI has recently established an AI Division to explore new and ongoing AI projects, examine project portfolios for AI engineering insights, and prepare a roadmap for the discipline based on AI use cases. The SEI is inviting the AI community to join the effort. “The SEI doesn’t have all the answers,” stated Dzombak. “A big part of our role is to convene the perspectives on best practices.”
Researchers in Italy Review AI Studies Between 2010 and 2010
Other organizations are also researching AI and software engineering. In a recent paper entitled “Software Engineering for AI-Based Systems – A Survey,” several authors led by Silverio Martinez-Gernandez, of the Universitat Politècnica de Catalunya in Barcelona, conducted a systematic review of 248 studies published between January 2010 and March 2020. More than two-thirds of those have been published since 2018. “The most studied properties of AI-based systems are dependability and safety,” the authors stated.
After reviewing the research, the authors proposed new areas of study that are needed: ML/AI methods, ML/AI specific activities, data-related issues, and applicability and adoption of research results.
As to the type of research, most were case studies, totaling 59 or 38 percent. Next were benchmarks, at 35 studies or 22%, followed by experiments, with 23 studies or 15%.
Most of the studies, 65%, do not provide any threat to validity, which is a specific way the hypothesis might be wrong.
“If we analyze these results by type of empirical study, we notice that research papers presenting case studies, experiments and benchmarks are the ones where threats to validity are mostly ignored,” the authors state, noting that most of these research papers do not even mention threats to validity.
The involvement of industry in the studies is more pronounced in North American and Europe, the authors found, with 41% involved in North America and 48% in Europe. Industry was involved in 24% of the studies in Asia; in China, the rate was nine percent industry involvement.
Studies with industry involved were found to be more realistic and had a greater scale.
AI in Software Development Stages Outlines
Another study “Applications of AI in Classical Software Engineering” from AI Perspectives/Springer, examines the status of development, future development potential, the risks of AI software engineering and insights in the software development life cycle.
“The analysis results that major achievements and future potentials of AI are a) the automation of lengthy routine jobs in software development and testing using algorithms, b) the structured analysis of big data pools to discover patterns and novel information clusters, and c) the systematic evaluation of these data in neural networks,” stated the authors, led by Dr. Marco Barenkamp, who is CEO and chairman of LMIS AG, a software company based in Osnabruck, Germany.
The authors are optimistic on the impact of AI on software productivity. “Human developers multiply their creative potential when using AI tools effectively,” the authors stated.
The authors describe stages in the application of AI to software engineering in projects. The stages are: AI in software project planning, AI at the stage of problem analysis, AI at the stage of software design, AI at the stage of software implementation, AI at the stage of software integration and testing, and AI in software maintenance.
In Conclusion, Stay on Top of Your Game
In concluding thoughts, the report authors state, “Software developers should understand themselves as creative innovators and leading parties in change processes. As such, they should welcome AI innovations in software design and development and should promote enhanced AI application and integration.”
Regarding training, the authors state, “Software developers have to continuously adapt their competencies and qualifications to keep up with the dynamic and rapid development of AI tools in software engineering.”
For long-term job health, “Software developers who ignore the potentials of AI in the software development life cycle and stick to routine jobs, which are more reliably and cost-efficiently done by automated routines, risk being substituted and losing their established jobs in the long run. “
Finally, “AI is an emerging future technology in software engineering and early adopters multiply their competitiveness.”
Read the source articles and information in the press release from the Software Engineering Institute, in the paper “Software Engineering for AI-Based Systems – A Survey,”, and in the article, “Applications of AI in Classical Software Engineering” from AI Perspectives/Springer