inf005 - Softwaretechnik I (Veranstaltungsübersicht)

inf005 - Softwaretechnik I (Veranstaltungsübersicht)

Department für Informatik 6 KP
Modulteile Semesterveranstaltungen Wintersemester 2024/2025 Prüfungsleistung
Vorlesung
  • Kein Zugang 2.01.005 - Softwaretechnik I Lehrende anzeigen
    • Prof. Dr. Andreas Winter
    • Florian Schmalriede

    Donnerstag: 08:00 - 10:00, wöchentlich (ab 17.10.2024), Ort: A14 1-102 (Hörsaal 2)
    Freitag: 10:00 - 12:00, wöchentlich (ab 01.11.2024), Ort: A14 1-102 (Hörsaal 2)
    Termine am Mittwoch, 05.02.2025 16:00 - 19:00, Mittwoch, 26.03.2025 14:00 - 17:00, Ort: A14 1-102 (Hörsaal 2), A14 1-103 (Hörsaal 3), A14 1-101 (Hörsaal 1)

    Ziel der Vorlesung 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. Vertieft werden Grundkonzepte der objektorientierten Modellierung und Softwareentwicklung.

Übung
Hinweise zum Modul
Teilnahmevoraussetzungen

Erwartete/Nützliche Vorkenntnisse

aus inf030 Programmierung, Datenstrukturen und Algorithmen

Fachkompetenzen
Die Studierenden: 

  • beschreiben grundlegende Konzepte der imperativen Programmierung mit Java
  • erkennen die Terminologie der imperativen Programmierung und verwenden die entsprechenden Begriffe präzise bei Diskussionen
  • erkennen grundlegende Terminologie der objektorientierten Programmierung
  • beschreiben, was ihnen vorgelegte Programme tun
  • entwickeln selbstständig Programme für die Lösung kleinerer Probleme
  • untersuchen systematisch eigene und fremde Programme auf Fehler
  • setzen moderne Programmentwicklungsumgebungen zum Entwickeln und Testen von Programmen ein
  • erstellen Algorithmen mit allgemeinen Entwurfskonzepten (z.B. Greedy-Verfahren, Divide-and-Conquer- Verfahren)
  • benennen Algorithmen und Datenstrukturen zur Lösung von häufig vorkommenden Problemen und bewerten diese in ihrer Anwendbarkeit
  • benennen Probleme der Effizienz von algorithmischen Lösungen konkreter Fragestellungen und bewerten diese
  • wählen fundiert einen Algorithmus und eine Datenstruktur zur Lösung eines konkreten Problems aus
  • wenden die gelernten Algorithmen und Datenstrukturen sinnvoll auf gegebene und konkrete Probleme an

Methodenkompetenzen
Die Studierende: 

  • lösen gegebene Probleme unter den Gesichtspunkt der imperativen bzw. objektorientierten Programmierung
  • übertragen praktische Erfahrungen in der Programmentwicklung auf neue Aufgaben

Sozialkompetenzen
Die Studierenden 

  • vermitteln die Struktur und Wirkungsweise selbst entwickelter Programme an andere
  • präsentieren Lösungen zu kleinen Aufgaben vor Gruppen

Selbstkompetenzen
Die Studierenden: 

  • organisieren sich beim Finden von algorithmischen Lösungen für kleine und mittelgroße Probleme der Informatik
  • beziehen die Konzepte des allgemeinen Programmentwurfs in ihr Handeln ein

 

aus inf031 Objektorientierte Modellierung und Programmierung

Fachkompetenzen
Die Studierendende:

  • kennen grundlegende Konzepte der objektorientierten Modellierung und UML als Modellierungsnotation
  • kennen grundlegende Konzepte der objektorientierten Programmierung mit Java
  • kennen die Terminologie der objektorientierten Modellierung und Programmierung und verwenden die entsprechenden Begriffe präzise bei Diskussionen
  • können beschreiben, was ihnen vorgelegte objektorientierte Programme tun
  • entwickeln selbstständig Modelle und Programme für die Lösung mittelgroßer Probleme
  • untersuchen systematisch eigene und fremde Modelle und Programme auf Fehler
  • setzen moderne Entwicklungsumgebungen zum Modellieren und Entwickeln von Programmen ein
  • kennen die Unterschiede zwischen dem imperativen, objektorientierten, funktionalen, logischen und regelbasierten Programmierparadigma

Methodenkompetenzen
Die Studierenden:

  • entwickeln selbstständig Programme für gegebene Probleme durch konsequente Anwendung der Konzepte der objektorientierten Modellierung und Programmierung
  • übertragen praktische Erfahrungen in der Programmentwicklung auf neue Aufgaben
  • entwickeln selbstständig Programme mit Nebenläufigkeiten
  • können selbstständig bekannte Lösungsmethoden auf komplexe Probleme anwenden

Sozialkompetenzen
Die Studierenden:

  • vermitteln die Struktur und Wirkungsweise selbst entwickelter Modelle und Programme an andere
  • präsentieren selbstständig entwickelte Lösungen vor Gruppen

Selbstkompetenzen
Die Studierenden:

  • organisieren sich beim Entwickeln von Programmen für kleine und mittelgroße Probleme der Informatik
  • beziehen die Konzepte des objektorientierten Programmentwurfs in ihr Handeln ein
Prüfungszeiten

Am Ende der Vorlesungszeit

Kompetenzziele

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
  • erkennen die Sprachmöglichkeiten der Modellierung mit UML
  • entwickeln und bewerten Modelle in unterschiedlichen UML-Notationen und deren Kombinationen
  • lösen gegebene Probleme mit Hilfe der UML-Notationen

Methodenkompetenzen
Die Studierenden:

  • strukturieren, bewerten, unterscheiden und nutzen Vorgehenweisen der klassischen und agilen Projektdruchführung
  • 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

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