
Entwicklung einer CRUD-API für die Software Madek
Um die Software Madek zu modularisieren und zukunftssicher zu machen, hat das ORC die Entwicklung einer CRUD-API in Auftrag gegeben. Eine CRUD-API ermöglicht die Anbindung von Madek an andere Systeme und Applikationen. Mit der bis dahin vorhandenen API und aufgrund des teilweise monolithischen Codes der Software waren Lesezugriffe nur mit hohem Aufwand, Schreibzugriffe gar nicht möglich.
Kategorien
Beschreibung
Herausforderung
Die Software Madek vereint Charakteristika einer Archivdatenbank mit denen einer Plattform zum Teilen von Medien, daher ist sie für den Einsatz an Kunst- und Musikhochschulen besonders gut geeignet. Die API war allerdings auf Lesezugriffe beschränkt. Um die Integration von Madek in bestehende digitale Infrastrukturen, eine Modularisierung durch eigenständige Komponenten sowie die Stärkung der Open Source Community zu erreichen, musste eine vollständige CRUD-API entwickelt werden.
Herangehensweise
Die Entwicklung einer vollständigen CRUD-API ist ein umfangreiches Software-Entwicklungs-Projekt. Daher wurden zunächst zusätzliche Fördermittel bei der Stiftung Innovation in der Hochschullehre eingeworben. Anschließend schrieb das ORC das Projekt aus und beauftragte Software-Entwickler mit der Umsetzung.
Im Vorfeld wurde das Projekt mit der Zürcher Hochschule der Künste (ZHdK), die die Software Madek als Teil ihrer digitalen Hochschulinfrastruktur (Medienarchiv) pflegt und weiterentwickelt, abgestimmt. Die technische Konzeption der API v2 wurde gemeinsam mit dem Senior-Developer der ZHdK erarbeitet. Außerdem wurde vereinbart, die neue API v2 einem Review-Verfahren durch die ZHdK zu unterziehen und anschließend in das offizielle Madek-Repositorium zu integrieren (main branch). Beides ist inzwischen geschehen. Die Nachhaltigkeit der Entwicklung wurde damit deutlich gestärkt. HfG-spezifische Funktionen (z.B. LDAP-Anbindung) werden von uns in einem eigenen Branch gepflegt.
Zusammenhang
Da es sich um höhere Softwareentwicklung handelte, gab es keine Anknüpfungspunkte an das HfG-Curriculum. Zur Qualitätssicherung wurde die API v2 einem Review-Verfahren durch die ZHdK unterzogen. Unsere Entwickler programmierten außerdem eine Proof-of-Concept-Anwendung für Anwendungs-Tests. Inzwischen ist die API v2 produktiv im Einsatz und sorgt für die technische Anbindung zweier Software-Module an das Madek-System: Schaufenster zur Präsentation von studentischen Arbeiten und Project Uploader.
Voraussetzung
Eine strategische Voraussetzung war die Selbstverpflichtung der HfG, das Projektarchiv nachhaltig in die digitale Infrastruktur der Hochschule einzubinden. Die CRUD-API stellt dafür die notwendige technischen Bedingung dar.
Das Projekt hätte allerdings nicht ohne die Bewilligung von Sonderfördermitteln durchgeführt werden können. Denn zu Projektbeginn war nicht absehbar, dass die API der Software modernisiert werden müsste, weshalb diese Maßnahme nicht im Projektantrag enthalten ist.
Bei der eigentlichen Durchführung war die enge Zusammenarbeit mit der ZHdK maßgebend. Durch regelmäßigen Austausch zwischen dem ORC-Projektteam, den beauftragten Entwicklern und der ZHdK konnte das Projekt klar definiert und effizient durchgeführt werden. Die nachhaltige Wirkung der Maßnahme wurde außerdem durch die Vereinbarung, die neue API in das offizielle Madek-Repositorium (main branch) der ZHdK aufzunehmen, sichergestellt – auch über das Projektende des ORC hinaus.
Eignung
Die CRUD-API stellt die technische Voraussetzung für die breite Nutzung, nachhaltige Integration und allgemeine Akzeptanz der Projektarchiv-Plattform dar. Die verantwortlichen Stellen der ZHdK, die die Software seit über zehn Jahren einsetzen und weiterentwickeln, bestätigen dies, weshalb sie unsere Entwicklung aktiv unterstützt und das Ergebnis in den main branch der Codebase integriert haben.
An der HfG setzen wir inzwischen mit Schaufenster eine eigens entwickelte Präsentations-Website ein, die über die API v2 an Madek angebunden ist. Die Resonanz der Anwender*innen ist durchwegs gut, zudem wirkt sich Schaufenster positiv auf die Nutzung der Projektarchiv-Plattform aus.
Die Maßnahme hat dazu geführt, dass der Einsatz der Software Madek für weitere Kunstakademien attraktiv geworden ist. Inzwischen wurde die Projektarchiv-Plattform an der abk Stuttgart implementiert und die Zusammenarbeit zwischen den Institutionen wurde intensiviert.
Vorgehen/Schritte
Die konkrete Maßnahme (die Entwicklung der CRUD-API für Madek) ist nicht zu adaptieren. Das Vorgehen wäre jedoch adaptierbar und die Software insgesamt könnte in einen anderen Kontext transferiert werden.
Unsere Handlungsempfehlungen bei der Neu-/Weiterentwicklung von OSS sind:
- Minimalversion bzw. MVP (minimal viable product) definieren
- Vergabeverfahren inkl. Ausschreibung möglichst agil
- Softwareentwicklung möglichst agil und in sehr kleinen Schritten, beginnend mit dem MVP
- regelmäßige Feedbackrunden zwischen den unterschiedlichen Akteuren
- doppelte Entwicklungszeit einplanen
Unsere Empfehlung zum Transfer der Software Madek:
- eine genaue Definition der Bedarfe vorab inkl. Evaluation, ob Madek die geeignete Lösung ist
- ggf. Import von Daten aus bereits bestehenden Systemen in Madek planen bzw. Schnittstellen definieren
- technische Infrastruktur vor Ort evaluieren (Server und verfügbares IT-Personal)
- konkrete Zusammenarbeit bei der Implementierung abstimmen
Hinweise
Effekte
Der regelmäßige Austausch mit der ZHdK hat sich über die eigentliche Softwareentwicklung hinaus verstetigt und etabliert.
Die Projektarchiv-Plattform wird besser angenommen: Studierende beschäftigen sich stärker mit ihr, seit die zeitgemäß gestaltete Präsentations-Website Schaufenster, die über die neue API v2 angebunden ist, im Einsatz ist.
Der Bekanntheitsgrad der Projektarchiv-Plattform insgesamt steigt.
Die Zusammenarbeit mit anderen Institutionen, besonders der abk Stuttgart, hat sich intensiviert.
Ein Software-Entwickler aus dem API-Team konnte als festangestellte IT-Kraft für die Hochschule gewonnen werden.
Die Entwickler-Community hat sich vergrößert: Für die Uploader-Anwendung haben wir einen weiteren Entwickler engagiert, der mit Madek und der API arbeitet.
Learnings
Bei der Softwareentwicklung in größerem Umfang ist viel und gute Kommunikation zwischen allen beteiligten Akteuren notwendig. Zeitpläne sind nur für kleine Projektabschnitte tragfähig, weshalb agile Methoden unbedingt linearen, sequentiellen Methoden (Kaskade) vorzuziehen sind. Agile Projektentwicklung lässt sich mit den Vorgaben zur Auftragsvergabe in öffentlichen Einrichtungen nur sehr schwer realisieren. Die Verwaltung ist in der Regel nicht darauf vorbereitet, Softwareentwicklungsprojekte zu konfrontieren.
Bei der Projektentwicklung selbst sollten unbedingt eine Minimalversion (MVP, minimal viable product) und Milestones definiert werden. Ggf. ist die Entwicklung von Prototypen sinnvoll.
Open Source Software gelingt grundsätzlich nur in einer lebendigen Community. Nachhaltige Infrastrukturen gründen in langfristigen Partnerschaften.
Empfehlung
Nein, die Entwicklung der CRUD-API war ein unumgänglicher Schritt und ist sehr spezifisch im Kontext der Software und der beteiligten Akteure zu sehen.
Tipps
Siehe auch „größte Learnings“.
Komplexere Software-Entwicklungsprojekte sind für alle Beteiligten herausfordernd, benötigen viel Kommunikation, Engagement und Commitment. Agile Projektentwicklung ist der Sache nach unbedingt dem Kaskade-Modell vorzuziehen. Denn im Kaskaden-Modell muss jede Entwicklungsphase abgeschlossen sein, bevor die nächste beginnt. In der Realität greifen die Phasen jedoch ineinander und ändern sich innerhalb einer Realisierungsphase auf unvorhersehbare Weise. Mit agilen Methoden kann darauf reagiert und das Ergebnis letztlich verbessert werden, da Erfahrungen, die erst in der Realisierungsphase deutlich werden, einfließen. Leider stoßen agile Methoden jedoch aufgrund der Vorgaben für öffentliche Einrichtungen auf starke Widerstände.
Methoden
Empfohlen
Nicht empfohlen
Kontakt
Das könnte Sie auch interessieren

Qualität digital gestützter Lehre an bayerischen Hochschulen steigern
Für das Projekt QUADIS haben sich alle bayerischen Universitäten, das DiZ-Zentrum für Hochschuldidaktik der bayerischen HAWs und die Virtuelle Hochschule Bayern zusammengeschlossen, um in drei Projektsäulen die Qualität digital gestützter Lehre an bayerischen Hochschulen zu steigern. In der ersten Säule soll die hochschuldidaktische Weiterbildung um Blended Learning Seminare ergänzt werden. So soll Lehrenden ein Lernen am Modell ermöglicht und die Kapazität der Weiterbildung erhöht werden. Die Materialien sollen arbeitsteilig zweisprachig erstellt, als OER veröffentlicht und so über den Verbund hinaus nutzbar werden. In der zweiten Säule sollen bereits etablierte Formate zur Förderung des Diskurses zu digital gestützter Lehre intensiviert und auf alle Verbundpartner skaliert werden, um Lehrende zu inspirieren und Lehrinnovationen zu generieren. Dazu sollen Themenwochen durchgeführt und Fach-und Arbeitsgruppen Lehrender initiiert und begleitet werden. In der dritten Säule soll der Transfer von Lehrinnovationen in die Lehre durch Lehrwerkstätten unterstützt werden. Deren methodische Ausgestaltungen sollen miteinander verglichen und evaluiert werden, um nach Projektende eine Auswahl für zukünftige Transfermaßnahmen treffen zu können.
Projekt anzeigen
Wirkungsorientierte Projektumsetzung
Das Konzept zur wirkungsorientierten Projektumsetzung beschreibt, wie Projekte so geplant, umgesetzt und ausgewertet werden, dass ihre tatsächlichen Wirkungen messbar sind. Es stellt die Schritte der Wirkungsorientierung, Wirkungsplanung, Evaluation und Monitoring sowie Maßnahmen zur Verbesserung der Projektwirkung vor. Da im Projektalltag Ziele oft nicht messbar formuliert werden, sodass nicht klar wird, mit welchen Maßnahmen welche Wirkungen erzielt werden sollen, bietet dieses Konzept eine erste Orientierung für Projektleitungen und QM-/Evaluationsverantwortliche.
Maßnahme anzeigen
Das neue Stud.IP-Forum – asynchrone Kommunikationswege für alle?
[Kurzbeschreibung folgt (Anm. StIL)]
Publikation anzeigen