27 KiB
MYP â Manage Your Printer
Vernetzte 3D-Druck-Reservierungsplattform mit IoT-Anbindung und zentraler VerwaltungsoberflÀche
Dokumentation der betrieblichen Projektarbeit
Fachinformatiker fĂŒr digitale Vernetzung
PrĂŒfungsbewerber: Till Tomczak
Ausbildungsbetrieb: Mercedes-Benz AG
PrĂŒfungstermin: Sommer 2025
Bearbeitungszeitraum: 15. April â 20. Mai 2025
Projektumfang: 35 Stunden
Inhaltsverzeichnis
- Einleitung 1.1 Ausgangssituation und Problemstellung 1.2 Projektziele 1.3 Projektabgrenzung 1.4 Projektumfeld und betriebliche Schnittstellen
- Projektplanung 2.1 Zeitplanung nach V-Modell 2.2 Ressourcenplanung 2.3 QualitÀtssicherungsplanung
- Analyse und Bewertung 3.1 Bewertung der vorhandenen Systemarchitektur 3.2 Bewertung der heterogenen IT-Landschaft 3.3 Analyse der IT-sicherheitsrelevanten Bedingungen 3.4 Anforderungsgerechte Auswahl der Ăbertragungssysteme
- Systemarchitektur und Schnittstellenkonzeption 4.1 Gesamtsystemarchitektur 4.2 Technische Systemarchitektur 4.3 Schnittstellenkonzeption 4.4 Datenmodell
- Umsetzung 5.1 Implementierung der Backend-Infrastruktur 5.2 IoT-Integration und Hardware-Steuerung 5.3 Sicherheitsimplementierung 5.4 Systemkonfiguration und Deployment
- Test und Optimierung 6.1 TestdurchfĂŒhrung und -ergebnisse 6.2 Sicherheitstests 6.3 SystemstabilitĂ€t und Monitoring
- Projektabschluss 7.1 Soll-Ist-Vergleich 7.2 Projektergebnisse und Erkenntnisse 7.3 Optimierungsmöglichkeiten 7.4 Formale Projektabnahme
- Anlagen
- Glossar
1. Einleitung
1.1 Ausgangssituation und Problemstellung
Die Technische BerufsausbildungsstĂ€tte (TBA) der Mercedes-Benz AG am Standort Berlin verfĂŒgt ĂŒber sechs 3D-Drucker verschiedener Hersteller (Prusa, Anycubic), die als wichtige Ressource fĂŒr die praktische Ausbildung dienen. Diese GerĂ€te weisen jedoch erhebliche technische Limitierungen auf, da sie weder ĂŒber Netzwerkschnittstellen noch ĂŒber einheitliche Steuerungsmöglichkeiten verfĂŒgen.
Das bestehende Reservierungssystem basierte auf einem analogen Whiteboard, was zu systematischen Problemen fĂŒhrte. Doppelbuchungen traten regelmĂ€Ăig auf, wenn mehrere Nutzer zeitgleich Reservierungen vornahmen. Die manuelle Aktivierung und Deaktivierung der GerĂ€te wurde hĂ€ufig versĂ€umt, was zu unnötigem Energieverbrauch und erhöhtem VerschleiĂ fĂŒhrte. Eine verlĂ€ssliche Dokumentation der tatsĂ€chlichen Nutzungszeiten existierte nicht, wodurch weder aussagekrĂ€ftige BetĂ€tigungs- und Verantwortungszuordnung, noch eine verursachungsgerechte Kostenzuordnung möglich waren.
Ein vorhandener Frontend-Prototyp des ehemaligen Auszubildenden Torben Haack bot eine moderne BenutzeroberflĂ€che, verfĂŒgte jedoch ĂŒber keine funktionsfĂ€hige Backend-Anbindung zur praktischen Nutzung. Diese Ausgangslage bot mir die Gelegenheit, im Rahmen meiner Projektarbeit eine vollstĂ€ndige Lösung zu entwickeln.
1.2 Projektziele
Das Projekt "MYP â Manage Your Printer" zielt auf die vollstĂ€ndige Digitalisierung des 3D-Drucker-Reservierungsprozesses durch die Etablierung cyberphysischer Kommunikation mit den relevanten Hardwarekomponenten ab.
Die primÀren Ziele umfassen die Entwicklung einer webbasierten Reservierungsplattform, die Integration automatischer Hardware-Steuerung via IoT-Komponenten, die Implementierung einer zentralen VerwaltungsoberflÀche sowie die Etablierung robuster Authentifizierung und Rechteverwaltung. Als sekundÀre Ziele wurden die Optimierung der Energieeffizienz durch automatisierte Steuerung, die Bereitstellung von Nutzungsstatistiken und Monitoring, die GewÀhrleistung einer herstellerunabhÀngigen Lösung sowie die Einhaltung unternehmensinterner Sicherheitsrichtlinien definiert.
1.3 Projektabgrenzung
Der Projektumfang wurde pragmatisch auf die praktische Umsetzung einer funktionsfĂ€higen Lösung fokussiert. Im Projektumfang enthalten sind die Webportal-Entwicklung (Frontend und Backend), die WLAN-Integration der Raspberry Pi-Plattform, der Datenbankaufbau fĂŒr Reservierungsverwaltung, die IoT-Integration via Smart-Plug-Technologie, Authentifizierung und Autorisierung sowie der Test der Schnittstellen und Netzwerkverbindungen.
Ausgeschlossen aus dem Projektumfang wurden die direkte Kommunikation mit 3D-Druckern (aufgrund fehlender Schnittstellen), die Integration in das unternehmensweite Intranet (Zeitrestriktionen), die Ăbertragung von Druckdaten oder StatusĂŒberwachung der Drucker sowie umfangreiche Hardware-Modifikationen der bestehenden GerĂ€te.
Die Integration in das unternehmensweite Intranet war ursprĂŒnglich fest eingeplant. Zur Projektmitte hatte ich die bereits genehmigten SSL-Zertifikate des Haack'schen Prototyps durch einen unglĂŒcklichen Neuinstallationsprozess unwiederbringlich gelöscht. Die Intranetanbindung blieb somit ausstehend und konnte aufgrund der KonzerngröĂe und der damit einhergehenden Genehmigungsprozesse nicht mehr rechtzeitig realisiert werden.
1.4 Projektumfeld und betriebliche Schnittstellen
Das Projekt wurde im Rahmen der Ausbildung zum Fachinformatiker fĂŒr digitale Vernetzung in der TBA durchgefĂŒhrt. Die organisatorischen Rahmenbedingungen wurden durch konzerninternen Sicherheitsrichtlinien und IT-Governance-Prozesse geprĂ€gt.
Die zentralen Schnittstellen umfassten die IT-Abteilung fĂŒr die Genehmigung von Netzwerkkonfigurationen und SSL-Zertifikaten, die Ausbildungsleitung fĂŒr fachliche Betreuung und Ressourcenbereitstellung, die Endanwender in Form von Auszubildenden und Ausbildungspersonal der TBA sowie die Hardware-Integration ĂŒber Smart-Plug-Systeme als IoT-Gateway zu den 3D-Druckern.
2. Projektplanung
2.1 Zeitplanung nach V-Modell
Die Projektplanung folgte dem V-Modell mit agilen Elementen, unterteilt in fĂŒnf Sprints Ă eine Woche. Der Gesamtzeitraum erstreckte sich vom 15. April bis 20. Mai 2025 mit einem Projektumfang von 35 Stunden.
Sprint 1 (15.-19. April, 6 Stunden) widmete sich der Projektplanung und Analyse. Am Anfang dieses Sprints erkundigte sich Martin kurz bei mir ĂŒber den Status und ich passte die weitere Planung entsprechend an. Die Analyse des vorgefundenen Prototyps und die Definition der Erweiterungspunkte standen im Fokus.
Sprint 2 (22.-26. April, 12 Stunden) konzentrierte sich auf die Analyse und Bewertung der Systemarchitektur. Martin erkundigte sich erneut zu Sprintbeginn nach dem Fortschritt. Die Beantragung der erforderlichen Administratorrechte erwies sich als zeitaufwĂ€ndiger als erwartet, was zu einem Zeitverzug von 4 Stunden fĂŒhrte.
Sprint 3 (29. April - 3. Mai, 6 Stunden) beinhaltete die Entwicklung der Systemarchitektur. Die regelmĂ€Ăige Abstimmung mit Martin half, die PrioritĂ€ten anzupassen. Der Verlust der SSL-Zertifikate durch einen Neuinstallationsprozess verursachte einen zusĂ€tzlichen Zeitverzug von 6 Stunden.
Sprint 4 (6.-10. Mai, 14 Stunden) war fĂŒr die Umsetzung (Implementation) vorgesehen. Nach Martins Statusabfrage zu Sprintbeginn wurde die Planung erneut angepasst. In intensiven Coding-Sessions wurde die GrundfunktionalitĂ€t implementiert.
Sprint 5 (13.-17. Mai, 10 Stunden) diente Test, Optimierung und Dokumentation. Die finale Abstimmung mit Martin bestĂ€tigte den Projektfortschritt trotz der akkumulierten ZeitverzĂŒge von insgesamt 10 Stunden.
2.2 Ressourcenplanung
Die Hardware-Komponenten umfassten einen Raspberry Pi 5 (8GB RAM, 128GB Speicher) als zentrale Serverplattform, nachdem sich der ursprĂŒnglich vorgesehene Raspberry Pi 4 als unterdimensioniert erwiesen hatte. Sechs TP-Link Tapo P110 Smart-Plugs bildeten das HerzstĂŒck der IoT-Integration. Ein 19-Zoll-Serverschrank wurde fĂŒr die professionelle Unterbringung beschafft, ergĂ€nzt durch privat finanzierte Komponenten wie LĂŒftereinheiten und Kabelmanagement-Systeme.
Der Software-Stack basierte vollstĂ€ndig auf Open-Source-Technologien. Das Backend wurde mit Python 3.11, Flask 2.3, SQLAlchemy 2.0 und SQLite implementiert. FĂŒr das Frontend wurde nach dem Scheitern der Next.js-Integration eine eigene Lösung mit HTML/CSS/JavaScript als Notlösung entwickelt, wobei fĂŒr die Interface-Entwicklung KI-UnterstĂŒtzung verwendet wurde. Das System lĂ€uft auf Raspbian OS mit systemd-Services und OpenSSL. Die IoT-Integration erfolgte ĂŒber die PyP100-Bibliothek fĂŒr Smart-Plug-Kommunikation.
Die Gesamtkosten beliefen sich auf weniger als 200 Euro, deutlich unter der ursprĂŒnglichen Kalkulation von 600 Euro. Die Kostenersparnis resultierte aus der Nutzung vorhandener Hardware-Komponenten und der Eigenfinanzierung ergĂ€nzender Komponenten.
2.3 QualitÀtssicherungsplanung
Das QualitĂ€tssicherungskonzept orientierte sich am V-Modell. FĂŒr jede Entwicklungsphase wurden korrespondierende TestaktivitĂ€ten definiert. Eine VirtualBox-basierte Entwicklungsumgebung ermöglichte Backend-Tests ohne GefĂ€hrdung der Produktivumgebung. Hardware-in-the-Loop-Tests mit echten Smart-Plugs gewĂ€hrleisteten realitĂ€tsnahe Testbedingungen. Die separate Produktionsumgebung auf dem Raspberry Pi diente finalen Systemtests.
Die Teststrategien umfassten Unit-Tests fĂŒr isolierte Tests kritischer Komponenten mit einer Codeabdeckung von 85%, Integrationstests fĂŒr Schnittstellen zwischen Frontend, Backend und IoT sowie Systemtests fĂŒr End-to-End-Szenarien mit kompletten AnwendungsfĂ€llen. Sicherheitstests fokussierten sich auf grundlegende Schwachstellen ohne explizite Referenz auf externe Standards.
3. Analyse und Bewertung
3.1 Bewertung der vorhandenen Systemarchitektur
Der Ist-Zustand prĂ€sentierte sich als fragmentierte Landschaft. Ein Frontend-Prototyp (Next.js) existierte ohne Backend-Anbindung, die 3D-Drucker operierten isoliert ohne NetzwerkfĂ€higkeit, die Reservierungsverwaltung erfolgte analog ĂŒber ein Whiteboard, und ein Raspberry Pi 4 stand als ungenutzter Server zur VerfĂŒgung.
Die identifizierten Defizite umfassten die fehlende cyberphysische Integration, keine zentrale Datenhaltung, ineffiziente manuelle Prozesse sowie SicherheitslĂŒcken durch die analoge Verwaltung. Diese Analyse bildete die Grundlage fĂŒr die Entwicklung einer integrierten Lösung.
3.2 Bewertung der heterogenen IT-Landschaft
Die IT-Infrastruktur der TBA prÀsentierte sich als gewachsene Umgebung ohne mir direkt ersichtliche VLAN-Strukturen. Die 3D-Drucker verschiedener Hersteller erforderten eine herstellerunabhÀngige Abstraktionsebene.
Der gewĂ€hlte Lösungsansatz ĂŒber IoT-Integration mittels Smart-Plugs ermöglichte eine universelle Steuerung unabhĂ€ngig vom Druckermodell durch Abstraktion auf die Stromversorgungsebene. Diese Entscheidung basierte nicht zuletzt auf meiner privaten Erfahrung mit TAPO-GerĂ€ten, wobei sich die programmatische Integration als deutlich komplexer herausstellte als die private Nutzung.
3.3 Analyse der IT-sicherheitsrelevanten Bedingungen
Die Sicherheitsanforderungen diktierten maĂgeblich die Systemarchitektur. Keine permanente Internetverbindung war zulĂ€ssig, ein isoliertes Netzwerksegment fĂŒr IoT-Komponenten wurde erforderlich, selbstsignierte SSL-Zertifikate mussten mangels Let's Encrypt-Möglichkeit verwendet werden, und die Compliance mit Mercedes-Benz IT-Sicherheitsrichtlinien war obligatorisch.
Die implementierten SicherheitsmaĂnahmen umfassten bcrypt-Passwort-Hashing mit Cost-Faktor 12, CSRF-Schutz und Session-Management, Rate-Limiting gegen Brute-Force-Angriffe sowie Firewall-Regeln mit Port-BeschrĂ€nkung. Die Verwendung von FirewallD erfolgte der Vertrautheit halber, da ich mit diesem System bereits umfangreiche Erfahrungen gesammelt hatte. Besonders wichtig war die Implementierung von HTTPS auch im Kiosk-Modus, um fĂŒr den unwahrscheinlichen Fall eines Man-in-the-Middle-Angriffs auf dem GerĂ€t selbst keine Klartextpasswörter im Netzwerkstrom zu haben â eine Entscheidung, die auch meinem technischen Gewissen entsprach.
3.4 Anforderungsgerechte Auswahl der Ăbertragungssysteme
Die Evaluierung verschiedener Optionen ergab, dass eine direkte 3D-Drucker-Integration aufgrund fehlender Schnittstellen nicht möglich war. Cloud-basierte Lösungen schieden wegen der Offline-Anforderung aus. Die Smart-Plug-Integration wurde als optimale Lösung identifiziert.
Die technische Herausforderung bestand darin, dass die TP-Link Tapo P110 ĂŒber keine dokumentierte API verfĂŒgten. Der Hergang von der initialen Problemstellung zur funktionierenden Lösung gestaltete sich komplex. ZunĂ€chst versuchte ich, ein recherchiertes Python-Modul fĂŒr die Steuerung zu verwenden, was jedoch scheiterte. Daraufhin fĂŒhrte ich eine systematische Protokollanalyse mittels Wireshark durch. Die Untersuchung des Netzwerkverkehrs zwischen der TAPO-App und den Steckdosen offenbarte eine verschlĂŒsselte Kommunikation mit dynamisch generierten Session-Keys. Nach mehreren Tagen intensiver Analyse und verschiedenen Implementierungsversuchen konnte ich schlieĂlich PyP100 als funktionsfĂ€hige Python-Bibliothek identifizieren, die das proprietĂ€re Kommunikationsprotokoll korrekt implementierte und eine lokale Steuerung ohne Cloud-AbhĂ€ngigkeit ermöglichte.
4. Systemarchitektur und Schnittstellenkonzeption
4.1 Gesamtsystemarchitektur
Die Architektur folgt einem dreischichtigen Aufbau mit klarer Trennung der Verantwortlichkeiten:
âââââââââââââââââââ HTTPS âââââââââââââââââââ WLAN âââââââââââââââââââ
â Web-Client âââââââââââââââșâ Raspberry Pi ââââââââââââââșâ Smart-Plugs â
â (Browser) â â MYP-Server â â (IoT-Layer) â
âââââââââââââââââââ âââââââââââââââââââ âââââââââââââââââââ
â â
ââââââŒâââââ ââââââŒâââââ
â SQLite â â3D-Druckerâ
âDatabase â â(6 GerĂ€te)â
âââââââââââ âââââââââââ
4.2 Technische Systemarchitektur
Das Schichtenmodell umfasst die PrĂ€sentationsschicht als Web-Frontend (HTTPS/Port 443), die Anwendungsschicht mit Flask-Backend und REST-API, die GeschĂ€ftslogikschicht fĂŒr Reservierungsmanagement und Scheduler, die Datenhaltungsschicht mit SQLite-Datenbank, die IoT-Integrationsschicht fĂŒr Smart-Plug-Kommunikation sowie die Hardwareschicht mit stromgesteuerten 3D-Druckern.
4.3 Schnittstellenkonzeption
Das REST-API-Design umfasst ĂŒber 100 Endpunkte, strukturiert in logische Bereiche. Die Authentifizierung erfolgt ĂŒber /api/auth/
mit Login, Logout und Session-Management. Die Benutzerverwaltung ist unter /api/users/
fĂŒr CRUD-Operationen implementiert. Die Druckerverwaltung unter /api/printers/
bietet Status und Konfiguration. Das Reservierungsmanagement unter /api/jobs/
ermöglicht Buchung, Verwaltung und Scheduling. Das Monitoring unter /api/monitoring/
liefert Energieverbrauch und Statistiken.
Die IoT-Schnittstelle kommuniziert ĂŒber HTTP/TCP via WLAN mit session-basierter Authentifizierung und dynamischen Tokens. Die verfĂŒgbaren Operationen umfassen Power On/Off, Status-Abfrage und Energiemessung mit implementierter Fehlerbehandlung durch Retry-Mechanismen und Timeout-Handling.
4.4 Datenmodell
Die KernentitĂ€ten des Datenmodells umfassen User fĂŒr Benutzerkonten mit Rollen und Berechtigungen, Printer fĂŒr 3D-Drucker-Definitionen mit Smart-Plug-Zuordnung, Job fĂŒr Reservierungen mit Zeitfenstern und Status, SmartPlug fĂŒr IoT-GerĂ€te-Konfiguration und Zustandsverwaltung sowie EnergyLog fĂŒr Energieverbrauchsdaten zur Optimierung.
5. Umsetzung
5.1 Implementierung der Backend-Infrastruktur
Die Flask-Anwendungsstruktur folgt einer modularen Blueprint-Architektur:
âââ app.py # Hauptanwendung mit HTTPS-Konfiguration
âââ models.py # SQLAlchemy-Datenmodelle
âââ blueprints/ # Funktionale Module
â âââ auth.py # Authentifizierung
â âââ users.py # Benutzerverwaltung
â âââ printers.py # Druckerverwaltung
â âââ jobs.py # Reservierungslogik
âââ utils/ # Hilfsfunktionen
âââ scheduler.py # Zeitgesteuerte Operationen
âââ smart_plug.py # IoT-Integration
Die zentrale Implementierungsherausforderung bestand in der Smart-Plug-Integration. Nach dem beschriebenen Hergang von Wireshark-Analyse zu PyP100 erwies sich diese Bibliothek als einzige funktionsfÀhige Lösung. Die Thread-sichere Scheduler-Implementation erforderte sorgfÀltige Synchronisation:
class SmartPlugScheduler:
def __init__(self):
self.scheduler = BackgroundScheduler()
self.lock = threading.Lock()
def schedule_job(self, job_id, start_time, duration):
with self.lock:
# Thread-sichere Jobplanung
self.scheduler.add_job(...)
5.2 IoT-Integration und Hardware-Steuerung
Die Smart-Plug-Konfiguration erfolgte mit statischen IP-Adressen im Bereich 192.168.0.100-105. Die lokale Authentifizierung funktioniert ohne Cloud-Service-AbhÀngigkeit. Das integrierte Energiemonitoring ermöglicht Verbrauchsoptimierung.
Die Kommunikation wurde in einer Manager-Klasse gekapselt:
class SmartPlugManager:
def __init__(self, plug_configs):
self.plugs = {id: Tapo(ip, user, pass) for id, ip in plug_configs.items()}
async def control_printer(self, printer_id, action):
plug = self.plugs[printer_id]
return await plug.on() if action == 'start' else await plug.off()
5.3 Sicherheitsimplementierung
Die Authentifizierung und Autorisierung basiert auf bcrypt-Passwort-Hashing mit Cost-Faktor 12, Session-Management ĂŒber Flask-Login und CSRF-Schutz fĂŒr alle kritischen Operationen. Das implementierte Rate-Limiting verhindert Brute-Force-Angriffe durch exponentielle Backoff-Strategie.
5.4 Systemkonfiguration und Deployment
Die Systemd-Service-Konfiguration gewĂ€hrleistet automatischen Start und Ăberwachung:
[Unit]
Description=MYP HTTPS Backend Service
After=network.target
[Service]
Type=simple
User=myp
WorkingDirectory=/opt/myp
ExecStart=/usr/bin/python3 app.py --production
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
Das SSL-Zertifikat-Management erfolgt ĂŒber selbstsignierte Zertifikate fĂŒr den Offline-Betrieb. Die HTTPS-Implementierung auch im Kiosk-Modus gewĂ€hrleistet verschlĂŒsselte PasswortĂŒbertragung.
6. Test und Optimierung
6.1 TestdurchfĂŒhrung und -ergebnisse
Die Unit-Tests erreichten eine Codeabdeckung von 85%. Alle Datenbankoperationen, API-Endpunkte und die Smart-Plug-Integration wurden erfolgreich getestet. Die Integrationstests bestÀtigten die vollstÀndige FunktionalitÀt der Frontend-Backend-Kommunikation und IoT-Hardware-Integration. Systemtests verifizierten End-to-End-Reservierungsszenarien mit bis zu 10 parallelen Sessions.
Die Performance-Optimierungen umfassten das Hardware-Upgrade von Raspberry Pi 4 auf Pi 5 aufgrund unzureichender Leistung, Datenbankindizierung fĂŒr hĂ€ufige Abfragen sowie Caching-Strategien fĂŒr Smart-Plug-Status.
6.2 Sicherheitstests
Die Sicherheitstests fokussierten sich auf grundlegende Angriffsvektoren. SQL-Injection-Versuche wurden durch Parameterisierung erfolgreich abgewehrt. XSS-Angriffe scheiterten an der implementierten Input-Sanitization. CSRF-Attacken wurden durch Token-basierten Schutz verhindert. Das Rate-Limiting aktivierte sich nach 5 fehlgeschlagenen Login-Versuchen.
6.3 SystemstabilitÀt und Monitoring
Das implementierte Monitoring nutzt strukturiertes Logging mit Rotation:
import logging
from logging.handlers import RotatingFileHandler
logging.basicConfig(
handlers=[RotatingFileHandler('app.log', maxBytes=10000000, backupCount=10)],
level=logging.INFO,
format='%(asctime)s %(levelname)s %(name)s %(message)s'
)
Erkannte und behobene Probleme umfassten Memory-Leaks bei lang laufenden Smart-Plug-Operationen, Race Conditions im Scheduler bei simultanen Zugriffen sowie SSL-Zertifikat-Probleme durch inkorrekte SAN-Konfiguration.
7. Projektabschluss
7.1 Soll-Ist-Vergleich
VollstĂ€ndig erreichte Ziele umfassen die webbasierte Reservierungsplattform, automatische Hardware-Steuerung via IoT, zentrale VerwaltungsoberflĂ€che, robuste Authentifizierung und Rechteverwaltung, WLAN-Integration der Raspberry Pi-Plattform, Datenbankaufbau fĂŒr Reservierungsverwaltung sowie Test der Schnittstellen und Netzwerkverbindungen.
ZusĂ€tzlich realisierte Features beinhalten Energiemonitoring und Verbrauchsoptimierung, Nutzungsstatistiken und Dashboard, erweiterte Sicherheitsfeatures wie Rate-Limiting und CSRF-Schutz sowie einen Kiosk-Modus fĂŒr Werkstatt-Terminals.
Abweichungen vom ursprĂŒnglichen Plan waren die Konsolidierung auf einen statt zwei Raspberry Pis aus KostenoptimierungsgrĂŒnden, das Hardware-Upgrade Pi 4 auf Pi 5 wegen Performance-Anforderungen, die Implementierung einer eigenen Frontend-Lösung als Notlösung statt Next.js-Integration sowie die Verschiebung der Intranet-Integration aufgrund von Zeitrestriktionen. Der akkumulierte Zeitverzug von 10 Stunden konnte durch effiziente Arbeitsweise in den finalen Sprints teilweise kompensiert werden.
7.2 Projektergebnisse und Erkenntnisse
Das MYP-System transformiert erfolgreich die analoge 3D-Drucker-Verwaltung in ein modernes cyberphysisches System. Die Lösung demonstriert, wie durch kreative IoT-Integration auch Legacy-Hardware in moderne Systemlandschaften integriert werden kann.
Die zentralen Erfolgsfaktoren waren die pragmatische Abstraktion komplexer Hardware-Probleme, eine robuste Softwarearchitektur mit umfassender Fehlerbehandlung sowie die konsequente BerĂŒcksichtigung von Sicherheitsanforderungen von Projektbeginn an. FĂŒr die Frontend-Entwicklung wurde aufgrund der Zeitrestriktionen und der Fokussierung auf meine Kernkompetenz der digitalen Vernetzung KI-UnterstĂŒtzung in Anspruch genommen.
Als wichtige Erkenntnisse kristallisierten sich heraus, dass Hardware-KompatibilitĂ€tsprĂŒfungen vor Projektstart essentiell sind, Backup-Strategien fĂŒr kritische Konfigurationen unerlĂ€sslich sind und agile AnpassungsfĂ€higkeit bei unvorhergesehenen Problemen den Projekterfolg sichert.
7.3 Optimierungsmöglichkeiten
Das MYP-System bietet eine solide Basis fĂŒr zukĂŒnftige Erweiterungen. Die modulare Architektur und umfassende API ermöglichen die Integration zusĂ€tzlicher FunktionalitĂ€ten ohne grundlegende SystemĂ€nderungen.
Kurzfristig ist die Anbindung an das unternehmenseigene Active Directory geplant, sobald die erforderlichen Genehmigungen vorliegen. Mittelfristig könnte bei VerfĂŒgbarkeit modernerer 3D-Drucker eine direkte GerĂ€teintegration realisiert werden. Langfristig bietet sich die Erweiterung zu einer umfassenden Maker-Space-Management-Lösung an, die auch andere GerĂ€tetypen wie Lasercutter oder CNC-FrĂ€sen einbindet.
7.4 Formale Projektabnahme
Die Erstabnahme erfolgte am 3. Juni 2025 durch die Ausbildungsleitung der TBA. Die PrĂ€sentation umfasste eine Live-Demonstration aller Kernfunktionen sowie eine technische Deep-Dive-Session fĂŒr interessierte Kollegen.
Die Live-Demonstration verlief trotz anfÀnglicher technischer Herausforderungen erfolgreich. Die automatische Aktivierung eines 3D-Druckers zur reservierten Zeit demonstrierte eindrucksvoll die erfolgreiche Integration der cyber-physischen Komponenten. Aktuell befindet sich das System in aktiver Beobachtung der realen Anwendung. Als letzter Schritt verbleibt die Schulung der Mitarbeiter, die in den kommenden Wochen stattfinden wird.
Die Bewertung der Ausbildungsleitung hob innovative LösungsansĂ€tze fĂŒr komplexe Integration, hohe technische QualitĂ€t der Implementation sowie die erkennbare Praxistauglichkeit des Systems hervor.
Anlagen
A1. Systemdokumentation
- Netzwerkdiagramme und Systemarchitektur
- API-Dokumentation (REST-Endpunkte)
- Datenbankschema (ER-Diagramme)
A2. Technische Dokumentation
- Installationsanleitung und Setup-Skripte
- Konfigurationsdateien (systemd, SSL, Firewall)
- Troubleshooting-Guide
A3. Testdokumentation
- Testprotokolle (Unit-, Integration-, Systemtests)
- Sicherheitstests
- Performance-Benchmarks
A4. BenutzeroberflÀche
- Screenshots der WeboberflÀche
- Benutzerhandbuch
- Admin-Dokumentation
A5. Projektmanagement
- Zeiterfassung nach Projektphasen
- Kostenaufstellung
- Ăbergabeprotokoll
Glossar
Begriff | ErlÀuterung |
---|---|
bcrypt | Kryptographische Hash-Funktion fĂŒr sichere Passwort-Speicherung mit konfigurierbarem Cost-Faktor |
CSRF | Cross-Site Request Forgery - Angriffsmethode, bei der authentifizierte Nutzer unbeabsichtigt Aktionen ausfĂŒhren |
Flask | Python-basiertes Web-Framework fĂŒr Backend-Entwicklung. GrundgerĂŒst des MYP-Servers mit REST-API und Session-Management |
Hardware in the Loop | Testmethode, bei der reale Hardware-Komponenten in die Testumgebung eingebunden werden |
Next.js | React-basiertes Frontend-Framework, ursprĂŒnglich von Torben Haack fĂŒr den Prototyp verwendet |
Scheduler | Zeitgesteuerte Komponente fĂŒr automatisierte Smart-Plug-Operationen und Reservierungsverwaltung |
Threads | Parallele AusfĂŒhrungsstrĂ€nge innerhalb eines Prozesses fĂŒr gleichzeitige Operationen |
Projektstatistiken:
- Codezeilen: 9.000+ (Python/JavaScript)
- API-Endpunkte: 100+
- Codeabdeckung: 85%
- Gesamtkosten: < 200 Euro
- Zeitverzug: 10 Stunden vom ursprĂŒnglichen Zeitplan
- Systemlaufzeit: In aktiver Beobachtung seit 3. Juni 2025