AI for Software Engineering – Software Engineering for AI
Dauer: 1 Tag (8h Basismodul)
8h Erweiterungsmodule
KI-Technologien wie generative KI und LLMs gewinnen derzeit rapide an Bedeutung für die Softwareentwicklung und reichen weit über die Verwendung von Coding-Assistenten hinaus. Sie beeinflussen nicht nur, wie wir Software designen, entwickeln, testen und warten, sondern ermöglichen durch ihre Integration in Softwaresysteme auch die Entstehung einer neuen Art von Softwarelösungen.
Lernen Sie im Rahmen dieses Workshops die aktuellen Möglichkeiten, Chancen aber auch Grenzen von KI für die Softwareentwicklung kennen:
- Anwendungsmöglichkeiten von AI in der Softwareentwicklung
- Effektive Verwendung von Prompt Engineering
- Chancen, Risiken und Grenzen von AI
- Entwicklung AI-basierter Systeme
- Diskussion anhand von praktischen Beispielen
Inhalte
Einführung
Einführung in die Grundlagen und Definitionen von künstlicher Intelligenz, Anwendungsfälle und Grundlagen der AI in der Softwareentwicklung sowie die Entwicklung AI-basierter Systeme.
AI in der Softwareentwicklung
Anwendung von AI in der Softwareentwicklung über den gesamten Softwarelebenszyklus: von Konzeption und Anforderungserhebung, über Design, Implementierung und Test, bis hin zu Deployment und Wartung. Wir stellen Methoden und Werkzeuge vor und diskutieren Grenzen und Herausforderungen.
AI4SE by Example
Praktische Einblicke in die Entwicklung einer Softwareanwendung mit KI-Unterstützung. Anhand eines durchgängigen Beispiels lernen die Teilnehmenden, wie KI-Technologien gezielt eingesetzt werden, um komplexe Softwarelösungen effizient zu gestalten und zu optimieren.
Special Topic: AI-basierter Softwaretest
Verwendung von AI-basierten Tools und Ansätzen für den Softwaretest. Automatische Generierung von Testfällen und Testdaten. Prompting für die Testgenerierung, Überprüfung von Ausgaben mittels symbolischer Methoden.
Softwareentwicklung von AI-basierten Systemen
Vorstellung von Architekturmustern für die Entwicklung von AI-basierten Systemen. Integration von AI-Komponenten in klassische Softwaresysteme, Kontextualisierung von AI mittels RAG, Embeddings und symbolischen Wissens.
Special Topic: Prompt Engineering
Grundlagen des Prompt Engineerings für große Sprachmodelle und Bedeutung für das Software Engineering. Erstellen von effektiven Prompts mittels Basic und Advanced Prompting Patterns anhand von Anwendungsmöglichkeiten aus der Praxis.