Skip to content

Latest commit

 

History

History
18 lines (9 loc) · 3.83 KB

manifest_german.md

File metadata and controls

18 lines (9 loc) · 3.83 KB

Manifest für Softwareentwicklung in Studierendenprojekten

Das vorliegende Manifest soll Rahmenbedingungen für die Planung und Umsetzung von Softwareentwicklung innerhalb studentischer Gruppenprojekte setzen. Es soll dabei helfen, die Komplexität eines zeitlich begrenzten Softwareprojektes zu antizipieren, um im Laufe der Entwicklung adäquat auf Veränderungen reagieren zu können. Auch wenn spezifische Anforderung von Projekt zu Projekt variieren, haben sich gewisse Aspekte herauskristallisiert, die für den Erfolg eines studentischen Projekts entscheidend sind. Für eine zufriedenstellende Umsetzung studentischer Projektideen empfiehlt sich daher eine möglichst treue Beachtung folgender Paradigmen, welche speziell an die Anforderungen studentischer Softwareprojekte angepasst wurden:

Softwareprodukt und Lernprozess sollten sowohl bei der Entwicklung als auch bei der Dokumentation die gleiche Wichtigkeit erfahren. Der Erfolg studentischer Softwareprojekte ist im Gegensatz zu kommerziellen Softwareprojekten nicht nur von einem funktionierenden Endprodukt abhängig, sondern soll gleichermaßen an in ihrem Umfang angemessenen und nachhaltigen Lernergebnissen gemessen werden. Ziel studentischer Softwareprojekte ist demnach ein nachweisbares Ergebnis, welches sich sowohl im Softwareprodukt als auch im dokumentierten Lernprozess zeigt.

Die Organisation studentischer Softwareprojekte erfolgt selbstorganisiert durch die Projektgruppe. Die Aufgabenverteilung soll dabei als ein Prozess der Kompetenzverhandlung begriffen werden. Verhandelt werden sollen die realistische (Selbst-)Einschätzung der vorhandenen Kenntnisse der teilnehmenden Studierenden, sowie jene für das Projekt relevante Kompetenzen, deren Aneignung noch angestrebt wird.

Eine zutreffende Einschätzung des Arbeitspensums und adäquate Verteilung korrespondierender Aufgaben werden durch modulare Mikroaufgaben gewährleistet. Die Definition spezifischer Meilensteine und ihr anschließendes Erreichen im Arbeits- und Lernprozess soll durch Modularität vereinfacht werden. Eine modulare Arbeitsweise erlaubt zudem, die Kompetenzverhandlung einzelner Gruppenmitglieder flexibel zu gestalten und ein kontinuierliches Arbeitstempo zu gewährleisten. Voraussetzung für die Definition solcher Mikroaufgaben ist es, Abhängigkeiten zu anderen Aufgaben weitestgehend zu vermeiden.

Agilität stellt einen essentiellen Bestandteil des Projektes dar. Sowohl die Organisation als auch die technische Umsetzung müssen es zulassen, dynamisch auf neue Erkenntnisse oder Hindernisse zu reagieren, ohne dabei das Gesamtziel aus den Augen zu verlieren. Dabei gilt: je modularer die Entwicklung abläuft, desto flexibler kann auf Veränderungen reagiert werden.

Agilität ist insbesondere auf Kompetenzen in der Gruppenkommunikation angewiesen, welche sich um Transparenz und Zuverlässigkeit bemühen sollte. Hierzu bedarf es auch einer geeigneten gemeinsamen Kommunikationsplattform, welche den Austausch zur Organisation und Umsetzung des Projektes in Form regelmäßiger Treffen garantiert. Hier soll jedes Mitglied umstandslos den Status Quo des Projektes einsehen können. Außerdem muss hier auf die Möglichkeit geachtet werden, zwischenmenschliche Aspekte effizient behandeln und arrangieren zu können. Falls gewünscht, kann über jene Plattform auch dem Dozierenden ein Zugang zwecks Beurteilung erteilt werden.

Ein lauffähiger und vorzeigbarer Prototyp sollte möglichst schnell erstellt und dann kontinuierlich weiterentwickelt werden. Dabei ist im Sinne der Agilität darauf zu achten, durch eine modulare Arbeitsweise die Aufwandskurven möglichst flach zu halten. Aktuelle Entwicklungen können stets funktionsfähig in das Produkt aufgenommen werden.

Autoren: Mark Eschweiler, Anna-Maria Evers, Dominik Kruhl, Elisabeth Reuhl und Enes Türkoğlu