Maßnahme Bühne
Zum Projekt

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

Bitte nennen Sie bis zu fünf Stichwörter, die den Inhalt Ihrer Maßnahme aussagekräftig beschreiben.
Open-Source-Code
Lizenzfreie Software
Große Beispiel-Bibliotheken
Fertige Softwarelösungen
Zielgruppe(n)
Wissenschaftliche Mitarbeiter:innen/LfBA
Professor:innen
Mitarbeiter:innen aus Service, Verwaltung & Wissenschaftsmanagement
Akteur:innen außerhalb der Hochschule
Studierende
Handlungsfeld & Aktivität(en)
Technisch-räumliche Infrastruktur
Softwarelösungen & technische Ausstattung entwickeln
Lehr-/Lernumgebungen entwickeln
Lehr-/Studienangebote
Lehr-/Lernmaterialien entwickeln
Supportangebote
Angebote für Austausch und Kollaboration entwickeln

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.

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

Methoden
Objektorientierte Programmierung
Formate
Programmiersprache: Python
Technische Tools
Entwicklungsumgebung „Visual Studio Code“

Nicht Empfohlen

Methoden
Kommerzielle Programmiersprachen

Das könnte Sie auch interessieren

Projekt 101721
Projekt

Learning Science Teaching with Augmented Reality

Ziel des Vorhabens Learning STAR ist es, am Beispiel konkreter Experimente aus dem Naturwissenschaftlich-technischen Unterricht eine augmentierte Lernumgebung im Reallabor, also Laborsituationen, bereitzustellen, über die Lehramtsstudierende typische Fehler bei der Anleitung von Experimenten kennenlernen, die Fehler diagnostizieren und aufbauend darauf unterschiedliche Handlungsoptionen erproben können. Hierzu soll im Rahmen des Projekts für ein naturwissenschaftliches Experiment eine adaptive augmentierte Lernumgebung als Prototyp entwickelt und im Rahmen von fachdidaktischen Seminaren erprobt und evaluiert werden. Experimentieren ist für dieses Ziel eine gute Grundlage, weil die notwendigen Forschungsdaten (zu Fehlern, zur Prozessdiagnostik, zu günstigen Entscheidungen von Lehrkräften) bereitstehen und für die Programmierung der Lernumgebung genutzt werden können. Im Gegensatz zu Bildschirmlernumgebungen sind wir also in der Lage, in einem realen Ausbildungslabor der Universität eine gesamte experimentelle Unterrichtssituation zu simulieren, ohne dass dabei reale Schülerinnen und Schüler benötigt werden. Diese Ausbildung soll vor allem auf die Praxissemester besser vorbereiten, sodass in den Schulen die Unterrichtszeit effektiver genutzt werden kann. Um der Heterogenität späterer Schülergruppen besser begegnen zu können sollen zudem Fehler adressiert werden, wie sie in allen Schulstufen zu finden sind.

Projekt anzeigen
Maßnahme 100188
Maßnahme

Sensibilisierung für Barrierefreiheit in der Lehre

Die heutige Studierendenschaft ist vielfältig – zum Glück! Deutsche Hochschulen sind dazu verpflichtet, dieser Vielfalt gerecht zu werden und allen Interessierten die Teilhabe an einem Studium zu ermöglichen. Dafür fehlt es aber häufig noch an Bewusstsein für verschiedenste (digitale) Barrieren, auf die Studierende stoßen und die ein chancengerechtes Studium be- oder sogar verhindern können. Um für die Bedarfe von Studierenden mit Beeinträchtigungen zu sensibilisieren, wurde "BlindDate" entwickelt. "BlindDate" ist eine digitale Plattform, die Lehrenden eine Begegnung mit virtuellen Studierenden mit verschiedenen studienerschwerenden Beeinträchtigungen ermöglicht. Die "Personas" zeigen typische Barrieren in ihrem Studienalltag, sowie Strategien zur Bewältigung derselben, auf und steigern so das Bewusstsein der Nutzenden. Zusätzlich sollen konkrete Handlungsempfehlungen Lehrpersonen helfen, Barrieren in der eigenen Lehre abzubauen oder - besser - gar nicht entstehen zu lassen.

Maßnahme anzeigen
Publikation 100176

Illustrationen Themen Coworking, Leben mit Technik

[Kurzbeschreibung folgt (Anm. StIL)]

Publikation anzeigen