
Umstrukturierung der Software-Architektur
"Durch die Umstrukturierung der Software-Architektur und den Wechsel der Programmiersprache von Matlab® auf den Open-Source-Code Python konnte eine Verringerung des Programmieraufwandes sowie eine Verbesserung der grafischen Oberfläche und der Bedienbarkeit erzielt werden."
Kategorien
Beschreibung
Herausforderung
Nach anfänglichen Programmierarbeiten in Matlab® zeigte sich, dass diese Art der Programmierung zu starre Strukturen aufweist und für neue Mitarbeitende aufwändig zu erlernen ist. Für die im Teilprojekt vorgesehene Aufgabenstellungen gab es nur wenig vergleichbare extern vorgefertigte Beispiele. Die Lizenz-Politik der Firma MathWorks erschwert zudem den langfristigen Einsatz der entwickelten Softwaretools. Zudem erwies es sich als schwierig geeignetes Personal mit Matlab-Erfahrung zu finden.
Herangehensweise
Der Wechsel der Programmiersprache Matlab® auf Python sowie die Umstrukturierung der Software-Architektur hin zu einer flexiblen Strukturierung erbrachten entscheidende Vorteile bezüglich der Einfachheit, Entwicklungsgeschwindigkeit sowie der späteren Wartung und Weiterentwicklung der Software.
Da zudem auf dem Arbeitsmarkt wesentlich mehr Python- als Matlab-Programmierer zur Verfügung stehen, erleichterte dies auch die Akquise der benötigten Mitarbeitenden.
Da Python als Open-Source-Anwendung eine sehr große Entwickler- und Nutzer-Community hat, existieren zahlreiche kostenfreie Beispiele, die sich an die eigenen Bedürfnisse anpassen lassen, was die Entwicklungsarbeiten immens erleichtert.
Der im Projekt entwickelte Programmcode ist auf Wunsch über GitHub oder per Mail erhältlich.
Zusammenhang
Diese Maßnahme wurde während der Entwicklung und Fertigung der Versuchsanlagen im Teilprojekt „Das virtuelle, ferngesteuerte Labor für Mikroalgen“ erprobt und hat sich in der Praxis bewährt.
Ziel war die Planung einer Laborlehrveranstaltung für den Bachelorstudiengang „Biotechnologie“. Hierzu wurde ein fernsteuerbarer Versuchsaufbau mit umfangreicher mess- und steuerungstechnischer Ausstattung entwickelt, wodurch das Algenwachstum aus der Ferne überwacht, gesteuert und optimiert werden kann.
Voraussetzung
Die Mitarbeitenden müssen über Programmierkenntnisse, vorzugsweise in Python, verfügen und zum interdisziplinären Arbeiten mit anderen Mitarbeitenden, z.B. aus der Biotechnologie, befähigt sein.
Eignung
Die entwickelte Software wurde mit mehreren Studierendengruppen erprobt und für sehr gut befunden.
Die Software läuft stabil und ist für zahlreiche neue Sensoren flexibel anpassbar.
Die Benutzeroberfläche sieht ansprechend aus und ist leicht zu bedienen.
Die Softwaretools lassen sich einfach an andere, ähnliche Anwendungen/Laborversuche anpassen.
Vorgehen/Schritte
Das Anforderungsprofil an die zu entwickelnde Software sollte detailliert festgelegt werden. Zu beachten sind dabei auch Randbedingungen, wie Verfügbarkeit, Lizenzgebühren, Verbreitung, Entwicklungsumgebung und vorgefertigte Beispiele, der vorgesehenen Programmiersprache. Weiterhin ist die Verfügbarkeit entsprechender Programmierer:innen auf dem Arbeitsmarkt zu berücksichtigen.
Hinweise
Effekte
Durch die enorme Erweiterung von zusätzlichen Python-Bibliotheken und Anwendungsbeispielen steigt die Erwartungshaltung an die technischen Aspekte des Projekts hinsichtlich der Adaption neuer Sensoren, der Datenbankverwaltung, der Reaktions- bzw. Rückmeldezeit der Datenbankabfrage sowie der Gestaltung der Benutzeroberfläche. Entsprechend sorgfältig sollte zuvor das Anforderungsprofil an die Software ausgelegt werden.
Learnings
Im Detail dauert die Programmierung spezifischer Komponenten doch länger als gedacht, auch wenn es dafür bereits klare Vorstellungen, Programmier-Konzepte und ähnliche Anwendungsbeispiele gab. („Der Teufel steckt oft im Detail“.)
Einmal eingeschlagene Programmier- und Vorgehensweisen sind nur schwer zu modifizieren. Häufig ist hier ein neues Konzept notwendig. Daher ist eine ausführliche Planung im Vorfeld mit allen möglichen Worst-Case-Szenarien unerlässlich.
Empfehlung
Nein, die Programmiersprache Python hat sich bestens bewährt.
Tipps
Ein ausführliches Pflichtenheft für die Erstellung der Software in all ihren Fassetten erstellen.
Methoden
Empfohlen
Nicht empfohlen
Kontakt
Das könnte Sie auch interessieren

Pedagotchi: App-basiertes Blended Learning für Training klinischer Entscheidungsfindung in der Allgemeinpädiatrie
Kompetenzen für die Behandlung von Kindern und Jugendlichen werden universitär regelhaft anhand komplexer Patient:innen vermittelt. Wege von ersten Beschwerden zur Diagnose und Therapie sind vielfältig und erfordern frühzeitiges Training. Ein Training klinischer Entscheidungsfindung für (allgemein-) pädiatrische Krankheitsbilder und Prävention findet selten statt. Ziel des Projektes Pedagotchi 3.0 ist die Einführung einer pädiatrischen Lern-App, mit der Lernende überall fallbasiert die klinische Entscheidungsfindung trainieren und ihr Wissen erweitern können. Eine Fallbibliothek fordert mit Patient:innen aus der Allgemeinpädiatrie und eingeflochtenen seltenen Erkrankungen (Awareness) heraus. Das als Wahlfach erfolgreich pilotierte Konzept wird sowohl inhaltlich (Fokus Allgemeinpädiatrie) als auch methodisch auf größere Zielgruppen skaliert. Hierdurch wird der distanzunabhängige, individualisierte Kompetenzerwerb für die ganzheitliche Versorgung von Kindern und Jugendlichen ebenso erleichtert wie eine interdisziplinär übertragbare professionelle Identitätsbildung durch Kenntnisse der ambulanten und stationären Patient:innenversorgung.
Projekt anzeigen
Tool zur Erstellung themenbezogener Lernräume
Lehrinhalte werden häufig im Kontext eines bestimmten Seminars oder Moduls erstellt und sind somit an die Teilnahme an diesem Seminar/Mpdul gebunden. Das Workspacetool soll die Zusammenstellung von Inhalten ermöglichen, die für Studierende unabhängig eines bestimmten Lehrangebots interessant sind. Dadurch kann Wissen gebündelt und für viele Personen ohne eine zeitliche Begrenzung zugänglich gemacht werden.
Maßnahme anzeigen
Einbindung von Studierenden in Lehr-Lernnetzwerke an Hochschulen
[Kurzbeschreibung folgt (Anm. StIL)]
Publikation anzeigen