|
|
|
| Code: WINF-B25-WPM-300 |
|
|
1VU+3PA (4 Semesterwochenstunden) |
|
5 |
| Studiensemester: 5 |
| Pflichtfach: nein |
Arbeitssprache:
Deutsch |
Prüfungsart:
Projekt (mit Projektbericht)
[letzte Änderung 13.11.2025]
|
WINF-B25-WPM-300 (P460-0044) Digital Business und IT, Bachelor, SO 01.10.2025
, 5. Semester, Wahlpflichtfach
|
|
Die Präsenzzeit dieses Moduls umfasst bei 15 Semesterwochen 60 Veranstaltungsstunden (= 45 Zeitstunden). Der Gesamtumfang des Moduls beträgt bei 5 Creditpoints 150 Stunden (30 Std/ECTS). Daher stehen für die Vor- und Nachbereitung der Veranstaltung zusammen mit der Prüfungsvorbereitung 105 Stunden zur Verfügung.
|
Empfohlene Voraussetzungen (Module):
WINF-B25-450 Softwareprojekt (Programmierprojekt)
[letzte Änderung 20.11.2025]
|
Sonstige Vorkenntnisse:
Dieses Modul vertieft die im Pflichtmodul Softwareprojekt (Programmierprojekt) erworbenen Fähigkeiten. Es richtet sich an Studierende, die anspruchsvollere Softwareprojekte bearbeiten oder bestehende Projekte weiterentwickeln möchten. Dringend empfohlen wird die vorherige Teilnahme am Pflichtmodul Softwareprojekt (Programmierprojekt)
[letzte Änderung 20.11.2025]
|
Als Vorkenntnis empfohlen für Module:
|
Modulverantwortung:
Prof. Dr. Daniel F. Abawi |
Dozent/innen: Dozierende des Studiengangs
[letzte Änderung 20.11.2025]
|
Lernziele:
Nach Abschluss des Moduls sind die Studierenden in der Lage, • komplexere Problemstellungen aus Wirtschaft oder Verwaltung zu analysieren und in ein technisch fundiertes Softwarekonzept zu überführen • fortgeschrittene Softwarearchitekturen, Datenmodelle und Technologien auszuwählen und eine robuste Full-Stack-Anwendung mit durchgängigem Frontend-Backend-Zusammenspiel zu implementieren • Versionsverwaltung, Projektmanagement und moderne Entwicklungswerkzeuge (z. B. Git, CI/CD, automatisierte Tests) professionell einzusetzen und einen qualitätsgesicherten Entwicklungsprozess zu etablieren • UML-Diagramme, Architekturdokumentation und technische Artefakte strukturiert zu erstellen und in der Projektdokumentation nachvollziehbar aufzubereiten • im Team effektiv zu arbeiten, Aufgaben zu planen und Ergebnisse adressatengerecht zu präsentieren
[letzte Änderung 20.11.2025]
|
Inhalt:
1. Analyse und Konzeption (vertiefend) • Analyse komplexerer Anwendungsszenarien • Erhebung und Strukturierung detaillierter Anforderungen • Modellierung fachlicher und technischer Aspekte (UML, Architekturdiagramme) • Entwurf skalierbarer Softwarearchitekturen und Schnittstellen 2. Backend-Entwicklung und Datenhaltung • Entwurf erweiterter relationaler oder hybrider Datenmodelle • Umsetzung komplexerer Backend-Funktionalitäten • Gestaltung und Implementierung stabiler REST-APIs • Validierung, Fehlerbehandlung, Logging und Transaktionslogik 3. Frontend-Entwicklung (vertiefend) • Umsetzung interaktiver und nutzerzentrierter Oberflächen • State-Management, Formularlogik und Validierung • Integration von Frontend und Backend über API-Kommunikation 4. Versionsverwaltung und kollaborative Entwicklung (professionelles Niveau) • Nutzung von Git in komplexeren Team-Workflows • Branching-Strategien, Feature-Branches, Pull-Requests, Code Reviews • Konfliktmanagement und dokumentierte Entscheidungsprozesse 5. Qualitätssicherung und Testverfahren • Anwendung ausgewählter Software Patterns • Entwicklung modularer und wartbarer Strukturen • Erstellung von Unit-Tests, Integrationstests und automatisierten Testabläufen • Debugging-Strategien, Fehleranalyse und Testabdeckung 6. Automatisierung und Bereitstellung • Aufbau und Nutzung von CI/CD-Pipelines • automatisiertes Bauen, Testen und Qualitätskontrolle • Vorbereitung der Anwendung für Deployment- oder Containerumgebungen 7. Teamarbeit, Projektorganisation und Dokumentation • Planung und Koordination von Arbeitspaketen • Nutzung agiler oder klassischer Projektmanagementmethoden • Erstellung umfassender technischer und fachlicher Dokumentation • Abschlusspräsentation und Reflexion des Projektergebnisses
[letzte Änderung 20.11.2025]
|
Weitere Lehrmethoden und Medien:
• Projektarbeit einzeln oder im Team • Betreute Entwicklung und regelmäßige Konsultationen • Iterative Ergebnispräsentationen
[letzte Änderung 20.11.2025]
|
Literatur:
• Sommerville: Software Engineering, Pearson • Gamma et al.: Design Patterns, Addison-Wesley • Farley/Humble: Continuous Delivery, Addison-Wesley • Beck/Kent: Test-Driven Development • Aktuelle Dokumentationen zu verwendeten Frameworks/Technologien (Python, Node.js, .NET, React, Flutter etc.) • Projektspezifische Online-Quellen und Tools (auf Moodle bereitgestellt)
[letzte Änderung 20.11.2025]
|