
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.
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
Das könnte Sie auch interessieren

AART of Digital Teamwork and Innovation
Die Hochschulen Aalen und Reutlingen (AART) arbeiten seit 2016 im Rahmen des Entrepreneurship-Projekts Spinnovation zusammen. Auf Grund der räumlichen Distanz wurden bislang Qualifizierungsangebote nicht hochschulübergreifend angeboten. Auf Basis der Erfahrungen, welche die Projektpartner bereits bei der Entwicklung und Umsetzung von Lehr- und Veranstaltungsformaten im außer-/ curricularen Bereich gemacht haben, wird im Rahmen des vorliegenden Antrags ein neuartiges, hochschulübergreifendes Online-Lehrangebot AART of Digital Teamwork and Innovation mit einem Umfang von 5 ECTS geschaffen, das auf dem Design Thinking-Ansatz aufbaut, und speziell für die Online-Lehre an Hochschulen angepasst wird. Ein wichtiges Element bildet die interdisziplinäre, hochschulübergreifende Teamarbeit aus Wirtschaftswissenschaften, Informatik und Ingenieurwissenschaften. Elemente des Angebots sind Dozent*innen-Input, eine intensive Betreuung durch wissenschaftliche Mitarbeiter*innen und externe Mentor*innen. Es werden neue ergänzende Online-Lernmodule sowie Online-Assessment Tools als offene Bildungsressourcen entwickelt, die auf bestehenden Ressourcen aufbauen. Diese werden weiteren Dozent*innen und Hochschulen zur Verfügung gestellt.
Projekt anzeigen
Auswertung von Studienverlaufsdaten
Zur Überprüfung der Frage, inwieweit die Wahl von Modulreihenfolgen einen Erklärungsgehalt auf den Studienerfolg haben wurden Studienverläufe von Absolventinnen und Absolventen analysiert. Würden sich aus der Reihenfolge bei der Wahl von Modulen signifikante Erkenntnisse ermitteln lassen, dann könnten diese in einem digitalen Studienassistenten berücksichtigt werden. Konkret wurden mittels ökonometrischer Instrumente beispielsweise analysiert ob es erfolgreicher für eine Abschlussnote oder die Studiendauer ist früh im Studium spezifische Kernfächer (als notwendige Grundlage) oder Wahlmodule (als Motivation) zu belegen?“, „Ziel ist es, durch Aufdeckung erfolgreicher Strategien, Studierenden Vorschläge zur effizienten und effektiven Studienplanung an die Hand zu geben, um den erfolgreichen Studienverlauf zu unterstützen. Als weiteres Ziel sollen die Daten auch zur Optimierung der des Studiums von organisationaler Seite aus genutzt werden, um das Design des Studiengangs zu überdenken und
Maßnahme anzeigen
Partizipativ lehren – die Kunst des Scheiterns und Lernens
[Kurzbeschreibung folgt (Anm. StIL)]
Publikation anzeigen