Lecture NLP and Software Engineering WS 2025/26
| Semester: | Wintersemester 2025/26 |
| LP (ECTS): | 3 |
| SWS: | 2 |
| Studiengang: | Master Informatics, Master Information Engineering |
| Dozent: | Dr.-Ing Jan Keim,Dr.-Ing. Tobias Hey |
- Ort und Zeit der Lehrveranstaltung
| Tu 14:00–15:30 | |
| 50.34, –118 |
- ILIAS-Bereich
https://ilias.studium.kit.edu/goto.php/crs/2775208
- Seite im Vorlesungsverzeichnis
Content
This lecture provides the basics for the automated processing of natural language texts. Language processing is becoming increasingly important.
Linguistic input plays a critical role in interactive systems, such as voice commands, assistance systems, and query interfaces. Additionally, the analysis and processing of text-based software artifacts represents an important field of research. Computational linguistics is therefore not only of great importance for software applications, but also for software engineering itself.
The aim of this lecture is to provide basic knowledge of natural language processing (NLP) and its potential applications in the development of software systems. Key topics include the automated analysis of texts, the challenges posed by the inherent ambiguity of natural language, the translation of natural language texts into software models, and the use of large language models (LLMs) in software engineering. The lecture will also explore current research developments and trends in the field.
Competency Goals
Students know basic concepts of linguistics such as syntax, semantics and pragmatics, and can explain and compare them. They are familiar with lexical relations such as polysemy, homonymy, and troponymy and can identify relevant examples. Furthermore, they can identify and compare connections between the relations.
Students are familiar with basic concepts of computational linguistics. Basic techniques such as part-of-speech tagging, lemmatization, word similarities and disambiguation can be explained. Associated methods (lexical, rule-based, or probabilistic) can be described and their respective strengths and weaknesses assessed. Different parsing methods can be named, explained and conceptually reproduced.
Students can describe and compare the structure, content and benefits of different knowledge bases. In addition to the overarching concepts of ontology, lexical databases and other knowledge representations, they are also familiar with specific representatives, such as WordNet, DBpedia and similar, and can use them.
Students understand the connection between the functionality of basic computational linguistics techniques and their applicability in software engineering. In addition, they can break down tool chains into individual components and evaluate them. In particular, students will be able to analyze and evaluate different applications. These include automated modeling, improving requirements specifications, and traceability link recovery. In addition, students can explain the concept of large language models (LLMs) and their application and use in the field of language processing. Students can identify application scenarios in software engineering for text analysis systems and design their own solutions.
- Lecture Empirical Software Engineering WS 2025/26
- Lecture Engineering Self-Adaptive Systems WS 2025/26
- Lecture Model-driven Software Development WS 2025/26
- Lecture NLP and Software Engineering WS 2025/26
- Lecture Software Evolution WS 2025/26
- Praktikum Ingenieursmäßige Software-Entwicklung WS 2025/26
- Praktikum Werkzeuge für agile Modellierung WS 2025/26
- Seminar Continuous Software Engineering WS 2025/26
- Seminar Daten in software-intensiven technischen Systemen – Modellierung – Analyse – Schutz WS 2025/26
- Vorlesung Programmieren WS 2025/26
- Vorlesung Programmierparadigmen WS 2025/26
- Vorlesung Software-Architektur und -Qualität WS 2025/26