WildMag-Archiv

Sie sind hier: Diskmags → WildMagWildMag #3 (Oktober 2000) → DruckDas

DruckDas
LIN 8080

Jetzt haben wir da so ein Objekt. Es heißt "DruckDas". Es macht genau das. Eine kleine Sub-Routine, nur 2,8 MB, die ein paar Variablen bekommt. Das wird dann gedruckt. Egal, was der Inhalt der Variablen ist. Ob String oder Float. DruckDas macht das. Egal, wo im Netz DruckDas gerufen wird, DruckDas findet einen Drucker und meldet das zurück.

Diese kleine Routine hat's aber in sich. Sie verwaltet immerhin 183 Treiber, erkennt selber, welcher Schriftsatz gefordert wird und formatiert auch noch ein wenig. Sie setzt eine Kopfzeile und schreibt sogar noch Bemerkungen unten drauf. Dadurch bekommen die gedruckten Werke einen Standard, zudem spart das auch etwas Papier. Und, DruckDas schafft endlich Ordnung im Papierwald, denn da ist eine Verknüpfung mit einem Übersetzungprogramm.

Diese Sub hat schon über hundert Änderungen, Erweiterungen, oder Anpassungen erhalten. DruckDas funktioniert aber noch. Manchmal etwas zeitverzögert, manchmal unverzüglich. Der Code sieht aber voll chaotisch aus. Also befassen wir uns mal damit. Er soll schlanker werden. Universeller, und eben so, dass er nicht mehr geändert werden muss. Wenigstens die nächsten Monate.

Das alles kommt nun nicht von ungefähr. DruckDas hat heute morgen 9:32 Uhr den Dienst verweigert, netzweit. Das ist natürlich untragbar. Dieses Objekt muss nachdrücklich bearbeitet werden. Die Experten schütteln den Kopf. Da gäbe es nichts zu renovieren. Muss komplett neu geschrieben werden. Seit drei Stunden wird nichts mehr gedruckt. Eine gewaltige Byte-Kolone hat sich angesammelt, Tendenz steigend.

In der Kopiermethode und der dabei stattfindenden Fehlerbehandlung sei der Fehler aufgetreten. Auch die Zeilen über die Ausnahmebehandlung wären nicht mehr aktuell. Die wählbare Sprache muss ausgegliedert werden. Mancherorts würden Methoden aus dem Translat-Objekt ohne Nachprüfung einfach überschrieben. So geht das natürlich nicht. Zudem wurde so gut wie nichts dokumentiert und die Lesbarkeit des Quellcodes ist eine Zumutung schlechthin. Ein Wunder, dass überhaupt noch etwas gedruckt wurde.

Muss wirklich alles neu designed werden. Eine kleine Benutzeroberfläche, mit Meldungen und Steuerparametern soll auch noch eingebunden werden. Einige neue Treiber wurden aufgetrieben, und schneller soll DruckDas auch noch werden. Wird ungefähr 20 Stunden Intensivkur benötigen, bis irgendein Drucker wieder was zu Papier bringt. Ein Speicherbereich wird reserviert, um die Warteschlange abzufangen. Die Arbeiten stehen unter Zeitdruck, der Stressfaktor steigt.

Das war vor 32 Stunden. Inzwischen ist ein dritter Zwischenspeicher angeschlossen. Die Buchhaltung hat knapp eine halbe Million Verlust vorausberechnet. Das Schadensbegrenzungsteam hat den 5. freien Mitarbeiter erhalten. Die Mannschaft zur Neuprogrammierung des DruckDas Objektes wurde wegen Überarbeitung komplett ersetzt. Das neue Programm wäre konzeptionell fertig, es leistet aber noch nichts. Einzigst ein Nadeldrucker im Raum der System-Administration durchlöchert ein weißes Stück Papier.

Die Verantwortlichen treffen sich zu einer Krisensitzung. Man müsse bei Null beginnen, sagt ein Firmensprecher. Die Verwaltung des indischen Schriftsatzes (man unterhält dort eine florierende Niederlassung) stelle unmögliche Anforderungen. An eine selbsttätige Schrifterkennung wäre nicht zu denken. Die neuen Anforderungen müssten erst grundlegend analysiert werden. Die Rechnungsabteilung hat eine antiquierte, manuell bedienbare Schreibmaschine aufgetrieben. Ein Betriebsratsmitglied diskutiert eifrig über die Zumutbarkeit der neuen Arbeitsbedingungen.

Endlich, nach 52 Stunden funktioniert ein Interface zwischen Translat- Programm und dem neuen DruckDas Objekt. Mehrere Dokumente durchlaufen bereits die heiße Phase. Im vereinfachten 64 Bit Muster würde probeweise gedruckt. Der Aktenvernichter ist den erhöhten Anforderungen nicht gewachsen. Kurz vor seiner 1000 Stunden Inspektion versagt er mit einem markanten Geräusch. Nach Auskunft des Technikers war es eine Büroklammer, er habe die Kugellager vorsorglich geschmiert.

Die Beratung über Sofortmaßnahmen der Poststelle des Konzerns sind beendet. Man habe die Zeit genutzt, die Situation zu überdenken. Ein Angestellter der Personal Abteilung hat soeben ein handschriftliches Dokument mit angehängter Unterschriftenliste erhalten. Ein vergessen geglaubter Drucker, 6500 Zeichen pro Minute, meldet zu aller Überraschung seine Bereitschaft. Eine Child Kopie von DruckDas wird als Verursacher vermutet. Zur Sekunde finden innerhalb der Lagerverwaltung Beratungen über weiterführende Maßnahmen statt. Ein Notprogramm wird auf die Beine gestellt. Ein Roboter macht sich auf den Weg, das nötige Papier vorsorglich zu reservieren.

Ein kurzzeitig Beschäftigter seitens der indischen Niederlassung hat soeben eine dringliche Mail versendet. Das in schlechtem Englisch abgefaßte Schreiben wird als brisant eingestuft. Das neue Interface scheint einwandfrei zu funktionieren. Die System Administratoren sind in voller Aktion. Die Sekretärin des zweiten Vorstands traut ihren Augen nicht. Ein neues Icon ist in ihrer persönlichen Task-Leiste aufgetaucht. DruckDas wird angezeigt. Sofort zieht sie einen Stapel Dokumente mit ihrer Maus auf das schöne neue Icon. Der Zwischenspeicher hat keine freien Kapazitäten mehr. Programmgemäss erscheint eine Meldung auf einem Kontrollbildschirm.

Die Zweigstelle in Brasilien erhält vom neu erschaffenen Rumpf-Programm erhöhte Priorität. Ein Nadeldrucker dokumentiert anstandslos die Aktivitäten. Ein Softwarepaket mit ausgefeilten Testroutinen wird gestartet. Sekunden später werden hektisch kleine Korrekturmaßnahmen durchgeführt. Der Vorstand betritt die Räume des Computerzentrums, um sich persönlich ein Bild von der Situation zu machen.

Das neue Programm leistet ganz Außerordentliches. Einige Routinen aus Indien wären einfach genial, so ist zu erfahren. In den folgenden Stunden wird innerhalb des Konzerns fieberhaft nach Papier gesucht. DruckDas frisst alles. Man zieht ernsthaft in Erwägung, diesen Vorgang über ein noch zu implementierendes Interface zu automatisieren. Der Chef der Lagerabteilung wird zu einem vertraulichen Gespräch gebeten.

DruckDas war ein Meilenstein in der Programmierkunst.
Nun ist wieder alles wie zuvor.

LIN 8080