Technische Universität Ilmenau

Software Engineering 2 - Interactive curriculae of TU Ilmenau

The interactive curriculae provide information on the degree programmes offered by the TU Ilmenau.

Please refer to the respective study and examination rules and regulations for the legally binding curricula (Annex Curriculum).

You can find all details on planned lectures and classes in the course catalogue.

Please note that this page is no longer updated. All modules and study plans from PO version 2021 onwards (Bachelor and Master study programs) are now available on the Campus Portal.

module properties Software Engineering 2 in degree program Bachelor Data Science 2025
module number200066
examination number2200715
departmentDepartment of Computer Science and Automation
ID of group 223 (Institut für Technische Informatik und Ingenieurinformatik)
module leader Dr. Detlef Streitferdt
term summer term only
languageDeutsch
credit points5
on-campus program (h)34
self-study (h)116
obligationelective module
examoral examination performance, 30 minutes
details of the certificate
link to Moodle course https://moodle.tu-ilmenau.de/course/view.php?id=1085
teacherDetlef Streitferdt
signup details for alternative examinations
maximum number of participants
previous knowledge and experience

Softwaretechnik 1, bzw. Softwaretechnik Grundlagen

learning outcomeFachkompetenz: Die Studierenden verfügen über anwendungsorientiertes Wissen zu Werkzeugen der Anforderungserhebung und -modellierung, der Prozessmodellierung und - anpassung, der
Aufwandsschätzung, des Softwaretests, der Produktlinienentwicklung und der Wartung von Software.

Methodenkompetenz: Die Studierenden kennen den methodischen Hintergrund zu den vorgestellten Werkzeugen / Verfahren und sind daher in der Lage auch neue Problemstellungen zu lösen. Sie können aus den vorgestellten Methoden jeweils die passenden auswählen.

Systemkompetenz: Die Studierenden können die vorgestellten Methoden und Werkzeuge in Projekten unterschiedlicher Domänen anwenden.

Sozialkompetenz: Die Studierenden kennen die Bedeutung und den Einfluss der erlernten Methoden und Werkzeuge innerhalb einen Firma. Sie können daher ihr jeweiliges Vorgehen und die
Ergebnisse auf die Erfordernisse eines Projektes in einer Organisation abstimmen.
content

Diese Vorlesung vertieft die Inhalte der Softwaretechnik. Durch den Anwendungsbezug und die vorgestellten Entwicklungswerkzeuge werden theoretische Kenntnisse umgesetzt. Die bekannten
Phasen des Softwareentwicklungszyklus werden durch Themen vertieft, deren Bedeutung im industriellen Praxiseinsatz hoch ist.

  • Requirements Engineering (RE) - Als eine der wichtigen Grundvoraussetzungen für hochwertige Systeme gilt die Requirements Engineering Phase. Die wichtigsten Technologien werden vorgestellt und eingesetzt.

    - Elicitation, Modeling, Validation/Verification
    - Goal-Oriented RE
    - Traceability
    - RE Tool Support
  • Softwareprozessmodellierung - Nutzung und Anpassung von Entwicklungsprozessen mit zugehörigen Artefakten (z. B. Checklisten, Dokumentvorlagen,Werkzeugen, Rollenkonzept, .). Je nach Anforderung, sollen einzelne oder ganze Prozesse erzeugt und effizient eingesetzt werden, um eine Entwicklergruppe bestmöglich zu unterstützen.

    - Modellierung von Softwareentwicklungsprozessen (Wiederverwendung von Methoden- / Prozessschritten)
    - Tailoring von SW-Entwicklungsprozessen
  • Langlebige Systeme - Das Wissen um den Lebenszyklus von Softwaresystemen ist entscheidend für deren Entwicklung und zukünftigen Erfolg. Die geforderte Stabilität langlebiger Systeme (z. B. mehr als 30 Jahre) muss sich im Entwurf der Systeme wiederfinden.

    -  Design for Stability
    - Reengineering
    - Refactoring
    - SW Wartung, Wartbarkeit
  • Automatisiertes Testen - Veränderungen in den Anforderungen oder auch Fehlerbereinigungen führen zu der Notwendigkeit das System erneut testen zu müssen. Hierbei sind automatisierte Testansätzehilfreich. Zum einen lassen sie Änderungen an Testmodellen zu, aus denen Testfälle generiert werden. Zum anderen können Testfälle mit unterschiedlichen Zielen generiert werden, z. B. der Verbesserung der Codeabdeckung.

    - Einordnung in den SW-Entwicklungsprozess
    - Testmodellierung
    - Testfallableitung
    - Analyse von Testergebnissen
  • Software Produktlinien - Der immer häufiger angewandte Produktlinienansatz erfordert ein Umdenken während des gesamten Entwicklungszyklus. Sollen später Produkte generiert und nicht jeweils als Eigenentwicklung entstehen, sind folgende Themen relevant:

    - Merkmalmodelle (variable / gemeinsame Systemanteile)
    - Produktlinien Architekturen
    - Domänenspezifische Sprachen
    - Testen von Produktlinien
    - Generieren von Applikationen aus einer Produktlinie
media of instruction and technical requirements for education and examination in case of online participation

Bücher, Webseiten, Wissenschaftliche Paper, Open Source/Kommerzielle - Werkzeuge

literature / references

[LuLi 2023] Jochen Ludewig, Horst Lichter, "Software Engineering: Grundlagen, Menschen, Prozesse, Techniken",  dpunkt.verlag, 2023.

[Somm 2018] Ian Sommerville,"Software Engineering", Pearson Studium, 2018.

[McCo 2006] Steve McConnell, "Software Estimation", Microsoft Press, 2006.

 

 

evaluation of teaching