Softwarekonstruktion
Software Versionskontrolle Die Studierenden kennen die Konzepte des Konfigurationsmanagements und können diese für ihre Softwareprojektplanung einsetzen. Sie kennen die Bedeutung der Softwareversionskontrolle für die effiziente Software Entwicklung im Team. Sie können die Konzepte wie commit, push, pull, merge bei verteilten Versionskontrollsystemen für die effiziente Teamarbeit einsetzen und verteilte Code Reviews durchführen.
Automatisierung und kontinuierliche Integration Die Studierenden sind sich der Bedeutung der Automatisierung des Build Prozesses und der kontinuierlichen Integration für die Qualitätssicherung und für die effiziente Softwareerstellung bewusst. Sie kennen die grundlegen Methoden, Techniken und Werkzeuge für automatisierte Builds und kontinuierlicher Integration und können diese für ihr Projekt planen und einsetzen.
Software Testing Die Studierenden können zur Sicherstellung der Softwarequalität Softwaretests planen und ihre Software mittels Unit-Tests testen. Sie können mittels Grenzwertanalyse geeignete Testdaten bestimmen. Sie wissen was testbare Software bedeutet und können solche schreiben.
Qualitätskontrolle und Refactoring Die Studierenden kennen die Konzepte der Codeanalyse, Clean Code, Metriken und Code Coverage zur kontinuierlichen Qualitätskontrolle. Sie können die geeigneten Werkzeuge zur Sicherstellung der Code Qualität für ihre Projekte planen und anwenden. Sie können einfache Code Refactorings zur kontinuierlichen Verbesserung der Software anwenden.