Intendierte Lernergebnisse
Nach der erfolgreichen Absolvierung der Lehrveranstaltung sind Studierende in der Lage:Die grundlegenden Begrifflichkeiten, Prozess- und Vorgehensmodelle in der Entwicklung von Softwaresystemen zu erläutern;Anforderungen und User Stories für die Entwicklung von Softwaresystemen zu bestimmen und zu spezifizieren;Verschiedene Modelle der Aufwands- und Kostenschätzung (z.B. Story Points und COCOMO) zu erläutern und auf kleine Beispiele anzuwenden;Die grundlegenden Begrifflichkeiten, Aufgaben und Vorgehensweisen zur Projektplanung und zum Risiko- und Personalmanagement zu erlaeutern;Die Konzepte, Methoden, und Vorgehensweisen von verschiedenen Agilen Prozessen (z.B. XP, SCRUM, Kanban) zu erläutern und in Projekten anzuwenden;Verschiedene Methoden der statischen, dynamischen und organisatorischen Qualitätssicherung (z.B. Metriken, Testen und Checklisten) zu erläutern und in Projekten anzuwenden;Die grundlegenden Konzepte von komponenten-basierter Softwareentwicklung, Konfigurationsmanagement und Software Wiederverwendung zu erläutern;
Lehrmethodik
Interaktive Vorlesung und Praktika
Inhalt/e
Software Engineering behandelt Methoden zur effizienten Entwicklung, Wartung und Qualitätssicherung von langlebigen, umfangreichen Software-Systemen. Software Engineering I führte in den Themenkreis der Wartungsproblematik von existierenden Systemen ein. In Software Engineering II steht nun die Neuentwicklung von Software-Systemen im Vordergrund.ThemenSW EntwicklungsprozesseAnforderungserhebung und TechnikenAgile MethodenSCRUM und KanbanAufwandsschätzung und PlanungRollen, Staffing und PersonalmanagementQualitätskriterien und QualitätsmanagementTestbarkeit von SoftwareReuse, CBSE, FrameworksKonfigurationsmanagement
Erwartete Vorkenntnisse
Java und Kenntnisse im SW-Testen sind erforderlich. Folgende LVs sollten besucht worden sein: ESOP, OMI, und SE1