Konzepte moderner Softwareentwicklung

Kurzame
Konz. moderner SW-Entw.
Modulnummer
CS2016
Modulverantwortlicher
  • Peter Kneisel
Dozent
  • Dennis Priefer
  • Klaus-Dieter Quibeldey-Cirkel
  • Wolf Rost
  • Christoph Thelen
Kurzbeschreibung

Der Kurs vermittelt die Grundlagen von gängigen Softwareentwicklungs-Praktiken. Dies geschieht durch selbstständig durchgeführte Teamarbeit innerhalb praxisnaher Softwareprojekte. Dabei erproben die Teilnehmenden die Einarbeitung in produktive Softwaresysteme durch bewährte Techniken.

Qualifikations- und Lernziele

Die Studierenden haben vertiefte Kenntnisse im Bereich der professionellen Softwareentwicklung. Sie sind in der Lage sich in bestehende, komplexe Projekte einzuarbeiten. Außerdem können die Studierenden in autonomer Teamarbeit kollaborativ Software erstellen und pflegen. Zusätzlich sind die Studierenden geübt im Umgang mit schwierigen Situationen im Projektalltag. Überdies sind die Studierenden geschult im Umgang mit qualitätssichernden Maßnahmen innerhalb eines agilen Softwareprojekts. Realitätsnahe Simulationen vom Projekteinstieg bis hin zu kompletten Projektumsetzungen sollen den Teilnehmenden Unsicherheiten vor dem Übergang ins Berufsleben nehmen.

Lerninhalte
  • Praxisnahe Umsetzung von Projekten im Web-Bereich
  • Umgang mit Legacy-Software: Reengineering, ReverseEngineering, Refactoring
  • Grundlagen agiler Entwicklungsmethoden am Beispiel von Scrum
  • Fallbeispiele für typische Situationen im Alltag einesSoftwareEntwicklers
  • Soft Skills: Teamarbeit, Konfliktlösung
  • Konzepte der Qualitätssicherung: Qualitätssichernde Maßnahmen in einem SE-Projekt, Techniken zur qualitativen Verbesserung von existierenden Systemen
  • Umgang mit einer professionellen SE-Infrastruktur: Continuous Integration (Jenkins), Versionierung (Gitorious),Projektmanagement (Redmine)
  • Verschiedenste Fallbeispiele zu typischen Situationen im Alltageines Softwareentwicklers ergänzen den Kursablauf stetig. Für die Umsetzung der Projekte kommen agile Methoden wie etwa Scrum zum Einsatz. Zur Steigerung der intrinsischen Motivation könnenübergreifende soziale Unternehmungen in die Projekte eingebunden werden.
Moduldauer (Semester)
1
Unterrichtssprache
Deutsch
Gesamtaufwand
9 CrP; 270 Stunden, davon etwa 90 Stunden Präsenzzeit.
Semesterwochenstunden
6
Lernformen

Praktikum 6 SWS; Die Veranstaltung wird im Block (2 Wochen) durchgeführt, ferner etwa 4-6 Wochen individueller Arbeit.

Geprüfte Leistung

Prüfungsvorleistung: Projektarbeit

Prüfungsleistung: Präsentation der Entwicklungsergebnisse mit Abnahme der Anwendung

Bewertungsstandard

Bewertung der Prüfungsleistung nach § 9 der Prüfungsordnung (Teil I)

Häufigkeit des Angebots
Einmal im Jahr
Literatur
  • R.C. Martin: Clean Code mitp-Verlag
  • J. Humble, D. Farley: Continuous Delivery Addison-Wesley
  • S. Demeyer; St. Ducasse; O. Nierstrasz: Object-Oriented Reengineering Patterns Square Bracket Associates
  • M. Fowler: Refactoring Addison-Wesley Longman
  • D. W. Hoffmann: Software-Qualität Springer.
  • T. Linz: Testen in Scrum-Projekten dpunkt-Verlag
  • R. Pichler: Scrum - Agiles Projektmanagement erfolgreich einsetzen dpunkt
Voraussetzungen

Diese Veranstaltung setzt Programmierkenntnisse und -erfahrungen, insbesondere im Bereich der komponentenbasierten, objektorientierten Programmierung voraus. Zusätzlich sollten methodische Kenntnisse im Bereich des Software-Engineerings und die Fähigkeit zum eigenverantwortlichen, teamorientierten Entwickeln vorhanden sein.