Breakdance im Hochregallager

Nachdem mir das DESCAP-Konzept zugespielt wurde, erhielt ich zwei Monate später einen weiteren Brief.
 
Werte Gesellschaft für Softwarearchäologie,
ich möchte Ihnen hiermit die folgenden Unterlagen zu einem eigentlich komischen Fall übergeben.
Dazu sollten sie wissen, dass es bei der staatlichen Plankommission der DDR eine Sondergruppe zur Untersuchung ’seltsamer Vorfälle in der EDV‘ genannt SOGRU ‚Softprob‘ (Softwareprobleme) gab. Hierbei handelte es sich um Vorfälle in volkseigenen Betrieben, bei denen die Software nicht wie vorgesehen funktionierte. Diese Vorfälle wurden durch das entsprechende Rechenzentrum bzw. die zuständige Kreisverwaltung der Staatssicherheit als zwar merkwürdig aber nicht systemgefährdend eingestuft und demzufolge nicht weiter verfolgt. Trotzdem sollte es keine ungeklärten Fälle geben und deshalb wurden sie an die o.g. SOGRU zur abschließenden Begutachtung übergeben.
In diese Rubrik fällt auch der beigefügte Bericht.
 
Mit freundlichen Grüßen
 
Ihr … (unleserliche Unterschrift)
 
1. Bericht des Leiters des Betriebsrechenzentrums
Die Einweihung eines hochmodernen rechnergesteuerten Hochregallagers in einem Betrieb der Leichtindustrie war für den tt.mm.jj vorgesehen. In Abstimmung mit dem Bezirkssekretär der SED und dem Minister für Leichtindustrie der DDR sollte diese Einweihung öffentlichkeitswirksam unter Teilnahme von Repräsentanten der örtlichen Staatsorgane, ausgewählten Werktätigen und Vertretern der sozialistischen Medien (Presse und Rundfunk) inszeniert werden. Selbstverständlich fanden vor dem offiziellen Probelauf interne Testläufe im Rahmen von Entwickler- und Abnahmetests statt. Alle diese Tests verliefen erfolgreich. Das rechnergesteuerte Regalbediengerät von den Beschäftigten im Hochregallager Regalbedienroboter oder auch kurz Regalrobi genannt tat seine programmierten Dienste akkurat und funktionierte einwandfrei.
Da der Probelauf sehr kurzfristig angesetzt wurde, war noch nicht das ganze Testprogramm durchlaufen worden. Eine Verschiebung zur Durchführung der restlichen Tests kam nicht in Frage, da der Probelauftermin für die hochgestellten Persönlichkeiten fest eingeplant war.
Auf einer Krisensitzung des Rechenzentrums unter Beteiligung eines Vertreters des Ministeriums am Vortage des Probelaufs wurden mögliche Maßnahmen zur Erhöhung der Funktionssicherheit diskutiert.
Der Projektleiter machte folgende Vorschläge
• In der Nacht vor dem Probelauf werden weitere Tests durch den Projektleiter und den Chefprogrammierer des Teams durchgeführt.
• Es wird ein erprobtes Testscript für den Probelauf vorbereitet und beim Probelauf eingegeben.
Damit wird die maximal mögliche Sicherheit für den Probelauf geschaffen.
Die Vorschläge wurden angenommen. Die Beratung ging auseinander und die Beteiligten verabschiedeten sich bis zum nächsten Morgen, nicht ohne sich noch viel Glück zu wünschen.
Am nächsten Morgen fragte der Leiter des Rechenzentrums den Projektleiter nach dem Stand der Abschlußtests. Dieser sagte, dass alle wesentlichen Tests erfolgreich durchgelaufen seien. Es wären nur einige wenige Sonderfälle übrig, die aber beim Probelauf nicht verwendet würden. Damit könnte aus seiner Sicht alles planmäßig durchgeführt werden.
Die Stunde des Probelaufs rückte immer näher. Im Hochregallager versammelten sich die ausgewählten Teilnehmer.
Dann kamen die Eröffnungsansprachen des Ministers für Leichtindustrie und des Betriebsdirektors des Betriebes, für den das Hochregallager in Betrieb genommen wurde.
Beide würdigten die Leistungen der Werktätigen, die diesen Schritt des wissenschaftlich-technischen Fortschritts zur Erreichung des Weltniveaus möglich gemacht hatten. Ein Meilenstein bei der Erhöhung der Produktivität würde erreicht werden.
Der Minister sollte symbolisch den Startknopf drücken, damit der Regalbedienroboter ein ausgewähltes Regal ansteuern, den Inhalt entnehmen und zum Beladeplatz am Ende der Hochregallagergasse bringen sollte.
Der Knopf wurde gedrückt. Der Regalbedienroboter setzte sich in Bewegung und führ auf einen Kreuzungspunkt in der 2. Ebene des Hochregallagers zu.
Als der Kreuzungspunkt erreicht war, wurde aber nicht aus dem Regalfach der Inhalt entnommen sondern der Roboter verharrte kurz,
fuhr dann ein Fach weiter hoch, verharrte wieder,
fuhr wieder zum Kreuzungspunkt herunter, verharrte wieder, fuhr zu einem Fach nach rechts, verharrte wieder,
fuhr wieder zum Kreuzungspunkt zurück, verharrte wieder, fuhr zu einem Fach nach links, verharrte wieder,
fuhr wieder zum Kreuzungspunkt zurück, verharrte wieder, fuhr zu einem Fach nach unten, verharrte wieder,
fuhr wieder zum Kreuzungspunkt zurück, verharrte wieder, und das Ganze noch mehrmals.
Die Gäste blickten staunend und wie gebannt. Plötzlich rief einer von den Jungpionieren, die als Repräsentanten der sozialistischen Jugend geladen waren: „Der Roboter macht ja Breakdance!“
Als wäre der Bann gebrochen fingen die Anwesenden an zu diskutieren. Köpfe wurden geschüttelt und Meinungen ausgetauscht.
Der Chef vom Rechenzentrum fuhr seinen Projektleiter an ‚Mann tun sie doch endlich was. Können sie nicht auf Handsteuerung umstellen‘? Der Projektleiter schüttelte sich dreimal, griff zum Nothebel und stellte die Steuerung auf manuell. Der Roboter blieb stehen. Durch die Handsteuerung wurde befohlen, auf den Zielpunkt zu gehen, das Ladegut aus dem Fach zu entnehmen, zum Ausladepunkt zu fahren und die entnommene Ware an das Transportband zu übergeben.
Der Chef vom Rechenzentrum wandte sich an den Minister ‚Werter Genosse Minister, verehrte Gäste, sie haben soeben gesehen, wie flexibel unser Regalbedienroboter reagiert hat. Nach eingehender Überprüfung des Zielpunkts und der angrenzenden Punkte hat er die vorgeschriebene Operation sicher durchgeführt. Diese Überprüfungen finden jeweils nach einem Stopp des Systems und dem Wiederanfahren statt. Der erstmalige Start entsprach genau diesen Bedingungen.
Hiermit erkläre ich das neue Regallager für eröffnet‘.
Die anwesenden Gäste verliefen sich allmählich.
Der Minister wandte sich an den Leiter des Rechenzentrums und sagte: ‚Sie haben die Situation durch ihre schnelle Reaktion gerettet. Sie wollen mir aber doch nicht erzählen, dass die Reaktion des Systems normal war‘. Der Rechenzentrumschef stotterte etwas herum. Darauf sagte der Minister ‚Wir begraben das Ganze für heute und gegenüber den Gästen. Trotzdem muss der Sachverhalt geklärt werden. Im Rechenzentrum der Staatlichen Plankommission gibt es eine Sondergruppe die ’seltsame Vorfälle in der EDV‘ untersucht. Dies ist die SOGRU ‚Softprob‘ (Softwareprobleme). Dieser werde ich den Fall zur Klärung übergeben. Ich fordere sie hiermit zur vollen Kooperation auf‘.
Der vorliegende Bericht entspricht dem abgelaufenen Sachverhalt.
gez. xxx
 
2. Untersuchungsbericht der SOGRU ‚Softprob‘
Am tt.mm.jj wurde der SOGRU der Vorfall mit dem merkwürdigen Verhalten des Regalbedienroboters im Hochregallager zur Untersuchung übergeben.
Als erstes wurde die Standardprozedur zur Beweissicherung eingeleitet.
Von dem für das Hochregallager verantwortlichen Rechenzentrum wurden folgende Unterlagen angefordert
• Quelltexte der Programme zur Bedienung des Hochregallagers und Steuerung des Regalbedienroboters
• die in Maschinensprache übersetzten Programme einschließlich Compiler- und Linkprotokolle
• Testdokumentation der vor der Einweihung durchgeführten Tests (Testfälle, Testläufe, Testergebnisse)
• für die Einweihung vorgesehener Ablauf
• bei der Einweihung zu verarbeitende Daten
• Stand der verwendeten Dateien vor und nach dem Ablauf bei der Einweihung
• Ablauf- und Jobprotokolle der Einweihung
• Schilderung des Ablaufs aus Sicht des Leiters des Rechenzentrums und des Projektleiters‘ automatisierte Steuerung Hochregallager‘
• Vermutungen des Projektteams zu den Ursachen des aus dem Ruder geratenen Ablaufs

Nach Erhalt der Unterlagen wurden zuerst eine Sichtprüfung der Unterlagen und ein ‚Schreibtischtest‘ des Ablaufs durchgeführt. Dabei konnte keine Abweichung von dem geplanten Ablauf festgestellt werden. Das Verhalten des Regalbedienroboters während der Einweihung hätte nicht auftreten dürfen.
Nachdem die Sichtprüfung kein Ergebnis gezeigt hatte, wurde als nächstes eine Simulation des Ablaufs der Einweihung auf dem Computer durch Ablauf der Programme mit den damaligen Daten und dem Datenstand in den Dateien vorgesehen und auch durchgeführt. Auch bei diesem Wiederholungslauf ergab sich kein anderes Ergebnis als bei der Einweihung.
Das Team der SOGRU war von dem so nicht erwarteten Ergebnis überrascht. Daraufhin wurde ein Brainstorming zum weiteren Vorgehen durchgeführt. Dabei wurden mögliche Eingriffe von fremder Hand in das Betriebssystem, Manipulationen an den compilierten und gelinkten Programmen etc. diskutiert. Diese Varianten wurden aber als exotisch und mit den verfügbaren Mitteln als in der Realisierung zu aufwendig verworfen.
Schließlich schlug ein vor einem Jahr frisch von der Uni gekommenes Mitglied der SOGRU ein Mittel vor, dass bei Demos vor Studenten manchmal angewendet wurde. Es sollte jeder einzelne Schritt bei der Abarbeitung protokolliert und untersucht werden. Damit das Ganze überschaubar blieb, sollte man sich auf die Schritte unmittelbar vor der Ansteuerung des ersten Regalfachs bis zur Ansteuerung des dritten Regalfachs beschränken.
Die SOGRU billigte den Vorschlag und die Abarbeitung wurde in der vorgeschlagenen Weise gestartet. Dabei zeigte sich, dass die Abarbeitung so ablief, wie bei der Einweihung geschehen. Was aber war die Ursache? Die Eingabedaten waren durch Komma getrennt. Das Programm interpretierte dies als nacheinander auszuführende Kette von Eingaben ohne Stopp, d.h. eine Fahrt zu aufeinanderfolgenden Regalfächern. Wären die Eingaben durch Semikolon getrennt gewesen, so wäre das Programm nach der ersten Eingabe in Stopp gegangen.
Nach Änderung der Eingabekette auf Trennung durch Semikolon lief der Ablauf der Bewegungen des Regalbedienroboters, so wie eigentlich für die Einweihung vorgesehen.
Nach diesem Ergebnis wurden die vorliegenden Testdaten und Testprotokolle überprüft. Dabei zeigte sich, dass zwar Einzelzuweisungen anzusteuernder Regalfächer und durch Semikolon getrennte Ansteuerungen getestet wurden aber keine Folge durch Komma getrennter Eingaben. Als Ursache stellte sich heraus, dass eine durch Kommata getrennte Folge in der Projektbeschreibung nicht vorgesehen war. Allerdings fehlte die Prüfung auf Vorliegen einer solchen Folge und die Fehlermeldung bei einer entsprechenden fehlerhaften Eingabe.
Der Test des Regalbediensystems erfolgte durch den kurzfristigen Termin der Einweihung unter erhöhtem Streß. Für die Nichtentdeckung des Fehlers gab es keine Ursache, die auf eine gewollte Sabotage hin deutete.
Die SOGRU stellte zum Abschluß fest:
• Die fehlerhafte Reaktion des Regalbediensystems bei der Einweihung ist auf menschliches Versagen beim Abschlußtest zurückzuführen.
• Zur künftigen Vermeidung solcher Fehler sind die Testdaten nach dem 4-Augen-Prinzip zu überprüfen.
• Speziell mögliche Fehlerfälle sind zu diskutieren und zu testen.
 
3. Überprüfungsergebnis SoftArche
Die Überprüfung durch SoftArche ergab, dass der Bericht in sich schlüssig war und durchaus die Schilderung eines Falls darstellen konnte, der sich real ereignet hatte auch wenn darüber in den Medien der damaligen DDR nicht berichtet wurde.