Software Engineering
Praxisorientierter Einsteigerkurs in das Software Engineering. Lernen Sie agile Methoden, UML-Design und automatisierte Tests in C# kennen.
🎯 Learning Goals
- ✓ Beherrschen agiler Methoden (Scrum, Kanban) und Phasen des Software-Lebenszyklus.
- ✓ Entwurf robuster Systemarchitekturen unter Verwendung von UML-Diagrammen und Design Patterns.
- ✓ Qualitätssicherung durch automatisiertes Testen (Unit Tests, Integrationstests) in C#.
📖 Course Syllabus & Details
Herzlich willkommen zum Kurs Software Engineering! Softwareentwicklung ist weit mehr als nur Code zu schreiben – es ist ein strukturierter Ingenieursprozess zur Lösung komplexer Probleme.
Kursübersicht
In diesem Kurs betrachten wir den gesamten Prozess der Softwareentstehung: Von der Anforderungsanalyse (Requirements Engineering) über die Architekturmodellierung und Programmierung (in C#) bis hin zu Softwaretests und Deployment-Pipelines.
Inhaltliche Schwerpunkte
- Softwareprozessmodelle: Wasserfall vs. Agil (Scrum, Sprints, User Stories).
- Objektorientiertes Design (OOD): UML-Klassendiagramme, Use Case-Diagramme und Sequenzdiagramme.
- Entwurfsmuster (Design Patterns): Singleton, Factory, Observer und MVC-Muster praxisecht anwenden.
- Clean Code & Refactoring: Wartbaren Code schreiben, Code Smells erkennen und auflösen.
- Testing: JUnit/NUnit für Unit Testing, Test-Driven Development (TDD) und Mocking.
- Versionskontrolle: Git-Workflows (Branching, Merge Requests, CI/CD-Pipelines).
ℹ️ Course Info
Institution
FH Upper Austria
Campus Wels
GitHub Repo
kurs-software-engineering
Dieses Repository enthält Unterlagen für einen Einsteigerkurs in das Thema Software Engineering mit praktischen Beispielen in der Programmiersprache C#