Artificial intelligence in software engineering

- Improving quality through the use of artificial intelligence (AI) in software development

AI in software engineering is not a sure-fire success - on the contrary. Fraunhofer IESE draws on decades of experience in the area of software quality and presents best practices from different use cases of AI & quality.  

AI technologies are already widely used in software engineering, as developers and companies are hoping for innovation potential and productivity gains. Code assistants such as GitHub's CoPilot, Amazon's CodeWhisperer or Tabnine promise a significant increase in development efficiency. In addition, newer LLM-based multi-agent development platforms such as Devin, GPT-Pilot or CrewAI offer to automate a large part of the software development cycle. In addition to the expected increase in efficiency through LLM-based SE, an important motivation for the use of LLMs is the lack of qualified personnel in the areas of engineering and assurance, which must be compensated for if Germany and Europe want to remain leaders in the market for high-quality software products. It is already foreseeable that new players relying heavily on AI technologies will change the software engineering landscape in economic, social and environmental terms. From an economic perspective, the faster delivery of more adaptable and cheaper software is one of the main promises of AI solutions. However, from a social perspective, poor quality solutions are not only costly in the long run, but also risky. This is particularly true in areas where software errors could threaten the lives of people and the environment.

Artificial intelligence and quality - a challenge

Today, the AI technologies mentioned pose considerable challenges in terms of software quality:

  • Risk of hallucinations and the quality of the results
  • unconditional dependence of (especially young) software engineers on these technologies, which hinders their own further training
  • High level of infrastructure and energy costs
  • Unclear concept of information security and data sovereignty

In connection with these technical challenges, the question of how to qualitatively evaluate the quantity of software artifacts that can potentially be generated within a few minutes is becoming increasingly important. Their use in mission-critical applications, where security, reliability and protection must be guaranteed, is complicated. Especially when traditional quality systems for tools and methods that have proven themselves for code-based software no longer work.

Development of innovative methods

Research into software engineering methods and tools that support the development and operation of software-based solutions with predefined and certifiable properties has been a central focus of Fraunhofer IESE for many years.

 

Our goal is to use AI to radically rethink software engineering in order to promote collaboration between humans and AI while systematically minimizing the risks and exploiting the benefits.

To this end, IESE offers innovative software engineering methods that enable domain experts:

  • develop high-quality software solutions more efficiently by working with intelligent tools across all phases of the software life cycle.
  • provide a systematic and structured argumentation that relevant qualities are ensured. 

Eclipse BaSyx

Partial model generation for digital twins through legacy documents with the help of AI & template engines.

FERAL

Derivation and creation of test scenarios according to ASAM OpenTestSpecification.

Quasar

Automated, AI-based evaluation of (open source) software with predefined quality criteria.

SafeTBox

Situation space exploration for safety-security risk analyses, such as TARA/HARA and in accordance with ISO26262.

Kontakt

Andreas Jedlitschka

Contact Press / Media

Dr. Andreas Jedlitschka

Department Head Data Science

Phone +49 631 6800-2260

Nils Brand

Contact Press / Media

Nils Brand

Business Area Manager "Digital Ecosystem Engineering", Dept. Digital Innovation & Smart City

Phone +49 631 6800-2220

  • Send email