Das Ergebnis von vier Jahren Job-Accounting-Erfahrung unter DOS

Exakter Leistungsnachweis und gezielte Fehlersuche

19.03.1976

Die vom Supervisor bzw. POWER/VS pro Job-Step zur Verfügung gestellten Systemdaten (Datum, Startzeit, Laufzeit, CPU-Zeit, Anzahl der SIO pro externe Einheit, Cancel-Code, Partition) ermöglichen bereits die Zusammenstellung aussagekräftiger Statistiken über die Auslastung eines EDV-Systems. die Job-Struktur oder Art und Häufigkeit der Programmzusammenbrüche. Umfassende Informationen zur Analyse und Steuerung des gesamten RZ-Ablaufes sowie zur Leistungsverrechnung sind allerdings erst durch die Verbindung der Systemdaten mit Benutzerdaten zu gewinnen.

Job-Control verlangt keine bestimmte Spalteneinteilung der Job-Karte - es empfiehlt sich jedoch aus Gründen der Sicherheit und Übersichtlichkeit, das Format der Job-Karte zu standardisieren und zur Terminierung zwei weitere Daten, nämlich den Soll-Termin sowie die voraussichtliche Laufzeit pro Job, mit aufzunehmen.

Die Job-Karte wird auf diese Weise zur Auftragslaufkarte ausgebaut; gewonnen wird sie durch Ablochen vom EDV-Auftrag. Dieser Auftrag bildet die Grundlage der Ablauforganisation; sämtliche Auftragsformulare sind in ihrem Aufbau einheitlich. Neben der Funktion / JOB sind auch noch die Funktionen / LOC (Lochereiauftrag) / SOR (konventionelle Maschinen) erlaubt. Für regelmäßige wiederkehrende Aufträge existieren standardisierte Formulare, in die lediglich noch Soll-Termin und Auftrags-Nr. einzutragen sind. Bei den SOR und LOC-Auftragslaufkarten werden der vom Operator bzw. der Locherin auf der Karte vermerkte IST-Termin und die Arbeitszeit nachträglich eingelocht. Auf diese Weise entsteht ein integriertes Abrechnungs- und Auswertungssystem für den Gesamtbereich EDV, bei dem sich alle Job-Accounting Auswertungsprogramme auch für die Bereiche Locherei, konventionelle EDV und Programmierung einsetzen lassen.

Routine und Maintenance-Programme

Zur Verarbeitung der vom Supervisor zur Verfügung gestellten Accounting-Daten muß ein Transientprogramm geschrieben und unter dem Namen JOBACCT katalogisiert werden. Das Programm hat drei Funktionen zu erfüllen:

Prüfen 16 Bytes Benutzer-Accountingdaten; Accountingdaten auf einen DA-File der DOSRES wegschreiben; über syslst den Job-Report drucken der die gesamten Kosten sowie die anteiligen Kosten des Print-Outputs ausweist.

Neben dieser Routine werden noch Maintenance-Programme zum nachträglichen Korrigieren und Ergänzen des DA-Files sowie zum Auslesen der Accounting-Sätze auf Band benötigt. Das zweite Programm führt wahlweise auch das Sichern des Accounting-Files sowie das Kondensieren des DA-Files durch und kann die Kosten eines Jobs auf mehrere Kostenstellen aufteilen.

CPU-Zeit und Zahl der SlOs maßgebend

Die von Job-Accounting zur Verfügung gestellten Daten ermöglichen eine differenzierte Leistungsverrechnung. In unserem RZ wird in 5 Partitionen (davon F1 ständig mit POWER/VS belegt) gearbeitet. Die Laufzeit (= Verweilzeit) kann deshalb nicht als Verrechnungsmaßstab herangezogen werden, und zwar auch dann nicht, wenn sie um All-Bound und Overhead-Zeit vermindert wird. Entsprechende Auswertungen über einen längeren Zeitraum hinweg haben deutlich gezeigt, daß das Errechnen einer "prioritätenunabhängigen Laufzeit " nicht möglich ist. Wer diese Zeiten zur Leistungsverrechnung heranzieht, erhält für den gleichen Job je nach Job-Mix und Prioritätenverteilung unterschiedliche Kosten. In unserem RZ wird deswegen die CPU-Zeit sowie für jede vom Programm benutzte externe Einheit die Zahl der SlOs zur Leistungsverrechnung herangezogen. Beispielsweise kostet ein SIO für den Drucker (= 1 Druckzeile oder 1 Zeilentransport) 0,6 Pfg., ein SIO für eine 3330-Platteneinheit 0,07 Pfg. Bei der Preisfestsetzung werden die über einen Zeitraum von einem Jahr summierten Accounting-Daten jeweils als Divisor für die pro Einheitentyp errechneten Plankosten (Maschinenmiete + Personalkosten + Material + Gemein) verwendet.

Tagesprotokoll für DV-Leiter

Die durch Job-Accounting auf Platte gespeicherten Informationen werden täglich in Form des sog. Tagesprotokolls ausgewertet. Das Tagesprotokoll wird regelmäßig vom Operator der Frühschicht für den Vortrag erstellt. Sämtliche Job-Steps werden in chronologischer Reihenfolge getrennt nach Partition angelistet. Pro Step werden Job-Name, Phasen-Name, Start-Zeit, Laufzeit, Cancel-Cod sowie alle externen Informationen angedruckt. Am Ende wird die Summe der Laufzeiten pro Partition sowie die Leerzeit (definiert als Stillstandszeit zwischen Job-Ende und Beginn des nächsten Jobs) angedruckt. Das Tagesprotokoll gibt dem Leiter des EDV-Betriebes nicht nur einen Überblick über den aktuellen Stand des bearbeiteten Arbeitsvolumens - es dient gleichzeitig als Kontrollinstrument für überhöhte Leerzeiten, Operator-Cancel E/A-Einheiten-Cancel, Programmchecks.

Vier Statistiken

Das Programm liefert für jeden gewünschten Zeitraum folgende Informationen in Tabellenform:

1.Partitionsübersicht

Pro Partition sowie als Summe werden die Laufzeit, CPU-, Overhead-, All-Bound-Zeiten, die Anzahl der Jobs, die durchschnittliche Laufzeit pro Job sowie die summierte Stillstandszeit der Partition ausgedruckt. Zusätzlich wird die Einschaltzeit, der Multiprogramming-Faktor (= Summe Laufzeiten dividiert durch Einschaltzeit) sowie die CPU-Intensität (= CPU-Zeit prozentuiert auf Einschaltzeit) ausgewiesen.

2. Programmanalyse

Für jedes Programm wird eine Zeile mit folgenden Informationen gedruckt: Zahl der Einsätze, Laufzeit, CPU-Intensität, Anzahl der vorzeitigen Beendigungen getrennt nach Operator-Cancel, Programm-Check und restliche Cancel-Arten, Speicherbedarf in K, prozentuale Verteilung nach Arbeitscode sowie pro Einheitentyp die Anzahl der SIO.

Zweck dieser Programmanalyse ist es, Schwachstellen bei einzelnen Programmen aufzuzeigen, Hinweise für Tuning-Maßnahmen zu geben, den Erfolg der Tuning-Maßnahmen zu kontrollieren und die Programme in CPU-intensive bzw. -extensive zu klassifizieren.

3. Test-Dokumentation

Pro gestetetem Programm wird die Laufzeit, die CPU-Zeit sowie die Anzahl der Testläufe ausgewiesen.

4. Auslastung der E/A-Einheiten

Pro Einheit wird die Anzahl der SIO sowie die Laufzeit ausgewiesen. Diese Tabelle kann dazu benutzt werden, die Paging-Aktivität des Systems zu messen, wenn für die Zeitspanne, der Messung der Page Data Set einer Platteneinheit zugeordnet wird, auf der keine andere Datei angesprochen wird.

Monatlich Kostenreport für die Fachabteilung

Jede Fachabteilung erhält monatlich den Kosten-Report: pro erledigter Auftragsposition wird eine Zeile mit den Angaben Datum, Uhrzeit, Laufzeit, Auftrags-Nr., Kosten gedruckt. Die Zeilen sind sortiert nach Kostenstelle, Job-Namen, Datum, Uhrzeit. Zwischensummen werden bei Wechsel Kostenstelle und Wechsel Job-Name gedruckt - die Fachabteilung kann also ablesen in welcher Höhe Kosten durch welches Programm verursacht werden. Der Kostenreport, dient der EDV als Leistungsnachweis und Rechnungsbeleg zugleich. Als Nebenprodukt werden gleichzeitig die Kosten pro Stelle und Träger für die Betriebsabrechnung zur Verfügung gestellt.

Management-Report

Der Report für das Management der GfK wird monatlich und quartalsweise kumuliert erstellt. Er besteht aus 3 Teilen:

1. der Auslastungsstatistik für die 4 EDV-Leistungsbereiche Programmierung, Lochen, Konventionelle EDV und IBM 370/145

2. der Kostenzusammenfassung nach Zielkostenstellen

3. der GuV-Rechnung für die 4 EDV-Bereiche.

*G. Kirschner ist EDV-Leiter bei der Gesellschaft für Konsum-, Markt- und Absatzforschung e. V. (GfK) in Nürnberg.