inf005 Softwaretechnik I (Complete module description)

inf005 Softwaretechnik I (Complete module description)

Deutsch English PDF Download
Module label Softwaretechnik I
Modulkürzel inf005
Credit points 6.0 KP
Workload 180 h
Verwendbarkeit des Moduls
  • Erweiterungsfach Gymnasium Informatik > Module
  • Fach-Bachelor Informatik > Aufbaumodule
  • Fach-Bachelor Mathematik > Nebenfachmodule
  • Fach-Bachelor Wirtschaftsinformatik > Aufbaucurriculum - Pflichtbereich
  • Master of Education (Wirtschaftspädagogik) Informatik > Pflichtbereich
  • Master Umweltmodellierung > Mastermodule
  • Zwei-Fächer-Bachelor Informatik > Aufbaumodule (60 KP)
Zuständige Personen
  • Winter, Andreas (module responsibility)
  • Lehrenden, Die im Modul (Prüfungsberechtigt)
Prerequisites

Erwartete/Nützliche Vorkenntnisse

Fachkompetenzen

  • Die Studierenden können Konzepte der imperativen Programmierung und grundlegende Konzepte der objektorientierten Programmierung erklären, anwenden und bewerten.
  • Die Studierenden können grundlegende Algorithmen und Datenstrukturen erklären, anwenden und deren Komplexität einschätzen. 
  • Die Studierenden können fortgeschrittene Konzepte der objektorientierten Programmierung erklären, anwenden und bewerten.
  • Die Studierenden können grundlegende Konzepte der objektorientierten Modellierung erklären und anwenden.

 

Skills to be acquired in this module

Ziel des Moduls ist die Vermittlung der ingenieurmäßigen Entwicklung und Wartung umfangreicher Softwaresysteme. Betrachtet wird der vollständige Software-Entwicklungsprozess inkl. Anforderungserhebung, Software-Architektur und Qualitätssicherung sowohl in klassischen wie in agilen Vorgehensweisen. Vertieft werden Grundkonzepte der objektorientierten Modellierung und Softwareentwicklung auf Basis der Unified Modeling Language.


Fachkompetenzen
Die Studierenden:

  • erkennen die Phasen im Software-Lebenszyklus (Anforderungsermittlung, Entwurf, Implementierung, Qualitätssicherung)
  • benennen die in den Phasen anfallenden Aufgaben
  • erkennen und bewerten die Anordnung dieser Phasen in klassischen und agilen Vorgehensweisen
  • beurteilen und wählen geeignete Vorgehensweisen zur Umsetzung von Projekten aus
  • kennen die unterschiedlichen Anforderungsarten  (inkl. Qualitätsanforderungen) und können diese mit klassischen und agilen Verfahren dokumentieren
  • erkennen die Sprachmöglichkeiten der Modellierung mit UML
  • entwickeln und bewerten Analyse- und Entwurfsmodelle in unterschiedlichen UML-Notationen und deren Kombinationen
  • lösen gegebene Probleme mit Hilfe der UML-Notationen
  • kennen grundlegende Techniken zur Beschreibung von Software-Architekturen
  • kennen grundlegenden Verfahren zur konstruktiven und analytischen Quaitätssicherung 

Methodenkompetenzen
Die Studierenden:

  • strukturieren, bewerten, unterscheiden und nutzen Vorgehenweisen der klassischen und agilen Projektdruchführung
  • nutzen Techniken der klassischen und agilen Anforderungsdokumentation projektangemessen
  • strukturieren, dokumentieren, bewerten Probleme und Lösungen mit den Werkzeugen der objekt-orientierten Modellierung
  • wenden Methoden und Techniken der objekt-orientierten Modellierung mit UML gezielt an
  • entwickeln Testfälle für funktionale und nichtfunktionale Anforderungen

Sozialkompetenzen
Die Studierenden:

  • erstellen, präsentieren und diskutieren Problemlösungen mit Hilfe von Modellierungstechniken
  • beschreiben und lösen gegebenen Probleme der Modellierung in Gruppen

Selbstkompetenzen
Die Studierenden:

  • reflektieren ihr Handeln bei der Problembeschreibung und der Entwicklung von Lösungsansätzen
Module contents

In dem Modul werden die grundlegenden Begriffe und Konzepte der Softwaretechnik vermittelt.
Es sind dies u.a.:

  • Notwendigkeit der Softwaretechnik
  • Prinzipien der Softwaretechnik
  • Aktivitäten und Vorgehensmodelle der Software-Entwicklung (klassisch, agil))
  • klassisches und agiles Anforderungsmanagement
  • Objektorientierte Modellierung, Metamodellierung
  • Synchronisation von Code und Modellen
  • Ermittlung und Dokumentation von Anforderung (klassisch, agil))
  • Definition von Software-Architekturen
  • Einsatz von Mustern der Software Entwicklung
  • Definition und Sicherung der Softwarequalität
  • Wartung und Betrieb von Softwaresystemen
Literaturempfehlungen
  • Folienskript zur Vorlesung
  • Ian Sommerville: Software Engineering, Addison-Wesley Longman, Amsterdam, 10. Auflage (Global Edition). 2015.
  • Anja Metzner:  Software-Engineering – kompakt, Hanser, München, 2020.
  • Ravi Sethi: Software Engineering: Basic Principles and Best Practices, Cambridge University Press, 8. Dezember 2022. 
  • Chris Rupp, Stefan Queins: UML 2 glasklar. Praxiswissen für die UML-Modellierung, Carl Hanser Verlag, 4. Auflage 2012.
  • Martina Seidl,  Marion Scholz, Christian Huemer, Gerti Kappel, UML @ Classroom: An Introduction to Object-Oriented Modeling, Springer, 2015.
  • Christoph Kecher, Alexander Salvanos, Ralf Hoffmann-Elbern: UML 2.5, Das umfassende Handbuch. 7. Aufl. Rheinwerk Computing, 2021.
  • OMG Unified Modeling Language, Version 2.5.1 (formal/17-12-05), Dec. 2017, https://www.omg.org/spec/UML/,
Links
Language of instruction German
Duration (semesters) 1 Semester
Module frequency jährlich
Module capacity unrestricted
Lehr-/Lernform V+Ü
Lehrveranstaltungsform Comment SWS Frequency Workload of compulsory attendance
Lecture 3 WiSe 42
Exercises 2 WiSe 28
Präsenzzeit Modul insgesamt 70 h
Examination Prüfungszeiten Type of examination
Final exam of module

Am Ende der Vorlesungszeit

Klausur  (im Regelfall)

mündliche Prüfung oder Portfolio (nach Absprache mit dem Prüfungsamt z.B. bei bewilligtem Nachteilsausgleich)