Mapping der Muster für fehlertoleranten Softwareentwurf auf das Audio-Interface
(EN google-translate)
(PL google-translate)
Vorab: Clean Code - Welche Maßnahmen kennen Sie, um Programmierfehler zu vermeiden?
- Fertige Programmteile zu Modulen/Funktionen/Klassen zusammenfassen und auslagern. -- Sinnvolle Systemgrenzen im Gesamtsystem identifizieren und demgemäß in Module aufteilen. -- Zugriffsfunktionen überlegen, die klar die Austauschmöglichkeiten der Module definieren (Schnittstellen zwischen den Modulen). - Variablengültigkeit besser sichtbar machen durch konsequentes Einrücken von Blöcken {...}. - Verwenden Sie sprechende Namen für Methoden und Variablen. - Schreiben Sie Variablen klein. - Beginnen Sie Funktionen mit einem klein geschriebenen Verb. - Wenn Funktionen zu lang werden, sollten sie in thematisch sinnvolle Unterfunktionen aufgeteilt werden, die von der Hauptfunktion aufgerufen werden. - Sorgen Sie dafür, dass im Hauptprogramm erkennbar ist, was das Gesamtprogramm macht.
Code 0-1: Gemeinsam im Unterricht: Zusammenstellung aller Ihnen bekannten Maßnahmen zur Vermeidung von Programmierfehlern.
Zusammenstellung aller bereits verwirklichten Muster
1 Units Of Mitigation : Zurücksetzen, wenn Bytes unvollständig empfangen wurden 6 Maximize Human Participation: Visualisierung der Mikrofondaten / Datensignale sind hörbar --- 8 Someone in Charge: Es gibt den Programmteil, der einen Timeout erkennt. ----2 Correcting Audits / 10 Fault Observer (aber nicht vollständig verwirklicht)
Code 0-2: Gemeinsam im Unterricht: Zusammenstellung aller bereits verwirklichten Muster.
Zusammenstellung aller Ideen zu noch umsetzbaren Muster
2 Correcting Audits: Checksumme bilden und im Fehlerfall Byte noch einmal anfordern. 3 Redundancy: Immer jedes Zeichen mehrmals schicken. Szenario: System wird benutzt, um die Antriebsspannung als Zahl von einem eingebetteten PC zu einem Elektrofahrzeug zu schicken. Problem: Letzte Ziffer wird nicht übertragen, 24 statt 243 Abhilfe: "8 Someone in Charge": Erkennen, dass letzte Ziffer fehlt "4 Recovery Blocks ": Letzte Ziffer durch Null ersetzen
Code 0-3: Gemeinsam im Unterricht: Zusammenstellung aller Ideen zu noch umsetzbaren Muster.