Technische Universität Ilmenau

Introduction to Software Engineering - 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 Introduction to Software Engineering in degree program Master Technische Physik 2023
module number200126
examination number220484
departmentDepartment of Computer Science and Automation
ID of group 2236 (Systems and Software Engineering)
module leaderProf. Dr. Armin Zimmermann
term winter term only
languageDeutsch
credit points5
on-campus program (h)34
self-study (h)116
obligationelective module
examexamination performance with multiple performances
details of the certificateDas Modul Softwaretechnik (Einführung für Nichtinformatiker) mit der Prüfungsnummer 220484 schließt mit folgenden Leistungen ab:
  • schriftliche Prüfungsleistung über 90 Minuten mit einer Wichtung von 70% (Prüfungsnummer: 2200813)
  • alternative semesterbegleitende Prüfungsleistung mit einer Wichtung von 30% (Prüfungsnummer: 2200814)


Details zum Abschluss Teilleistung 2:

Begleitender Entwurf einer Projektaufgabe

link to Moodle course https://moodle.tu-ilmenau.de/course/view.php?id=2239
teacherProf. Dr. Zimmermann
signup details for alternative examinations

Dieses Modul enthält mindestens eine alternative semesterbegleitende Abschlussleistung. Bitte beachten Sie, dass diese in der Regel schon zu Beginn des Semesters, in dem diese angeboten wird, angemeldet werden muss.
Über die Details und Zeiträume dazu werden Sie vom Lehrenden und/oder dem Prüfungsamt informiert. Fragen Sie gegebenenfalls unbedingt beim Lehrenden nach.

This module contains at least one alternative exam part. Please note that this must usually be registered at the beginning of the semester in which it is offered.
The lecturer and/or the examination office will inform you about the details and time periods. If necessary, be sure to ask the lecturer.

maximum number of participants
previous knowledge and experience

Programmierkenntnisse

learning outcome

Fachkompetenz: Die Studierenden haben grundlegendes Wissen über Vorgehens- und Prozessmodelle der Softwareentwicklung, sowie über deren Methodik und Basiskonzepte erworben. Sie können größere Entwicklungsaufgaben strukturieren, Lösungsmuster erkennen und anwenden, und verstehen den Entwurf von der Anforderungsermittlung bis hin zur Implementierung.

Methodenkompetenz: Den Studierenden besitzen Entscheidungskompetenz hinsichtlich möglicher Prinzipien, Methoden und Werkzeuge des ingenieurmäßigen Softwareentwurfs. Die Studierenden verfügen über das Wissen, allgemeine Techniken der Softwareentwicklung bzw. fachspezifische Kenntnisse anzuwenden und haben die Praxis des Projektmananagements erlernt.

Systemkompetenz: Die Studierenden verstehen das grundlegende Zusammenwirken unterschiedlicher Softwareentwicklungsphasen; anwendungsorientierte Kompetenzen bezüglich Modellierungsfähigkeit und Systemdenken werden in Übungen und in praktischer Anwendung geschult. Sie sind in der Lage, Organisations-, Entwurfs- und Implementierungstechniken anzuwenden.

Sozialkompetenz: Die Studierenden sind in der Lage, Anmerkungen und Hinweise ihrer mentoren zu beachten und Kritik zu würdigen.

content

In der Lehrveranstaltung werden grundlegende Methoden, Modelle und Vorgehensweisen der Softwaretechnik bzw. des Software Engineering erlernt und am Beispiel geübt. Vorrangig wird die objektorientierte Sichtweise betrachtet, und in den Übungen anhand praktischer Beispiele vertieft. Für Implementierungsbeispiele wird vor allem JAVA verwendet.

Die Lehrveranstaltung richtet sich an Nicht-Informatiker, die nicht am anschließenden Softwareprojekt teilnehmen. Zusätzlich zur Vorlesung Softwaretechnik ist Selbststudium zu objektorientierter Programmierung nötig sowie die Bearbeitung eines semesterbegleitenden kleinen Softwareprojekt-Entwurfs, dessen Bewertung in die Benotung eingeht.

- Einführung
- Modellierungskonzepte
  . Überblick Modellierung
  . klassische Konzepte (funktional, datenorientiert, algorithmisch, zustandsorientiert)
  . Grundlagen Objektorientierung
  . Unified Modeling Language (UML)
- Analyse
  . Anforderungsermittlung
  . Glossar, Geschäftsprozesse, Use Cases, Akteure
  . Objektorientierte Analyse und Systemmodellierung
  . Dokumentation von Anforderungen, Pflichtenheft
- Entwurf
  . Software-Architekturen
  . Objektorientiertes Design
  . Wiederverwendung (Design Patterns, Komponenten, Frameworks, Bibliotheken)
- Implementierung
  . Konventionen und Werkzeuge
  . Codegenerierung
  . Testen
- Vorgehensmodelle
  . Überblick, Wasserfall, Spiralmodell, V-Modell XT, RUP, XP
- Projektmanagement
  . Projektplanung
  . Projektdurchführung
media of instruction and technical requirements for education and examination in case of online participation

Folien, Tafel, Moodle

 

literature / references
  • Brügge, Dutoit: Objektorientierte Softwaretechnik. Pearson 2004
    Balzert: Lehrbuch der Software-Technik - Basiskonzepte und Requirements Engineering. 3. Auflage 2009
    Stark, Krüger: Handbuch der Java-Programmierung Version 6. Addison-Wesley 2007
  • Sommerville: Software Engineering. Pearson 2007
  • Oestereich: Analyse und Design mit UML 2.1. Oldenbourg 2006
  • Rupp: Requirements-Engineering und -management. Hanser 2007
  • Höhn, Höppner: Das V-Modell XT. Springer 2008
  • Kruchten: The Rational Unified Process: An Introduction. Addison-Wesley 2004
  • Beck, Andres: Extreme Programming Explained. Addison-Wesley 2004
  • Wirfs-Brock, McKean: Object Design: Roles, Responsibilities and Collaborations. Addison-Wesley 2002
  • Gamma, Helm, Johnson, Vlissides: Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software. Addison-Wesley 2004
  • Fowler: Refactoring: Improving the Design of Existing Code. Addison-Wesley 1999
evaluation of teaching