Eine Spezifikationssprache für die Fertigungslenkung

Werbung
Eine Spezifikationssprache für die Fertigungslenkung
Dissertation
zur Erlangung der Würde eines
DOKTORS DER WIRTSCHAFTSWISSENSCHAFTEN
(Dr. rer. pol.)
der Universität-GH Paderborn
vorgelegt von
Dipl-Wirt. Inform. Achim Schmidtmann
33102 Paderborn
Paderborn, Oktober 1999
Dekan:
Referent:
Korreferent:
Prof. Dr. B. Rahmann
Prof. Dr.-Ing. habil. W. Dangelmaier
Prof. Dr. O. Rosenberg
Inhaltsverzeichnis
i
Inhaltsverzeichnis
Abbildungsverzeichnis ................................................................................ v
Tabellenverzeichnis ..................................................................................... ix
Definitionsverzeichnis .................................................................................. xi
Abkürzungsverzeichnis ................................................................................ xiii
Symbolverzeichnis ........................................................................................ xv
1 Einleitung ................................................................................................... 1
2 Das Problem einer Spezifikationssprache für die Fertigungslenkung . 5
2.1 Begriffserklärungen ...............................................................................................
2.1.1 Fertigungslenkung ............................................................................................
2.1.2 Fertigungslenkungsverfahren............................................................................
2.1.3 Klassifikation ....................................................................................................
2.1.4 Spezifikationssprache .......................................................................................
2.2 Klassifikation für die Fertigungslenkung.............................................................
2.2.1 Anforderungen an eine Klassifikation für die Fertigungslenkung....................
2.2.2 Klassifikationsmerkmale der Fertigungslenkung .............................................
2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur ...............................
2.2.2.2 Klassifikationsmerkmal Fertigungslenkungsabläufe ................................
2.2.2.3 Klassifikationsmerkmal Fertigungslenkungsfunktionen...........................
2.2.3 Klassifikationsschema für die Fertigungslenkung............................................
2.3 Anforderungen an eine Spezifikationssprache für die Fertigungslenkung.......
2.3.1 Problembereichsunabhängige Anforderungen an die Spezifikationssprache ...
2.3.2 Problembereichsabhängige Anforderungen an die Spezifikationssprache .......
6
6
11
12
14
17
17
19
21
25
28
31
32
34
37
3 Stand der Technik ..................................................................................... 43
3.1 Klassifikationen für die Fertigungslenkung.........................................................
3.1.1 Klassifikationen für Fertigungslenkungsstrukturen..........................................
3.1.2 Klassifikationen für Fertigungslenkungsabläufe ..............................................
3.1.3 Klassifikationen für Fertigungslenkungsfunktionen.........................................
3.1.4 Klassifikationsschemata für die Fertigungslenkung .........................................
3.2 Spezifikationssprachen für die Fertigungslenkung .............................................
3.2.1 Syntax existierender Spezifikationssprachen....................................................
3.2.2 Semantik existierender Spezifikationssprachen................................................
3.2.2.1 Spezifikationssprachen für Fertigungslenkungsstrukturen .......................
3.2.2.2 Spezifikationssprachen für Fertigungslenkungsabläufe............................
3.2.2.3 Spezifikationssprachen für Fertigungslenkungsfunktionen ......................
43
57
59
63
70
71
73
79
91
92
94
4 Zu leistende Arbeiten zur Entwicklung einer Spezifikationssprache für die
Fertigungslenkung...................................................................................... 97
ii
5 Entwicklung einer Spezifikationssprache für die Fertigungslenkung.. 101
5.1 Syntax der Spezifikationssprache .........................................................................
5.2 Semantik der Spezifikationssprache.....................................................................
5.2.1 Funktionalität an Modellelementen ..................................................................
5.2.1.1 Funktionalität an Fertigungselementknoten..............................................
5.2.1.1.1 Attribute an Fertigungselementknoten ..............................................
5.2.1.1.2 Eintritts-/Austrittsfunktionen an Fertigungselementknoten ..............
5.2.1.1.3 Zustandsfunktionen an Fertigungselementknoten.............................
5.2.1.2 Funktionalität an Fertigungsvorgangsknoten............................................
5.2.1.2.1 Attribute an Fertigungsvorgangsknoten ............................................
5.2.1.2.2 Eintritts-/Austrittsfunktionen an Fertigungsvorgangsknoten ............
5.2.1.2.3 Zustandsfunktionen an Fertigungsvorgangsknoten...........................
5.2.2 Ablaufstrukturen ...............................................................................................
5.2.2.1 Zeitorientierte Vorgehensweise ................................................................
5.2.2.2 Ereignisorientierte Vorgehensweise .........................................................
5.2.2.3 Knotenorientierte Vorgehensweise ...........................................................
5.2.2.3.1 Vorgangsorientierte Vorgehensweise................................................
5.2.2.3.2 Materialorientierte Vorgehensweise..................................................
5.2.2.3.3 Fertigungsmittelorientierte Vorgehensweise.....................................
5.2.2.4 Produktionsstrukturorientierte Vorgehensweise .......................................
5.2.2.5 Auftragsorientierte Vorgehensweise.........................................................
5.2.2.6 Kombinierte Ablaufstrukturen ..................................................................
5.3 Implementierung der Spezifikationssprache .......................................................
5.3.1 Algorithmen für Funktionen .............................................................................
5.3.1.1 Algorithmen für Funktionen an Fertigungselementknoten .......................
5.3.1.2 Algorithmen für Funktionen an Fertigungsvorgangsknoten .....................
5.3.1.3 Algorithmen für allgemeine Funktionen...................................................
5.3.2 Algorithmen für Abläufe ..................................................................................
5.3.2.1 Algorithmus für zeitorientierte Abläufe....................................................
5.3.2.2 Algorithmus für ereignisorientierte Abläufe.............................................
5.3.2.3 Algorithmen für knotenorientierte Abläufe ..............................................
5.3.2.4 Algorithmus für produktionsstrukturorientierte Abläufe ..........................
5.3.2.5 Algorithmus für auftragsorientierte Abläufe.............................................
5.3.2.6 Algorithmus für kombinierte Abläufe.......................................................
5.4 Anwendungsbeispiele für die Spezifikationssprache ..........................................
5.4.1 Mengenplanung ................................................................................................
5.4.2 Terminplanung..................................................................................................
5.4.2.1 Durchlaufterminierung..............................................................................
5.4.2.1.1 Vorwärtsrechnung bei bekanntem Rang ...........................................
5.4.2.1.2 Rückwärtsrechnung bei bekanntem Rang .........................................
5.4.3 Termin- und Mengenplanung ...........................................................................
5.4.4 Kapazitätsplanung.............................................................................................
5.4.4.1 Zeitorientierte Auftragsfreigabe................................................................
5.4.4.1.1 Einmaschinenproblem .......................................................................
5.4.4.1.2 Problem identischer Maschinen ........................................................
5.4.4.1.3 N-Maschinen-Problem ......................................................................
5.4.4.2 Ereignisorientierte Auftragsfreigabe.........................................................
102
113
114
125
125
128
130
132
132
135
140
142
144
145
147
147
148
149
150
151
152
153
161
163
166
168
175
176
176
177
178
178
178
179
180
181
181
182
184
184
186
186
189
191
192
192
Inhaltsverzeichnis
5.4.5 Komplexe Fertigungslenkungsverfahren..........................................................
5.4.5.1 Materialbedarfsplanung (MRP) ................................................................
5.4.5.2 Arbeitsgangterminierung des Fertigungssystems CAPOSS-E .................
5.4.5.3 Engpaßorientiertes Fertigungssteuerungsverfahren (OPT).......................
5.4.5.4 Kanban ......................................................................................................
5.4.5.5 Fortschrittszahlenkonzept .........................................................................
5.4.5.6 Belastungsorientierte Auftragsfreigabe (BOA).........................................
5.4.5.7 Netzplantechnik ........................................................................................
iii
193
194
197
198
200
201
202
204
6 Zusammenfassung und Ausblick ............................................................. 207
7 Literaturverzeichnis .................................................................................. 211
8 Anhang........................................................................................................ 221
8.1 Nutzung der Spezifikationssprache zur Simulation der Fertigungslenkung .... 221
8.2 Einbindung der Fertigungslenkung in den Unternehmensworkflow ................ 222
iv
Abbildungsverzeichnis
Abbildungsverzeichnis
Abbildung 2-1:
Modell eines Flexiblen Fertigungssystems............................................9
Abbildung 2-2:
Klassifikation der Fertigungslenkung ....................................................21
Abbildung 2-3:
Strukturprototypen .................................................................................23
Abbildung 2-4: Verknüpfung von Prototypen..................................................................25
Abbildung 2-5:
Klassifikationsschema............................................................................31
Abbildung 2-6:
Beispiel eines Klassifikationsschemas...................................................32
Abbildung 2-7:
Spezifikationssprache der Fertigungslenkung .......................................34
Abbildung 2-8: Elemente der Spezifikationssprache .......................................................40
Abbildung 3-1: Orientierungen der Klassifikationsansätze .............................................44
Abbildung 3-2: Modellvorstellungen in der Strukturierten Programmierung..................56
Abbildung 3-3: Materialdisposition nach dem Dispositionsstufenverfahren...................87
Abbildung 5-1: Anwendung der Klassifikation und Spezifikationssprache ....................101
Abbildung 5-2: Architektur der Sprache ..........................................................................102
Abbildung 5-3: Konstrukt Teilgraph ................................................................................104
Abbildung 5-4: Konstrukt Ablauf ....................................................................................105
Abbildung 5-5: Konstrukt Funktionen .............................................................................106
Abbildung 5-6: Darstellung While-Schleife und Repeat-Schleife ...................................111
Abbildung 5-7: Darstellung von Parallelität und Serialität in Teilgraphen......................111
Abbildung 5-8: Beispielprogramm...................................................................................113
Abbildung 5-9: Metastrukturprototyp ..............................................................................114
Abbildung 5-10: Ein- und ausgehende Kanten ..................................................................116
Abbildung 5-11: Beziehungen zwischen Kanten ...............................................................117
Abbildung 5-12: Funktionalität am Knoten .......................................................................119
Abbildung 5-13: Übermittlung von Änderungen ...............................................................120
Abbildung 5-14: Zusammenfassungsfunktion ...................................................................122
Abbildung 5-15: Aufteilungsfunktion ................................................................................123
Abbildung 5-16: Funktionalität an Fertigungselementknoten............................................125
Abbildung 5-17: Dispositionsprinzipien/Auslösungsarten.................................................126
v
vi
Abbildung 5-18: Brutto-/Netto-Angebote/Bedarfe ............................................................128
Abbildung 5-19: Ein- und Austrittsbegrenzung an Materialknoten ...................................129
Abbildung 5-20: Funktionalität an Fertigungsvorgangsknoten..........................................132
Abbildung 5-21: Komplementäre Kanten ..........................................................................137
Abbildung 5-22: Alternative Kanten ..................................................................................138
Abbildung 5-23: Konkurrierende Kanten...........................................................................138
Abbildung 5-24: Kombination verschiedener Kanten........................................................139
Abbildung 5-25: Vorgangsterminierung ............................................................................140
Abbildung 5-26: Ablaufstrukturen .....................................................................................144
Abbildung 5-27: Zeitorientierung.......................................................................................144
Abbildung 5-28: Zeitorientierte Vorgehensweise ..............................................................145
Abbildung 5-29: Darstellung Bestellrhythmusverfahren ...................................................145
Abbildung 5-30: Ereignisorientierung................................................................................146
Abbildung 5-31: Ereignisorientierte Vorgehensweise .......................................................146
Abbildung 5-32: Darstellung Bestellpunkt-Verfahren .......................................................147
Abbildung 5-33: Vorgangsorientierte Vorgehensweise .....................................................148
Abbildung 5-34: Materialorientierte Vorgehensweise .......................................................149
Abbildung 5-35: Fertigungsmittelorientierte Vorgehensweise ..........................................149
Abbildung 5-36: Nachfolgestruktur ...................................................................................150
Abbildung 5-37: Darstellung produktionsstrukturorientierter Ablauf ...............................151
Abbildung 5-38: Auftragsorientierte Vorgehensweise.......................................................151
Abbildung 5-39: Darstellung auftragsorientierter Ablauf ..................................................151
Abbildung 5-40: Kombinierte Ablaufstruktur....................................................................152
Abbildung 5-41: Darstellung kombinierte Ablaufstrukturen .............................................152
Abbildung 5-42: Spezifikationsbeispiel .............................................................................153
Abbildung 5-43: Funktionen an Fertigungsknoten.............................................................163
Abbildung 5-44: Netzplan mit Fertigungsvorgängen nach Rängen sortiert.......................182
Abbildung 5-45: Struktogramm Terminplanung vorwärts.................................................182
Abbildung 5-46: Fertigungsgraph mit Bedarfsmengen > 1................................................183
Abbildung 5-47: Struktogramm Terminplanung rückwärts ...............................................184
Abbildungsverzeichnis
vii
Abbildung 5-48: Struktogramm Mengen- und Terminplanung rückwärts.........................185
Abbildung 5-49: Fertigungsgraph mit Kapazitäten............................................................186
Abbildung 5-50: Struktogramm Summarisches Verfahren................................................187
Abbildung 5-51: Struktogramm Reihenfolge-Verfahren ...................................................188
Abbildung 5-52: Einmaschinenproblem.............................................................................189
Abbildung 5-53: Struktogramm Einmaschinenproblem vorwärts .....................................190
Abbildung 5-54: Struktogramm Einmaschinenproblem rückwärts....................................190
Abbildung 5-55: Struktogramm Problem identischer Maschinen......................................191
Abbildung 5-56: Struktogramm Problem identischer Maschinen......................................192
Abbildung 5-57: Klassifikationsschema MRP ohne Losgrößengruppierung.....................195
Abbildung 5-58: Struktogramm MRP ohne Losgrößengruppierung..................................195
Abbildung 5-59: Klassifikationsschema MRP mit Losgrößengruppierung .......................196
Abbildung 5-60: Struktogramm MRP mit Losgrößengruppierung ....................................196
Abbildung 5-61: Klassifikationsschema Arbeitsgangterminierung ...................................197
Abbildung 5-62: Struktogramm Arbeitsgangterminierung ................................................198
Abbildung 5-63: Klassifikationsschema OPT (Vorgehensweise nach Engpaßermittlung)199
Abbildung 5-64: Struktogramm OPT (Vorgehensweise nach Engpaßermittlung) ............200
Abbildung 5-65: Klassifikationsschema Kanban ...............................................................201
Abbildung 5-66: Klassifikationsschema Belastungsorientierte Auftragsfreigabe .............203
Abbildung 5-67: Struktogramm Belastungsorientierte Auftragsfreigabe ..........................203
Abbildung 5-68: Klassifikationsschema Netzplantechnik .................................................204
Abbildung 7-1: Simulation der Fertigungslenkung..........................................................222
Abbildung 7-2: Workflow vom Auftrag zur Lieferung....................................................223
Abbildung 7-3: Sukzessive Mengen- und Terminplanung...............................................224
viii
Tabellenverzeichnis
ix
Tabellenverzeichnis
Tabelle 5-1:
Restriktionen an Fertigungselementknoten............................................. 127
Tabelle 5-2:
Transformationsprinzipien an Fertigungsvorgangstypen ....................... 133
Tabelle 5-3:
Restriktionen an Fertigungsvorgangsknoten........................................... 134
Tabelle 5-4:
Kantenarten an Fertigungsvorgangsknoten............................................. 136
Tabelle 5-5:
Terminierung bei unterschiedlichen Transformationsprinzipien............ 142
x
Definitionsverzeichnis
Definitionsverzeichnis
Definition 1:
Fertigungslenkung................................................................................... 6
Definition 2:
Fertigungssystem .................................................................................... 7
Definition 3:
Fertigungsmodell .................................................................................... 7
Definition 4:
Verfahren ................................................................................................ 11
Definition 5:
Fertigungslenkungsverfahren.................................................................. 11
Definition 6:
Klasse...................................................................................................... 12
Definition 7:
Klassifikation .......................................................................................... 12
Definition 8:
Funktion .................................................................................................. 13
Definition 9:
Fertigungslenkungsfunktion ................................................................... 13
Definition 10:
Ablaufstruktur ......................................................................................... 13
Definition 11:
Fertigungslenkungsstruktur..................................................................... 13
Definition 12:
Spezifikationssprache ............................................................................. 15
Definition 13:
Teilgraph ................................................................................................. 21
Definition 14:
Strukturprototyp...................................................................................... 22
Definition 15:
Metastrukturprototyp .............................................................................. 23
xi
xii
Abkürzungsverzeichnis
Abkürzungsverzeichnis
ARIS
Architektur integrierter Informationssysteme
BOA
Belastungsorientierte Auftragsfreigabe
CAPOSS-E
Capacity Planning and Operation Sequencing System-Extended
CIM
Computer Integrated Manufacturing
CIM-OSA
Open System Architecture for CIM
DIN
Deutsches Institut für Normung
DV
Datenverarbeitung
EBNF
Erweiterte Backus-Naur-Form
EDV
Elektronische Datenverarbeitung
ERM
Entity-Relationship-Model
ESPRIT
European Strategic Planning for Research in Information Technology
FIFO
First-In-First-Out
FST
Fertigungssteuerung
GERT
Graphical Evaluation and Review Technique
HERA
Heuristiken zur Repräsentation von Ablaufplanungswissen
HIPO
Hierarchie plus Input-Process-Output
ICAM
Integrated Computer Aided Manufacture-Program
IDEF
ICAM Definition
KOZ
Kürzeste-Operationszeit
MFERT
Modell der Fertigung
xiii
xiv
MFST
Modell der Fertigungssteuerung
MRP
Material Requirements Planning
MSP
Metastrukturprototyp
OPT
Optimized Production Technology
ORVAN
Objekte, Relationen, Vererbung, Attribute und Nachrichten
PPS
Produktionsplanung und -steuerung
PSL
Process Specification Language
SADT
Structured Analysis and Design Technique
SOM
Semantisches Objektmodell
SQL
Sequential Query Language
STEP
Standard for the Exchange of Product Model Data
UML
Unified Modeling Language
Symbolverzeichnis
xv
Symbolverzeichnis
a
Auftrag
B
(Perioden-)Bedarf/Bestand
ei
Ereignis
e*T
wichtigstes mögliches Ereignis in Zeitabschnitt
ET
Menge der Ereignisse im Planungshorizont T
i
(Arbeits-)Vorgang
j
Vorgängervorgang
k
Folgevorgang
m
Maschine (Fertigungsmittel)
p
Material
Q
Bestellmenge
r
Rangstufe
s
Bestellpunkt (Meldebestand)
S
Sollbestand (Maximalbestand)
ti
Durchlaufzeit des Vorgangs i
tt
Taktzeit
Tia
Anfangszeitpunkt des Vorgangs i
Tja
Anfangszeitpunkt des Vorgangs j
Tka
Anfangszeitpunkt des Vorgangs k
Tie
Endzeitpunkt des Vorgangs i
Tje
Endzeitpunkt des Vorgangs j
Tke
Endzeitpunkt des Vorgangs k
T
Planungshorizont
Tn
n-ter Zeitpunkt im Planungshorizont
xvi
Symbolverzeichnis
TH
letzter zu betrachtender Zeitpunkt im Planungshorizont
T
Bestellzyklus (konstantes Zeitintervall)
Einleitung
1
1
Einleitung
Der Bereich der Fertigungslenkung1 ist bereits seit vielen Jahren ein von unterschiedlichen
Wissenschaftsdisziplinen, wie z.B. den Ingenieurwissenschaften, der Produktionswissenschaft,
der Informatik u.a., bearbeitetes Feld. Die Ergebnisse dieser Forschungen sind eine große Zahl
von Planungs- und Steuerungsverfahren mit diversen Vorgaben und Zielrichtungen. Diese Verfahren werden größtenteils nur in der Theorie verwendet, jedoch finden einige auch ihre praktische Anwendung in der Industrie, wo heutzutage bereits eine Vielzahl unterschiedlichster
Verfahren der Fertigungslenkung genutzt werden.
Die ständigen Veränderungen der Märkte und die vom Kunden nachgefragten immer individuelleren Produktlösungen erfordern eine Fertigungslenkung mit hoher Flexibilität und Anpassungsfähigkeit. Gleichzeitig zeigen sie auch deutliche Auswirkungen auf die verwendeten Planungs- und Steuerungsverfahren. So gehen aufgrund der stark anwachsenden Variantenvielfalt
und der hohen Flexibilität von Fertigungsanlagen die zu fertigenden Losgrößen in vielen
Bereichen gegen eins, dafür erlangen die Reihenfolgeplanung der Aufträge respektive Werkstücke an den Ressourcen und die Vielzahl der Varianten, in denen die Produkte gefertigt werden müssen, ein immer größeres Gewicht.
Bis vor einigen Jahren wurde versucht, mathematische und operationale Entscheidungsmodelle für die Fertigungslenkung zu entwickeln, die mittels linearer Programmierung zu einer
Gewinnmaximierung führen sollten.2 Allerdings sind diese Modelle nie allgemein, sondern
immer auf spezielle Fertigungen und meistens außerdem auf die Bestellmengen- bzw. Losgrößen- oder Reihenfolgeproblematik begrenzt. Ihr Schwerpunkt liegt demnach auf den Problemen der Ablaufplanung, die jedoch nur einen Teilbereich der Fertigungslenkung ausmachen.
Weiterhin führt die gleichzeitige Betrachtung der verschiedenen Entscheidungsvariablen in
diesen Modellen dazu, daß die rechentechnischen Grenzen schnell erreicht werden. Aus diesem Grund haben die Modelle trotz der stark gestiegenen Rechnerleistungen meistens nur reinen Beschreibungswert. Ihre Aufgabe ist dementsprechend eine theoretisch elegante Abbildung und Strukturierung des erfaßten Problems sowie das Sichtbarmachen der vorhandenen
Wechselwirkungen3, nicht aber die optimale Lösung.
1.
2.
3.
Für diesen Bereich werden häufig auch die Begriffe Fertigungs- oder Produktionsplanung und -steuerung genutzt (vgl. [Swi89], [Zäp82], [Sche91], [DaWa97], u.a.). Unter Fertigung versteht man einen
industriellen oder handwerklichen Produktions- bzw. Herstellungsprozeß (vgl. [Du96]).
Vgl. [Oßw79], [MüMe73], u.a.
Vgl. [Swi89], S. 10 ff.
2
Kapitel 1
Wegen geringfügiger Unterschiede in den Anwendungsgebieten der verschiedenen Fertigungslenkungsverfahren werden immer neue, sehr spezifische Verfahren bzw. Methoden entwickelt,
die von den bereits bestehenden klar abgegrenzt werden.4 Die Mehrzahl dieser Verfahren beruhen darüber hinaus auf einem bestimmten, meistens recht eingegrenzten Verständnis des Produktionsprozesses.5 Eine Lösung für dieses Problem besteht darin, die Verfahren über eine
vollständig durchgängige und problembereichsorientierte Spezifikationssprache, ein Metasystem, allgemein nutzbar zu machen. Auf diese Weise werden sie von einem speziellen Anwendungsgebiet und Verständnis losgelöst, wodurch eine umfassende Nutzung der Verfahren und
ihre Integration ermöglicht und auch entscheidend vereinfacht wird. Vergleichbares fordert
auch Weigelt: „Statt nach immer komplizierteren Planungsalgorithmen zu suchen, sollte man
eher benutzerfreundliche Simulations- und Meta-Planungsansätze vorantreiben“.6 Und Scheer
hebt hervor, daß bei der Architektur von Anwendungssystemen in Zukunft nicht mehr die
„harte Programmierung“ im Vordergrund steht, sondern die logische Modellierung von
Anwendungssystemen durch Vorgangs- und Datenmodelle.7 Als Ausgangspunkt eines derartigen Metasystems ist eine einheitliche Modellierungssystematik und eine umfassende Klassifikation des Problembereichs unbedingt erforderlich.
Die große Zahl an Fertigungslenkungssystemen und die ständig neu und für spezielle Fälle
entwickelten Fertigungslenkungsverfahren machen es unmöglich, alle Verfahren einer eingehenden Analyse zu unterziehen. Da allerdings in vielen Bereichen häufig dieselben oder ähnliche Funktionen bzw. Verfahren8 und Ablaufstrukturen9 der Lenkung genutzt werden10, kann
der Problematik der Vollständigkeit mit der Entwicklung einer möglichst umfassenden Klassifikation sowie einer darauf basierenden einheitlichen und vollständigen Spezifikationssprache
für die Fertigungslenkung begegnet werden. Auf diese Weise können zwar nicht alle, aber der
überwiegende Teil der auftretenden Fertigungslenkungsprobleme abgebildet werden. Die
Beschreibung mit der Spezifikationssprache erleichtert die Vergleichbarkeit und Anwendbarkeit von Fertigungslenkungssystemen und erhöht ihre Flexibilität und Anpassungsfähigkeit.
4.
5.
6.
7.
8.
9.
10.
Vgl. [DaWa97], Vorwort
Vgl. [Pap90], S. 41
Vgl. [Wei94], S. 24 - auf die Problematik der Simulation wird im Anhang näher eingegangen.
Vgl. [Sche91], S. 19
Dabei wird z.B. eine Unterscheidung in exakte und heuristische Verfahren vorgenommen.
Ablaufstrukturen lassen sich z.B. in ereignis- und zeitorientierte Vorgehensweisen untergliedern.
Die Unterschiede in der Fertigungslenkung bestehen in erster Linie im betrachteten Zeithorizont (Bestellzyklus, geplanter Zeitabschnitt), im Verhältnis zur Bearbeitungszeit der Vorgänge bzw. Aufträge
(dabei gibt es Unterschiede von wenigen Sekunden bis mehreren Monaten zu bedenken) und der geforderten und aufgrund der zugrunde liegenden Daten möglichen Genauigkeit der Planung (Fein- bzw.
Grobplanung oder auch bezüglich der Verfahren: exakte oder heuristische Verfahren).
Einleitung
3
Ein entsprechender Gedanke bezogen auf die hierarchische Produktionsplanung, welche die
Fertigungslenkung miteinschließt, findet sich auch bei Switalski: „Aufgrund der Vielfalt realer
Fertigungsstrukturen wird es nie möglich sein, das Konzept der hierarchischen Produktionsplanung soweit zu formalisieren, daß ihre Anwendungen in Form von Standard-Software verwirklicht werden können. Daher wird die praktische Umsetzung auch weiterhin in Fallstudien
erfolgen, wobei für typische Problemstellungen auf den einzelnen Planungsebenen, z.B. aggregierte Planung, Losgrößenplanung und Maschinenbelegungsplanung, durchaus auf Standardmodule zurückgegriffen werden kann“.11 Dieser Gedanke wird hier insoweit fortgeführt, daß
die Klassifikation und die Spezifikationssprache eine einheitliche und allgemeine Darstellung
derartiger Fallstudien ermöglichen und auf diese Weise die Umsetzung in eine Standard-Software entscheidend vereinfachen. Darüber hinaus kann die Spezifikationssprache auch zur
Simulation der Fertigungslenkung bzw. von Teilbereichen der Fertigungslenkung genutzt werden.12 Außerdem erleichtert sie die Einbindung der mit ihr beschriebenen Problemfelder in
den Unternehmensworkflow.13
Es ist der Ansatz dieser Arbeit, in einem ersten Schritt eine vollständige Klassifikation der Fertigungslenkung vorzunehmen. Diese gründet auf einer systematischen Analyse der Problematik und soll strukturelle, auf den Aufbau und den Ablauf bezogene, wie auch funktionale, auf
den Ablauf und die Funktionen bezogene, Elemente in sich vereinen. Auf diese Weise bildet
die Klassifikation die zugrunde liegenden allgemeinen Konzepte der Fertigungslenkung
umfassend ab. Basierend auf dieser Systematik wird dann eine Spezifikationssprache entwikkelt, die es ermöglichen soll, die Fertigungslenkung und die von ihr genutzten Verfahren
umfassend, auf uniforme Weise und problembereichsorientiert zu beschreiben. Diese Sprache
soll sich durch ihre Anwendernähe und leichte Verständlichkeit auszeichnen und mit Hilfe
einer Methodenbibliothek, in der Funktionen und Abläufe der Fertigungslenkung in einer
höheren Programmiersprache standardmäßig hinterlegt sind, direkt in ein ablauffähiges Programm umgesetzt werden.
Die Struktur der Arbeit gliedert sich folgendermaßen: In Kapitel 2 erfolgt zuerst eine Begriffserklärung der im folgenden verwendeten Fachtermini. Daran schließt eine Darstellung der
Anforderung an die Klassifikation an. Um diese Klassifikation mit bereits bestehenden Ansätzen besser vergleichbar zu machen, werden ihre Merkmale und ihr Schema ebenfalls bereits an
dieser Stelle definiert. Anschließend erfolgt eine Beschreibung der Anforderungen an die Spe11.
12.
13.
Vgl. [Swi89], S. 144
Vgl. Abschnitt 8.1 Nutzung der Spezifikationssprache zur Simulation der Fertigungslenkung
Vgl. Abschnitt 8.2 Einbindung der Fertigungslenkung in den Unternehmensworkflow
4
Kapitel 1
zifikationssprache. Kapitel 3 beinhaltet die Darstellung und Evaluierung des Standes der Technik bezüglich der herausgearbeiteten Anforderungen für die Klassifikation und die Spezifikationssprache. In Kapitel 4 erfolgt dann eine kurze Zusammenfassung der noch zu lösenden
Probleme. Kapitel 5 enthält eine ausführliche Beschreibung der Syntax und Semantik der Spezifikationssprache und gibt einige Anwendungsbeispiele der Klassifikation und Spezifikationssprache für Standardverfahren der Fertigungslenkung mit unterschiedlicher Komplexität. Eine
Zusammenfassung der erarbeiteten Ergebnisse und ein Ausblick auf noch zu bearbeitende Probleme bzw. Erweiterungen dieser Arbeit erfolgt in Kapitel 6. Im Anhang werden abschließend
ein möglicher Einsatz der Spezifikationssprache zur Simulation der Fertigungslenkung sowie
die Einbindung der Fertigungslenkung in den Unternehmensworkflow behandelt.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
2
5
Das Problem einer Spezifikationssprache für die Fertigungslenkung
Gegenstand dieser Arbeit ist die Fertigungslenkung, ihre möglichst vollständige Klassifikation
und ihre umfassende, anschauliche und verständliche Beschreibung mittels einer einheitlichen
und robusten Spezifikationssprache.1 Die Basis dieser Klassifikation sowie der Sprache bilden
ein Modell2 der Fertigung sowie die speziellen Abläufe und die Funktionen der Fertigungslenkung. Das Modell ist aus einer systemtheoretischen Betrachtung entstanden und bildet die
Struktur sowie die Daten der Fertigung über der Zeit ab.3 Die Spezifikationssprache, die auf
der Klassifikation aufbaut, soll neben der einheitlichen und problembereichsorientierten Darstellung der Fertigungslenkung eine direkte Umsetzung dieser Problematik in Algorithmen4,
realisiert in einer ablauffähigen Programmiersprache, ermöglichen.
Diese Spezifikationssprache ist notwendig, da es bisher keine standardisierte und vor allem allgemeine Sprache zur Beschreibung der Fertigungslenkung gibt5. Existierende Spezifikationssprachen umfassen zumeist nur Teilaspekte der Fertigungslenkung oder basieren auf bestimmten Planungs- bzw. Steuerungsstrategien, in denen sich in der überwiegenden Zahl der Fälle
die fachliche Ausrichtung der Entwickler wiederspiegelt. Aus diesem Grund erzwingen sie
häufig eine Modifikation und Anpassung der Fertigungslenkung bezüglich ihrer Vorgaben bzw.
Philosophien.
Nach einigen Begriffserklärungen werden im folgenden zuerst die Anforderungen an die Klassifikation für die Fertigungslenkung dargestellt und aufbauend auf ihnen die Klassifikationsmerkmale und ein Schema hergeleitet. Das Kapitel schließt mit der Darlegung der problembereichsunabhängigen und -abhängigen Anforderungen an die Spezifikationssprache für die
Fertigungslenkung.
1.
2.
3.
4.
5.
Vgl. Kapitel 1
Ein Modell ist ein bewußt konstruiertes Abbild der Wirklichkeit, welches auf der Grundlage einer
Struktur-, Funktions- oder Verhaltensanalogie zu dem entsprechenden Original eingesetzt bzw. genutzt
wird, um eine bestimmte Aufgabe zu lösen, deren Durchführung mittels direkter Operation am Original
nicht oder zunächst nicht möglich oder zweckmäßig ist (vgl. [KlBu75]).
Vgl. die Darstellung von MFERT in Abschnitt 2.1.1 Fertigungslenkung
Algorithmen sind Verfahren zur Lösung von Problemen und zwar im Gegensatz zu Programmen allgemeine Lösungsverfahren. Sie bestehen aus einer eindeutig bestimmten Folge von Grundoperationen
und Verfahrensschritten, die entweder von Anfang an festliegt oder jeweils von Ergebnissen vorangegangener Operationen abhängt (vgl. [Kur78], S. 23).
Vgl. [ScDa99]
6
Kapitel 2
2.1 Begriffserklärungen
Da die angesprochenen Begriffe in der Literatur unterschiedlich verwendet werden, erfolgt in
diesem Abschnitt nun ihre Definition und Einordnung.
2.1.1 Fertigungslenkung
In der Literatur wird häufig die Unterscheidung in Fertigungsplanung und -steuerung vorgenommen, wobei unter Fertigungsplanung auftragsunabhängige Maßnahmen, wie z.B. Arbeitsplanerstellung und Betriebsmittelplanung, und unter Fertigungssteuerung die auftragsbezogenen Maßnahmen, wie z.B. Auftragsfolgeplanung und Losgrößenbestimmung, die zur
Durchführung eines Auftrags erforderlich sind, verstanden werden.6 Fertigungssteuerung
umfaßt insoweit zwar die Teilaufgaben Planen, Überwachen und Steuern, jedoch nur, wenn
diese auftragsabhängig sind.7
In dieser Arbeit werden alle Planungs-, Überwachungs- und Steuerungsaufgaben in der Fertigung unter der allgemeinen Aufgabe des Inkonsistenzausgleichs mit dem Begriff Fertigungslenkung zusammengefaßt. Hierbei dreht es sich aber nur um die Planung, Überwachung und
Steuerung von Abläufen und Funktionen, fabrikplanerische Aspekte, wie z.B. Layoutplanung8
oder die Dimensionierung von Kapazitäten9, werden nicht mit berücksichtigt. Außerdem werden neben geplanten, also zukünftigen, auch reale Zustände10 mit in die Definition einbezogen. Die Inkonsistenzen können sich demnach sowohl auf zukünftige als auch auf reale, jetzige
Zustände beziehen.
Definition 1: Fertigungslenkung
Die Fertigungslenkung ist die Aufgabe, für ein gegebenes Fertigungssystem - ausgehend
von gegebenen Daten - Solldaten, die in sich und mit den Ausgangsdaten konsistent sind,
für einen definierten, zielgerichteten Ablauf des Fertigungsprozesses11 festzulegen, dem
Fertigungsprozeß vorzugeben und diesen auf Inkonsistenzen abzuprüfen. Die Fertigungslenkung basiert auf Modellen der Fertigung12, die Informationen über augenblickliche
6.
7.
8.
9.
10.
11.
Vgl. [Swi89]
Vgl. [Röt91], S. 106 ff.
Vgl. [Dan99], S. 245 ff.
Vgl. [Kla99]
Ein Zustand ist ein in der Zeit andauerndes Phänomen und kann jeweils zu einem Zeitpunkt festgestellt
werden (vgl. [Gun85]). Außerdem ist ein Zustand eine Kennzeichnung von Elementen durch die augenblickliche Ausprägung ihrer Merkmale ([DaWa97], S. 19).
Ein Prozeß ist ein sich über eine gewisse Zeit erstreckender Vorgang, also die Durchführung einer Aufgabe, bei dem etwas entsteht bzw. erzeugt wird (vgl. [Du96]).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
7
Zustände, basierend auf Istdaten, und zukünftige Zustände, basierend auf Planungs- bzw.
Prognosedaten, in der Fertigung enthalten. Ihr Funktionsumfang besteht darin, existierende
und entstehende Inkonsistenzen zwischen diesen Zuständen der Fertigung unter Beachtung
der durch die Fertigungsmodelle gegebenen Restriktionen13 und orientiert in Richtung definierter Ziele zu beseitigen.14
Der Leitgedanke der Fertigungslenkung ist somit der ungestörte Ablauf des Fertigungsprozesses. Die benötigten Materialien, Betriebs- und Hilfsmittel (Ressourcen) sollen zum richtigen
Zeitpunkt in der richtigen Menge zur Verfügung stehen. Der Begriff Fertigungssystem, für das
die Notwendigkeit der Lenkung15 besteht, ist in diesem Zusammenhang folgendermaßen zu
verstehen:
Definition 2: Fertigungssystem
Ein Fertigungssystem ist die in eine Struktur gebrachte Gesamtheit der Abläufe, Funktionen
und Informationen (Daten) einer Fertigung.
Zur Modellierung der Organisations- bzw. Datenstruktur der Fertigungslenkung in einem Fertigungssystem werden Fertigungsmodelle genutzt, die einerseits die Informationen über
augenblickliche und zukünftige Zustände der Fertigung und andererseits über gegebene
Restriktionen enthalten, für die Lenkungsnotwendigkeit besteht.
Definition 3: Fertigungsmodell
Ein Fertigungsmodell ist eine Beschreibung eines Fertigungssystems, bestehend aus einer
Beschreibung der Struktur, der Daten (Stamm- und Bewegungsdaten) sowie der augenblicklichen und zukünftigen Ereignisse16 der Fertigung.
12.
13.
14.
15.
16.
Nicht zu verwechseln mit dem Begriff des „Produktionsmodells“, unter dem im Operations Research
die Abbildung der Beziehungen zwischen Produktionsfaktoreinsatz, -verfahren und -ausbringung in
physikalischen Größen verstanden wird.
Restriktionen sind Vorschriften, welche die Unterscheidung legaler von illegalen Belegungen eines
Modells mit Ereignissen ermöglichen. Nach [Schn96] unterteilen sie sich in aufgabenspezifische und
modellinhärente (lokale, topologische, globale) Restriktionen.
Vgl. [DaWa97], S. 3
Lenkungsnotwendigkeit liegt immer dann vor, wenn für gewisse Elemente des Produktionssystems
nach Abschluß eines Teilschritts des Produktionsprozesses nicht genau feststeht, wann und wofür sie
weiterverwendet werden, oder wenn es nicht gelingt, einen mit einheitlicher Taktzeit fortschreitenden
Materialfluß aufzubauen und durch Bedarfsanmeldung aus nachfolgenden Fertigungsstufen eine temporäre Nichtverfügbarkeit entstehen kann (vgl. [DaWa97], S. 4).
Ein Ereignis ist die Änderung eines Zustandes bezogen auf einen Zeitpunkt (vgl. [Gun85]).
8
Kapitel 2
Mit dem MFERT17, dem Modell der Fertigung, ist ein derartiges Modell bzw. ein derartiger
Modellierungsansatz für die Beschreibung und Lenkung jeglicher Fertigungen mit beliebiger
Detaillierung und wahlweisem Umfang entwickelt worden. Im folgenden soll davon ausgegangen werden, daß der zu entwickelnden Klassifikation und Spezifikationssprache ein zuvor erarbeitetes bzw. mit einem speziellen Editor erstelltes Modell der Fertigung in „MFERT-Format“
zugrunde liegt. Dieses wird von der Spezifikationssprache sowohl als Strukturbasis als auch als
Datenbank genutzt.
Der Modellierungsansatz MFERT erlaubt eine einheitliche Darstellung aller relevanten Informationen über den Produktionsprozeß, indem er die Produktionsstruktur und -dimensionen18
aufzeigt, das Prozeßverhalten anhand von Ereignissen, Material-19, Ressourcen-20 und Informationsflüssen exakt wiedergibt und alle, zum jeweiligen Zeitpunkt verfügbaren, Merkmale
bzw. Zustände der Fertigung für Entscheidungen bereitstellt. MFERT ist somit ein generischer
Ansatz, denn aus dem Modell sind beliebige Fertigungslenkungen, die Lösungsmenge des Problems Fertigungslenkung, ableitbar.
Die graphische Repräsentation des Produktionsprozesses erfolgt im MFERT mit Hilfe eines
zusammenhängenden, gerichteten Graphen21 entsprechend der Darstellung in Petri-Netzen.22
Dieser Graph stellt die prinzipiell möglichen Abläufe der Fertigung aus Sicht der Fertigungslenkung dar und strukturiert auf diese Weise den Produktionsprozeß gemäß der sogenannten
Lenkungsnotwendigkeit. Er enthält zwei Sorten von Knoten und zwar Fertigungselementknoten23, die Material, Ressourcen (Fertigungsmittel) oder Fertigungsinformationen abbilden, und
Fertigungsvorgangsknoten24, durch die mögliche Teilschritte des Produktionsprozesses, wie
z.B. Veränderung der Geometrie, des Ortes, Objektzuordnungen usw., die unter Zeitverbrauch
vollzogen werden, dargestellt werden. Die Fertigungselementknoten stellen insoweit Zustände
17.
18.
19.
20.
21.
22.
23.
24.
Vgl. [DaWi93a], [DaGe95], [Schn96] und [Hol98] - in früheren Publikationen wird dieses Modell
MFST (Modell der Fertigungssteuerung) genannt.
Als Dimensionen werden im MFERT die Zeitachse und der Produktionsprozeß bzw. die Richtung des
Arbeitsfortschritts verstanden (vgl. [Schn96], S. 87).
Unter Material werden hier sowohl Produkte in allen Fertigungsstufen (von Rohstoffen über Vorprodukte zu Fertigprodukten) als auch Aufträge verstanden.
Die Ressourcen bzw. Betriebsmittel umfassen Menschen, Maschinen und Hilfs- bzw. Betriebsstoffe
(z.B. geringwertige Zusatzstoffe oder Energie und Schmiermittel).
Ein zusammenhängender, gerichteter Graph ist eine (endliche oder unendliche) Menge von Knoten, die
durch eine (endliche oder unendliche) Menge von Kanten, die mit einer Richtung versehen sind, einander zugeordnet sind. Außerdem sind alle Knoten direkt oder indirekt durch Kanten miteinander verbunden (vgl. [MüMe73] oder [Run90]).
Vgl. [MAS86]
Ein Fertigungselement repräsentiert ein Element des Fertigungssystems in einem steuerungsrelevanten
Zustand (vgl. [Hol98]).
Ein Fertigungsvorgang repräsentiert einen konkreten Teilschritt des Produktionsprozesses und ist eindeutig identifizierbar (vgl. [Hol98]).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
9
der Elemente des Produktionssystems zwischen zwei Fertigungsteilschritten dar. Kanten verlaufen im Modellgraphen nur zwischen zwei Knoten verschiedener Arten. Zur Hervorhebung
der Unterschiede werden Fertigungselementknoten graphisch durch Dreiecke und Fertigungsvorgangsknoten durch Vierecke repräsentiert. Die Knoten können weiterhin unterschiedliche
Detaillierungsstufen der jeweiligen Fertigungselemente oder -vorgänge beschreiben, deswegen
sind sie Repräsentanten für Fertigungselement- und -vorgangsklassen.25 So kann ein Fertigungselement z.B. eine bestimmte Maschine oder auch eine Klasse bzw. Gruppe von gleichen
Maschinen repräsentieren. Jede Knotenklasse besitzt spezielle Attribute, die zur Beschreibung
der Basisstrukturen aber auch zur Angabe von Zeit-, Zustands- oder Mengenrestriktionen dienen. Außerdem können verschiedene Knotenklassen auf differierenden individuellen Zeitmodellen basieren, was zu unterschiedlich strukturierten Ereignisleisten26 führt. Auf diese Weise
ist eine Betrachtung mehrerer Produktionsprozesse über der Zeit möglich. Abbildung 2-1 stellt
ein solches, jedoch aus Gründen der Verständlichkeit und Anschaulichkeit etwas reduziertes
MFERT-Modell für ein Flexibles Fertigungssystem dar.
Vorgang
Transport
Ereignisleiste mit Modellereignissen
Material
Ressource
Abbildung 2-1: Modell eines Flexiblen Fertigungssystems
(vgl. [DaWa97], S. 570 ff.)
25.
26.
Diese Klassen setzen sich aus Fertigungselementen oder -vorgängen mit gleichen Merkmalen, Restriktionen und einer gemeinsamen Steuerungsproblematik zusammen. In [Hol98] werden diese Klassen als
Kategorien bezeichnet.
In Ereignisleisten werden Ereignisse des geplanten oder bereits realisierten Produktionsprozesses eingetragen. Ereignisse können den Ein- und Austritt von Elementen in den Knoten, den Beginn und das
Ende von Teilschritten sowie den Fluß von Elementen in Teilschritte und aus Teilschritten darstellen
(vgl. [Schn96], S. 55).
10
Kapitel 2
Ebenfalls zur Vermeidung von Unübersichtlichkeit ist in dieser Abbildung nur beispielhaft
eine Ereignisleiste für einen Fertigungsvorgangsknoten wiedergegeben. Die Ereignisleiste
repräsentiert das Zeitmodell und die zu bestimmten Zeitpunkten an diesem Knoten stattfindenden Ereignisse. In diesem Fall sind es zum Beispiel die Start- und Endereignisse der Bearbeitungsvorgänge an diesem Vorgangsknoten. Das Modell läßt sich in drei Bereiche unterteilen.
Im oberen Teil der Abbildung wird der Transport des Materials aus dem Lager zu den Bearbeitungsstationen mittels eines Transportsystems dargestellt. In der Mitte befinden sich diese vier
Bearbeitungsstationen, die vom Material linear durchlaufen werden, und im unteren Bereich
ist der Kreislauf der an den Bearbeitungsmaschinen genutzten Werkzeuge abgebildet, der von
diesen zum Werkzeugzentralspeicher und zurück führt.
Die Fertigungslenkung erfolgt auf verschiedenen zeitlichen Ebenen, die abhängig von der Fristigkeit27 der jeweiligen Planung sind. Eine langfristige Planung findet im Rahmen der Fertigungslenkung nicht statt. Unter der mittelfristigen Fertigungslenkung versteht man eine Festlegung von Mengen- und Zeitdaten auf Basis einer Mengen- und Terminplanung in einem
groben Zeitraster. Die kurzfristige Fertigungslenkung hingegen legt mit Hilfe von detaillierten
Losgrößenrechnungen (-bestimmungen) und Reihenfolgeplanungen (Maschinenbelegungsplanungen28) Mengen- und Zeitdaten für ein detaillierteres Zeitraster fest.29
Weiterhin findet die Fertigungslenkung auf unterschiedlichen strukturellen bzw. hierarchischen
Ebenen des Modells statt. In diesen Teilbereichen des Gesamtsystems werden verschiedene
Lenkungsstrategien auf Basis unterschiedlicher Zeitmodelle verfolgt. Ein Beispiel für diese
Strukturierung ist die Unterteilung der Fertigung in einen verbrauchsorientierten Teil, in dem
die Produkte bzw. Vorprodukte mit einem größeren und längerfristig gesicherten Bedarfsverlauf gefertigt werden, und einen bedarfsorientierten Teil, in dem die Fertigung durch Kundenaufträge ausgelöst wird und nur für einen ganz bestimmten Bedarf produziert.30 Ebenso kann
sich die Fertigungslenkung auch nur auf einen Teil des Gesamtmodells beziehen, wenn z.B.
aufgrund einer kurzfristigen Änderung oder Störung das Net-change-Prinzip31 Anwendung
findet, mit dem nur dieses Teilmodell neu geplant bzw. gesteuert wird.
27.
28.
29.
30.
31.
Unter der Fristigkeit der Planung versteht man die Länge des Zeitraums, über den sich die Pläne erstrecken.
Eine Maschinenbelegungsplanung hat die Aufgabe, n Aufträge oder Jobs auf m Maschinen einzuplanen. Dabei müssen die Auftrags- und Maschinencharakteristika sowie die Zielsetzung der Planung beachtet werden.
Vgl. [Mer95] Man spricht hierbei auch von Feinplanung.
Vgl. [DaWa97], S. 260 ff.
Vgl. [DaWa97], S. 321
Das Problem einer Spezifikationssprache für die Fertigungslenkung
11
2.1.2 Fertigungslenkungsverfahren
Auf den beschriebenen zeitlichen und strukturellen Ebenen des Modells sind demnach unterschiedliche Strategien und daraus resultierend auch verschiedene Verfahren zur Fertigungslenkung anzutreffen. Bevor auf diese spezielle Form der Verfahren eingegangen wird, soll die allgemeine Bedeutung des Begriffs geklärt werden.
Definition 4: Verfahren
Ein Verfahren ist die Art und Weise der Durch- bzw. Ausführung von etwas. Äquivalent
dazu kann auch vom Vorgehen bzw. Handeln nach einer bestimmten Methode gesprochen
werden.32
Was unter dem Begriff Fertigungslenkungsverfahren in diesem Zusammenhang zu verstehen
ist, verdeutlicht die folgende Definition.
Definition 5: Fertigungslenkungsverfahren
Ein Verfahren zur Fertigungslenkung ist eine festgelegte oder erzeugte Folge von Transformationen der Solldaten eines Fertigungsmodells, mit der Inkonsistenzen zwischen den
Zuständen und den Zielen der Fertigung unter Beachtung der Restriktionen des Fertigungsmodells vermieden werden.33
Die Verfahren zur Fertigungslenkung operieren demzufolge auf den augenblicklichen und
zukünftigen Zuständen des Fertigungsmodells und transformieren diese, so daß sie den durch
die Fertigungsaufgabe gestellten Anforderungen, nämlich der Konsistenz, den Fertigungsrestriktionen und den Zielen, genügen.34 Ihre Operationen gliedern sich in zwei Teilaufgaben:
Einerseits bestimmen sie den Ablauf des Verfahrens respektive der Verfahren oder die Reihenfolge, in der die Knoten des Fertigungsgraphen und die Zeitpunkte des Planungshorizonts zur
Aufhebung der Inkonsistenzen abgearbeitet werden, und andererseits führen sie die Funktionen an den einzelnen Knoten bzw. Knotengruppen unter Beachtung der dort vorhandenen Prinzipien und Restriktionen durch.35
32.
33.
34.
35.
Vgl. [Du96]
Vgl. [Schn96], S. 9 f.
Vgl. [DaWa97], S. 3
Nach [DaWi93a] ist der Ablauf Aufgabe des globalen Managers, wohingegen die Funktionen lokal an
den Knoten durchgeführt werden (vgl. Abschnitt 3.1.3 Klassifikationen für Fertigungslenkungsfunktionen).
12
Kapitel 2
2.1.3 Klassifikation
Grundlage einer Spezifikation der Fertigungslenkung bildet eine Klassifikation dieses Problembereichs. Bevor indessen der Begriff Klassifikation erklärt werden kann, ist es nötig, seinen Hauptbestandteil „Klasse“ zu definieren.
Definition 6: Klasse
Eine Klasse ist eine Gesamtheit von Individuen mit gemeinsamen, sich von anderen unterscheidenden Merkmalen.36
Insoweit sind in der vorliegenden Arbeit die Problemklassen der Fertigungslenkung, wie z.B.
Ablaufplanungs- oder Bedarfsermittlungsprobleme, relevant. Hieraus ergibt sich nun für eine
Klassifikation die folgende Definition:
Definition 7: Klassifikation
Eine Klassifikation ist eine eindeutige Abbildung (Einteilung) einer Menge von Objekten
(Gesamtheit von Individuen) aufgrund eines oder mehrerer gemeinsamer Merkmale in
Klassen (Gruppen).
Eine Klassifikation teilt folglich eine Gesamtheit von Individuen in Gruppen auf, wobei in dieser Arbeit davon ausgegangen wird, daß jedes Individuum unter Beachtung aller Klassifikationskriterien nur genau einer Gruppe zugeordnet werden kann37, die Gruppen also disjunkt
sind. In der Literatur wird der Begriff „Klassifikation“ hingegen auch für den Prozeß der Suche
nach einer derartigen Klasseneinteilung38, ebenso wie für eine Einteilung in nicht disjunkte
Gruppen verwendet. Jede Klassifikation ist auf ein bestimmtes Ziel ausgerichtet, d.h. sie
genügt gewissen Anforderungen, von denen auch die jeweils gewählten Merkmalsausprägungen abhängen.39
Da die hier definierte Klassifikation darauf ausgerichtet ist, die grundlegenden Konzepte der
Fertigungslenkung herauszustellen und zu systematisieren, müssen noch die Begriffe Fertigungslenkungsfunktion und -ablaufstruktur bzw. -abläufe für diesen speziellen Zusammenhang erläutert werden. Eine Funktion wird allgemein wie folgt definiert:
36.
37.
38.
39.
Vgl. [KlBu75] und [Du96]
Da die Klassifikationskriterien hierarchisch sind, resultiert eine Klassifikation, die nicht alle Kriterien
nutzt, in teilweise nicht disjunkten Gruppen.
Vgl. [Sod74], S. 10 f.
Vgl. [Heb89], S. 32 ff.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
13
Definition 8: Funktion
Eine Funktion ist die Transformation von Material, Information oder Energie aus irgendeinem zeitlichen, stofflichen, strukturellen oder örtlichen Anfangszustand in einen anderen
Endzustand.40
Prozesse stellen die zeitliche Ausführung von Funktionen dar. Funktionen werden an
bestimmte Funktionsträger gebunden, welche die Elemente der Modellwelt darstellen. Darauf
aufbauend ist eine Fertigungslenkungsfunktion folgendermaßen definiert:
Definition 9: Fertigungslenkungsfunktion
Eine Fertigungslenkungsfunktion ist eine Zustandstransformation in einem Fertigungsmodell, mit der Inkonsistenzen unter Beachtung der Restriktionen des Fertigungsmodells und
der Ziele der Fertigungslenkung beseitigt oder vermieden werden.41
Demzufolge läßt sich ein Fertigungslenkungsverfahren, wie es bereits oben definiert wurde,
aus Fertigungslenkungsfunktionen zusammensetzen, wobei jedoch die Ablaufstruktur dieser
Funktionen eine entscheidende Rolle spielt. Die genaue Bedeutung des Begriffs Ablaufstruktur
in diesem Zusammenhang zeigt die folgende Definition.
Definition 10: Ablaufstruktur
Eine Ablaufstruktur stellt die räumliche, zeitliche oder sachliche Strukturierung von Funktionen dar.
Somit repräsentiert die Ablaufstruktur das potentielle Verhalten eines betrachteten Fertigungssystems.42 Gegenstand der Organisation der Ablaufstruktur ist mithin die Untersuchung und
Gestaltung von Raum-, Zeit- und Gruppierungsbeziehungen in der Fertigung und Fertigungslenkung. Hieraus ergibt sich für den Begriff der Fertigungslenkungsstruktur:
Definition 11: Fertigungslenkungsstruktur
Die Fertigungslenkungsstruktur ist die Ablaufstruktur der Fertigungslenkung, d.h. sie
beschreibt die räumliche, zeitliche und sachliche Strukturierung der Fertigungslenkungsfunktionen.
40.
41.
42.
Vgl. [Pap90], S. 63 - Allgemeiner gilt: eine Funktion ist eine eindeutige Abbildung eines Definitionsbereichs in einen Wertebereich (vgl. [FeSi98]).
Vgl. [Fel96], S. 6 oder eine inhaltlich gleichwertige Definition bei [Schn96], S. 120 f.
Vgl. [DaWa97], S. 60 ff.
14
Kapitel 2
Unter Abläufen werden in dieser Arbeit Vorgehensweisen auf Basis einer Ablaufstruktur verstanden. Diese Ablaufstruktur respektive Fertigungslenkungsstruktur basiert auf dem vorgegebenen Zeitmodell und weiteren Festlegungen bezüglich der Fertigungslenkung, wie z.B. der
Lenkungsstrategie. Mögliche Ablaufstrukturen in der Fertigung, die sich gleichzeitig auch auf
die Fertigungslenkung auswirken, sind z.B. Erzeugnisgliederungen nach verschiedenen
Gesichtspunkten, Stücklisten/Teileverwendungsnachweise43, Arbeitspläne44, Netzpläne45
u.a. Da die Auflösung von Inkonsistenzen an einer Stelle eines Produktionsnetzwerkes meistens Inkonsistenzen an einer anderen Stelle hervorruft, gehen viele Fertigungslenkungsverfahren, wie z.B. die Materialbedarfsplanung (MRP)46, entlang dieser Inkonsistenzen vor und
beseitigen sie.
2.1.4 Spezifikationssprache
Formale Spezifikationen47 respektive Beschreibungsformen sind gerade im Bereich der Softwareentwicklung von besonderer Wichtigkeit, da bei der Durchführung von umfangreichen
Softwareprojekten die eindeutige Festlegung der zu lösenden Aufgabenstellung unabhängig
von irgendwelchen Lösungsansätzen ein großes Problem darstellt. Allerdings hat der Begriff
„Spezifikation“ in der Softwaretechnik keine derart präzise Bedeutung wie in den Ingenieurwissenschaften, denn er wird in verschiedenen Zusammenhängen geringfügig unterschiedlich
verwendet.48 In vielen Fällen wird das Wort „Spezifikation“ in der Softwareentwicklung nämlich auch gebraucht, um einen Entwurf bzw. eine Planung auf aggregierter Ebene zu bezeichnen; der Unterschied soll indessen der sein, daß eine Spezifikation beschreibt, was genau getan
werden muß, wohingegen ein Entwurf definiert, wie etwas getan werden muß.49 Der Entwurf
43.
44.
45.
46.
47.
48.
49.
Eine Stückliste ist eine listenförmige Darstellung einer Erzeugnisstruktur in analytischer Sortierfolge.
Sie gibt an, welche Gruppen und Einzelteile mit welcher Anzahl in einem Erzeugnis oder einer Baugruppe enthalten sind. Der Teileverwendungsnachweis hat dagegen eine synthetische Sortierfolge. Es
gibt unterschiedliche Formen der Stückliste bzw. des Teileverwendungsnachweises (vgl. [DaWa97],
S. 225 ff., [Kur93], [Swi89], u.a.).
Arbeitspläne beinhalten die genauen Vorschriften (Arbeitsanweisungen), nach denen ein Produkt hergestellt wird. Demzufolge geben sie die Zuordnung zu den einzelnen Fertigungsmitteln an (vgl.
[Kur93], S. 95).
Ein Netzplan ist eine Darstellung von Vorgängen in ihren zeitlichen Abhängigkeiten, wobei beachtet
werden muß, daß Netzpläne für eine einmalige Ausführung der abgebildeten Vorgänge konzipiert sind.
Die Beschreibung erfolgt mit Knoten und Pfeilen, wobei die Knoten sowohl einen Vorgang als auch
ein Ereignis abbilden können. Im Vordergrund steht der Aspekt der (Projekt-)Steuerung (vgl. [Fah95],
S. 19, [DoDr95], S. 86 ff., [Zäp82], S. 223 ff., [Cor98], S. 459 ff., u.a.).
Material Requirements Planning (vgl. [Orl75])
Der Begriff Spezifikation kommt von dem lateinischen Begriff specificatio, was Auflistung oder Verzeichnis bedeutet (vgl. [Du96]).
Vgl. [GJM91], S. 151 - dort wird zwischen Requirements, Design und Module Specification unterschieden.
Vgl. [LaSc85], S. 271
Das Problem einer Spezifikationssprache für die Fertigungslenkung
15
gibt somit genauere Vorgaben, während die Spezifikation nur einen neutralen Rahmen vorgibt,
der unterschiedliche Implementierungen erlaubt.
Spezifikationen können auf ganz unterschiedliche Weisen repräsentiert werden, wie z.B. mit
natürlicher Sprache, graphischem oder strukturiertem Text. Insoweit stellen auch Modelle, die
mit Modellierungswerkzeugen erstellt worden sind, wie z.B. hierarchischen Netzplänen oder
Petri-Boxen, Spezifikationen dar. Zum Teil wird der Begriff Spezifikation auch für den Entstehungsprozeß der Anforderungsbeschreibung, d.h. als Rahmen für die Erarbeitung und Festlegung der Anforderungen verwendet50, wie z.B. bei der Erstellung eines Softwaresystems.
Abhängig von ihrer jeweiligen Beschaffenheit bzw. der Aufgabe die sie erfüllen soll, ist eine
Spezifikation in vielen Fällen auf eine ganz bestimmte Benutzergruppe zugeschnitten.
Natürliche Sprachen neigen im allgemeinen zu Mehrdeutigkeiten. Da es jedoch zu einer Problemstellung mehrere Lösungen geben kann, ist es wichtig, eine Möglichkeit zu haben, Probleme unabhängig von Lösungsalgorithmen eindeutig und präzise zu formulieren.51 Dieses ist
häufig der Grund für die Nutzung bzw. Entwicklung von Spezifikationssprachen, die den Vorteil eines genauen Zuschnitts auf die problembereichsspezifischen Anforderungen bieten. Als
Voraussetzung für den Aufbau einer derart formalisierten Sprache für ein bestimmtes Wissenschaftsgebiet bedarf es allerdings der genauen Kenntnis und Formulierung ihrer logischen
Struktur.52 Hieraus ergibt sich die nun folgende Definition für Spezifikationssprachen.
Definition 12: Spezifikationssprache
Eine Spezifikationssprache ist ein Darstellungsmittel zur graphischen und/oder sprachlichen Festlegung (Spezifikation) von Systemen.53
Spezifikationssprachen beschreiben detailliert die Funktionen der einzelnen Moduln54 von
Systemen und ihre Beziehungen untereinander. Bisher dienen Spezifikationssprachen vorwiegend der Ausformulierung und Darstellung von erwünschten oder geforderten Eigenschaften
von Systemen. Aufgrund der fortschreitenden Programmiertechnik können allerdings immer
mehr Sprachelemente interpretiert, simuliert oder sogar direkt in imperative Programmiersprachen55 übersetzt werden. Darüber hinaus bildet die Spezifikation den Bezugspunkt für die Kor50.
51.
52.
53.
54.
Vgl. [HeBu87], S. 132
Vgl. [Zei91], S. 145
Vgl. [KiBu75]
Vgl. [DuIn89]
Moduln sind Einzelbausteine eines Gesamtsystems, die unabhängig voneinander realisierbar und in ihrem Zusammenwirken überschaubar sind sowie eine klar definierte Funktionalität besitzen (vgl.
[DuIn89]).
16
Kapitel 2
rektheit des dokumentierten Programms bzw. der Implementierung und kann damit als Grundlage der Verifikation und Validierung genutzt werden. Dabei soll sie jedoch unabhängig von
den Denkweisen einer Implementierung sein, um flexibel in verschiedensten Problemsituationen eingesetzt werden zu können.
Da die Funktionalität der Systeme mit einer Programmiersprache auf einer detaillierteren
Ebene beschrieben werden kann, ist die Spezifikationssprache ihrerseits auch als Metasprache56 zu verstehen. Sie bildet die Basis bzw. den Rahmen einer Implementierung der Systemfunktionalität und an ihr respektive den in ihr beschriebenen Anforderungen kann das entwikkelte Programm evaluiert werden.57Die Architektur einer Spezifikationssprache beschreibt die
notwendigen Komponenten dieser Sprache und ihre Verknüpfung. Ihre Terminologie umfaßt
folgende Teilbereiche:
• Semantik
• Syntax
- Lexikon
- Grammatik
- Präsentation
Die Semantik legt die inhaltliche Bedeutung der verschiedenen Sprachkomponenten fest und
stellt somit die Beziehung zwischen dem darzustellenden Sachverhalt - der Information - und
der gewählten sprachlichen Repräsentationsform her. Ihre Darstellung erfolgt in einer Syntax,
die sich aus mindestens einem Lexikon, einer Grammatik und einer Präsentation zusammensetzt. Im Lexikon wird eine formale Definition der Sprachsymbole bzw. -konstrukte mit ihrer
Deutung bezüglich der Semantik gegeben. Die Grammatik beinhaltet die Regeln zur Kombination der Sprachkonstrukte des Lexikons (Verknüpfungsregeln) und die Präsentation stellt dar,
wie die Konstrukte abgebildet werden. In den Sprachwissenschaften wird einer Sprache noch
eine weitere Dimension zugeordnet und zwar die Pragmatik. Diese umfaßt Kriterien und
Anforderungen, anhand derer die Eignung einer Sprache für einen bestimmten Verwendungs55.
56.
57.
Programme in imperativen Sprachen bestehen aus einer Folge von Befehlen. Wesentlich ist darüber
hinaus das Variablenkonzept. In ihnen spiegelt sich deutlich die Architektur des Von-Neumann-Rechners wieder. Programmiersprachen sind Sprachen zur Formulierung von Rechenvorschriften, d.h. von
Datenstrukturen und Algorithmen, die von einem Computer ausgeführt werden können (vgl.
[DuIn89]).
Eine Metasprache ist eine Sprache, in der über eine andere Sprache gesprochen wird (Unterscheidung
zwischen Objekt- und Metasprache - Theorie der semantischen Stufen). [KlLi76]
Insoweit ist eine Spezifikationssprache vergleichbar mit dem Meta-Modell von Ferstl und Sinz, welches das zur Spezifikation von Modellsystemen verfügbare Begriffsystem festschreibt (vgl. [FeSi98],
S. 120).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
17
zweck gemessen werden kann.58 In Bezug auf die Aufgabe einer Spezifikationssprache hat
demnach die Pragmatik eine besondere Bedeutung.
2.2 Klassifikation für die Fertigungslenkung
Als Basis der zu entwickelnden Spezifikationssprache dient eine Klassifikation der Fertigungslenkung, welche die allgemeinen zugrunde liegenden Konzepte der Fertigungslenkung darstellen und auf diese Weise die Abbildung in der Spezifikationssprache erleichtern und beschleunigen soll. Die Klassifikationsmerkmale leiten dabei hin auf die Konstrukte der
Spezifikationssprache, deren Entwicklung Hauptaufgabe dieser Arbeit ist. Allerdings müssen
die Klassifikationsmerkmale einen anderen und zwar einen geringeren Detaillierungsgrad als
ihre Pendants in der Spezifikationssprache besitzen, da es bei ihnen um eine nicht ins Einzelne
gehende Einteilung in Klassen zur Vereinfachung der Spezifikation und kein individuelles und
detailliertes Herausarbeiten der jeweiligen Fertigungslenkungsproblematik geht. Die Klassifikation ist aus diesem Grund auch nicht dazu bestimmt, Fertigungslenkungsverfahren genauestens zu spezifizieren, sondern sie bietet eine Einordnung zu lösender Entscheidungsprobleme
sowie der zugrunde liegenden Daten- und Ablaufstrukturen.
Im folgenden werden nun zuerst die Anforderungen an diese Klassifikation dargestellt und
anschließend wird bereits in diesem Kapitel eine Systematik hergeleitet, die im Kapitel 3
bestehenden Klassifikationsansätzen der Fertigungslenkung gegenübergestellt wird.
2.2.1 Anforderungen an eine Klassifikation für die Fertigungslenkung
Die Klassifikation der Fertigungslenkung hat die Aufgabe, die spezifischen Kriterien der Fertigungslenkung, d.h. entsprechend Definition 1 die Merkmale des Fertigungssystems und der
darauf ablaufenden Fertigungsprozesse, für die Lenkungsbedarf besteht, umfassend abzubilden. Insoweit stellt sie eine Verknüpfung zwischen Klassifikationen von Fertigungslenkungsstrukturen, -abläufen und -verfahren bzw. -funktionen dar, bildet eine Basis für die zu entwikkelnde Spezifikationssprache und vereinfacht deren Anwendung. Die Kriterien der
Klassifikation beruhen demzufolge sowohl auf faktor-, prozeß- und produktbezogenen Eigenschaften59 der Fertigung, den gegebenen Daten des Fertigungssystems,60 als auch den unterschiedlichen Fertigungslenkungsabläufen. Hinzu kommen noch die Eigenschaften und Vorbedingungen der Fertigungslenkungsfunktionen, den Vorgaben für den Fertigungsprozeß.
58.
Vgl. [LeMa94]
18
Kapitel 2
Allerdings dürfen die Klassifikationsmerkmale nicht zu detailliert sein, um nicht auf diese
Weise eine Gruppen- bzw. Klassenbildung, was ja der eigentliche Zweck der Klassifikation ist,
zu verhindern und nur zur Bildung von einelementigen Mengen zu führen. Genau aus diesem
Grund beziehen sich die Klassifikationskriterien auch nicht auf spezielle Fertigungslenkungsverfahren bzw. -methoden61, sondern auf die zugrunde liegende Fertigungsstruktur, die
Abläufe und die Funktionalität. Die beiden Bereiche Struktur und Funktionalität der Fertigungslenkung bedingen sich dabei durch vielfältige Einflußnahmen gegenseitig. Jedoch soll
die hier zu entwickelnde Systematik auf jeden Fall eine natürliche Klassifikation sein, d.h. die
Implementierungsdetails oder die Realisierung der Kriterien werden nicht mitbetrachtet. Es
wird weiterhin davon ausgegangen, daß die Fertigungslenkung zur Reduktion der Komplexität
in einzelne Teilaufgaben (hierarchisch) zerlegt werden kann62, die wiederum anhand der oben
benannten Merkmale klassifiziert werden können.
Vorrangige Aufgabe der Klassifikation sollen leichte Verständlichkeit und Anwendbarkeit sein,
die durch gute Übersichtlichkeit und eine begrenzte aber trotzdem umfassende Mächtigkeit
(Umfang) der Systematik gewährleistet werden können. Auf diese Weise soll es dem Anwender ermöglicht werden, seine spezielle Fertigungslenkungsproblematik zu klassifizieren und
anschließend in der Spezifikationssprache beschreiben zu können. Es gilt dabei einen Merkmalsraum zu definieren, der sämtliche Klassifikationsmerkmale eindeutig bestimmt, um auf
diese Weise Zugehörigkeits- und damit Einordnungsprobleme zu vermeiden.63 Hieraus ergibt
sich direkt, daß die einzelnen Klassen homogen und disjunkt sein müssen, um Überschneidungen zu vermeiden. Elemente einer Klasse sollen einander möglichst ähnlich (interne Homogenität), Elemente unterschiedlicher Klassen dagegen möglichst unähnlich (externe Isolierung)
sein.64 So kann eine Fertigungslenkungsproblematik schnell und eindeutig zugeordnet werden.
Wichtige weitere Eigenschaften der Klassifikation sollen eine exhaustive Abbildung der Inhalte
(Vollständigkeit), denn es sollen keine möglichen Fertigungslenkungsprobleme ausgelassen
59.
60.
61.
62.
63.
64.
Faktorbezogene Eigenschaften sind z.B. die Qualifikation der Arbeitskräfte oder die Flexibilität des
Einsatzes von Produktionsfaktoren. Prozeßbezogene Eigenschaften sind z.B. die Anzahl der zu durchlaufenden Produktionsstufen oder die vorherrschende Produktionstechnologie. Produktbezogene Eigenschaften sind z.B. die Auslösung der Produktion oder der Grad der Spezifizierung der Produkte
(vgl. [KiSt93], S. 21 ff.).
siehe Definition 1
Methoden sind Funktionen auf den Basisstrukturen, die Zustandsänderungen bewirken (Zustandübergänge). Allgemein wird unter einer Methode ein System von Vorschriften bzw. ein auf einem Regelsystem aufbauendes Verfahren zur Erfüllung von Informations- bzw. Verarbeitungsaufgaben (Erlangung von Erkenntnissen oder praktischen Ergebnissen) verstanden (vgl. [Du96]).
Vgl. [Sche91], S. 14 ff.
Vgl. [Sod74], S. 12
Ebenda S. 119 ff.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
19
werden, sowie eine hierarchische Struktur zur Erleichterung der Einteilung und im folgenden
dann auch der Umsetzung in die Spezifikationssprache sein. Letzteres Merkmal vereinfacht die
Einordnung einer speziellen Fertigungslenkungsproblematik in der Klassifikation, da die Relevanz der Kriterien auf der obersten Hierarchieebene am höchsten ist und somit die Entscheidung bezüglich der Einordnung erleichtert. Außerdem hebt die Hierarchie die Zusammenhänge zwischen den Klassen hervor.
Insgesamt soll es für den Anwender anhand einer diesen Anforderungen entsprechenden Klassifikation möglich sein, seine Fertigungslenkungsproblematik mit anderen zu vergleichen65
und Gemeinsamkeiten sowie Unterschiede herauszustellen. Außerdem soll die Klassifikation
die Entscheidungsbasis dafür bilden, wie die Fertigungslenkung in einem bestimmten Fall zu
erfolgen hat und welches bzw. welche Verfahren66 angewendet werden können. Damit unterstützt sie die Entwicklung67 und Bewertung von alternativen Fertigungslenkungen.68 All dieses findet jedoch auf einer abstrakteren Ebene statt. Zur Durchführung dieses Entscheidungsprozesses bedarf es darüber hinaus noch einer genauen Systematisierung und gleichzeitigen
Bewertung der Fertigungslenkungsverfahren bezüglich der jeweiligen Situation, wie sie in
[Schn96] zu finden ist. Weiterhin ist eine Methode zur Erstellung dieser Verfahren aus Methodenbausteinen, wie sie bei [Fel96] dargestellt wird, ein nützliches Hilfsmittel. Zugleich, und
das ist in diesem Zusammenhang auch ihre Hauptfunktion, soll die Klassifikation einen idealen
Ausgangspunkt für die Darstellung der Sachverhalte in der Spezifikationssprache und damit
eine Vereinfachung der Anwendung dieses Beschreibungsmittels bieten.
2.2.2 Klassifikationsmerkmale der Fertigungslenkung
Eine Klassifikation ist demnach immer eine Einteilung von Elementen bezüglich bestimmter
Kriterien, von denen der Wert der Klassifikation, d.h. ihr Nutzen für das behandelte Problem,
entscheidend abhängt. Dementsprechend gilt es nun zuerst, diese Kriterien festzulegen und zu
beschreiben. Dabei soll der Forderung nach einem begrenzten Umfang der Systematik und
homogenen Klassen besondere Beachtung geschenkt werden. Angelehnt an die Klassifikation
65.
66.
67.
68.
Der Anwender könnte auch auf Grundlage der Klassifikation ein sogenanntes Benchmarking vornehmen, um seine Fertigungslenkung zu vergleichen und zu bewerten. Allerdings ist dafür eine Bewertung
der verschiedenen Klassifikationsmerkmale nötig.
Mit Verfahren sind hier spezielle Verfahren zur Lösung von Entscheidungsproblemen und zwar kombinatorische Optimierungsprobleme, wie z.B. Zuordnungs- oder Reihenfolgeprobleme, gemeint (vgl.
[DoDr95], S. 6).
Indem die Klassifikation die entscheidenden Merkmale systematisiert und somit einen Überblick
schafft, ermöglicht sie auch neue Kombinationen dieser Ausprägungen.
Vgl. Abschnitt 8.1 Nutzung der Spezifikationssprache zur Simulation der Fertigungslenkung
20
Kapitel 2
von Fertigungssteuerungsaufgaben von Schneider69 soll hier ebenfalls anstelle einer Liste von
Merkmalen und deren Ausprägungen das komplexere Konstrukt eines Repräsentanten zur
Beschreibung einer Klasse genutzt werden, um so die Bildung von vielen und sehr unterschiedlich großen Klassen zu vermeiden. Die Darstellung in Form von Repräsentanten trägt
außerdem auch entscheidend zur Verständlichkeit und Übersichtlichkeit der Klassifikation bei
und erleichtert somit die Anwendbarkeit.
Zur Gliederung des Repräsentanten bietet sich die Strukturierung des in Abschnitt 2.1.1 Fertigungslenkung dargestellten Modells der Fertigung an. Eine Aufteilung der Fertigungslenkung,
die sich an Knoten oder Knotengruppen orientiert, kann eine teilweise Unabhängigkeit der einzelnen Abläufe und Funktionalitäten gewährleisten. Eine vollständige Unabhängigkeit kann
und soll jedoch nicht erreicht werden, da wichtige Abhängigkeiten und Einflußnahmen zwischen den einzelnen Teilbereichen bestehen. Die Fertigungslenkung läßt sich so knoten- oder
knotengruppenbezogen beschreiben, was eine intuitive Darstellung erlaubt. Daher wird im folgenden von einer fertigungsstrukturbezogenen Verteilung ausgegangen und es werden Abläufe
und Funktionen, wie sie an Knoten oder Knotengruppen auftreten, untersucht. Somit liegt hier
keine funktional orientierte oder dem Objektprinzip folgende Zerlegung der Fertigungslenkung, wie sie in Zusammenhang mit der Dezentralisierung der Fertigung und der Einführung
von Fertigungsinseln diskutiert wurde70, sondern eine an der Fertigungslenkungsstruktur orientierte Gliederung vor. Sie vermeidet einen hohen Koordinationsaufwand zwischen den Produkten aber auch zwischen den jeweiligen Funktionen über die Produktgrenzen hinweg.
Auf Basis des Modells der Fertigung läßt sich die Struktur der Fertigungslenkung anhand eines
Graphen darstellen, der diese indessen ohne die im Modell enthaltenen Fertigungsdaten, die
Attribute der Knoten (und Kanten), abbildet. Dieser Graph kann hierarchisch in Teilgraphen
zerlegt werden.71 Die zugrunde liegenden Dimensionen dieses Modells sind der Produktionsprozeß bzw. Fertigungsfortschritt, die Zeit(-achse) und die Produkte bzw. Aufträge.72 Zur
umfassenden Beschreibung der Fertigungslenkung bedarf es außerdem noch einer Darstellung
der Abläufe und der Funktionalität in dieser speziellen Fertigung bzw. auf diesen Teilgraphen.
Die Klassifikation der Fertigungslenkung beruht deswegen auf einer Einteilung in die Merkmale Fertigungslenkungsstruktur, -abläufe und -funktionen, wie sie in Abbildung 2-2 verdeut-
69.
70.
71.
72.
Vgl. [Schn96], S. 194 ff.
Vgl. [Schee91], S. 16 ff.
Eine Definition des Begriffs Teilgraphen erfolgt im nachfolgenden Abschnitt; vgl. außerdem die Definition der Mikro- und Makrostrukturen in [Schn96], S. 194 ff.
Vgl. [Schn96], S. 87 f., [Fel96], S. 162 f.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
21
licht wird, wobei der Forderung nach einer hierarchischen Vorgehensweise folgend, zuerst eine
Systematisierung nach dem Merkmal Fertigungslenkungsstruktur vorgenommen wird. Darauf
basierend werden anschließend die Abläufe und Funktionen klassifiziert. Die verschiedenen
Ausprägungen dieser Klassifikationsmerkmale werden im folgenden näher beschrieben.
Fertigungslenkung
Produkte
Zeit
Fertigungsfortschritt
Struktur
Abläufe
Funktionen
Abbildung 2-2: Klassifikation der Fertigungslenkung
2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur
Der auf Basis des Modells der Fertigung erstellte bzw. in diesem Modell enthaltene Fertigungsgraph läßt sich, wie oben bereits angesprochen, in Teilgraphen weiter untergliedern.
Diese sind folgendermaßen definiert:
Definition 13: Teilgraph
Ein Teilgraph73 entsteht durch die Einschränkung des Fertigungsgraphen auf eine Teilmenge seiner Knoten und der sie verbindenden Kanten. Für diese Teilmenge muß weiterhin
gelten, daß sie mindestens aus einem Knoten besteht, der eine bestimmte Funktionalität
besitzt.
73.
Vgl. Definition Teilmodell [Schn96], S. 196
22
Kapitel 2
Die Aufgliederung des Fertigungsgraphen in Teilgraphen kann demnach genau so lange fortgeführt werden, bis die einzelnen Teilgraphen nur noch aus einem Knoten bestehen, der allerdings eine spezifische Funktionalität besitzen muß. Für die hier entwickelte Klassifikation soll
indessen als kleinste Teilmenge des Graphen, bis zu dem dieser zerlegt werden soll, der Strukturprototyp gewählt werden. Dieser ist in Anlehnung an [Fel96]74 wie folgt definiert:
Definition 14: Strukturprototyp
Ein Strukturprototyp beschreibt das Grundmuster der Fertigungslenkungsstruktur unter
Vernachlässigung möglicher mehrfacher Wiederholungen und stellt damit eine redundanzfreie75 Repräsentation wichtiger Struktur- und Funktionseigenschaften dar. Er setzt sich
zusammen aus einem Fertigungsvorgangsknoten und einer beliebigen Menge an Fertigungselementknoten, die mit diesem Knoten verbunden sind und im Falle von Materialknoten seine Vorgänger- oder Nachfolgerknoten bilden.
Der Sinn der Zerlegung von Fertigungsmodellen in Strukturprototypen liegt darin begründet,
daß sich diese Modelle zwar unterscheiden, untereinander und innerhalb eines Modells aber
immer wieder ähnliche Strukturen anzutreffen sind, die gleiche oder vergleichbare Abläufe
und Funktionen aufweisen. Somit können durch die Aufteilung in Strukturprototypen76
Redundanzen vermieden werden. Außerdem vereinfacht die Nutzung von Strukturprototypen
die Modellierung entscheidend und steigert die Verständlichkeit sowie vor allem die Übersichtlichkeit des Modells. In Abbildung 2-3 sind beispielhaft eine Auswahl dieser Strukturprototypen, wie sie in vielen Standardfertigungslenkungsverfahren zu finden sind, und der Metastrukturprototyp, auf den im folgenden noch näher eingegangen wird, im „MFERT-Format“
dargestellt.
Lineare Strukturen finden sich z.B. in der Netzplantechnik aber auch in einfachen Fließfertigungen. In derartigen Fertigungsstrukturen wird ein Fertigungselement in einem Fertigungsvorgang bearbeitet, und es entsteht dabei wieder genau ein Fertigungselement. Kapazitäten
werden im Rahmen dieser Lenkungsprozesse nicht berücksichtigt bzw. nicht verplant. Montage- und Sortier- bzw. Demontagestrukturen werden in der Materialbedarfsplanung genutzt.
In ihnen werden entweder mehrere Fertigungselemente in einem Fertigungsvorgang zu einem
74.
75.
76.
Vgl. auch [DaHo95], [Hol98] und [Schn96]
Vgl. die Darstellung der Reduzierbarkeit von Makrostrukturen in [Schn96], S. 211 ff. und die Reduktion auf Prototypen (Mikrostrukturen) in [Fel96], S. 85 ff. Allerdings ist eine derartige Reduktion hier
nur möglich, wenn die Strukturprototypen gleiche Abläufe und Funktionen besitzen.
Zur Aufteilung eines Netzwerkes in Strukturprototypen vgl. [Fel96], S. 106 ff.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
lineare Struktur
Sortierstruktur
23
Montagestruktur
lineare Struktur mit Ressource
Metastruktur
Abbildung 2-3: Strukturprototypen
anderen Fertigungselement montiert oder ein Fertigungselement wird in mehrere andere Fertigungselemente demontiert. Lineare Strukturen mit einer Ressource sind z.B. bei der Belastungsorientierten Auftragsfreigabe77 anzutreffen, dabei ist jedem Fertigungsvorgang genau
eine Ressource (-klasse) zugeordnet. Der Metastrukturprototyp vereint die Funktionalität aller
möglichen Strukturprototypen in sich und bietet somit eine Abbildung jeglicher alternativen
Strukturen eines Teilgraphen. Er stellt auf diese Weise eine allgemeine Struktur der Fertigungslenkung dar. Es sei in Anlehnung an [Schn96] der Metastrukturprototyp wie folgt formal
definiert:
Definition 15: Metastrukturprototyp
Ein Metastrukturprototyp MSP ist ein 2-Tupel der Art MSP = (Kn, Ka), mit der Knotenmenge Kn = (FVK ∪ FEK) und der Kantenmenge Ka ⊂ ((FVK × FEK) ∪ (FEK × FVK)),
wobei FEK die Menge der Fertigungselementknoten und FVK die Menge der Fertigungs77.
Vgl. Abschnitt 5.4.5.6 Belastungsorientierte Auftragsfreigabe (BOA)
24
Kapitel 2
vorgangsknoten ist. Außerdem gilt: |FVK| = 1, und es gibt v, n ∈FEK für die gilt: v ≠ n und
v ist Vorgänger von FVK und n ist Nachfolger von FVK.
Die Minimalanforderungen des Metastrukturprototypen besagen demnach, daß zwar keine
Fertigungsmittelknoten vorhanden sein müssen, der Fertigungsvorgangsknoten aber mindestens einen eingehenden und einen ausgehenden Materialknoten besitzen muß. Diese Knoten
sind nötig, da sie, wie es in Abbildung 2-4 zu sehen ist, die Schnittstellen zwischen verschiedenen Strukturprototypen darstellen. Falls Fertigungsmittel vorhanden sind, so können sie
sowohl nur für den Vorgang eines Strukturprototypen als auch für beliebig viele Vorgänger-,
Nachfolger- oder parallel ablaufende Vorgänge genutzt werden.
Arbeitspläne78 zeigen für die Erstellung eines Fertigungselements die Zuordnung zu den einzelnen Fertigungsmitteln (Vorgängen) sowie deren Reihenfolge und bestehen im wesentlichen
nur aus Fertigungsvorgangsknoten bzw. -klassen.79 Demnach bilden sie nur einen Teilbereich
der Fertigungslenkung und zwar die Ablaufstrukturen der Vorgänge sowie die ihnen zugewiesenen Fertigungsmittel ab. Weiterhin vernachlässigen sie das Abhängigkeitsverhältnis der Ressourcenbelegung durch unterschiedliche Produkte sowie den Erzeugnisstrukturzusammenhang. Der Metastrukturprototyp bildet Arbeitspläne aus dem oben beschriebenen Grund
erweitert um Fertigungselementknoten ab.80
Im folgenden wird die betrachtete Fertigungslenkungsstruktur, reduziert auf diese Strukturprototypen, klassifiziert. Die so definierten Strukturprototypen beinhalten jedoch keine Modelldaten bzw. Attribute. Steuerungs- und planungsrelevante Informationen bezüglich der Strukturprototypen bzw. ihrer Knoten und Kanten werden durch die Klassifikationskriterien
Fertigungslenkungsabläufe und -funktionen näher beschrieben. Deswegen können einige Fertigungslenkungsverfahren auch gleichartige Strukturprototypen aufweisen, obwohl ihre Funktionalität und die zugrunde liegende Ablaufstruktur verschieden sind.81
Die nachfolgend dargestellten Fertigungslenkungsabläufe verknüpfen die verschiedenen
Strukturprototypen zum Gesamtnetzwerk der Fertigung. Ein weiteres Verbindungsglied zwischen den Prototypen stellt die gemeinsame Modelldatenbasis dar, welche die Stamm- und
Bewegungsdaten der Knoten enthält. Die Ablauf-Verknüpfung einzelner Prototypen erfolgt
78.
79.
80.
81.
Vgl. [DaWa97], S. 238 ff.
Fertigungselemente/-klassen sind nur das Ausgangsmaterial und das Fertigteil des gesamten Arbeitsplans (vgl. [DaWa97], S. 239).
jeweils ein ein- und ein ausgehender Materialknoten
Vgl. [Fel96], S. 85
Das Problem einer Spezifikationssprache für die Fertigungslenkung
25
Abbildung 2-4:Verknüpfung von Prototypen
über die gemeinsamen Material- und Fertigungsmittelknoten, wie es in Abbildung 2-4 anhand
der Materialknoten beispielhaft dargestellt ist. Die Funktionalität dieser Knoten, auf die
anschließend noch genauer eingegangen wird, teilt sich dabei auf die unterschiedlichen Prototypen auf, in denen sie genutzt werden.
2.2.2.2 Klassifikationsmerkmal Fertigungslenkungsabläufe
Abläufe82 sind Vorgehensweisen bzw. Abarbeitungsstrategien, an denen orientiert das Gesamtmodell der Fertigung und bzw. oder Teilmodelle (Substrukturen) durchlaufen werden sowie
die Funktionen an den einzelnen Elementen des Modells, den Knoten83, ausgeführt werden.
Sie basieren entweder auf einer Strukturierung innerhalb des Fertigungsmodells in Teilmodelle, Knotenklassen, Knoteneigenschaften, Fertigungselemente, wie z.B. spezielle Produkte
oder Aufträge, oder Fertigungsereignisse. Anderenfalls bildet eine Strukturierung innerhalb
des Zeitmodells in unterschiedliche Zeitmodelle, Zeitpunktklassen oder Zeitpunkte individuell
ihre Grundlage. In Zusammenhang mit den Modellfakten und den vordefinierten Algorithmen
kann man dieses Ablaufplanungswissen auch als statisch bezeichnen, wohingegen das dynamische Wissen die sich erst im Ablauf entwickelnden oder verändernden Modellfakten umfaßt.
Im Gegensatz zum potentiellen Verhalten stellen der Fluß von Fertigungselementen durch die
Ablaufstruktur und das Zeitmodell das aktuelle tatsächliche Verhalten dar.
Eine Ablaufstrukturierung kann dementsprechend nach den Dimensionen des Modells der Fertigung vorgenommen werden, d.h. nach Prozessen (Arbeitsfortschritt), Produkten und Zeit.84
Der Fertigungsgraph gibt mit der Anordnung der Knoten eine Ablaufstruktur vor, die allerdings auf Relationen zwischen den Knoten, nämlich Vorgänger-Nachfolger-Beziehungen,
82.
83.
84.
Unter Ablaufplanung wird in der Literatur meistens Reihenfolgeplanung, die zeitliche Zuordnung von
gegebenen Aufträgen zur Verrichtung von Tätigkeiten auf vorhandenen Ressourcen unter bestimmten
Bedingungen (Termin- und Kapazitätsrestriktionen) verstanden (vgl. [Sau93]).
Die Kanten besitzen keine Funktionalität (vgl. Abschnitt 5.2.1 Funktionalität an Modellelementen).
Vgl. Abbildung 2-2
26
Kapitel 2
begrenzt ist. Daneben sind aber auch Ablaufstrukturen denkbar, die nicht direkt auf der vom
Graphen vorgegebenen Struktur aufsetzen, sondern Ereignisse und Zeitpunkte einander entgegen der Folgestruktur des Graphen zuordnen und zwar mit zeit-, ereignis- oder knotenorientierter Ablaufreihenfolge, die bestimmten Prioritätsregeln folgt.85 Eine derartige Strukturierung kann auch nach Kunden respektive Aufträgen oder Produkten vorgenommen werden.
Insgesamt muß betont werden, daß jede beliebige Reihenfolge möglich ist, die letztlich zu
einem zulässigen Plan führt.86
Demzufolge gibt es für einen Fertigungsgraphen unterschiedliche Ablaufstrukturen, die
jeweils dem Gesamtgraphen oder einem speziellen Teilgraphen, der auch aus genau einem
Knoten bestehen kann, und somit einer bestimmten Gruppe von Funktionen zugeordnet werden können. Im wesentlichen lassen sich die einzelnen Abläufe jedoch unterscheiden bezüglich der drei Kriterien Ablaufrichtung, -priorisierung und -reihenfolge.
Die Ablaufrichtung teilt sich auf in zwei grundsätzliche Betrachtungsrichtungen87 des Fertigungsgraphens, deren Auswahl von der jeweiligen Sichtweise und Zielsetzung bzw. Orientierung der Terminierung bzw. der gesamten Fertigungslenkung88 abhängt:
• rückwärts
• vorwärts
Diese beiden Vorgehensweisen können auch in Kombination und zwar entweder jeweils auf
Teilgraphen89 oder nacheinander auf den Gesamtgraphen angewendet werden. Bei der Rückwärtsbetrachtung wird von Aufträgen bezüglich bestimmter Fertig- oder Zwischenprodukte
ausgegangen, während die Vorwärtsbetrachtung als Ausgangspunkt vorrätige bzw. zu bestellende Rohstoffe und Vorprodukte hat.
85.
86.
87.
88.
89.
Nach [Hac84] unterteilen sich Prioritätsregeln in lokale (ortsbezogene) und kausale Regeln. Häufig
verwendete elementare Prioritätsregeln sind z.B. die Verspätungsregel, die KOZ (Kürzeste Operationszeit) Regel, die Fertigungsrestzeitregel, die Rüstzeitregel und die FIFO (First In, First Out) Regel
(vgl. auch [Cor98], S. 487 ff.). Diese Regeln können auch auf verschiedene Art und Weise kombiniert
werden.
Vgl. [DaWa97], S. 34
Eine Mittelpunktsorientierung eines Fertigungsgraphen wird hier nicht gesondert betrachtet, da diese
sich aus einer Kombination aus Rückwärts- und Vorwärtsorientierung von Teilgraphen des Gesamtgraphen zusammensetzt.
Mit der Orientierung der gesamten Fertigungslenkung ist das Push- und Pull-Prinzip (Anstoßlogik)
bzw. eine verbrauchs- oder bedarfsorientierte Ausrichtung (Ablauflogik) der Prozesse gemeint (vgl.
[Wie96], S. 14-83 f. und [Wie98]).
Der Fertigungsgraph wird dabei unterteilt in Bereiche, in denen unterschiedliche Ablauflogiken vorherrschen (vgl. Fußnote 87).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
27
Ablaufpriorisierungen bzw. -orientierungen sind entweder auf den Gesamtgraphen oder auf
Teilgraphen bezogen und können untereinander beliebig verschachtelt sein. Sie unterteilen
sich in:
• ereignisorientiert
• zeitorientiert
• knotenorientiert (material-, fertigungsmittel-, vorgangsorientiert)
• produktionsstrukturorientiert (knotengruppenorientiert)
• auftragsorientiert
Das der zeitorientierten Vorgehensweise zugrunde liegende Zeitmodell, wie z.B. der betrachtete Zeithorizont und seine Unterteilung in Zeitabschnitte, ebenso wie die Ereignisse, auf
denen die Ereignisorientierung basiert, werden in der Klassifikation nicht näher bestimmt. Die
knotenorientierte Vorgehensweise basiert auf der Priorisierung einer bestimmten Knotenart.
Ein Beispiel für eine Orientierung nach Knotengruppen ist der dispositionsebenenweise
Ablauf der Materialbedarfsplanung, allerdings ist diese Vorgehensweise auch über eine Aufteilung des Gesamtgraphen in Teilgraphen und eine entsprechende Ablaufpriorisierung auf diesen durchzuführen. Der Auftragsorientierung liegt eine bestimmte Reihenfolge oder Regel
bezüglich der Auftragssortierung bzw. -auswahl zugrunde, die im Rahmen der Klassifikation
ebenfalls nicht näher beschrieben wird.
Ablaufreihenfolgen (Abarbeitungsfolgen90) beziehen sich auf die Abarbeitung von Teilgraphen
untereinander oder Funktionen an diesen Teilgraphen. Sie haben die folgenden Ausprägungen:
• seriell91
• parallel92
• nebenläufig93
Bei der seriellen Ablaufreihenfolge kann ein Teilgraph erst dann abgearbeitet werden, wenn
die Bearbeitung des vorhergehenden vollendet ist. Die Reihenfolge kann durch einen beliebigen Algorithmus definiert werden. Im Gegensatz dazu müssen bei der parallelen Ablauffolge
mehrere Teilgraphen gleichzeitig bearbeitet werden. Im dritten Fall, der nebenläufigen Abar90.
91.
92.
93.
„Die Methoden zur Abarbeitungsfolge geben eine Abarbeitungsvorschrift für die Substrukturen einer
Struktur an und führen diese aus.“ [DaWi93], S. 214
Arbeitsabläufe bzw. deren Einzelschritte heißen seriell, wenn sie nicht gleichzeitig, sondern zeitlich
aufeinanderfolgend durchgeführt werden (vgl. [DuIn89]).
Arbeitsabläufe bzw. deren Einzelschritte heißen parallel, wenn sie gleichzeitig und voneinander unabhängig durchgeführt werden können (vgl. [DuIn89]).
Zwei Vorgänge oder Prozesse heißen nebenläufig, wenn sie voneinander unabhängig bearbeitet werden können [DuIn89], d.h. sie können sowohl seriell als auch parallel ausgeführt werden.
28
Kapitel 2
beitung, können die Teilgraphen sowohl parallel als auch seriell abgearbeitet werden, sie sind
völlig unabhängig voneinander.
Abläufe beinhalten zum Teil auch Ordnungsrelationen, welche die Reihenfolge der Abarbeitung von Ereignissen und Knoten bzw. Knotengruppen weiter spezifizieren. Bei der Vorgehensweise nach Fertigungsmittelknoten sind diese z.B. nach einem bestimmten Kriterium sortiert, so daß der Ablauf mit dem bezüglich dieses Kriteriums wichtigsten Materialknoten
beginnt. So wird z.B. die teuerste Maschine, die unbedingt voll ausgelastet sein muß, zuerst
eingeplant. Diese genaue Spezifizierung der Abläufe kann allerdings in der Klassifikation nicht
vorgenommen werden, da dort, um der Anforderung des begrenzten Umfangs zu genügen,
keine Modelldaten bzw. -attribute betrachtet werden.
2.2.2.3 Klassifikationsmerkmal Fertigungslenkungsfunktionen
Das Klassifikationsmerkmal Fertigungslenkungsfunktion hat die Aufgabe, die den Fertigungslenkungsprozeß charakterisierenden Funktionen zu systematisieren. Funktionen können sich
sowohl auf das Gesamtmodell, auf Teilmodelle oder auf einzelne Elemente (Knoten) des Fertigungsmodells beziehen, wobei außerdem eine Abhängigkeit vom jeweiligen Zeitmodell und
der Ablaufstruktur besteht. In der Klassifikation werden allerdings alle Funktionen auf die
jeweiligen Strukturprototypen, auf deren Basis sie ablaufen, bezogen. Außerdem beinhalten
die hier betrachteten Funktionen keine Aussagen über die Ablaufstruktur, da diese bereits
durch das Klassifikationsmerkmal Fertigungslenkungsabläufe festgelegt ist.
Auf dem Modell der Fertigung basierende Funktionen können sowohl Elementarfunktionen94,
wie z.B. Ändern, Löschen und Erzeugen von Modellelementen, als auch Zuordnungen von
Modellelementen zueinander, wie z.B. Montieren, Aufladen und deren Negationen, Zeitverschiebungen, Zusammenfassungen und Gruppierungen sowie Splittungen des Materialflusses
und logische Vergleiche sein. Außerdem kann eine Funktion auch ein Makro95, d.h. eine Kombination von Elementarfunktionen oder auch anderen Funktionen, sein. All diese Funktionsarten werden zur Fertigungslenkung eingesetzt, allerdings befinden sie sich auf einer sehr niedrigen Detaillierungsstufe, die im Rahmen der Klassifikation nicht betrachtet werden soll. Die
Klassifikation systematisiert die Fertigungslenkungsfunktionen aufgrund ihrer Anforderungen
94.
95.
Elementarfunktionen lösen die einfachsten vorstellbaren Teilaufgaben der Fertigungslenkung, somit
sind sie die algorithmischen Grundbausteine der Lenkung (vgl. [Schn96], S. 164 ff.).
Ein Makro in Programmiersprachen ist eine häufig genutzte Befehls- bzw. Funktionsfolge; sie kann in
Makrobibliotheken gespeichert werden und dient der effektiveren Gestaltung der Programmierung
(vgl. [DuIn89]).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
29
nicht bezüglich ihrer Primitiven, den einfachsten vorstellbaren Teilaufgaben, sondern unterteilt
sie bezüglich der den Funktionen zugrunde liegenden Planungs- respektive Entscheidungsproblemen in Anlehnung an die kombinatorische Optimierung.96 Die auf diese Weise systematisierten Funktionen sind bestimmten Strukturprototypen zugeordnet.
Da es bei der Fertigungslenkung um die Planung, Überwachung und Steuerung von Abläufen
ohne Berücksichtigung von fabrikplanerischen Aspekten geht, werden spezielle Transportprobleme und Probleme der Standortplanung nicht betrachtet.97 Außerdem finden Probleme der
Projektplanung, die in der Regel bei der Vorbereitung und Durchführung von großen Einzelaufträgen auftreten, nur bezüglich ihrer Struktur-, Zeit- und Kapazitätsplanung Beachtung; die
Kostenplanung ist nicht Gegenstand dieser Systematik der Fertigungslenkung. Die Klassifikation unterteilt die Fertigungslenkungsfunktionen somit in Funktionen zur Lösung ablauf-98
und zustandsorientierter (-organisatorischer) Entscheidungsprobleme, wobei deren Lösungsprinzipien nicht in die Kategorisierung miteinbezogen werden, da in der vorliegenden Arbeit
die Spezifikation und nicht die Lösung der Probleme im Vordergrund steht.
Unter ablauforganisatorischen Entscheidungsproblemen werden hier die folgenden verstanden:
• Aufteilungsprobleme (Verteilungsprobleme, mengenmäßige Zuordnung),
• Gruppierungsprobleme (Zusammenfassungsprobleme)
• Reihenfolgeprobleme (zeitliche Zuordnung, Eingangs- und Ausgangsreihenfolge)
Zustandsorganisatorische Entscheidungsprobleme sind:
• Bestand-/Bedarfsermittlungsprobleme (Netto-, Bruttobedarfe)
• Gruppierungsprobleme (Losgrößenbestimmung)
• Terminierungsprobleme
Zur Lösung all dieser Entscheidungsprobleme gibt es spezifische Funktionen. Diese werden
durch bestimmte, im Fertigungsmodell hinterlegte Daten und Regeln, wie z.B. Zeitmodelle,
vorgegebene Zielsetzungen und Restriktionen, beeinflußt und gelenkt. Außerdem ist zu beachten, daß es Interdependenzen zwischen den verschiedenen Problembereichen gibt, wie z.B.
zwischen Arbeitsverteilungs- und Reihenfolgeproblemen.
96.
97.
98.
Entscheidungsprobleme und deren Lösung sind typischerweise die Ansatzpunkte des Operations Research bzw. die Vorbereitung einer Entscheidung im Rahmen eines Planungsprozesses (vgl.
[DoDr95]).
Vgl. [Hac84], S. 3 ff.
Unter Ablauforganisation wird hier die Produktionsprozeßplanung und -steuerung verstanden (vgl.
[DVS93]).
30
Kapitel 2
Die Aufteilungsprobleme beschäftigen sich mit der Festlegung von Arbeits(vor-)gängen, ihrer
zeitlichen und mengenmäßigen Synchronisation99 und der Aufteilung sowie mengenmäßigen
Zuordnung von Fertigungselementen auf Fertigungsvorgangsknoten bzw. Fertigungsvorgängen auf Fertigungselementknoten (bei Ressourcen). Der Aufteilung liegen Regeln zugrunde,
die z.B. bestimmte Verhältnisse zur Verteilung angeben. Gruppierungsprobleme behandeln die
Zusammenfassung von Fertigungselementen (Materialien, Aufträgen).100 Diese Gruppierungen erfolgen ebenfalls nach gewissen Regeln, welche die Art der Zusammenfassung z.B. ebenfalls nach bestimmten Verhältniszahlen bestimmen. In der Reihenfolgeplanung geht es um die
zeitliche Zuordnung von Aufträgen zu Fertigungsmitteln aber auch um die Reihenfolge bei
Gruppierungs- oder Verteilungsproblemen von Elementen. Dabei wird die Reihenfolge durch
unterschiedliche Prioritätsregeln festgelegt.
Die Bestandsermittlung hat zur Aufgabe, aus den eingehenden Angeboten/Bedarfen und den
ausgehenden Angeboten/Bedarfen den Bestand an einem Knoten zu ermitteln. Mit der
Bedarfsermittlung wird im Falle einer Unterschreitung des Mindest- bzw. Sicherheitsbestandes
oder dem Erreichen eines bestimmten Termins ein neuer Nettobedarf ermittelt oder eine
Bedarfsmeldung an vorgelagerte Stufen weitergegeben. Gruppierungsprobleme sind im Rahmen der zustandsorganisatorischen Entscheidungsprobleme die Bestimmung von optimalen
Fertigungs- oder Bestellosgrößen. Die Ausgangs- bzw. Eingangstermine der Fertigungselemente bezogen auf bestimmte Fertigungsvorgänge werden durch die Zustandsfunktion Terminierung bestimmt.
Nachdem nun die einzelnen Funktionen beschrieben sind, ist noch die Frage zu klären, wie
diese Funktionen den verschiedenen Knoten eines Strukturprototypen zugeordnet werden. Terminierungsprobleme lassen sich eindeutig dem Fertigungsvorgangsknoten eines Strukturprototypen zuordnen. Die Bestands- und Bedarfsermittlungsprobleme sowie die ablauforganisatorischen Entscheidungsprobleme dagegen können sich auf verschiedene Knoten beziehen. Ihre
Zuordnung muß durch die Reihenfolge der Darstellung im Klassifikationsschema und die
Ablauforientierung des Teilgraphen festgelegt werden.
99.
Diese Synchronisation von Arbeitsgängen (Vorgängen), wie sie z.B. in seriellen oder parallelen Transformationsprozessen nötig ist (z.B. Fließ-/Montageband), wird auch unter dem Begriff Leistungsabstimmungsprobleme gefaßt.
100.In diesem Zusammenhang geht es nicht um die Festlegung des Anordnungstyps der Fertigung.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
31
2.2.3 Klassifikationsschema für die Fertigungslenkung
Zur Darstellung eines Repräsentanten der Fertigungslenkung dient das in Abbildung 2-5 wiedergegebene Klassifikationsschema, welches eine beliebige Kombination und eine sehr
anschauliche und leicht verständliche Illustration der in den vorherigen Abschnitten beschriebenen Klassifikationsmerkmale ermöglicht.
Funktionen
Funktionen
Ablauf Teilgraph
Ablauf Teilgraph
Ablauf Gesamtgraph
Abbildung 2-5: Klassifikationsschema
Im oberen Abschnitt des Schemas werden die Strukturprototypen dargestellt, aus denen sich
die Fertigungslenkungsstruktur zusammensetzt bzw. auf die sie reduziert werden kann. Als allgemeine Beschreibungsform wurden hier Metastrukturprototypen gewählt. Die Strukturprototypen sind entsprechend der Betrachtungsrichtung des Graphen, bei Mittelpunktsorientierung
auch Teilgraphen, von links nach rechts angeordnet. Prototypen auf einer Fertigungsstufe werden ebenfalls nebeneinander dargestellt. Ihre Verknüpfung ist jedoch nicht direkt aus dem
Klassifikationsschema sondern aus dem zugrundeliegenden Fertigungsgraphen (Modell der
Fertigung) zu entnehmen. In der Mitte des Schemas werden die Funktionen an den Strukturprototypen spezifiziert. Deren Anordnung von oben nach unten entspricht einer Gruppierung
von links nach rechts im Graphen. Fertigungselement- oder Fertigungsvorgangsknoten, die
keine Funktionalität besitzen werden gestrichelt dargestellt.101 Der untere Abschnitt zeigt
einerseits die Ablaufstrukturen der Strukturprototypen bzw. Teilgraphen sowie die Ablaufstruktur des gesamten Fertigungslenkungsgraphen. Insgesamt ergibt sich somit ein übersichtliches sowie leicht verständliches und anwendbares Klassifikationsschema.
101.Vgl.
Abbildung 2-6
32
Kapitel 2
Abbildung 2-6 stellt beispielhaft das Klassifikationsschema einer speziellen Fertigungslenkungsproblematik dar. Die dieser Klassifikation zugrunde liegende Fertigungsstruktur läßt sich
auf zwei Strukturprototypen, „Montagestruktur“ und „lineare Struktur mit Ressource“, reduzieren. Auf diesen Teilgraphen, die miteinander an den Fertigungselementknoten verknüpft
sind, sind jeweils unterschiedliche Funktionen und Abläufe definiert. Der Ablauf der gesamten
Fertigungslenkung erfolgt zeitorientiert und vorwärts. Die Ablaufreihenfolgen wie auch die
einzelnen Funktionen auf den Teilgraphen unterscheiden sich. Die beschreibenden Begriffe
links neben dem Klassifikationsschema dienen zur Verdeutlichung der einzelnen Klassifikationskriterien und ihrer Untergliederung.
Strukturen
Funktionen
Teilgraph
Abläufe
Gesamtgraph
Gruppierungsfunktion
Bedarfsfunktion
Reihenfolgefunktion
Terminierungsfunktion
seriell
nebenläufig
zeitorientiert, vorwärts
Abbildung 2-6: Beispiel eines Klassifikationsschemas
2.3 Anforderungen an eine Spezifikationssprache für die Fertigungslenkung
Die Spezifikationssprache hat die Aufgabe, beliebige Fertigungslenkungsproblematiken formal102 zu beschreiben und damit zur Vereinheitlichung, Normierung und Wiederverwendbarkeit der Lenkungsstrukturen, -abläufe und -funktionen (Verfahren) beizutragen. Sie soll eine
reine Beschreibungssprache und nicht direkt ausführbar sein. Die Vereinheitlichung der Darstellung und die Vollständigkeit der Abbildung sollen eine bessere Vergleichbarkeit von Fertigungslenkungsproblematiken ermöglichen.103 Auf diese Weise können Ähnlichkeiten oder
Übereinstimmungen in unterschiedlichen Fertigungslenkungsverfahren bzw. -systemen, die
102.In
der Informatik werden unter formalen Sprachen solche verstanden, die aus einer Teilmenge, der
Menge aller Wörter, die sich durch die Hintereinanderreihung endlich vieler, nicht notwendig verschiedener Zeichen aus einem vorgegebenen Alphabet, zusammen mit einer Definitionsvorschrift bestehen.
Letztere ist im allgemeinen konstruktiv (vgl. [DuIn89]).
Das Problem einer Spezifikationssprache für die Fertigungslenkung
33
aufgrund verschiedener Begrifflichkeiten oder Beschreibungen nicht direkt erkennbar sind,
herauskristallisiert werden.104 Allerdings erlaubt nur eine formale oder wenigstens halbformale105 Darstellung dabei eine hinreichend präzise und eindeutige Spezifikation. Weiterhin
muß die Sprache offen sein in Bezug auf Form und System respektive unterschiedlichen Sichtweisen und unabhängig von bestimmten Betriebs- oder Branchenspezifika.106 Diese vom
Anwender vorgenommene Beschreibung soll dann eine konsistente und automatische Übersetzung in ein ausführbares Fertigungslenkungsprogramm (-system) in einer höheren Programmiersprache107 ermöglichen, wie es in Abbildung 2-7 symbolhaft dargestellt ist. Somit stellt
die Spezifikationssprache den Übergang zwischen der betrieblichen Problemstellung und der
Lösung des Problems mit Informationstechnik dar, wobei sie gegenüber der Informationstechnik Neutralität bzw. Implementierungsunabhängigkeit aufweisen soll.
Für diese Übersetzung ist es jedoch nötig, daß die Sprache sich aus generischen Konstrukten
eines universellen Modells der Fertigung ableitet108, denn nur so ist eine vollständige und einheitliche Beschreibung möglich. Die Implementierungen dieser Konstrukte sollen im weiteren
in einem Methodenbaukasten entsprechend ihrer Ausprägungen bezüglich der Klassifikationsmerkmale Ablaufstruktur (Abläufe) und Funktion zusammengefaßt werden. Die Ausweitung
auf beliebige Fertigungslenkungsaufgaben bedeutet für die Spezifikationssprache, daß die in
der Zukunft neu entwickelten Fertigungslenkungsfunktionen mit ihr dargestellt und auf diese
Weise ohne großen Aufwand in ein ablauffähiges Programm umgesetzt werden können.109
Dieses erfordert ein hohes Maß an Flexibilität und Anpassungsfähigkeit der Spezifikation. Zur
genaueren Beschreibung dieser allgemeinen Anforderungen wird im folgenden zwischen problembereichsspezifischen und unabhängig vom Problembereich definierten Erfordernissen
unterschieden.
103.Die
Spezifikationssprache beschreibt die Fertigungslenkung somit auf einer detaillierteren Ebene als
die Klassifikation.
104.Als Beispiel hierfür können die Verfahren MRP und OPT dienen, die in einigen Teilbereichen Ähnlichkeiten und Übereinstimmungen aufweisen (vgl. [Bus89]). Siehe auch Abschnitt 5.4 Anwendungsbeispiele für die Spezifikationssprache.
105.Halbformale bzw. semiformale Spezifikationen werden dann genutzt, wenn nicht die Notwendigkeit
einer völlig präzisen Semantik besteht. Diese Spezifikationen beinhalten dann neben formalen auch informale Elemente (vgl. [GJM91]).
106.Vgl. [MSJ94], S. 18 ff.
107.Eine höhere oder auch problemorientierte Programmiersprache ist von der Hardware unabhängig und
an den zu bearbeitenden Problemfeldern orientiert (vgl. [DuIn89]). Es sollen in erster Linie 4GL-Sprachen, also Programmiersprachen der vierten Generation, genutzt werden, die aufgrund ihrer besonderen Eigenschaften bezüglich Programmentwicklung, Anpassungsfähigkeit und Wartungsfreundlichkeit gegenüber anderen Sprachen klare Vorteile bieten.
108.Vgl. [DaWi93a]
109.In den letzten Jahren wurden vor allem Fertigungslenkungsfunktionen für die Flexible Fertigung neu
entwickelt (vgl. [FFG97] und [Scho98]).
34
Kapitel 2
Fertigungslenkung
Spezifikationssprache
Fertigungslenkungssystem
Gesamtgraph, zeitorientiert
Teilgraph, alphabetisch
Teilgraph, Eingangsfunktion,
Zustandsfunktion
Teilgraph, Zustandsfunktion
Abbildung 2-7: Spezifikationssprache der Fertigungslenkung
2.3.1 Problembereichsunabhängige Anforderungen an die Spezifikationssprache
Problembereichsunabhängige Anforderungen beziehen sich vorwiegend auf die Syntax einer
Sprache, allerdings haben sie auf diese Weise auch direkte Auswirkungen auf deren Semantik.
Die meisten allgemeinen Softwareanforderungen bzw. Anforderungen an Programmiersprachen110 tragen ebenfalls zur Entwicklung einer guten Spezifikationssprache bei. Aus diesem
Grund müssen sie in diese Betrachtung miteinbezogen werden. Dabei ist jedoch zu beachten,
daß Spezifikationssprachen im allgemeinen ein anderes Ziel verfolgen als Programmiersprachen111, weswegen sie abstrakter und in den meisten Fällen nicht direkt implementierbar sind.
Außerdem muß berücksichtigt werden, daß die unterschiedlichen Softwareanforderungen teilweise miteinander in Konkurrenz stehen, so daß in jedem einzelnen Fall aufgrund ihrer spezifischen Wertigkeit entschieden werden muß.112
Die folgende Aufzählung gibt sowohl häufig gestellte Softwareanforderungen als auch geforderte Eigenschaften von Spezifikationen wieder:113
• Benutzerfreundlichkeit (Anwenderunterstützung)
• Vollständigkeit (Universalität)
• Zuverlässigkeit
• Konsistenz
• Wiederverwendbarkeit
• Wartbarkeit (Wartungsfreundlichkeit)
Besondere Relevanz für die Spezifikationssprache besitzen aber die im Anschluß nun genauer
ausgeführten Anforderungen. In erster Linie muß die Sprache klar, unzweideutig und verständ-
110.Vgl.
111.Vgl.
112.Vgl.
113.Vgl.
[Seb92], S. 7 ff.
Abschnitt 2.1.4 Spezifikationssprache
[Kur83], S. 124 ff.
[GJM91], S. 154 ff., [Hol98], S. 18 ff.
Das Problem einer Spezifikationssprache für die Fertigungslenkung
35
lich (anschaulich) sein, andernfalls besteht die Gefahr, daß sie aufgrund von Mehrdeutigkeiten
oder Verständnisproblemen nicht zu dem gewünschten Nutzen führt. Diese Anforderung ist
eng mit den Qualitätszielen Benutzerfreundlichkeit und Konsistenz verknüpft. Zur Erleichterung des Umgangs mit der Sprache soll sie ohne spezielle Kenntnisse anwendbar sein und sich
an der Denk- und Arbeitsweise des potentiellen Benutzers orientieren, indem sie z.B. die Fachsprache bzw. das Fachvokabular des Anwenders miteinbezieht.114 Das bedeutet auch, daß die
Sprache sich einer Symbolik bedienen soll, die intuitiv vom Betrachtenden erfaßt werden kann
(Praktikabilität). Eine streng formale Darstellung unterstützt zwar einerseits die Erfüllung dieser Anforderung, andererseits erleichtert sie aber nicht unbedingt die Verständlichkeit und
Anwendbarkeit für den Benutzer, da es ihr an Realitätsnähe fehlt. Gleichzeitig bedingt die
Anforderung der Einfachheit der Sprache eine Begrenzung der Anzahl ihrer Konstrukte auf
eine gut überschaubare Menge.
Spezifikationssprachen sind in vielen Fällen formale Sprachen, was den Vorteil hat, daß die
Menge der Sprachkonstrukte endlich ist. Allerdings ist das Festlegen von einigen komplexeren
Eigenschaften der Konstrukte einer Spezifikationssprache, wie z.B. Makrofunktionen, unumgänglich, um eben gerade ihre Verständlichkeit und Anwendbarkeit zu gewährleisten. Die Verwendung von Elementarkonstrukten, also Konstrukten auf niedrigster Detaillierungsstufe,
würde die Nutzung der Sprache sehr viel unübersichtlicher und komplizierter gestalten. Sie
wäre dann nicht mehr aufgabenangemessen und würde die Erledigung der Arbeitsaufgabe
zwar unterstützen, aber den Benutzer durch ihre besonderen Eigenschaften unnötig belasten.
Eine weitere wichtige Anforderung bei der Entwicklung der Konstrukte ist die der Einheitlichkeit (Homogenität) der Spezifikationssprache ganz im Gegensatz zu der bisherigen Fülle an
unterschiedlichen Beschreibungs- respektive Darstellungsarten für die verschiedenen Teilbereiche der Fertigungslenkung.
Als Beschreibungsform soll also eine allgemeinverständliche (lesbare) aber präzise Syntax
gewählt werden. Auf diese Weise wird das Erlernen und Benutzen der Sprache nicht nur denen
erleichtert, die bereits Kenntnisse über den Gebrauch von Programmiersprachen bzw. formalen
Sprachen besitzen, sondern auch den Nutzern, die keinerlei Wissen in diesem Bereich vorweisen können. Deswegen ist es wichtig, mnemonische Sprachkonstrukte115 zu verwenden, um
die Sprache möglichst problembereichs- bzw. anwendernah116 zu gestalten und damit ihre
Effizienz zu steigern. Die Sprachkonstrukte befinden sich allerdings durch ihre Orientierung
114.Vgl. [Reg96], S. 84
115.Unter mnemonischen
Sprachkonstrukten versteht man Konstrukte, die leicht im Gedächtnis des Anwenders haften bleiben, da sie einen speziellen Bezug zum beschriebenen Sachverhalt haben.
36
Kapitel 2
am Anwendungsbereich und den Anwendern auf einem höheren semantischen Niveau als die
einer herkömmlichen Programmiersprache, was ihre allgemeine Anwendbarkeit einschränkt.
Neben den mnemonischen Sprachkonstrukten soll auch eine gewisse Erwartungskonformität117 bestehen, so daß der Benutzer auf bereits bekannten Vorstellungen und Denkmustern,
also Vertrautem und Gewohntem, aufsetzen kann. Auf diese Weise wird es ermöglicht, mit der
Sprache individuelle Problemstellungen flexibel zu spezifizieren.118
Für die Repräsentation der Konstrukte soll eine Kombination aus sprachlichen und graphischen Elementen in Erwägung gezogen werden. Eine teilweise graphische Repräsentation
ermöglicht eine einfache, klare und übersichtliche Struktur der Fertigung und der in ihr genutzten Abläufe. Dadurch trägt sie zur leichten Anwendbarkeit und konzeptionellen Klarheit bei.
Sprachliche Elemente dagegen sind für die Anwender gerade dann leichter bzw. direkter verständlich, wenn sie ihrem eigenen Vokabular entnommen sind. Außerdem sind sie der Implementierung in einer Programmiersprache näher und erleichtern somit die Umsetzung in eine
solche. Durch die Verknüpfung beider Darstellungsformen, also die Kombination von sprachlichen und graphischen Elementen, kann demnach eine hohe Verständlichkeit und gute
Anwendbarkeit der Spezifikationssprache erreicht werden.
Das Kriterium Vollständigkeit besagt in Bezug auf die Spezifikationssprache, daß diese den
betrachteten Problembereich unter Berücksichtigung aller möglichen Zustände umfassend
abbilden soll. Nur eine vollständige Darstellung erlaubt einen korrekten Vergleich unterschiedlicher Fertigungslenkungsaspekte. Die Konstrukte der Sprache müssen demzufolge alle Daten
des Problembereichs sowie ihre potentiellen Transformationen repräsentieren können, wobei
zukünftige Entwicklungen mit zu berücksichtigen sind.
Deswegen ist eine weitere Anforderung an die Spezifikationssprache, daß sie flexibel sein soll
bezüglich sich verändernder Randbedingungen; sie soll Erweiterungen und Anpassungen
bedingt durch Änderungen des Problembereichs oder der verwendeten Vorgehensstrategien
zulassen, also veränderbar sein. Dieses bedingt eine Offenheit der Sprache bezüglich Form
und System. Da sich Fertigungslenkungsverfahren in einem dauernden Fluß befinden, soll die
Spezifikationssprache soviel Flexibilität besitzen, daß sie auch die Einbeziehung neu entwikkelter Verfahren bzw. Funktionen erlaubt. Dieses wird dadurch erleichtert, daß die Spezifikationssprache sich auf einer aggregierteren Ebene befindet und erst durch die Umsetzung in eine
116.Eine
Software wird als anwendernah (hier synonym zu benutzerfreundlich gebraucht) bezeichnet,
wenn sie den Anforderungen der jeweiligen Benutzerkategorie gerecht wird (vgl. [Kur83], S. 116).
117.Vgl. [Reg96], S. 86
118.Vgl. ebenda S. 179
Das Problem einer Spezifikationssprache für die Fertigungslenkung
37
Programmiersprache die genauen Details, wie z.B. die genaue Implementierung des logischen
Programmablaufs, festgelegt werden. Auf diese Weise wird die Unabhängigkeit der Sprache
von implementierungs- und verarbeitungsspezifischen Aspekten gesichert. Die Beschreibung
in der Spezifikationssprache soll auf diese Weise von Neuerungen oder Änderungen des Problembereichs in den meisten Fällen unberührt bleiben. Eine weitere Gewährleistung der Flexibilität soll durch eine klar definierte Schnittstelle zwischen der Spezifikationssprache und der
Datenbank bzw. der Methodenbibliothek gegeben sein.
Abschließend muß noch einmal betont werden, daß die verschiedenen Anforderungen an die
Spezifikationssprache teilweise miteinander in Konkurrenz stehen, wie z.B. auf der einen Seite
die Forderung nach Formalität zur Vereinfachung der Umsetzung in eine Programmiersprache
und auf der anderen Seite die Forderung nach einer anwendernahen, verständlichen und benutzerfreundlichen Syntax mit mnemonischen Sprachkonstrukten. Hier muß ein Mittelweg gefunden werden, der keine dieser unterschiedlichen Forderungen vollständig vernachlässigt. Insgesamt soll für die Spezifikationssprache der Grundsatz gelten: Die Sprache muß „so einfach wie
möglich und so flexibel wie nötig“ sein.119
2.3.2 Problembereichsabhängige Anforderungen an die Spezifikationssprache
Die Spezifikationssprache soll die Fertigungslenkung einheitlich, umfassend und problemorientiert beschreiben, um somit eine Loslösung von speziellen Sichtweisen und Vorgehensstrategien zu erwirken und eine integrierte Darstellungsform zu erlangen. Auf diese Weise soll sie
die Verknüpfung und den Vergleich unterschiedlicher Methoden und Verfahren der Fertigungslenkung ermöglichen. Weiterhin soll auf Basis der Spezifikationssprache und den spezifischen
Anforderungen der Anwender ein individuelles Fertigungslenkungssystem erstellt werden
können, indem die Beschreibung mit Hilfe einer Methodenbibliothek in ein ausführbares Programm bzw. System umgesetzt wird. Die Verwendung von vorgegebenen Funktions- und
Ablaufbausteinen aus der genannten Methodenbibliothek bei der Übersetzung der Spezifikationssprache in eine problembereichsunabhängige, gebräuchliche Programmiersprache erleichtert die Benutzbarkeit und Wiederverwendbarkeit, wie man es am Beispiel von bausteinorientierten
Simulationssprachen120
oder
Methodendatenbanken
aus
der
Arbeits-
und
Investitionsplanung121 nachweisen kann. Außerdem tragen sie dazu bei, daß das Programm
bzw. System flexibel modifiziert und erweitert werden kann.
119.Vgl.
120.Vgl.
121.Vgl.
[Reg96], S. 179
das Simulationssystem SIMPLE++ der Firma AESOP [SIM93].
[Spu92]
38
Kapitel 2
Die geforderte Vollständigkeit der Spezifikationssprache bedingt die Entwicklung von Konstrukten zur Definition bzw. Spezifikation der zugrunde liegenden Daten- bzw. Graphstruktur
sowie aller Abläufe und Funktionen der Fertigungslenkung. „Ein Fertigungslenkungssystem
kann nur dann eine korrekte - und damit ausführbare - Aussage machen, wenn alle Potentialfaktoren in ihrer begrenzten Verfügbarkeit beschrieben werden.“122 Es muß also ein Beschreibungsmittel für die Daten- bzw. Graphstruktur der Fertigungslenkung zur Verfügung gestellt
werden, das alle möglichen, jetzige sowie zukünftige Zustände abbilden kann. Dieses ist möglich durch eine Darstellung aller Knoten und ihrer Attribute, die sowohl Stammdaten, wie z.B.
zeitliche, zustands- und mengenbezogene Restriktionen123, als auch Bewegungsdaten sein
können, sowie der Kanten des Fertigungsgraphen unter Beachtung bzw. in Verbindung mit
einer Einordnung in die Zeit.
Abläufe sind Ablaufbeziehungen zwischen Funktionen und auf sowie über verschiedenen Teilgraphen, Knoten oder Knotengruppen. Sie bestimmen, wie in Bezug auf die Abarbeitung der
Funktionen und der Teilgraphen, die ihrerseits wiederum Funktionen beinhalten, vorgegangen
wird. Dabei müssen Ablaufrestriktionen und weitere Knotenattribute, wie z.B. Ordnungsrelationen, die in der Daten- bzw. Graphstruktur festgelegt sind, berücksichtigt werden. Neben
seriellen Abläufen ist es nötig, in der Spezifikationssprache auch parallele und nebenläufige
Abläufe von Funktionen darzustellen. Die genaue Detaillierung der Abläufe soll jedoch erst
anhand von Methoden (Algorithmen) auf der Programmebene vorgenommen werden.
Konstrukte für Funktionen haben die Aufgabe, die bereits in der Klassifikation herausgestellten Entscheidungsprobleme zu spezifizieren. Hierbei müssen wiederum in der zugrunde liegenden Daten- bzw. Graphstruktur festgelegte, sich aber möglicherweise über die Zeit
ändernde, Restriktionen sowie weitere Attribute der Knoten Berücksichtigung finden. Aus diesem Grund werden Elementarfunktionen zur Verwaltung der Datenbasis, wie z.B. Lesen,
Schreiben, Erzeugen und Löschen, benötigt. Diese Funktionen wie auch die regulären bzw.
grundlegenden Strukturen einer Programmiersprache, und zwar Ablaufstrukturen, Kontrollstrukturen, elementare Funktionen, arithmetische und Vergleichsoperationen, Variablen124 und
die Kommunikationsstrukturen, finden sich indessen nicht auf der hier betrachteten Abstraktionsebene. Sie werden deswegen auch nicht explizit in Form von Funktionskonstrukten in der
122.Vgl. [DaWa97], S. 17
123.Vgl. [DKS97] und [DaWi93a], S. 23 ff; in [Schn96] wird unterschieden in modellinhärente und aufga-
benspezifische und zwar technologische, organisatorische sowie ökonomische Restriktionen. Restriktionen sind über einem gewissen Zeitraum konstant.
124.Vgl. [Wat90], [LMW86]
Das Problem einer Spezifikationssprache für die Fertigungslenkung
39
Spezifikationssprache behandelt, denn die detailgenaue Darstellung dieser Funktionen und ihre
Aufgliederung in Elementarfunktionen sowie auch die grundlegenden Sprachstrukturen sollen
erst auf der Programmebene in den in einer Standardprogrammiersprache implementierten
Methoden bzw. im Methodenbaukasten vorgenommen werden. Als Daten- und Strukturbasis
dieser auf Grundlage der Spezifikationssprache implementierten Methoden soll das Modell der
Fertigung125 genutzt werden.
Die Spezifikationssprache beschreibt demnach auf einer aggregierten Ebene die Abläufe und
Funktionen auf dem Gesamt- bzw. den Teilgraphen der Fertigungslenkung. Erst durch die
Kombination aus Funktionen und Teilgraphen mit der jeweiligen Ablaufstruktur werden
erstere genauer spezifiziert, und die Umsetzung der beschriebenen Fertigungslenkungsproblematik in ein ausführbares Programm wird möglich.
Die Forderung nach Klarheit und Verständlichkeit führt dazu, daß für die beschriebenen Konstrukte graphische und sprachliche Repräsentanten genutzt werden sollen, wobei die sprachlichen Repräsentanten mnemonische Namen besitzen sollen. Zur Steigerung der Verständlichkeit und Übersichtlichkeit der Fertigungsstruktur soll diese darüber hinaus graphisch
repräsentiert werden. Auf diese Weise werden auch zwei- oder dreidimensionale Darstellungen ermöglicht, die komplexe Strukturen besonders gut visualisieren. Außerdem erleichtert
diese Form der Abbildung eine Evaluierung und Verifizierung der Fertigungslenkung. Die
Abläufe auf den verschiedenen Ebenen des Fertigungsgraphen sollen ebenfalls graphisch, zur
besonderen Verdeutlichung aber unterstützt durch sprachliche Elemente beschrieben werden.
Auch aus Gründen der eindeutigen Repräsentation der Fertigungslenkungsfunktionen sollen
mnemonischen Namen für diese verwendet werden, um den Anwendern ihre Nutzung zu
erleichtern.
Die Spezifikationssprache soll insgesamt betrachtet die Möglichkeit zur Simultanplanung126
bieten. Eine sukzessive Planung127 mit getrennt voneinander und sequentiell ablaufenden Planungsschritten soll nur in dem Fall vorgenommen werden, wenn diese sich in sehr geringem
Maße oder gar nicht gegenseitig beeinflussen. Eine sukzessive Planung ist z.B. auch bei einer
hierarchischen Fertigungslenkung zu bedenken, indessen müssen dabei die Planungen auf den
125.Vgl. die Ausführungen zum Modell der Fertigung in Abschnitt 2.1.1 Fertigungslenkung
126.Unter Simultanplanung wird ein Ansatz verstanden, der die Handlungsalternativen sämtlicher
Teilbereiche in einem Totalmodell erfaßt und eine gleichzeitige Bestimmung der optimalen Werte dieser Alternativen in gegenseitiger Abstimmung vornimmt (vgl. [Cor98], S. 492).
127.Bei einer sukzessiven Planung werden die zu planenden Teilbereiche in einer festzulegenden Reihenfolge nacheinander bearbeitet. Auf diese Weise bleiben Interdependenzen weitestgehend unbeachtet
(vgl. [Cor98], S. 492).
40
Kapitel 2
einzelnen Hierarchiestufen miteinander verknüpft werden.128 Im Vordergrund der Entwicklung dieser Spezifikationssprache soll aber die Forderung nach einem umfassenden und flexiblen Beschreibungsmittel stehen, das gänzlich unabhängig von den verschiedenen Lenkungsstrategien in der Fertigung und damit umfassend einsetzbar ist.
Ablaufstrukturen
MFERT
Modellgraph
Datenbasis
Richtung, Priorisierung
Reihenfolge
Spezifikationssprache
Lenkung von Strukturprototypen
Lenkung von Teilmodellen
Funktionen
Entscheidungsprobleme
Lenkung des
Gesamtmodells
Abbildung 2-8:Elemente der Spezifikationssprache
Mit Hilfe des Methodenbaukastens soll die Spezifikationssprache direkt in Programme umgesetzt werden können. Die Bausteine sollen dabei in einer problembereichsunabhängigen höheren Programmiersprache implementiert werden, damit sie universell einsetzbar und wiederverwendbar sind. Diese Wiederverwendbarkeit und die Möglichkeit, den Baukasten um neue
Methoden zu erweitern, tragen nachhaltig zur Flexibilität der Spezifikationssprache bei. Die
einzelnen Methodenbausteine sind Algorithmen zur Lösung von Teilaufgaben des Fertigungslenkungsproblems. Zum Teil sind sie miteinander vergleichbare Algorithmen, d.h. sie verfolgen verschiedene Strategien und bewirken damit eine unterschiedliche Güte der Problemlösung, aber sie können gegeneinander ausgetauscht werden.129 Dabei sollen sie einerseits
Abläufe und andererseits Funktionen der Fertigungslenkung darstellen.
Die Spezifikationssprache soll eine unkomplizierte Abbildung und Auswahl dieser Algorithmen ermöglichen, indem sie die Ablauf- und Funktionsregeln respektive -restriktionen anhand
der Daten- bzw. Graphstruktur vorgibt, nicht jedoch die genaue Implementierung dieser Algo-
128.Vgl.
129.Vgl.
[KiSt93]
[DaWi93b]
Das Problem einer Spezifikationssprache für die Fertigungslenkung
41
rithmen. Somit müssen diese Vorgaben nicht unbedingt nur auf genau einen Algorithmus
zutreffen, so daß auch unterhalb der Spezifikationssprache, d.h. auf einer detaillierteren Ebene,
noch in einigen Fällen eine Entscheidung bezüglich der Anwendung eines bestimmten Algorithmus getroffen werden muß. Diese Entscheidung soll allerdings möglichst auf Basis einer
simulativen Erprobung der Auswahlmöglichkeiten oder Erfahrungen aus der Vergangenheit
vorgenommen werden.130
Zusammenfassend muß in Bezug auf die problembereichsabhängigen Anforderungen an die
Spezifikationssprache hervorgehoben werden, daß sie die Kernforderungen an die Sprache darstellen. Im Gegensatz zu den problembereichsunabhängigen Anforderungen, die von einer großen Zahl an unterschiedlichen aber nur teilweise thematisch verwandten Beschreibungssprachen erfüllt werden, macht erst die Berücksichtigung der speziellen Probleme des Bereichs
Fertigungslenkung die hier geforderte Spezifikationssprache aus. Insoweit muß bei der Entwicklung dieser Sprache vorrangig darauf geachtet werden, daß sie die Daten- und Graphstruktur, die Abläufe und nicht zuletzt die Funktionen der Fertigungslenkung in geeigneter,
und zwar in problembereichsorientierter und anwendungsnaher, Weise repräsentiert.
130.Vgl.
Anhang 8.1 Nutzung der Spezifikationssprache zur Simulation der Fertigungslenkung
42
Kapitel 2
Stand der Technik
3
43
Stand der Technik
Dieses Kapitel stellt bestehende Ansätze zur Klassifikation und existierende Spezifikationssprachen für die Fertigungslenkung bzw. für Teilbereiche der Fertigungslenkung dar und evaluiert ihre Eignung bezüglich der im vorhergehenden Kapitel dargestellten Forderungen an die
Lösung der dort beschriebenen Problematik. Der Bewertung der Klassifikationsansätze liegen
dabei nicht nur die genannten Anforderungen sondern auch die in Kapitel 2 bereits entwickelte
Klassifikation für die Fertigungslenkung zugrunde. Weiterhin muß bei der Validierung dieser
Ansätze besonders beachtet werden, daß das entscheidende Ziel der Klassifikation die Erleichterung der Beschreibung in bzw. der Nutzung der Spezifikationssprache, also eine mächtige
aber gut verständliche und damit leicht anwendbare Systematik ist. Die Zielvorstellung für die
Sprache ist eine einheitliche, umfassende und problembereichsorientierte Darstellung der Fertigungslenkung, die es erlaubt, die so beschriebene Problematik direkt in ablauffähige Algorithmen in einer problembereichsunabhängigen Programmiersprache umzusetzen.
Sowohl in Bezug auf die Klassifikation als auch auf die Spezifikationssprache werden im folgenden einerseits existierende Konzepte aus dem Themenbereich der Fertigungslenkung1, die
bezüglich ihrer Inhalte bzw. Semantik, der inhaltlichen Strukturierung und ihrer formalen
Beschreibung zu bewerten sind, und andererseits Konzepte aus verwandten Themengebieten,
deren formale Struktur bzw. Syntax den dargestellten Anforderungen entsprechen, einer Evaluation unterworfen. Ein weiteres Unterscheidungsmerkmal der untersuchten Ansätze ist ihr
Abstraktions- respektive ihr Detaillierungsgrad. Aufgrund der Verschiedenartigkeit der zu
betrachtenden Konzepte werden in den folgenden Analysen jeweils zuerst allgemeinere und
themenübergreifende Ansätze in ihrer Gesamtheit betrachtet. Anschließend wird auf die Eignung einiger spezieller Aspekte dieser Konzepte sowie spezifischere Konzepte, die sich nur auf
Teilbereiche der Fertigungslenkung beziehen, zur Klassifikation bzw. als Spezifikationssprache für die Fertigungslenkung eingegangen.
3.1 Klassifikationen für die Fertigungslenkung
Zur Klassifikation der Fertigungslenkung sind in der Literatur eine große Zahl sehr unterschiedlicher Ansätze zu finden. Wie oben bereits angedeutet, betrachten viele von ihnen jedoch
entweder nur Teilbereiche bzw. -probleme der Fertigungslenkung (PPS), wie z.B. bestimmte
1.
Da der Begriff Fertigungslenkung in der Literatur nicht einheitlich verwendet wird, werden hier Ansätze aus dem gesamten Bereich der Produktionsplanung und -steuerung (PPS) untersucht.
44
Kapitel 3
Fertigungslenkungsverfahren oder -aufgaben, oder auch nur spezielle Betriebstypen2. Ihnen
liegt demnach entweder eine Orientierung nach Aufgaben oder nach Strukturen zugrunde.
Mögliche Ausprägungen der verschiedenen Ausrichtungen dieser Ansätze sind Abbildung 3-1
zu entnehmen. Sie stellen entweder eine umfassende Systematik der Fertigungslenkung oder
spezieller Fertigungssysteme, Fertigungssteuerungsaufgaben oder Fertigungslenkungsverfahren bzw. -methoden, also von Teilaspekten der Fertigungslenkung, dar.3
aufgabenorientiert
strukturorientiert
problemorientiert
zeitorientiert
auftragsorientiert
prozeßorientiert
produktorientiert
Abbildung 3-1:Orientierungen der Klassifikationsansätze
Andere Klassifikationsansätze basieren vorrangig auf bestimmten Planungskonzepten respektive Vorgehensstrategien4, wie z.B. dem Sukzessivplanungskonzept, das der Fertigungslenkung eine starre Gliederung (Struktur), ein Blockkonzept5, vorschreibt, oder bestands- bzw.
engpaßorientierten Steuerungskonzepten. Auf diese Weise werden von den Ansätzen nur spezielle Sichten auf die Fertigungslenkung bzw. deren Teilbereiche dargestellt. In einigen Fällen
umfassen diese Klassifikationen aber auch die gesamte Produktionsplanung und -steuerung
und gehen somit, was den von ihnen betrachteten Problembereich angeht, über den der Fertigungslenkung, wie er in dieser Arbeit definiert wurde6, hinaus. Ihre Einteilung in Klassifikationskriterien beruht auf struktur- und prozeßorientierten Fragestellungen der Planung.7 In der
vorliegenden Arbeit werden jedoch Planungsprobleme, die sich mit der Struktur des Unternehmens bzw. der Produktion befassen, ausgeklammert, da sie nicht Teil der Fertigungslenkung
sind, die von einem gegebenen Fertigungssystem ausgeht und sich nur mit prozeßorientierten
Fragestellungen und zwar der Lenkungsstruktur der Prozesse befaßt.
2.
3.
4.
5.
6.
7.
„Betriebstypen unterscheiden sich in ihren Sichtweisen auf das in der realen Welt existierende System
der Unternehmung.“ [MSJ94], S. 25. Nach [DaWa97], S. 9 ff. sind Betriebstypen Kombinationen von
verschiedenen Betriebsmerkmalen, wie z.B. Erzeugnisspektrum, -struktur, Fertigungsart u.a.
So beziehen sich die bisherigen Ansätze zur hierarchischen Produktionsplanung sämtlich auf eine
ganz bestimmte Produktionssituation, andere Probleme werden ausgespart (vgl. [Swi89], S. 50).
Vgl. [Wie98], S. 86 ff.
Vgl. die Unterteilung der Produktionsplanung in die Planung des Produktionsprogramms, der Bereitstellung der benötigten Produktionsfaktoren und die Planung des Produktionsprozesses in [Gut79] und
die hierarchische Planung und Unterscheidung in strategische, taktische und operative Planung in
[Schn94], [DSV93] und [Swi89], S. 7 ff.
Vgl. Definition 1, S. 6
Vgl. [Brü95], S. 2 ff.
Stand der Technik
45
Die in Kapitel 2 entwickelte Klassifikation bildet im Gegensatz zu den meisten bisherigen
Ansätzen durch eine kombinierte Betrachtung der Teilbereiche Fertigungslenkungsstrukturen,
-abläufe und -funktionen die gesamte Fertigungslenkung ab. Sie geht dabei lenkungsstrukturorientiert vor, indem sie von einer Gliederung der Fertigung in Strukturprototypen ausgeht8
und diese Prototypen durch Angabe der auf ihnen durchzuführenden Abläufe und Funktionen
näher spezifiziert. Als Grundlage dient ihr das Modell der Fertigungssteuerung9, welches das
gegebene Fertigungssystem und die ihm zugrunde liegenden Daten abbildet.
Zwar kann diese Klassifikation aufgrund der Forderung nach einer umfassenden Abbildung
der Fertigungslenkung bei gleichzeitig angestrebter Verständlichkeit und Anwendbarkeit nicht
so detailliert sein, wie einige der im folgenden noch ausführlicher dargestellten Ansätze, und
bezieht deswegen z.B. die Aufgaben und Ziele von Fertigungslenkungsverfahren nicht mit ein.
Sie erlaubt aber durch ihre Systematisierung nach Fertigungslenkungsstruktur, -abläufen und
-funktionen einen vollständigen Überblick über die verschiedenen Ausprägungen der Fertigungslenkung. Es ist im weiteren nun herauszustellen, inwiefern die bisherigen Klassifikationen einerseits als Vorlagen der hier entwickelten Systematik dienen können, andererseits aber
auch die gestellten Anforderungen nicht erfüllen bzw. ihnen sogar widersprechen. Dabei wird
zuerst auf umfassende Klassifikationen der Fertigungslenkung bzw. Produktionsplanung und
-steuerung aus verschiedenen verwandten wissenschaftlichen Forschungsfeldern eingegangen,
um die Sinnhaftigkeit der Unterteilung der Klassifikation der Fertigungslenkung in die Kategorien Strukturen, Abläufe und Funktionen herauszustellen. Anschließend werden existierende
Systematisierungsansätze zu diesen drei Teilbereichen eingehend untersucht.
Die Analyse der Klassifikationsansätze beginnt mit der, dem weit verbreiteten Sukzessivplanungskonzept folgenden Gliederung nach Zeitbezug und Funktion, die bei verschiedenen
Autoren zu finden ist.10 Im Anschluß daran wird die detaillierte Systematisierung von (diskreten) Produktionsprozessen durch Schomburg11 näher betrachtet. Als weitere umfassende Klassifikationsansätze aus dem Bereich der Produktionswirtschaft und Wirtschaftsinformatik
(Unternehmensmodellierung) werden dann CIM-OSA12, das Aachener PPS-Modell13, das
ARIS-Konzept von Scheer14, die Dimensionierung von Wiendahl und Balve15 sowie das
8.
9.
10.
11.
12.
13.
14.
Vgl. Abschnitt 2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur
Vgl. Beschreibung des Modells der Fertigung in Abschnitt 2.1.1 Fertigungslenkung
Vgl. [Kur93], [Hac84], [Swi89] u.a.
Vgl. [Scho80] - ähnliche Typologien wurden auch in [Hoi93] in Anlehnung an [Hah72] und [Hac89]
entwickelt.
Vgl. [AMI89] und [MSJ94], S. 59
Vgl. [Scho98], S. 10 f.
Vgl. [Schee98], S. 10 ff.
46
Kapitel 3
Modell und die Klassifikation für die Fertigungssteuerung von Schneider16 untersucht. Diese
Konzepte erlauben eine breitere, d.h. über den Themenbereich Fertigungslenkung hinausgehende, Nutzung und sind somit vielfältig einsetzbar. Gleichzeitig bilden Sie aber auch die Fertigungslenkung detailliert und umfassend ab. Auf spezielle Teilbereiche dieser Ansätze wird
darüber hinaus in der anschließenden Betrachtung der drei Klassifikationskriterien noch näher
eingegangen. Vorher werden jedoch einige Klassifikationsansätze aus dem Operations Research bezüglich der hier spezifizierten Anforderungen analysiert.
Das Sukzessivplanungskonzept, das darauf beruht, die verschiedenen Teilbereiche der Fertigungslenkung getrennt und nacheinander zu bearbeiten, hat zur Differenzierung in die zeitorientierten Kategorien, strategische, taktische und operative Planung, geführt.17 Die Funktionen
dieser Bereiche lassen sich noch weiter untergliedern. So umfaßt die operative Planung, die in
etwa der hier betrachteten Fertigungslenkung entspricht, die Teilbereiche:18
• Produktionsprogrammplanung
• Bedarfsplanung
• Terminplanung
• Maschinenbelegungsplanung
Die Problematik dieser Gliederung liegt in der nicht vorhandenen eindeutigen Festlegung der
Zeitbezüge und damit der fehlenden Trennung zwischen den unterschiedlichen Funktionsbereichen. Teilweise werden diese Bereiche von Autoren auch verschieden genutzt, so daß es zu
Überschneidungen bezüglich ihrer Funktionen kommt.19 Außerdem ist die beschriebene Klassifikation im Konzept des sukzessiven Planens verankert und erlaubt nur bedingt eine Loslösung hin zur flexiblen Simultanplanung. Diese ermöglicht es erst, Einflüsse zwischen Mengen-, Zeit- und Kapazitätsplanung abzubilden. Somit ist die Sicht bzw. Abbildungsmöglichkeit
durch diese Gliederung sehr eingeschränkt und erlaubt keine vollständige Klassifikation der
Fertigungslenkung.
Eine etwas anders geartete Klassifikation, die ebenfalls die Fertigungslenkung abbildet, stellt
die Kategorisierung nach Betriebstypen von Schomburg20 dar. Seine Systematik beruht auf
dem Standpunkt, daß Produktionsunternehmen sich neben den hergestellten Produkten und
15.
16.
17.
18.
19.
20.
Vgl. [WiBa98]
Vgl. [Schn96] Klassifikation für Fertigungssteuerungsaufgaben und -verfahren
Vgl. [DSV93], S. 2, [Brü95], S. 3 f., [Kur83], S. 15 f., [Zäp82], S. 34 ff.
Vgl. [Kur83], S. 16 f.
Vgl. [Schn96], S. 39 ff.
Vgl. [Scho80]
Stand der Technik
47
ihrer Größe hauptsächlich darin unterscheiden, welche Organisationsform in der Fertigung
vorherrschend ist. Er typisiert demzufolge Produktionsunternehmen nach den folgenden Produktionsmerkmalen:
• Erzeugnisstruktur
• Auftragsauflösungsart
• Dispositionsart
• Beschaffungsart
• Fertigungsart
• Fertigungsablauf
• Fertigungsstruktur21
Seine Systematisierung beinhaltet neben Kriterien zur Klassifikation der Eigenschaften und
Struktur der Fertigung auch solche zur Klassifikation der Struktur und des Ablaufs der Fertigungslenkungsverfahren. Allerdings geht er dabei nicht näher auf die einzelnen Funktionen
und Abläufe dieser Verfahren ein. Darüber hinaus sind seine Merkmale aufgrund ihrer rein
verbalen Beschreibung teilweise etwas ungenau. Insofern kann dieser Klassifikationsansatz
zwar zur Ermittlung betrieblicher Anforderungen von Fertigungslenkungssystemen genutzt
werden, jedoch verwendet Schomburg auch einige Kriterien, wie z.B. die Auftragsauslösungs22
und die Beschaffungsart23, die für die hier geforderte Klassifikation der Fertigungslenkung
nur indirekt und in begrenztem Maße Relevanz besitzen und zwar indem sie Abläufe und
Funktionen beeinflussen. Andererseits bleiben einige wichtige steuerungs- und planungsrelevante Aspekte, wie z.B. Restriktionen oder Zeitbezüge, in seiner Klassifikation unbeachtet.24
Die im europäischen ESPRIT-Projekt entwickelte „Open System Architecture for CIM“
(CIM-OSA) stellt einerseits ein Rahmenwerk der Systemintegration dar, das die Grundlage der
Unternehmensmodellierung bildet, und andererseits eine informationstechnische Umgebung,
die das implementierte rechnergestützte Modell mit den steuernden Informationssystemen verknüpft. Allgemeine Konstrukte ermöglichen Einheitlichkeit im Vorgehen und in der Beschreibung der Modelle. CIM-OSA ist untergliedert in vier Sichtweisen:
• Organisationssicht
21.
22.
23.
24.
Fertigungsstruktur bezeichnet bei Schomburg die Tiefe des Fertigungsprozesses bei der Herstellung
der Erzeugnisse. Dieses steht nicht ganz im Einklang mit dem Begriffsverständnis in dieser Arbeit
(vgl. Abschnitt 2.1 Begriffserklärungen).
Die Auftragsauslösungsart beschreibt die Bindung der Fertigung an den Absatzmarkt.
Die Beschaffungsart stellt den Umfang des Einsatzes von fremdbezogenen Materialien und Halbfabrikaten im Rahmen der Fertigung dar.
Vgl. [Fel96], S. 53
48
Kapitel 3
• Ressourcensicht
• Informationssicht
• Funktionssicht
Bezüglich jeder dieser Sichten gibt es als weitere Strukturierungen auf der einen Seite die
Modellierungsebenen Anforderungen, Design und Implementierung sowie auf der anderen
Seite die Architekturebenen generische Bausteine, partielle Modelle und spezifische Modelle.
Der Modellierungsansatz von CIM-OSA ist ereignisorientiert und basiert auf Prozessen
(Geschäftsprozessen). Nach Aussage seiner Entwickler ist er geeignet für die Analyse, das
Design und die Spezifikation von Unternehmen und deckt dabei den Material-, Informationsund Steuerungsfluß in einheitlicher Weise ab.25 Somit ist der durch dieses Rahmenwerk klassifizierte Bereich weitaus umfassender als der in dieser Arbeit geforderte und nicht speziell auf
die Problematik der Fertigungslenkung ausgerichtet. Dieses weite Spektrum erschwert die
Anschaulichkeit und Anwendbarkeit der Strukturierung. Außerdem fehlt eine Verknüpfung
zwischen den Sichten, so daß Zusammenhänge und gegenseitige Einflußnahme der Bereiche
unbeachtet bleiben. Vorteilhaft an diesem Ansatz ist dagegen die Verwendung von generischen
Bausteinen, die universell einsetzbar sind und als Vorbild der hier zu entwickelnden Methodenbausteine für die Spezifikationssprache dienen können.
Das Aachener PPS-Modell wurde entwickelt, um das Erarbeiten von PPS-Konzepten, die
Erstellung von PPS-Systemen oder auch die Reorganisation der PPS zu unterstützen. Innerhalb
dieser Projekte sollen verschiedene Teilaspekte der PPS aus unterschiedlichen Blickwinkeln
beschrieben und damit die Ermittlung von PPS-Zielausprägungen sowie die Anwendung von
Gestaltungs- bzw. Optimierungsmethoden unterstützt werden. Insoweit lassen sich eindeutige
Parallelen zur Aufgabenstellung der hier entwickelten Klassifikation ziehen. Zur Hervorhebung der verschiedenen Teilaspekte des Fertigungsmodells nimmt das Aachener PPS-Modell
ebenso wie auch CIM-OSA eine Unterteilung in vier Referenzsichten vor, die für bestimmte
Verwendungszwecke prädestiniert sind:
• Aufgabensicht
• Prozeßsicht
• Funktionssicht
• Datensicht
25.
Vgl. [Ver93], S. 66 f.
Stand der Technik
49
Jedoch umfassen die Kern- und Querschnittsaufgaben des Modells auch Aufgabenbereiche,
die entsprechend der in Kapitel 2 angeführten Definition nicht zur Fertigungslenkung gehören.
Somit wird durch dieses Modell ebenfalls ein größerer Problembereich klassifiziert, als aufgrund der Aufgabenstellung gefordert ist, worunter einerseits die Übersichtlichkeit und andererseits der Bezug zur speziellen Problematik der Fertigungslenkung leidet. Außerdem sind die
verschiedenen Sichten des PPS-Modells durch unterschiedliche Darstellungsarten und Formulierungen stark voneinander abgegrenzt, was ihre Integration und damit eine einheitliche und
umfassende Abbildung erschwert. Die Systematisierung nach Auftragsabwicklungsprozessen,
Funktionen und Daten ermöglicht jedoch eine eindeutige und vollständige Darstellung der Fertigungslenkung und wird deswegen in etwas abgewandelter Form in der vorliegenden Arbeit
verwendet. Die Abwandlung bezieht sich dabei in erster Linie auf die Prozeßreferenzsicht, die
im Aachener PPS-Modell auf Aufträge bzw. Auftragsprogramme bezogen ist, während in der
hier entwickelten Klassifikation Prozesse der Fertigungslenkung mit ihrer Ablaufstruktur und
Funktionalität in Strukturprototypen im Vordergrund stehen. Die auftragsorientierte Ausrichtung des Aachener PPS-Modells aber beschränkt die Allgemeingültigkeit und Anwendbarkeit
dieses Ansatzes, da sie eine spezielle Sichtweise auf die Fertigungslenkung vorschreibt. Der
Ansatz dieser Arbeit dagegen läßt verschiedene Orientierungen zu und erleichtert damit dem
Nutzer die Anwendung, da dieser seine eigene Sichtweise, insofern sie mit der geforderten
nicht konform ist, nicht erst konvertieren muß. Daneben folgt das Aachener PPS-Modell einer
sukzessiven Planung nach dem MRP-Konzept26, wodurch eine weitere klare Einschränkung
des betrachteten Problembereichs erfolgt und die Anforderung einer exhaustiven Abbildung
nicht mehr erfüllt ist.
Eine weitere Klassifikation für die Fertigungslenkung bietet Scheer mit seinem Konzept
„Architektur integrierter Informationssysteme“ (ARIS). Dieses hat zur Aufgabe, betriebswirtschaftliche Tatbestände, welche die Basis von Informationssystemen, wie z.B. auch Fertigungslenkungsystemen, bilden, zu beschreiben. ARIS beinhaltet ein Modell für Unternehmensprozesse, welches aufgrund seiner hohen Komplexität ebenfalls in verschiedene Sichten
unterteilt ist und darüber hinaus ein Konzept verschiedener Beschreibungsebenen mit unterschiedlicher Nähe zur Informationstechnik besitzt. Die Zerlegungssystematik des Modells
basiert auf den Charakteristika Daten, Funktionen und Organisation. Um die Zusammenhänge
26.
Bei der Materialbedarfsplanung (MRP - Material Requirements Planning) werden ausgehend von prognostizierten Primärbedarfsmengen der Endprodukte Sekundärbedarfsmengen an Zwischenprodukten
und Rohstoffen als Grundlage für die Losbildung auf allen Dispositionsstufen bestimmt (vgl.
[KiSt93], S. 43 ff.).
50
Kapitel 3
zwischen diesen drei Sichten nicht zu verlieren, wird mit der Steuerungssicht die Verbindung
zwischen den anderen Komponenten hergestellt, und alle Sichten werden auf diese Weise zu
einem erweiterten Vorgangskettenmodell zusammengefaßt. Die Beschreibungsebenen besitzen
jeweils spezifische Beschreibungssprachen, die im Abschnitt 3.2 Spezifikationssprachen für
die Fertigungslenkung näher betrachtet werden. Das ARIS-Konzept nimmt eine, dem Aachener PPS-Modell ähnliche, Systematisierung relevanter Modellaspekte vor, indem es den Organisationsaspekt miteinbezieht. Dabei geht es zwar von einer prozeßorientierten Sichtweise der
Fertigung aus, was jedoch ebenfalls eine Einschränkung darstellt, da sie Orientierungen nach
den Dimensionen Zeit, Produkt oder Aufgabe nicht miteinschließt. Hinzu kommt auch hier,
daß der klassifizierte Bereich über den Problembereich Fertigungslenkung hinausreicht. Allerdings bildet die Aufteilung in Daten-, Funktionen- und Steuerungssicht eine geeignete Grundlage zur Klassifikation der Fertigungslenkung und stellt eine exhaustive Abbildung der Inhalte
dar.27 Trotzdem entspricht diese Gliederung im ARIS-Konzept aufgrund ihrer Detailliertheit
einerseits und der vielfältigen und nicht einheitlichen Darstellungsformen in den einzelnen
Sichten andererseits nicht den Anforderungen an die Klassifikation bezüglich einer leichten
Anwendbarkeit und guten Übersichtlichkeit.
Ebenso wie im Aachener PPS-Modell untergliedern Wiendahl und Balve28 die PPS in vier
Dimensionen. Allerdings gehen sie dabei nicht von verschiedenen Sichtweisen sondern den
unterschiedlichen Elementen dieses Problembereichs aus. Abgeleitet von den vier entscheidenden Fragen im Rahmen der Produktionsplanung und -steuerung: „Was?“, „Wieviel?“,
„Wann?“ und „Wo?“ bzw. „Durch wen?“, nehmen sie eine Strukturierung in die folgenden
Dimensionen vor:
• Produkt
• Auftrag
• Ressource
• Prozeß
Jede dieser Dimensionen ist durch eine große Zahl verschiedener Beschreibungsgrößen mit
jeweils speziellen Ausprägungen charakterisiert, wodurch die Klassifikation ein sehr weites
Spektrum umfaßt. Allerdings sind die möglichen Ausprägungen dieser Größen nur beispielhaft
und nicht vollständig vorgegeben, so daß kein detailliertes Schema zur genauen Systematisie27.
28.
Zu beachten ist hier weiterhin, daß auch Scheer in seinem Y-Modell ([Schee98], S. 91 ff.) von einer
Sukzessivplanung ausgeht.
Vgl. [WiBa98]
Stand der Technik
51
rung der PPS gegeben und außerdem die Vergleichbarkeit von Ausprägungen klar eingeschränkt ist. Obendrein entspricht diese Klassifikation somit nicht den Forderungen nach
Übersichtlichkeit und begrenzter Mächtigkeit. Das Ableiten von Gestaltungsempfehlungen für
die Auswahl bzw. Neugestaltung von PPS-Konzepten auf Basis dieser nicht vollständigen
Abbildung ist nur schwer möglich, da nicht alle Kriterien des jeweiligen Problems beschrieben
werden. Indessen ist die Klassifikation und Konzeption der PPS-Prozesse abgeleitet aus den
Strukturvorgaben der Dimensionen und entsprechender Methoden ein probates Mittel, bei dem
es nur an der fehlenden Einbeziehung der Abläufe mangelt. Die von Wiendahl und Balve angestrebte gleichzeitige Berücksichtigung von Aspekten der Produktions- und Produktstrukturierung zur Vereinfachung der Planungs- und Steuerungsabläufe ist in der hier entwickelten Klassifikation durch das zugrunde liegende Modell der Fertigung und die Nutzung von
Strukturprototypen, von denen beide Strukturarten abgebildet werden, gegeben.
Schneider29 führt ihre Klassifikation von Fertigungssteuerungsaufgaben und -verfahren30 nach
gemeinsamen Problem- oder Lösungseigenschaften und speziellen Modelleigenschaften des
Modells der Fertigungssteuerung31 durch. Sie gründet ihren Ansatz auf Arbeiten zur Klassifikation von Ferstl und Sinz32, die in ihrem Semantischen Objektmodell (SOM) eine explizite
Modellierung von Aufgaben vornehmen. Im Gegensatz zu bisherigen Klassifikationen aus der
Produktionswirtschaft und anderen Wissenschaftsgebieten, die in erster Linie problemrelevante Eigenschaften des Produktionsprozesses, wie z.B. die Produktionsart, den Produktionstyp u.a., oder der Produktionsplanung und -steuerung sowie den Zeitbezug und die Funktionalität durch Merkmale systematisieren, stellt Schneider Ziele und Fragestellungen der
Fertigungssteuerungsaufgaben in den Vordergrund. Dieses entspricht nur begrenzt den hier
gestellten Anforderungen, nach denen die Klassifikation eine Einordnung der zu lösenden Entscheidungsprobleme und ihrer zugrunde liegenden Fertigungslenkungstruktur und -abläufe als
Grundlage der Spezifikationssprache vornehmen soll. Die Ziele bzw. Lösungen dieser Entscheidungsprobleme stellen kein Klassifikationskriterium dar.
Schneider nimmt im Rahmen der Klassifikation also eine klare Trennung zwischen Fertigungssteuerungsaufgaben und -verfahren vor, sieht jedoch andererseits auch eine enge Verknüpfung
29.
30.
31.
32.
Vgl. [Schn96], S. 194 ff.
Auf die von Schneider vorgenommene Klassifikation von Fertigungssteuerungsverfahren wird im Abschnitt 3.1.3 Klassifikationen für Fertigungslenkungsfunktionen noch näher eingegangen.
Zur Beschreibung des Modells der Fertigung(-steuerung) siehe Abschnitt 2.1.1 Fertigungslenkung.
Schneider hat einerseits ein Modell für Fertigungssteuerungsaufgaben und andererseits ein Modell für
Fertigungssteuerungsverfahren entwickelt.
Vgl. [FeSi98], S. 172 ff.
52
Kapitel 3
dieser beiden Bereiche, was sie durch die gemeinsame Basis, das Modell der Fertigungssteuerung, verdeutlicht. Anstelle einer Merkmalsliste als Beschreibung der von ihr definierten Klassen entwickelt Schneider Repräsentanten33, in denen mehr Information über die Problemstruktur erhalten bleibt und die gleichzeitig einen hohen Grad an Verständlichkeit und
Anwendbarkeit besitzen. Dabei geht sie davon aus, daß Fertigungssteuerungsaufgaben hierarchisch in unabhängige Fertigungssteuerungsteilaufgaben zerlegt werden können und nimmt
deswegen eine Untergliederung in Mikro- und Makrostrukturen34 vor, auf die im folgenden
noch näher eingegangen wird. Im hier entwickelten Klassifikationsansatz wird dagegen die
gesamte Fertigungslenkung strukturbezogen und nicht in Aufgaben und Verfahren aufgesplittet systematisiert. Aus diesem Grund enthält diese Klassifikation neben dem Kriterium Fertigungslenkungsstruktur, das, abgesehen von dem höheren Aggregationsgrad, weitestgehend
den Merkmalen Graph des Produktionsablaufs aus den Mikro- und Makrostrukturen entspricht, noch die Kriterien Fertigungslenkungsabläufe und -funktionen zur Systematisierung
der Verfahren bzw. Methoden der Fertigungslenkung. Zwischen diesen einzelnen Teilstrukturen bestehen aber ebenfalls enge Verbindungen. Ausgangspunkt der Klassifikation von Schneider, wie auch der hier entwickelten Systematisierung, ist das Modell der Fertigung (-steuerung), das die Eigenschaften dieses Problembereichs umfassend abbildet.
Die Nachteile der Klassifikation von Schneider sind einerseits die Trennung von Fertigungssteuerungsaufgaben und -verfahren, die eine einheitliche und umfassende Klassifikation der
gesamten Fertigungslenkung erschwert, und andererseits die aufgrund ihrer Detailliertheit sehr
komplizierte und arbeitsaufwendige Anwendung der Repräsentantenschemata. Die hier entwickelte Klassifikation nimmt keine derart detaillierte Strukturierung respektive Beschreibung
vor, wie sie durch die Untergliederung in Mikro- und Makrostrukturen entsteht, da sie als
Grundlage der Spezifikationssprache die Aufgabe einer Vorstrukturierung erfüllt.35 Vielmehr
verwendet sie aggregiertere Modellstrukturen und zwar Strukturprototypen, die jedoch ebenfalls aufgrund der dargestellten Vorteile dieser Abbildungsart mit Repräsentanten beschrieben
werden. Die Nutzung dieser Prototypen ist für die Anwender in der Fertigung, die bei der in
dieser Arbeit entwickelten Klassifikation im Vordergrund stehen, weitaus unkomplizierter und
damit effizienter durchführbar. Die zu lösenden Entscheidungsprobleme und die ihnen
zugrunde liegenden Vorgehensweisen werden darüber hinaus durch die verwendeten Klassifi-
33.
34.
35.
Zur Definition von Repräsentanten siehe Abschnitt 2.2.2 Klassifikationsmerkmale der Fertigungslenkung
Zur Definition von Mikro- und Makrostrukturen siehe [Schn96], S. 196 ff.
Sie ist sozusagen der Wegbereiter der Spezifikationssprache.
Stand der Technik
53
kationsmerkmale Abläufe und Funktionen genauer spezifiziert als in der Klassifikation von
Schneider. Auf diese Problematik wird im Rahmen der Untersuchung der Klassifikationen für
Fertigungslenkungsfunktionen noch näher eingegangen. Dagegen werden das Formalziel der
Fertigungssteuerungsaufgabe und spezielle Ereignistypen nicht in die Systematik miteinbezogen, da die Funktionen und Abläufe einer Fertigungslenkungsproblematik, nicht aber die
Lösung bzw. das Ziel, klassifiziert werden sollen.
Neben diesen Klassifikationen aus der Produktionswirtschaft und Wirtschaftsinformatik, welche die Fertigungslenkung entweder in verschiedene Sichten unterteilen oder sie nach ihren
Elementen strukturieren, werden im weiteren auch Ansätze aus dem Bereich Operations Research untersucht. Bei diesen geht es im allgemeinen um die Lösung spezieller Entscheidungsprobleme der Fertigungslenkung mit Hilfe von Algorithmen (Verfahren) auf Basis eines
mathematischen Modells. Außerdem behandeln sie die Analyse und Bewertung der Lösungen
dieser Probleme.
Brucker36 nimmt in seiner auf Schedulingprobleme37 zugeschnittenen Klassifikation eine
Strukturierung dieses Problemfeldes nach drei Hauptkriterien vor: den Job- oder Auftragscharakteristika, den Maschinencharakteristika (Nachfolgestruktur) und der Zielfunktion bzw. -setzung.38 Sein Klassifikationsschema geht auf die Arbeiten von Conway, Maxwell und Miller39
zurück und hat folgende Form:
1. Job- oder Auftragscharakteristika
• Anzahl der Jobs (Tätigkeit bestimmter Dauer)
• Kapazitätsrestriktionen (Anzahl der Maschinen)
• Unterbrechbarkeit
• Bereitstellungstermine (Auftragsfreigabetermine)
• Einschränkungen der Durchführungsdauern (Bearbeitungszeiten)
• Reihenfolgebeziehungen:
• Montagestruktur
• Sortierstruktur
• Baumstruktur
2. Maschinencharakteristika (Nachfolgestruktur):
36.
37.
38.
39.
Vgl. [Bru81]
Schedulingprobleme sind Probleme der Maschinenbelegung, in denen es um die Ausführungsreihenfolge von Aufträge auf Maschinen geht.
Vgl. [DSV93], S. 253 ff.
Vgl. [CMM67]
54
Kapitel 3
• voneinander unabhängige Jobs
• Open-shop
• Flow-shop
• Job-shop
3. Zielfunktion
Die einzelnen Jobs lassen sich in verschiedene Arbeitsgänge unterteilen, zwischen denen häufig spezielle Beziehungen bestehen. Allerdings ist dieser Klassifikationsansatz von Brucker auf
die Kapazitätsplanung (Maschinenbelegungsplanung) beschränkt. Mengenplanungsprobleme
sowie Mengenrestriktionen, die wichtige Kriterien für die Fertigungslenkung darstellen, werden nicht beachtet. Außerdem ist die betrachtete Fertigungslenkungsstruktur sehr begrenzt,
und einige der Maschinencharakteristika werden nur in speziellen Ausprägungen betrachtet.
Aus diesem Grund ist die Systematik zwar für die Darstellung bestimmter Schedulingprobleme geeignet, sie erlaubt aber keine umfassende Abbildung der Problematik der Fertigungslenkung. Brucker klassifiziert dementsprechend nur reduzierte Problemstellungen, so daß sich
insbesondere wichtige Aspekte der Ablaufplanungsprobleme aufgrund der vielen einschränkenden Annahmen nicht adäquat darstellen lassen.40 Weiterhin ist die mathematische Modellierung einerseits praxisfremd bzw. -fern und andererseits starr und unflexibel bezüglich
zukünftiger Änderungen und Entwicklungen.
Indessen sind die betrachteten Job- und Maschinencharakteristika auch entscheidende Inhalte
des Klassifikationskriteriums Fertigungsstruktur in der hier entwickelten Klassifikation, das
durch den Modellierungsansatz MFERT abgebildet wird. Das Modell bzw. der Modellgraph
stellt sowohl Nachfolgebeziehungen zwischen Jobs respektive Produktbeziehungen, wie z.B.
Montage- oder Sortierstrukturen, als auch die Relationen zwischen den Maschinen bezüglich
der einzelnen Jobs dar. Weitere Charakteristika, wie z.B. Auftragszahl, Unterbrechbarkeit,
usw. werden durch die Attribute und Restriktionen im Modell bzw. in der Modelldatenbank
abgebildet. In den folgenden Abschnitten, die sich speziell auf die drei entwickelten Klassifikationskriterien beziehen, werden einige Besonderheiten der Klassifikation von Brucker noch
eingehender behandelt.
Ein weiterer beachtenswerter Ansatz ist die Modell- und Algorithmenbank von Stanek.41
Diese ist deswegen von Interesse, da sie Modelle und Algorithmen zur Homogenisierung,
Dimensionierung und Verifikation von Fertigungssteuerungstrategien bereitstellt. Somit bietet
40.
41.
Vgl. [Sau93], S. 23
Vgl [Sta88]
Stand der Technik
55
sie auch eine Abbildung der Fertigungslenkung. Als zentrales Problem der Fertigungslenkung
sieht Stanek die Lösung des reihenfolgeabhängigen Prozesses der Maschinenbelegung und in
Abhängigkeit davon die Lösung anderer Teilprozesse der Fertigungssteuerung an. Seine
Modelle und Algorithmen basieren auf der Graphentheorie. Er systematisiert sie durch eine
aus drei Ebenen bestehende Hierarchie des Fertigungsprozesses, die mit der Gliederung im
Rahmen des Sukzessivplanungskonzepts vergleichbar ist, da die einzelnen Ebenen unterschiedliche Zeitbezüge besitzen. Allerdings umfassen die zweite und dritte Ebene dieser Hierarchie Aufgaben, die nicht zur Fertigungslenkung, wie sie hier definiert ist, gehören. Auf der
ersten Ebene, auch Fertigungsplanung genannt, definiert Stanek neun Grundfunktionen:
• Aufbau der Simulationsreihenfolge für Neuvorgaben
• Ermittlung der Systemeinschleustermine und der Systemeinschleusreihenfolge
• Ressourcenoptimierung
• simultane Durchlaufplanung
• Arbeitsplatzgruppenbelegung
• Planung der Prozeßvoraussetzungen
• Arbeitsplatzbelegungssimulation
• Vorabforderung von Prozeßvoraussetzungen
• dialoggestützte Arbeitsplatzzuordnung
Diese Aufzählung der Funktionen bzw. Algorithmen kann jedoch nicht als Klassifikation verstanden werden, dazu fehlt eine erkennbare Systematik. Stanek beschreibt die Struktur der Fertigung als Vorgangsknotengraphen, verknüpft diesen allerdings nicht mit den herausgearbeiteten
Grundfunktionen.
Außerdem
bieten
seine
Graphen
zwar
die
Möglichkeit
Reihenfolgeprobleme, wie z.B. durch den Einsatz von Prioritätsregeln, zu lösen, sie sind
jedoch nicht geeignet für die Bestands- und Bedarfsermittlung, die ebenfalls sehr wichtige
Aspekte der Fertigungslenkung darstellen. Demzufolge beschränkt sich dieser Ansatz wie
auch schon der von Brucker nur auf Teilbereiche der Fertigungslenkung und kann keine vollständige Klassifikation bieten.
Insgesamt läßt sich bezüglich der Klassifikationen aus dem Operations Research feststellen,
daß sie fast immer zu abstrakt und zur reinen Erklärung nicht aber zur Anwendung gedacht
sind. Außerdem betrachten sie nur spezielle Teilbereiche der Fertigungslenkung und diese wiederum unter einschränkenden Annahmen, so daß eine derartige Klassifikation niemals, wie
gefordert, exhaustiv sein kann. Schließlich erfordern sie auch stets eine mathematische Model-
56
Kapitel 3
lierung, die den Anforderungen nach leichter Verständlichkeit und Anwendbarkeit widerspricht.
Die in Kapitel 2 zur Klassifikation vorgenommene Aufteilung in Strukturen, Abläufe und
Funktionen der Fertigungslenkung, insbesondere die Trennung von Abläufen und Funktionen,
findet sich in Ansätzen bereits bei Hartmann. Er definiert seine Methoden zur Definition von
Funktionshierarchien und Abläufen, die er zusammensetzt zu Methoden zur Definition von
hierarchischen Abläufen, auf der Basis des Modells der Fertigungssteuerung, welches die
zugrunde liegende Struktur abbildet.42 Allerdings geht es bei Hartmann um die Klassifikation
von Methoden zur Definition hierarchischer Abläufe, also nur um einen Teilbereich der Fertigungslenkung. Sein Ansatz wird deswegen im Rahmen der Analyse von Klassifikationen für
Fertigungslenkungsabläufe in Abschnitt 3.1.2 im Detail behandelt.
Die Gliederung in Strukturen, Abläufe und Funktionen wird auch in der Strukturierten Programmierung, einer Entwurfsmethodik aus der Softwaretechnik, genutzt, die im Rahmen der
Spezifikationssprache in Abschnitt 3.2 ebenfalls einer näheren Betrachtung unterzogen wird.
Die Strukturierte Programmierung bzw. der Strukturierte Programmentwurf ist eine Topdown-Vorgehensweise, deren Entwurfsphase bei der Analyse der zu lösenden Aufgabe zu
beginnen hat und von ihrer Implementierung und damit dem Arbeitsmittel, das die Aufgabe
später einmal übernimmt, abstrahiert.43 Insoweit ist sie auch im Rahmen der Klassifikation der
Fertigungslenkung einsetzbar. Der Strukturierte Programmentwurf sieht eine schrittweise Verfeinerung der Problemstellung und eine Abbildung der Aufgaben nach dem Blockkonzept
bzw. -diagramm vor. Dabei erfolgt eine Aufteilung in die Teilbereiche Strukturierung der
Funktionen, des Ablaufs und der Daten. Diese drei Aspekte sind voneinander abhängig, beeinflussen sich gegenseitig und dürfen demnach nicht isoliert betrachtet werden.
Strukturierte Programmierung
Strukturierung der
Funktionen
Strukturierung des
Ablaufs
Strukturierung der
Daten
Abbildung 3-2:Modellvorstellungen in der Strukturierten Programmierung
42.
43.
Vgl. [Hart95], S. 14 ff.
Vgl. [Schu82]
Stand der Technik
57
Mit dieser Vorgehensweise gemein hat die hier entwickelte Klassifikation als ganz entscheidenden Faktor die Nähe zur Umsetzung der systematisierten Sachverhalte. Außerdem bestehen
in beiden Ansätzen enge Verknüpfungen zwischen den drei Segmenten, die eine isolierte
Betrachtung der Teilbereiche verbieten. Eine weiterführende Detaillierung der Problemstellung wird in dem in dieser Arbeit verfolgten Ansatz durch die Spezifikationssprache, deren
Grundlage die Klassifikation ist, verwirklicht.
Nachdem die Aufteilung in die Klassifikationskriterien Fertigungslenkungsstrukturen, -abläufe
und -funktionen auf der Basis bestehender Ansätze analysiert und insbesondere auf die
Ansätze von Schneider, Hartmann und der Strukturierten Programmierung zurückgeführt
wurde, werden nun einige Arbeiten bezüglich Ihrer Güte zur Klassifikation dieser drei Teilaspekte untersucht.
3.1.1 Klassifikationen für Fertigungslenkungsstrukturen
Unter Fertigungslenkungsstruktur ist nach Definition 10 die Ablaufstruktur der Fertigungslenkungsvorgänge, die räumliche, zeitliche und sachliche Strukturierung dieser Vorgänge, zu verstehen. Somit müssen die Ausprägungen des Klassifikationskriteriums Fertigungslenkungsstruktur diese drei Dimensionen repräsentierten. Systematisierungen in Teilstrukturen der
Fertigung sind in der Literatur in vielfältiger Form zu finden. In erster Linie wird dabei nach
Produkten, Material oder Betriebsmitteln, Prozessen, Fertigungs- bzw. Dispositionsstufen oder
auch nach Planungsstufen gegliedert.44 Die Problematik all dieser Klassifikationen liegt
jedoch einerseits darin, daß sie die Fertigungslenkung im speziellen nur bedingt abbilden, und
andererseits in ihrer nur auf bestimmte Aspekte der Fertigung beschränkten Sicht, die keine
vollständige Abbildung der Fertigungslenkungsstrukturen erlaubt. Vor allem die zeitliche
Strukturierung wird in fast allen dieser Ansätze, wie z.B. im integrierten Produktionsprozeßmodell45 oder dem funktionalen Modell des rechnerintegrierten Produktionsprozesses46, nicht
oder nur teilweise berücksichtigt.47
Um auch das zeitliche Verhalten eines Fertigungsablaufs abzubilden, verwendet Hartmann als
Grundlage seiner Klassifikation von Methoden zur Definition hierarchischer Abläufe das
Modell der Fertigungssteuerung.48 Allerdings bezieht sich seine Klassifikation nicht direkt auf
44.
45.
46.
47.
48.
Vgl. [Ada69], S. 25 ff., [Cor98], S. 31 ff., [Zäp82], S. 15. ff., [DaWa97], S. 222 ff. u.a.
Vgl. [WaAu96]
Vgl. [Harr84]
Vgl. [Kuh98], S. 47 ff.
Vgl. [Hart95], S. 28 f.
58
Kapitel 3
die Fertigungslenkung sondern auf spezielle Methoden, die zu ihrer Definition verwendet werden. Auch seine Klassifikation der Methoden zur Strukturierung, die er nach den Dimensionen
der Strukturierungsmethode und dem Detaillierungsgrad der Strukturierung vornimmt,
beschäftigt sich mit der Struktur der Abarbeitungsmethoden und nicht der gesamten Fertigungslenkung. Aus diesem Grund kann seine Klassifikation nicht als Grundlage für das hier
betrachtete Kriterium Fertigungslenkungsstrukturen dienen.
Schneider49 klassifiziert in ihrer Arbeit, wie oben bereits dargestellt, die Fertigungslenkungsstruktur in Mikro- und Makrostrukturen. Klassifikationsmerkmale der Mikrostrukturen sind
der Graph des Produktionsablaufs, die Ereignistypen, die Restriktionen und die Aufgabenstellung. Die Makrostruktur wird durch die Repräsentanten Graph des Produktionsablaufs,
Restriktionen, Aufgabenstellung und Formalziel dargestellt. Diese sehr detaillierte Beschreibung der Struktur widerspricht der hier geforderten begrenzten Mächtigkeit und guten Übersichtlichkeit. Nur durch eine Abstraktion der Mikro- und Makrostrukturen kann die Klassifikation den Anforderungen nach Anwendbarkeit und leichter Verständlichkeit genügen.
Allerdings bietet das Modell der Fertigung(-steuerung), auf dem die Klassifikationen von
Schneider und Hartmann basieren, obwohl es nicht als Klassifikationsansatz entwickelt wurde,
auch eine ideale Ausgangsbasis zur hier geforderten abstrakteren aber immer noch genauen
Darstellung der Fertigungslenkungsstrukturen. Sein besonderer Vorteil liegt darin begründet,
daß es nicht auf bestimmten Vorgaben oder einer speziellen Sichtweise beruht und auf diese
Weise die Strukturen vollständig abbilden kann.
Basierend auf dem formalen Fertigungssteuerungsmodell von Schneider hat Kuhn50 konkrete
Bausteine der generischen Modellierungsmethode für Produktionsaufgaben entwickelt. Diese
bringen Merkmale und Ausprägungen von Produktions- und PPS-Aufgaben in die Modellierung mit ein und ermöglichen somit die Anwendung im individuellen Einzelfall. Auf diese
Weise erfolgt eine Darstellung in allen Einzelheiten, die nicht nur die Struktur sondern teilweise auch die Abläufe und Funktionen der Fertigungslenkung (insbesondere die Restriktionen) mit einschließt. Allerdings widerspricht dieses, sich auf den individuellen Einzelfall
beziehende und sehr detaillierte Vorgehen den hier gestellten Anforderungen an eine allgemeine und umfassende Klassifikation von begrenzter Mächtigkeit.
Die geforderte Abstraktion der Klassifikation wird durch die Nutzung von Strukturprototypen
erreicht, die Felser51 in seiner Arbeit einführt. Diese Prototypen stellen eine redundanzfreie
49.
50.
Vgl. [Schn96], S 196 ff.
Vgl. [Kuh98], S. 79 ff.
Stand der Technik
59
Repräsentation der Struktureigenschaften des Modells bzw. eines Partialmodells dar, indem sie
dessen Grundmuster beschreiben und Wiederholungen dieses Musters nicht berücksichtigen.
Auf diese Weise können Strukturen über herkömmliche Charakterisierungen, wie sie oben
erwähnt wurden, hinausgehend durch beliebige Strukturmuster beschrieben werden und der
Graph des Modells kann auf seine entscheidenden Strukturen reduziert werden.
Zusammenfassend läßt sich feststellen, daß alle in Kapitel 2 formulierten Anforderungen
bezüglich der Klassifikation der Fertigungslenkungsstrukturen durch die Abbildung mit Teilgraphen respektive Strukturprototypen auf Basis des Modells der Fertigung erfüllt werden.
3.1.2 Klassifikationen für Fertigungslenkungsabläufe
Abläufe und speziell Fertigungslenkungsabläufe organisieren und strukturieren Arbeitsprozesse und tragen somit zur Ordnung von diesen bei. Zu ihrer Darstellung gibt es verschiedene
Ansätze, wie z.B. aus den Bereichen der Unternehmensmodellierung, der Modellierung von
Arbeitsabläufen (Ablaufplanung) oder der Strukturierten Programmierung. Allerdings enthalten die meisten dieser Ansätze zwar Modelle aber keine Klassifikationen der Abläufe respektive keine Klassifikationskriterien für Fertigungslenkungsabläufe.
Ein Beispiel für einen derartigen Ansatz ist Bruckers Klassifikation von Schedulingproblemen.
Er unterscheidet dabei jedoch keine Arten von Abläufen52 zur Lösung dieser Probleme. Da die
Struktur seiner Schedulingprobleme durch eine Anzahl von Jobs, Nachfolgebeziehungen zwischen den Jobs und Kapazitätsrestriktionen festgelegt ist, wählt er in allen Fällen eine vorgangsorientierte53 Vorgehensweise. Bei einem zeitorientierten Ablauf wäre ein Belegungsvorgang für einen betrachteten Zeitabschnitt genau dann beendet, wenn ein Einlastungserfolg
vorläge und es gäbe kein Belegungsproblem zu lösen. Dieses Vorgehen würde aber bei unterschiedlichen Arbeitsvorgangsdauern zu Ineffizienz führen.54
In vielen Klassifikationen werden die Abläufe der Fertigungslenkung nur nebensächlich bzw.
in andere Charakteristika miteingeschlossen behandelt, sie sind jedoch bei der Umsetzung in
ein ausführbares Programm von entscheidender Bedeutung und deswegen ein wichtiges Klassifikationsmerkmal in der hier entwickelten Systematik. Durch die in dieser Arbeit vorgenommene Trennung von Fertigungslenkungsabläufen und -funktionen erschließt sich einerseits
51.
52.
53.
54.
Vgl. [Fel96], S. 84 ff. - siehe auch [DaHo95] und [Schn96]
Vgl. [Bru81], S. 20 ff.
Ein Vorgang entspricht bei Brucker der Bearbeitung eines Jobs bzw. Auftrags an einer Maschine.
Vgl. [DaWa97], S. 473 ff.
60
Kapitel 3
eine erweiterte Abbildungs- bzw. Beschreibungsmöglichkeit und andererseits wird die Flexibilität der Klassifikation entscheidend vergrößert, so daß sie leichter an veränderte Problemstellungen und Umwelten angepaßt werden kann.
Sauer55 nimmt ebenfalls eine Klassifikation von Ablaufplanungsproblemen vor, wobei der von
ihm verwendete Begriff der Ablaufplanung einem Teilbereich der Fertigungslenkung und zwar
der kapazitäts- und termingerechten Zuordnung von Produktionsaufträgen auf die zur Verfügung stehenden Ressourcen entspricht. Diesen Teilbereich untergliedert er in die Aufgabenkomplexe Planerstellung und -korrektur. Seine Beschreibung der Ablaufplanungsprobleme
basiert auf einem 5-Tupel. Dabei orientiert er sich sowohl an Aspekten der mathematischen
Modellierung als auch an Modellierungen auf Basis von Constraints56 (Constraint Satisfaction
Probleme). Er klassifiziert die betrachteten Probleme nach folgenden Kriterien:
• Aufträge
• Produkte mit Varianten und Operationen
• Ressourcen
• Hard Constraints für einzuhaltende Bedingungen
• Soft Constraints für verletzbare Bedingungen
Die seiner Repräsentation zugrunde liegenden Und/Oder-Bäume bzw. die Stufen dieser
Bäume57 werden auf verschiedene Arten durchlaufen. Von der jeweiligen Durchlaufart wird
ein Planskelett58 für ein Ablaufplanungsverfahren definiert. Diese können auftrags-, ressourcen- oder operationsbasiert sein. Durch die Verknüpfung der Durchlaufarten mit den, auf den
einzelnen Stufen des Baumes verwendeten Auswahlregeln, Prioritäts- oder Benutzerregeln,
können verschiedene Ablaufplanungsverfahren charakterisiert werden. Nachteilig an dieser
Klassifikation von Sauer ist, daß sie nicht auf Abläufe begrenzt ist, sondern auch die als
Grundlage dienende Struktur und durch die Verknüpfung mit den Auswahlregeln ebenso die
Fertigungslenkungsfunktionen miteinschließt. Auf diese Weise werden spezielle Abläufe nicht
detailliert genug beschrieben. Außerdem fehlt dieser Klassifikation durch die Darstellung mit
Planskeletten die Beachtung der Zeitkomponente.
55.
56.
57.
58.
Vgl. [Sau93]
Unter dem Begriff Constraints sind explizite Abhängigkeiten zwischen Objekten bzw. deren Eigenschaften zu verstehen. Bei ihrer Anwendung erfolgt eine Restriktion des Wertebereichs dieser Objekte
(vgl. [Schr92], S. 21).
Vgl. Abschnitt 3.2.2.2 Spezifikationssprachen für Fertigungslenkungsabläufe
Vgl. [Sau93], S. 75 f.
Stand der Technik
61
In [DaWa97] findet sich eine Einteilung der Abläufe zur Abarbeitung von Inkonsistenzen in
Ablaufstruktur59 und Zeitmodell in:
• ereignisorientierte Vorgehensweise,
• element-/klassen-/knotenorientierte Vorgehensweise und
• zeit(punkt)orientierte Vorgehensweise.
Diese Abläufe orientieren sich an dem zugrunde liegenden Modell der Fertigung. Neben der
Abarbeitung des gesamten Modells ist auch eine Bearbeitung von Partialmodellen möglich,
wobei jeweils unterschiedlich vorgegangen werden kann. Die Aufteilung in Teilstrukturen
kann darüberhinaus ebenfalls nach verschiedenen Prinzipien vorgenommen werden, die entweder auf der Ablaufstruktur oder dem Zeitmodell beruhen. Zur Strukturierung der Ablauforientierung bzw. -priorisierung der Fertigungslenkungsabläufe sind die dargestellten Vorgehensweisen wesentliche Kriterien.
Eine vergleichbare Systematik nimmt Hartmann im Rahmen der Klassifikationen der Methoden zur Strukturierung der Abarbeitungsstrategie seines Modells der Fertigungssteuerung
vor60, wobei er nach den folgenden beiden Kriterien klassifiziert:
• Dimension der Strukturierungsmethode
• Detaillierungsgrad der Strukturierung
Die Dimension der Strukturierungsmethode ist dabei entweder zeit-, kunden-, produkt-, struktur- oder zeit-strukturorientiert. Durch das zweite Kriterium, den Detaillierungsgrad der Strukturierung, wird festgelegt, ob die Strukturierung auf Basis von Knoten oder Ereignissen durchgeführt wird. Im weiteren führt Hartmann auch eine Klassifikation der Methoden zur
Abarbeitungsfolge des Modells der Fertigungssteuerung an und unterscheidet dabei folgende
Klassen:61
• serielle Methode
• parallele Methode
• nebenläufige Methode
Diese Ablaufreihenfolgen sind ein entscheidendes Kriterium zur Darstellung der Fertigungsabläufe. Daneben klassifiziert Hartmann Methoden zur Definition von Abläufen nach Input- und
59.
60.
61.
Der Begriff Ablaufstruktur entspricht im Rahmen der Fertigungslenkung dem in dieser Arbeit verwendeten Begriff Fertigungslenkungsstruktur.
Vgl. [DaWi93a], S. 211 ff.
Vgl. ebenda, S. 214 f.
62
Kapitel 3
Outputdaten sowie nach vergleichbaren In- und Outputdaten.62 Die Klassifikation der Inputdaten entspricht der Klassifikation der Methoden zur Definition von Funktionen bezüglich Inputdaten. Dabei wird klassifiziert nach der Beschreibung
• der Menge der verwendeten Funktionen,
• der verwendeten vorgegebenen Ordnungsrelationen zwischen Fertigungssteuerungsfunktionen,
• der verwendeten Menge von Zuständen und
• der verwendeten Abläufe.
Die Outputdaten besitzen die Klassifikationskritierien:
• Netzstruktur
• Zeitbewertung
• Flexibilität
Für den Vergleich der Input- und Outputdaten (Vergleich Ordnungsrelation-Ablauf, Vergleich
Ablauf-Ablauf) werden folgende Kategorien definiert:
• vorwärtsorientiert
• rückwärtsorientiert
• mittelpunktsorientiert
Diese Systematik bezieht sich demnach auf die problembereichsspezifische Beschreibung der
Methoden. Die Problematik dieser Klassifikation liegt jedoch darin begründet, daß es sich um
keine direkte Klassifikation der Abläufe sondern um eine Klassifikation der Methoden zur
Definition der Abläufe handelt, wodurch eine weitere Abstraktionsebene zwischengeschaltet
wird. Diese Vorgehensweise trägt nicht zur Verständlichkeit bei und erlaubt bezüglich der Inund Outputdaten auch keine Übertragung dieser Klassifikation auf die Gliederung der Abläufe.
Allein die Facetten des Vergleichs der In- und Outputdaten können als Klassifikationskriterien
der Fertigungslenkungsabläufe gelten, da sie die Ablaufrichtung, ein entscheidendes Kriterium
der Fertigungslenkungsabläufe, exakt und vollständig wiedergeben. Diese Kriterien finden
sich auch bei Braune und Ullmann zur Beschreibung der Prozeßsteuerung63 sowie bei Schneider zur Strukturierung des Arbeitsfortschritts und der Zeit im Rahmen des Klassifikationsmerkmals Aufgabenstellung.64
62.
63.
64.
Vgl. [Hart95], S. 109 ff.
Vgl. [DaWi93a], S. 166 ff.
Vgl. [Schn96], S. 202 ff.
Stand der Technik
63
Somit ergibt sich zusammenfassend, daß die Ausprägungen der Ablaufpriorisierungen bzw.
-orientierungen aus [DaWa97], der Ablaufreihenfolgen aus [DaWi93a] und der Ablaufrichtungen aus [Hart95] als Klassifikationskriterien die Fertigungslenkungsabläufe eindeutig,
anschaulich und umfassend abbilden.
3.1.3 Klassifikationen für Fertigungslenkungsfunktionen
Systematiken für Fertigungslenkungsfunktionen sind in der Literatur mehrfach zu finden,
dabei wird jedoch der Begriff der Funktion oft unterschiedlich gebraucht. So wird Funktion
z.B. häufig mit Methode oder Verfahren gleichgesetzt.65 Nach Mertins66 sind Funktionen einer
Methode zur Planung rechnerintegrierter Produktionsprozesse für die Abbildung der Teilaufgaben und ihre Verknüpfung zum Produktionsprozeß erforderlich. Dieses entspricht jedoch
nicht gänzlich dem dieser Arbeit zugrunde liegenden Verständnis von Funktionen im Rahmen
der Fertigungslenkung. Das hier gewählte Klassifikationskriterium Fertigungslenkungsfunktionen soll den Fertigungslenkungsprozeß charakterisieren, indem es nicht Fertigungslenkungsmethoden oder -verfahren sondern deren Grundlage, die ablauf- und zustandsorganisatorischen Entscheidungsprobleme darstellt. Außerdem bedingt die in dieser Arbeit
vorgenommene Gliederung in die Klassifikationskriterien Abläufe und Funktionen, daß Verknüpfungen verschiedener Funktionen bzw. Vorgehensweisen (Ablaufstrategien), wie sie in
Methoden oder Verfahren enthalten sind, vom Kriterium Ablauf beschrieben werden.
Wie im vorherigen Kapitel im Rahmen der Klassifikation der Methoden zur Definition von
Abläufen bereits erläutert, nutzt Hartmann67 zur Klassifikation der Methoden zur Definition
der Funktionshierarchien ebenfalls die verwendeten Input- und Outputdaten sowie den Vergleich der Input- und Outputdaten. Aber auch hier gilt, daß sich die Klassifikation auf einer
höheren Abstraktionsebene befindet und sich damit nicht direkt auf die Fertigungslenkungsfunktionen bezieht. Vielmehr werden die Methoden durch ihre Umwelt, die Struktur und
Abläufe sowie andere Funktionen beschrieben, was den hier gestellten Anforderungen nach
disjunkten Klassen widerspricht.
In seiner Modell- und Algorithmenbank definiert Stanek auf der Ebene Fertigungsplanung
neben Funktionen zur Simulation der Fertigungsplanung auch Funktionen zur Fertigungslenkung. Die einzelnen Funktionen68 klassifiziert er nach Zeitraum, Eingangsgröße, Ergebnis65.
66.
67.
Typologien für Fertigungs- bzw. Fertigungslenkungsverfahren finden sich bereits in älteren Publikationen der Industriebetriebslehre (vgl. [KiKu92], S. 308).
Vgl. [MSJ94], S. 21
Vgl. [Hart95], S. 94 ff.
64
Kapitel 3
größe, mathematischer Methode, Zielkriterium und Verwendungszweck, wodurch eine sehr
detaillierte Beschreibung möglich ist. Eine derartig spezifische Darstellung der Funktionen ist
hingegen im Falle der hier entwickelten Klassifikation nicht gefordert und widerspricht außerdem den Anforderungen nach leichter Verständlichkeit und Anwendbarkeit. Außerdem mangelt es der Zusammenstellung der Funktionen an einer erkennbaren Systematik, weswegen
diese nicht als Klassifikation genutzt werden kann. Zum Vergleich und zur Bewertung der einzelnen Funktionen ist die von Stanek gewählte Darstellung sicherlich vorteilhaft, in dieser
Arbeit geht es jedoch um eine weniger feine Einteilung als Basis der Spezifikationssprache.
Die Purdue Enterprise Reference Architecture69 basiert auf einer Zusammenstellung von generischen Aufgaben und Funktionen für die Problembereiche Belegungs- und Steuerungsprozesse, Produktionsprozesse und (allein) von Menschen durchgeführte Aufgaben. Dabei wird
der Transformationsprozeß der Belegungs- und Steuerungsaufgaben sowie der Steuerungsfunktionen als rechenbezogener Block gesehen. Die in diesem Block verwendeten Algorithmen70 wie auch ihre Parameter sind auswechselbar und können auf ganz verschiedene Weisen,
wie z.B. logisch, algebraisch, als Expertensystem o.ä., repräsentiert werden. Daneben wird
eine Unterscheidung der Algorithmen in deterministische oder stochastische Ausprägungen
vorgenommen. Wie auch schon bei Stanek werden in diesem Ansatz die Eigenschaften spezieller Algorithmen und ihrer Implementierungen klassifiziert, nicht aber die Entscheidungsprobleme, die den Fertigungslenkungsfunktionen zugrunde liegen. Die Purdue Enterprise Reference Architecture soll deswegen nicht an dieser Stelle, sondern im Rahmen der Entwicklung
der Spezifikationssprache und der Umsetzung von mit dieser beschriebenen Fertigungslenkungsproblemen in ein ablauffähiges Programm bedacht werden.
Im Gegensatz zu den beiden vorher diskutierten Ansätzen untersucht Wiendahl71 die Methoden der Fertigungslenkung vom Standpunkt der Planung und Steuerung aus und unterscheidet
folgende Systematisierungsansätze bzw. Klassifikationskriterien:
• Zieh- und Schiebeprinzip72
• Aufgabenverteilung und Bestandsregelung
• Auftragsreihenfolge, Auftragsgröße und Veranlassungslogik
68.
69.
70.
71.
72.
Vgl. Abschnitt 3.1 Klassifikationen für die Fertigungslenkung
Vgl. [Wil93], S. 45
Unter Algorithmus wird hier sowohl ein mathematischer Ausdruck als auch ein in einer Programmiersprache formuliertes Verfahren verstanden.
Vgl. [Wie98], S. 86 ff.
Vgl. [Sai85] und [Eid95]
Stand der Technik
65
Die Unterscheidung nach den Prinzipien der Anstoß- oder Steuerungslogik (Zieh- und Schiebeprinzip) ist ein sehr verbreiteter Ansatz zur Systematisierung von Fertigungssteuerungsansätzen. Nachteilig an ihm ist die sehr grobe und damit ungenaue Gliederung73, die eigentlich
nur eine Aufteilung in Extremtypen erlaubt. Außerdem bezieht sich diese Unterscheidung auf
Planungs- und Steuerungsmethoden und dabei mehr auf die Abläufe der Funktionen als die
Funktionen selbst und ist somit keine angemessene Klassifikation für Fertigungslenkungsfunktionen. Die Anstoßlogik ist allerdings ein wichtiges Beschreibungsmerkmal der Fertigungslenkung und muß deswegen von der Spezifikationssprache bzw. im Modell der Fertigung abgebildet werden.
Aufgabenverteilung und Bestandsregelung sind die Kriterien, nach denen Zäpfel74 Planungsund Steuerungsmethoden klassifiziert. Dabei unterteilt er die Aufgabenverteilung in rein zentrale, bereichsweise zentrale und dezentrale Konzepte und differenziert die Bestandsregelungsansätze in bestandsregelnde Verfahren und Verfahren ohne explizite Regelung der Bestandsgrößen. Auch Zäpfel erstellt damit eine Systematik von Planungs- und Steuerungsmethoden,
die keine Entscheidungsprobleme an den Fertigungslenkungsfunktionen als Kriterium enthält.
Vielmehr klassifiziert er die Methoden nach der zugrunde liegenden Fertigungslenkungsstruktur und nach speziellen Mengenplanungsproblemen. Letztere Kategorie hat jedoch wiederum
den Nachteil, daß sie nur ungenau und damit wenig detailliert durchgeführt werden kann, so
daß auch in diesem Fall unterschiedliche Zuordnungen möglich sind. Außerdem legt sie den
Betrachtungsschwerpunkt auf die Bestandsregelung, die nur einen Teilbereich der Fertigungslenkung darstellt.
Die dritte Klassifikation geht auf Zülch75 zurück, der Fertigungssteuerungsstrategien76 nach
funktionalen Unterschieden systematisiert. Dabei legt die Veranlassungslogik den groben
Ablauf der Fertigungssteuerungsfunktionalität, die Auftragsgröße die Veränderung der Planungs- und Steuerungsereignisse, wie z.B. durch Zusammenfassen oder Splitten, und die Reihenfolgebildung die Bearbeitung konkurrierender Aufträge fest. Obwohl diese Systematik
bezüglich ihres Detaillierungsgrades beide anderen Ansätze übertrifft, ist die fehlende exakt
konzeptionelle Spezifikation der einzelnen Merkmale, die nicht zuletzt auf die recht unspezifi73.
74.
75.
76.
In der Literatur werden einige Verfahren bzw. Methoden, wie z.B. die Belastungsorientierte Auftragsfreigabe, unterschiedlichen Prinzipien zugeordnet (vgl. [Scho98] und [WNS96]).
Vgl. [ZäMi87]
Vgl. [Zül89]
Er definiert eine Steuerungsstrategie als die Festlegung einer bestimmten Veranlassungslogik zur Einsteuerung von Fertigungsaufträgen und eine Vorgehensweise zur Bestimmung der Auftragsgrößen
und -reihenfolgen. Ein Steuerungsverfahren ist ein Instrument zur Realisierung einer oder mehrerer
Strategien für einen bestimmten oder auch für mehrere Fertigungstypen.
66
Kapitel 3
schen Merkmalsnamen zurückzuführen ist, zu kritisieren. Weiterhin ist zu beanstanden, daß
die von Zülch gewählten Parameter nicht umfassend genug sind, die Skalierung also nicht die
nötige Trennschärfe besitzt. Aus diesem Grund können Fertigungslenkungsfunktionen nicht
ausreichend erklärt werden, so daß unterschiedliche Verfahren anhand der Klassifikation nicht
zu unterscheiden sind. Zülchs Klassifikationsmerkmale stellen eine Mischung aus den Merkmalen Ablauf und Funktionen dar, betrachten aber nicht alle Ausprägungen dieser Merkmale.
Die Funktionsreferenzsicht77 von Schotten zielt auf die Unterstützung der Produktionsplanung
und -steuerung durch EDV-Systeme ab.78 Ausgehend von den Aufgabensichten des AachenerPPS-Modells sind die Funktionen den Teilaufgaben der PPS zugeordnet:
• Unterstützung der PPS-Kernaufgaben
• Unterstützung der PPS-Querschnittsaufgaben
• Verwaltung von Produkt- und Prozeßdaten
Die Funktionen zur Unterstützung der PPS-Kernaufgaben werden weiter unterteilt in die Produktionsprogrammplanung, die Produktionsbedarfsplanung, die Eigenfertigungsplanung und
-steuerung und die Fremdbezugsplanung und -steuerung. Diese Kernaufgaben werden überdies
noch in Teilfunktionen untergliedert. Zur Strukturierung der Funktionen werden die Charakteristika Methoden und Verfahren, Umstände oder Besonderheiten und Möglichkeiten der Verwaltung der Daten verwendet. Wie auch in der in dieser Arbeit entwickelten Klassifikation
werden Funktionen also nicht mit Methoden und Verfahren gleichgesetzt, sondern eine Funktion kann von verschiedenen Methoden und Verfahren erfüllt werden. Allerdings ist die Systematik von Schotten durch die Vielzahl der Charakteristika zwar äußerst genau, gleichzeitig
aber auch sehr umfangreich und aufgrund ihres hohen Detaillierungsgrades unflexibel. Dieses
widerspricht den in Kapitel 2 gestellten Anforderungen an die Klassifikation, die einerseits
eine begrenzte Mächtigkeit vorschreiben, um eine leichte und schnelle Einteilung zu ermöglichen, und andererseits Wert auf die Flexibilität und Anpaßbarkeit legen. Die von Schotten dargestellte Strukturierung der Funktionen gestaltet sich dagegen als ein recht komplizierter Vorgang und entspricht somit eher einer detaillierten Spezifikation der Funktionen.
In [DaWi93a] wird im Rahmen des Modells der Fertigungssteuerung eine Unterteilung in
lokale79 und globale Funktionen vorgenommen. Auf diesen werden dementsprechend entwe-
77.
78.
79.
Vgl. Abschnitt 3.1 Klassifikationen für die Fertigungslenkung
[Scho98], S. 144 ff.
„Lokal heißt in diesem Zusammenhang, daß die benötigten Informationen/Daten verfügbar bzw. beschaffbar sind.“ (vgl. [DaWi93a], S. 154)
Stand der Technik
67
der von lokalen oder globalen Managern Regeln abgearbeitet. Lokale Funktionen sind genau
einem Modellelement zugeordnet und realisieren dort die algorithmisierbare Funktionalität.
Ihre generelle Aufgabe besteht in der Berechnung von Zustands- und Merkmalsänderungen
der Fertigungssteuerungsobjekte. Somit kann der lokale Manager nur folgende Elemente im
Modell betreffen:80
• lokale Teilfunktionen (z.B. Terminierung, Bestandsermittlung u.a.)
• Kommunikationsoperationen
• Regeln
• Attribute
• Knoten/Klassen
• Kanten
• Partialmodelle
• Hierarchieebenen
Globale Funktionen beziehen sich auf die Ablaufstruktur und die Regeln des Gesamtmodells.
Sie werden vom globalen Manager durchgeführt. Im Gegensatz zur Unterscheidung in die
Dimensionen lokal und global wird das Modell der Fertigung (der Fertigungsgraph) im hier
entwickelten Ansatz in Partialmodelle oder Strukturprototypen aufgelöst, auf die sich die
jeweiligen Funktionen und Abläufe beziehen. Die lokalen Funktionen werden in [DaWi93a]
weiterhin klassifiziert in:
• lokale Funktionen der Knotensteuerung
• lokale Funktionen der Prozeßsteuerung
• lokale Funktionen in der Inputobjektsteuerung
• lokale Funktionen der Transformationssteuerung
• lokale Funktionen in der Outputobjektsteuerung
Eine derartige Strukturierung der lokalen Funktionen nach den Steuerungsbereichen, an denen
oder auch in denen sie durchgeführt werden, ist für die in dieser Arbeit geforderte Klassifikation als Basis für die Spezifikationssprache jedoch zu detailliert und unübersichtlich. In der
hier entwickelten Systematik wird durch das Kriterium Fertigungslenkungsstruktur bzw. die
Bindung einer Funktion an einen Teilgraphen eine Einteilung auf einer abstrakteren Ebene vorgenommen. Die lokalen Funktionen der Transformationssteuerung werden darüber hinaus in
[DaWi93a] noch weiter unterteilt in Vorgangsdauerermittlung, Terminierung und Bestandsfüh80.
Vgl. [DaWi93a], S. 118 f.
68
Kapitel 3
rung. So finden auch die zugrunde liegenden zustandsorganisatorischen Entscheidungsprobleme Eingang in die Klassifikation, wohingegen ablauforganisatorische Entscheidungsprobleme in diesem Ansatz keine Merkmale darstellen, weswegen die Klassifikation
Fertigungslenkungsfunktionen nicht vollständig abbildet.
Aufbauend auf diesem Ansatz lokaler und globaler Funktionen führt Schneider eine Klassifikation von Fertigungssteuerungsverfahren durch. Wiederum werden Verfahren und nicht
Funktionen, wie in Kapitel 2 gefordert, strukturiert. Ihr erstes Klassifikationskriterium unterteilt die Verfahren nach verschiedenen Aufgabenklassen:81
• Konstruktionsaufgaben
• Planänderungsaufgaben
• Plandetaillierungsaufgaben
Diese Aufgaben untergliedert sie weiter in die Bereiche Mengen- und Terminbestimmung.
Insoweit geht Schneider ebenfalls auf die zustandsorganisatorischen Entscheidungsprobleme
ein, die den Fertigungslenkungsfunktionen als Grundlage dienen und ein entscheidendes Kriterium dieser Funktionen sind, und integriert sie in ihr Klassifikationsschema.
Ihre Gliederung in die drei Aufgabenklassen basiert auf dem zugrunde liegenden Zeitmodell
und strukturiert die Verfahren nach ihrer zeitlichen Positionierung im Rahmen der Fertigungslenkung. In der hier entwickelten Klassifikation geht es allerdings nicht darum, einzelne Verfahren bezüglich Zeit und Arbeitsforschritt einzuordnen, sondern um eine umfassende Darstellung der Fertigungslenkung. Weitere Klassifikationsmerkmale bei Schneider sind das
Wirkprinzip, welches das bei der Lösung einer Fertigungssteuerungsaufgabe verwendete Wissen darstellt, die Struktur der Zwischenzustände (konstruktive, verbessernde und simultane
Verfahren) und die Zielerreichungseigenschaften (endlich und unendlich), die sich weiter
unterteilen in Schrittanzahl, Wissen über Zielerreichung und Konvergenz. Diese Systematisierung ist für einen genauen Vergleich der einzelnen Funktionen bzw. Verfahren sehr hilfreich,
für eine nicht ins Einzelne gehende Klassifikation der Fertigungslenkung und speziell für
Anwender aus der Praxis ist sie aber zu detailliert und kompliziert. Wie bereits zu Beginn dieses Abschnitts erläutert, sind die genauen Wirkprinzipien und Zielerreichungseigenschaften
der Verfahren keine geforderten Merkmale der hier entwickelten Klassifikation, in der es um
81.
Vgl. [Schn96], S. 227 ff. Diese drei Aufgabenklassen werden von Schneider im Rahmen der Klassifikation von Fertigungssteuerungsaufgaben als Klassifikationsmerkmal Aufgabenstellung charakterisiert.
Stand der Technik
69
eine Problemspezifikation und nicht um eine Lösungsbeschreibung bzw. Darstellung der
Lösungsmöglichkeiten geht.
Da es beim Operations Research insbesondere um die Lösung von Entscheidungsproblemen
geht, müssen auch Klassifikationen aus diesem Wissenschaftsgebiet bezüglich ihrer Eignung
zur Systematisierung von Fertigungslenkungsfunktionen untersucht werden. Rittgen82 unterscheidet in seiner Prozeßtheorie der Ablaufplanung83, deren Gegenstand Prozesse, Ressourcen
und Zeit sind, Ablaufplanungsprobleme, welche die Grundlage der von ihm dargestellten Verfahren bilden, in vier Klassen:
• Ablaufplanung mit varianten Teilabläufen
• Projektplanung
• Maschinenbelegungsplanung
• Reihenfertigungsplanung
Demzufolge nimmt Rittgen eine Klassifizierung allein nach der Art bzw. dem Anwendungsbereich der Ablaufplanungsprobleme ohne Beachtung ihnen gemeinsamer Entscheidungsprobleme vor. Auf diese Weise werden mögliche Parallelen zwischen den verschiedenen Problemklassen, die den Vergleich unterschiedlicher Ausprägungen erleichtern würden, nicht
herausgestellt. Außerdem geht Rittgen bei seiner Strukturierung von vereinfachenden Annahmen aus, wodurch sich seine Betrachtungen von der Realität entfernen. Sein Ziel, eine algebraische Prozeßtheorie der Ablaufplanung zu entwickeln, die nur noch die wesentlichen Merkmale dieser Planung enthält, indem sie sich auf wenige, fundamentale und allen Problemen der
Ablaufplanung gemeinsame Wesensmerkmale beschränkt, führt ihn zu einer Spezifikation, die
zwar nicht den Anforderungen an die Klassifikation entspricht, auf die in Abschnitt 3.2.2.2
Spezifikationssprachen für Fertigungslenkungsabläufe aber noch näher eingegangen wird.
Wie auch Rittgen teilt Domschke84 die Entscheidungsprobleme der Ablaufplanung, unter der
er die Planung der räumlichen und zeitlichen Abläufe von Produktionsprozessen versteht, in
Probleme der Produktionsprozeß- und Produktionsdurchführungsplanung auf. Allerdings sind
seine Problemklassen insgesamt allgemeiner gefaßt und damit auch umfassender nutzbar als
die von Rittgen:
• Probleme der Arbeitsverteilung (Zuordnungs-/Auswahlprobleme)
82.
83.
84.
Vgl. [Rit98], S. 18 ff.
Damit ist die Ablaufplanung im weiteren Sinne gemeint, da unter der Ablaufplanung im engeren Sinne
oftmals lediglich die Maschinenbelegungsplanung verstanden wird.
Vgl. [DSV93], S. 26 ff.
70
Kapitel 3
• Gruppierungsprobleme
• Reihenfolgeprobleme
• Probleme der Leistungsabstimmung
• Transportprobleme
Die beiden letzten Problemklassen fallen indessen ein wenig aus der Reihe, da sie auch als
Kombination der ersten drei Problemklassen dargestellt werden können. So sind z.B. Probleme der Leistungsabstimmung Verknüpfungen von Gruppierungs- und Reihenfolgeproblemen. Mit den Klassen Verteilungs-, Gruppierungs- und Reihenfolgeprobleme kann jedoch eine
umfassende Klassifikation der ablauforganisatorischen Entscheidungsprobleme von Fertigungslenkungsfunktionen vorgenommen werden. In [DoDr95] führt Domschke weitergehende
Klassifikationen zur Lagerhaltung und Losgrößenplanung, Fließbandabstimmung sowie zur
Maschinenbelegungsplanung an, die sehr detailliert und problemspezifisch sind, was jedoch im
Widerspruch zu den hier formulierten Anforderungen steht. Die in dieser Arbeit entwickelte
Klassifikation vereint diese Systematiken auf einer abstrakteren und damit auch flexibleren
Ebene.
In seiner auf Schedulingprobleme begrenzten Klassifikation betrachtet Brucker85 ebenfalls
ablauforganisatorische Entscheidungsprobleme und zwar teilt er sie auf in Montage-, Sortierund Reihenfolgeprobleme. Montageprobleme stellen die Problematik des Gruppierens und
Sortierprobleme des Aufteilens bzw. Verteilens von Fertigungselementen dar. Mit Reihenfolgeproblemen wird die zeitliche Zuordnung von Fertigungselementen zu Ressourcen und zwar
bei ihm speziell Maschinen beschrieben. Diese Systematik der Entscheidungsprobleme
besticht einerseits durch ihre Einfachheit und andererseits durch ihre Mächtigkeit respektive
Vollständigkeit.
Insgesamt zeigt sich, daß die Klassifikationskategorien ablauf- und zustandsorganisatorische
Entscheidungsprobleme und ihre Ausprägungen Fertigungslenkungsfunktionen auf einer
abstrakten sowie leicht verständlichen und anwendbaren Ebene umfassend abbilden und somit
den gestellten Anforderungen genügen.
3.1.4 Klassifikationsschemata für die Fertigungslenkung
Die Typbildung in Klassifikationen basiert in der Literatur häufig auf Merkmalskombinationen, d.h. eine Klasse wird mittels einer Merkmalsliste beschrieben. Diese Art der Schematisie85.
Vgl. [Bru81], S. 14 ff.
Stand der Technik
71
rung führt in vielen Fällen zu sehr unübersichtlichen und damit wenig anschaulichen Darstellungen, die einen Vergleich verschiedener Ausprägungen erschweren.86 Schneider verwendet
in ihrer Klassifikation von Fertigungssteuerungsaufgaben das komplexere Konstrukt eines
Repräsentanten, weil dieses die Problemstruktur besser widerspiegelt und von Wiederholungen abstrahiert.87 Auf diese Weise ist das Klassifikationsschema für den Nutzer leichter anzuwenden und zu verstehen. Da diese Vorzüge der Darstellungsform eines Repräsentanten auch
den hier gestellten Anforderungen entsprechen, wurde sie in Form von Strukturprototypen
auch in der vorliegenden Arbeit zur Illustration der Klassifikation der Fertigungslenkung verwendet. Allerdings werden Abläufe und Funktionen der Fertigungslenkung von diesen Repräsentanten nicht abgebildet. Die Beschreibung ihrer Merkmale muß deswegen neben den graphischen Darstellungen der Strukturprototypen noch zusätzlich in sprachlicher Form in das
Klassifikationsschema mitaufgenommen werden. Insofern bildet das Klassifikationsschema
eine anschauliche und umfassende Systematik der Fertigungslenkungsproblematik.
3.2 Spezifikationssprachen für die Fertigungslenkung
Spezifikationssprachen speziell für die Fertigungslenkung, die diese außerdem vollständig
beschreiben, existieren bisher noch nicht. Es gibt zwar Beschreibungssprachen für Teilbereiche
der Fertigungslenkung, wie z.B. bestimmte Verfahren, Strukturen oder Abläufe, aber eine
Sprache, die all diese Bereiche umfassend abbildet und sich gleichzeitig auf die Fertigungslenkung beschränkt, ist bisher noch nicht entwickelt worden. Allerdings existieren verschiedene
Modelle bzw. Konzepte, in deren Spezifikation die Fertigungslenkung mit eingeschlossen ist.
Die wichtigsten dieser Ansätze wurden bereits in Abschnitt 3.1 Klassifikationen für die Fertigungslenkung bezüglich ihrer Eignung als Klassifikation untersucht. Sie behandeln jedoch
meistens nicht nur den Problembereich Fertigungslenkung, sondern beinhalten auch weitere
Aspekte, die keinen Bezug zur Fertigungslenkung aufweisen.
Heutige PPS-Systeme stellen zwar eine Implementierung der Fertigungslenkung oder in vielen
Fällen auch nur von Teilen der Fertigungslenkung in höheren Programmiersprachen dar, sie
bieten jedoch in keinem Fall eine Spezifikationssprache zur strukturierten und einheitlichen
Beschreibung der Fertigungslenkung auf einer abstrakteren Ebene. Außerdem sind sie häufig
auf ganz spezielle Betriebstypen, wie z.B. Serien- oder Einzelfertigung, oder auch Lenkungsstrategien zugeschnitten und erlauben keine Übertragung in andere Bereiche. Pape88 vermerkt
86.
87.
Vgl. z.B. die Klassifikation von Fertigungstypen in [Gro74]
Vgl. [Schn96], S. 194 f.
72
Kapitel 3
dazu außerdem: “PPS-Systeme der neuen und alten Generation erlauben in der Regel nur die
Anwendung einer einzigen Steuerungsphilosophie, sie wird dem gesamten Produktionsprozeß
gleichsam übergestülpt“. Gängige PPS-Systeme bieten also nicht die wichtige Möglichkeit,
strukturmäßig unterschiedliche Bereiche bzw. Bereiche mit unterschiedlichen Organisationsformen, wie z.B. Fließfertigung und Werkstattfertigung89, nach verschiedenen Prinzipien zu
steuern, so daß zumindest die Steuerung einiger Teile der Fertigung unzweckmäßig ist und
erheblich größeren Aufwand erfordert. Somit kann in dieser Arbeit nicht auf in der Praxis
bereits erprobte PPS-Systeme zurückgegriffen werden.
Sinn und Zweck der zu entwickelnden Spezifikationssprache ist neben der einheitlichen
Beschreibung der Fertigungslenkung auch die Möglichkeit der direkten Umsetzung in ausführbare Algorithmen einer problembereichsunabhängigen Programmiersprache. Als Hilfsmittel
zur Übersetzung einer Spezifikationssprache in ausführbaren Code kann eine Methoden- bzw.
Bausteinbibliothek genutzt werden. Derartige Methodenbanksysteme werden heute bereits
häufig im Bereich der Arbeits- und Investitionsplanung angewendet. Sie bieten neben einer flexiblen Speicherung, Verwaltung und Wiedergewinnung von Informationen mit Hilfe einer
Datenbank auch die Möglichkeit, die Verarbeitung dieser Informationen durch Methoden unter
einem einheitlichen Systemkonzept durchzuführen. Auf diese Weise können Systementwicklungen mit geringem Aufwand an neue Einsatzgebiete oder Unternehmensanforderungen
angepaßt werden. Die Methodenbanksysteme setzen sich meistens aus den Bereichen Datenpflegesystem, Ablaufsteuerung und Auskunftssystem zusammen. Die Datenpflege beinhaltet
die Standardfunktionalität einer Datenbank, wie z.B. Datensatz Anlegen, Löschen usw. Mit
der Ablaufsteuerung werden die Methoden ausgeführt und das Auskunftssystem schließlich
gibt Beschreibungen der einzelnen Methoden.90 Die Struktur dieser Bibliothek wird durch die
Klassifikation der Fertigungslenkung vorgegeben, weswegen eine Einteilung in Algorithmen
für Fertigungsabläufe und -funktionen vorgenommen werden sollte.
Da im Rahmen der Entwicklung einer Sprache sowohl die Semantik als auch die Syntax dieser
Sprache zu konzipieren ist, muß bei der Auswahl einer geeigneten Syntax auch auf weitere
Spezifikationssprachen aus verwandten Wissenschaftsdisziplinen, insbesondere der Softwaretechnik, eingegangen werden, denn dieser Bereich ist eng mit der Fertigungslenkung und speziell der „programmgesteuerten“ Fertigungslenkung verknüpft. Zwar sind Syntax und Semantik einer Sprache nicht wirklich zu trennen, da vielfältige Verflechtungen zwischen ihnen
88.
89.
90.
Vgl. [Pap90], S. 14
Vgl. Fertigungsablaufarten in [DaWa97], S. 8
Vgl. [Spu92]
Stand der Technik
73
bestehen. In dieser Arbeit geht es jedoch darum, bei der Untersuchung von nicht problembereichsspezifischen Sprachen nützliche und den Anforderungen entsprechende Aspekte der
Syntax zu entdecken und diese in die hier zu entwickelnde Sprache zu übernehmen. Außerdem
spielen einige der untersuchten Beschreibungssprachen auch eine unterstützende Rolle in den
nachfolgend dargestellten Spezifikationssprachen. Diese beziehen sich entweder auf Teilbereiche der Fertigungslenkung oder sind umfassendere Darstellungen der Produktionsplanung und
-steuerung und ihre Analyse umfaßt sowohl die Syntax als auch die Semantik der Sprache.
Dabei stellt die in Kapitel 2 entwickelte Klassifikation die Basis der Untersuchungen dar. Den
Anfang der folgenden Analyse bilden einige Modelle bzw. Konzepte, die auch der Klassifikation zugrunde liegen, und zur Spezifikation ihrer Sichten respektive Teilstrukturen Beschreibungssprachen anbieten.
3.2.1 Syntax existierender Spezifikationssprachen
In der Informatik bzw. Wirtschaftsinformatik werden zur Spezifikation von Softwareabläufen
bzw. Programmen unterschiedliche Entwurfstechniken bzw. -hilfsmittel verwendet, wovon die
gebräuchlichsten und bekanntesten Methoden91 im folgenden kurz aufgeführt werden:92
• SADT (Structured Analysis and Design Technique)
• M. A. Jackson Methode
• HIPO (Hierarchie plus Input-Process-Output)
• Funktionale Dekomposition93
• Struktogramme
• Datenfluß- und Programmablaufpläne
• Pseudocode
All diese Entwurfs- bzw. Spezifikationstechniken wurden entwickelt, um die Qualität von
Softwareabläufen zu steigern, indem sie z.B. ihre Verständlichkeit, Lesbarkeit, Überprüfbarkeit und bzw. oder Einheitlichkeit verbessern. Sie unterscheiden sich in erster Linie darin, daß
einige von ihnen sich auf den Programmentwurfsprozeß beziehen, andere dagegen nur die Darstellung der Ergebnisse des strukturierten Entwurfs umfassen. Außerdem basieren einige auf
dem Prinzip der funktionalen Zerlegung und andere auf dem Datenflußansatz.94 Die SADT,
91.
92.
93.
94.
Man beachte, daß die Menge dieser Methoden nicht disjunkt ist; es sind unterschiedlich umfassende
Modellierungswerkzeuge.
Vgl. [Feh88] und [MSJ94], S. 104 ff.
Die Funktionale Dekomposition stellt eine stufenweise Zerlegung von Superanweisungen bis zu Anweisungen, die in einer Programmiersprache formuliert werden können, dar.
Vgl. [FeSi98], S. 122 f.
74
Kapitel 3
die M.A. Jackson Methode und HIPO sind Entwurfstechniken des strukturierten Programmentwurfs, der auf Dijkstra und Wirth95 zurückgeht.
Hauptbestandteile in SADT96 sind die prozeduralen und funktionalen Aspekte eines Informationssystems, in die dieses zum besseren Verständnis dekomponiert wird.97 Mittels einer grafischen Repräsentation aus Kästen und verbindenden Pfeilen werden Prozesse, Funktionen und
Aktivitäten beschrieben. Einzelne Aktivitäten werden durch die Konstrukte Steuerung, Input,
Output und Mechanismus näher bestimmt. Somit ermöglicht SADT die Spezifikation von
Zusammenhängen und dem Einsatz von Material- und Fertigungsmitteln, allerdings fehlt eine
Beschreibung dynamischer und zeitlicher Aspekte. Durch die Anordnung der Kästen auf einer
Diagonalen können zwar Verbindungen zwischen ihnen und damit Ablaufstrukturen dargestellt werden, aber eine weitergehende Spezifikation dieser Abläufe ist nicht möglich. Da
SADT-Modelle nicht oder nur beschränkt erweiterbar sind, erfordern Änderungen einen hohen
Zeitaufwand. Darüber hinaus können Beziehungen in den Datenmodellen nur über Funktionen
abgebildet werden.98
Die M.A. Jackson Methode beschäftigt sich mit der Beschreibung der Datenstruktur, welche
die Grundstruktur eines Softwaresystems und damit die Transformation der Input-Daten in
Output-Daten bestimmt. Auf diese Weise sind Programmabläufe gut darstellbar, andere Eigenschaften des Softwaresystems werden jedoch nicht abgebildet. Ebenso wie bei SADT können
mit der M.A. Jackson Methode keine dynamischen Vorgänge beschrieben werden, wodurch
auch sie für eine Unternehmensspezifikation nicht geeignet ist.99
Ein Baumdiagramm, das die Gliederung der Funktionen in Unterfunktionen darstellt, und ein
Ebenendiagramm, das für jede Funktion die Eingabedaten, die algorithmische Funktionsbeschreibung und die Ausgabedaten abbildet, sind die Grundelemente von HIPO.100 Diese Technik beschreibt die Hauptfunktionen eines Systems und ermöglicht es außerdem, Abhängigkeiten zwischen Ein- und Ausgabedaten sowie die funktionale Zergliederung des Systems zu
spezifizieren. Nachteilig ist bei der HIPO-Technik das Fehlen von Sprachelementen zur Datenspezifikation sowie zur Darstellung dynamischer Vorgänge, weswegen wiederum nur statische
Modelle entstehen.101
95.
96.
97.
98.
99.
100.
Vgl. [Dij69] und [Wir75]
Ebenso verhält es sich auch in der auf der SADT-Methode basierenden IDEF-Modellierungssprache
(vgl. [MSJ94], S. 104 ff.).
Vgl. [Han92], S. 560
Vgl. [SMJ93], S. 32 ff.
Vgl. [MSJ94], S. 147 f.
Vgl. [HeBu87], S. 110 f.
Stand der Technik
75
Zusammenfassend läßt sich zu diesen drei Entwurfsmethoden feststellen, daß sie sich bezüglich der Wertigkeit unterscheiden, nach der sie sich mit den verschiedenen Systemstrukturen
befassen: Die SADT-Methode geht aufgabenorientiert102, die M.A. Jackson Methode datenorientiert103 und die HIPO-Technik aufgaben- und datenorientiert vor, wodurch sie die umfassendste Abbildung dieser Methoden ermöglicht. Es ist jedoch ein gemeinsames Defizit der
beschriebenen drei Techniken, daß sie keine Dynamik und damit auch keine zeitlichen Aspekte
in ihre Spezifikationen miteinbeziehen. Außerdem sind ihre Konstrukte aus der Sicht der
Unternehmensmodellierung nicht ausreichend problembereichs- bzw. anwendungsorientiert.
Die Strukturierte Programmierung bzw. der Strukturierte Programmentwurf nimmt, wie schon
in Abschnitt 3.1 Klassifikationen für die Fertigungslenkung dargestellt, eine Gliederung in die
Strukturierung der Funktionen, des Ablaufs und der Daten vor. Im Gegensatz zu den vorher
diskutierten Techniken beinhaltet dieser Ansatz demnach neben der Spezifikation der Funktionen und Daten auch eine Beschreibung bzw. Strukturierung des Ablaufs. Die Aufteilung und
gleichwertige Behandlung der drei Bereiche soll auch als Vorbild der hier zu entwickelnden
Spezifikationssprache dienen. Dieses ist darüber hinaus auch dadurch bedingt, daß die Grundlage der hier zu entwickelnden Sprache die vorher erarbeitete Klassifikation darstellt, welche
in die genannten drei Hauptkriterien untergliedert ist.
Die Funktionale Dekomposition beschreibt eine einfache Top-down-Strategie ausgerichtet auf
Funktionen bzw. Prozesse eines Programms. Datenflußdiagramme und Programmablaufpläne
sowie Struktogramme sind unterschiedliche Darstellungsmöglichkeiten der Ergebnisse und
Dokumentation eines strukturierten Entwurfs. Sie gehören nach DIN 66001 zu der Gruppe der
Blockdiagramme. Datenflußdiagramme104 setzen sich aus Kästen, in denen Prozesse beschrieben werden, Pfeilen, die den Datenfluß zwischen Prozessen darstellen, und Symbolen für
Datenspeicher sowie für externe Datenquellen und -senken zusammen. Somit besitzen einige
Elemente dieser Diagramme nicht nur einen direkten Bezug zum Programmablauf, sondern
auch zum zugrunde liegenden Informationssystem.
Herkömmliche Programmablaufpläne105 bergen die Schwierigkeiten, daß sie für komplexe
Programme zu unübersichtlich sind und keinen funktionellen Zusammenhang von Programm101.
102.
103.
104.
105.
Vgl. [MSJ94], S. 153 f.
Die Programmodularisierung ist ein direktes Abbild der Aufgabenmodularisierung, so daß jeder Teilaufgabe ein Programmodul zugeordnet werden kann (funktionale Dekomposition).
Der Entwurf erfolgt ausgehend von den Datenstrukturen, die einer Programmieraufgabe zugrunde liegen.
Vgl. Datenflußplan in [DuIn89], S. 145 f.
Vgl. Programmablaufplan, Ablaufdiagramm, Flußdiagramm [DuIn89], S. 458
76
Kapitel 3
bausteinen im Sinne eines Organisationsschaubildes darstellen. Sie bilden nur den Steuerfluß
und nicht den Datenfluß ab. Hinzu kommt, daß der Steuerfluß nur sequentielle Folgen von
Arbeitsschritten beschreiben kann; zeitliche Abhängigkeiten werden ebenfalls lediglich unzureichend dargestellt. Häufig ist eine Reihenfolge zwischen den Arbeitsschritten bzw. Vorgängen nicht ersichtlich und vorgesehen.
Im Gegensatz zu den vorher diskutierten teilweise recht unübersichtlichen und schwer verständlichen Darstellungsarten der Programmabläufe, die außerdem zur undisziplinierten Verwendung von Programmsprüngen verführen, bietet das Struktogramm oder nach seinen Entwicklern auch Nassi-Shneiderman-Diagramm genannte Beschreibungsmittel durch die
Verwendung unterschiedlicher Strukturblöcke106 eine weitaus anschaulichere und leichter verständliche Spezifikation des Programmablaufs und seiner Teilschritte. Es ermöglicht dadurch
eine gut strukturierte und einfache Handhabung. Jedoch ist auch diese Darstellungsart bei
komplexen Problemen nicht mehr leicht durchschaubar und es fehlen ergänzende sprachliche
Elemente, die das abbildbare Spektrum sinnvoll erweitern könnten.107 Der Nachteil der
Unhandlichkeit dieser Diagramme bei längeren Verfahrensbeschreibungen kann durch eine
Aggregation bzw. Reduktion der Daten vermieden werden.
Eine Problematik all dieser bisher beschriebenen Entwurfs- und Darstellungsmethoden ist aber
die fehlende Beachtung von simultan ablaufenden Programmteilen. Im Falle derartiger Prozesse, wie sie in der Fertigung bzw. Fertigungslenkung unbedingt anzutreffen sind, können bei
den beschriebenen Methoden Probleme in der Darstellung auftreten, wenn zwei unterschiedliche Prozesse gleichzeitig auf dieselben Daten zugreifen wollen. Ein weiterer Nachteil besteht
darin, daß die bisher diskutierten Methoden ihre Ergebnisse allein auf graphischem Wege darstellen. Dieses Vorgehen ist zwar anschaulich, aber bei komplexen Systemen sehr platzaufwendig. Außerdem wird eine umfangreiche Graphik schnell unübersichtlich und ist dann nicht
mehr leicht zu durchschauen. Darüber hinaus fehlen aufgrund des beschränkten Sprachumfangs der Methoden108 weitere Konstrukte, die einerseits zur Darstellung des den Abläufen
zugrunde liegenden Daten- bzw. Fertigungsmodells und andererseits zur genaueren Spezifikation der verschiedenen Funktionen und Abläufe dienen.
106.
107.
108.
Es gibt unterschiedliche Strukturblöcke (Ablaufkonstrukte) für einfache Aktionen (Sequenz), bedingte
Anweisungen (Auswahl), Fallunterscheidungen (Mehrfach-Auswahl), Schleifen (Unterscheidung:
while - repeat). Diese lassen sich beliebig ineinander verschachteln (vgl. [NaSh 73], [DIN 66 261] und
[DuIn89], S. 582 f.).
Vgl. [MSJ94], S. 169 ff.
Diese Beschränkung ist natürlich auch darauf zurückzuführen, daß diese Methoden allgemeingültig
sein sollen und deswegen keine bereichsspezifischen Konstrukte enthalten.
Stand der Technik
77
Im Rahmen der Strukturierten Analyse109, dem bekanntesten datenflußorientierten Ansatz zur
Analyse und Definition der Aufgaben betrieblicher Informationssysteme, werden Datenflußdiagramme durch detaillierte Prozeßbeschreibungen in strukturierter Umgangssprache (MiniSpezifikation) und durch Entscheidungstabellen zur Prozeßsteuerung (Data Dictionary)
ergänzt.110 Diese Erweiterung der rein graphischen Beschreibung durch sprachliche Elemente
ermöglicht eine umfassendere Beschreibung der Prozesse und ihrer Entscheidungssituationen.
Gleichzeitig verhindert eine Nutzung dieser Elemente im Gegensatz zu einer Gesamtdarstellung als Graphik, daß die Spezifikation aufgrund ihres Umfangs zu kompliziert und unklar
wird. Die Strukturierte Analyse ist somit sehr empfehlenswert und kann als Vorbild der hier zu
entwickelnden Spezifikationssprache dienen. Allerdings ist ihre Anwendung auf datenflußorientierte Probleme beschränkt und die Kopplung von Daten- und Funktionssicht wie auch die
zwischen Lenkungs- und Leistungssystem sind unzureichend.111
Eine weitere Möglichkeit zur Beschreibung von Softwareabläufen, die auch im Rahmen der
Strukturierten Analyse genutzt wird, ist die Verwendung von Pseudocode. Unter diesem versteht man eine Programmentwurfssprache, die mit umgangsprachlichen Ausdrücken Programmstrukturen, vorwiegend sequentielle Abläufe, beschreibt.112 Im Gegensatz zum Struktogramm werden beim Pseudocode die einzelnen Strukturblöcke nicht gezeichnet, sondern
beschrieben. Die Syntax dieser Sprache besteht größtenteils aus Sprachelementen höherer Programmiersprachen. Sie ist allerdings nicht formalisiert und damit nicht kompilierbar, was dann
ein Defizit darstellt, wenn die im Pseudocode erarbeiteten Ergebnisse auf ihre Korrektheit
(Verifikation) getestet werden sollen. Dieser Nachteil kann jedoch mit einer stärkeren Formalisierung, wie z.B. durch Nutzung einer speziellen Syntaxbeschreibung, vermieden werden. Der
klare Vorteil der Verwendung von Pseudocode liegt jedoch in seiner Problemnähe und der
damit verbundenen leichten Verständlichkeit für die jeweiligen Anwender. Außerdem bietet
Pseudocode ein größeres Maß an Variabilität und Flexibilität. Allerdings gilt für diese Darstellungsform noch in größerem Maße als für die graphischen Beschreibungssprachen, daß sie ab
einem gewissen Umfang unübersichtlich wird und damit ihre Anschaulichkeit und Transparenz verliert. Aus diesem Grund sollte Pseudocode nicht als alleiniges Darstellungselement
genutzt werden, sondern immer nur in Verbindung mit graphischen Elementen Anwendung
finden.
109.
110.
111.
112.
Vgl. [DeM79], [GJM91], S. 395 ff. und [FeSi98], S. 170 ff.
Vgl. Structured (System) Analysis [MSJ94], S. 138 ff. und [SMJ93], S. 30 ff.
Vgl. [FeSi98], S. 174 f.
Vgl. [GJM91], S. 402 und [MSJ94], S. 173 f.
78
Kapitel 3
Petri-Netze sind Modelle zur Beschreibung und Analyse von Abläufen mit nebenläufigen Prozessen und nicht-deterministischen Vorgängen.113 Sie sind geeignet für die formale Spezifikation dynamischer Systeme mit fester Grundstruktur (Vorgangsnetze) und somit vielfältig einsetzbar, von der Beschreibung von Geschäftsprozessen bis zur Abbildung von
Betriebssystemen. Dargestellt werden Petri-Netze mit gerichteten Graphen, die sich aus zwei
Arten von Knoten, Stellen und Transitionen, zusammensetzen. Zur Beschreibung dynamischer
Vorgänge werden die Stellen mit Objekten belegt, die durch die Transitionen weitergegeben
werden. Mögliche Petri-Netz Formen sind Bedingungs-Ereignis-Netze, Stellen-TransitionenNetze und Netze höherer Ordnung mit Individuen als Marken, wie z.B. Prädikat-EreignisNetze und Prädikat-Transitionen-Netze mit individuellen Marken sowie Kanal-Instanz-Netze
zur Darstellung einer hierarchischen Systemstruktur.114 Da die so definierten Petri-Netze keine
Aussagen über das zeitliche Prozeßverhalten beinhalten, wurden spezielle zeitbeschriftete
Petri-Netze entwickelt.115 Petri-Netze können diverse andere Techniken des Software Engineering, wie z.B. Datenfluß-Diagramme, Kontrollfluß-Diagramme oder Endliche Automaten,
ersetzen. Die Vorteile dieser Netze liegen in ihrer guten mathematischen Analysierbarkeit und
der Darstellbarkeit von Nebenläufigkeit bzw. Parallelität. Nachteilig an der Spezifikation mit
Petri-Netzen ist hingegen die sehr abstrakte bzw. neutrale und für den ungeübten Anwender
nur schwer verständliche Darstellung von Systemen, wobei meistens nur die zugrunde liegenden Algorithmen beschrieben werden. Somit bilden Petri-Netze immer eine ablaufbezogene,
dynamische Teilansicht der Realität ab. Eine Strukturierung der zugrunde liegenden Daten ist
mit ihnen nur schwerlich möglich.116
Für die Syntax der Spezifikationssprache ergibt sich zusammenfassend aus dieser Betrachtung
verschiedener Ansätze von verwandten Wissenschaftsgebieten, daß eine rein graphische
Beschreibung nicht empfehlenswert ist, da sie leicht unübersichtlich und dadurch unverständlich wird. Außerdem fehlt dieser Art der Darstellung aufgrund ihrer Abstraktheit die geforderte
Nähe zum jeweiligen Anwender bzw. Problemfeld. Durch eine Ergänzung der graphischen mit
sprachlichen Elementen, wie z.B. in der Strukturierten Analyse, können diese Nachteile
jedoch aufgehoben werden und die Spezifikation wird benutzerfreundlicher und präziser. Als
vorteilhafte Spezifikationssprache für die der Fertigungslenkung zugrunde liegende Vorgangs-
113.
114.
115.
116.
Vgl. [DuIn89], S. 441
Vgl. [Rit98], S. 85 ff., [SMJ93], S. 34 ff., [MSJ94], S. 162 ff. u.a.
Vgl. [GJM91], S. 185 ff.
Vgl. [SMJ93], S. 37
Stand der Technik
79
struktur haben sich Petri-Netze, erweitert durch die oben bereits teilweise beschriebenen
Ergänzungen, herausgestellt.
3.2.2 Semantik existierender Spezifikationssprachen
Im folgenden werden nun die Beschreibungssprachen einiger umfassender Konzepte und
Modelle der Produktionsplanung und -steuerung, die bereits im Rahmen der Klassifikation
betrachtet wurden, bezüglich ihrer Eignung als Spezifikationssprache für die Fertigungslenkung untersucht. Dabei wird in der Hauptsache auf die Semantik dieser Darstellungsarten eingegangen.
Das Rahmenwerk CIM-OSA117 beinhaltet auf seinen Modellierungsebenen, Anforderungen,
Design und Implementierung, verschiedene Spezifikationssprachen. Auf der Anforderungsebene werden die Prozesse und Aktivitäten und die sie auslösenden Ereignisse bzw. Bedingungen dargestellt. Außerdem werden die In- und Outputs der Aktivitäten und Objektsichten mit
ihren jeweiligen Eigenschaften beschrieben. Die Darstellung erfolgt einerseits in Form pseudosprachlicher Definitionen und Regeln sowie andererseits mit graphischen Darstellungen in
einer der IDEF-Modellierungssprache118 ähnlichen, also auf der SADT-Methode119 basierenden, Notation. Die Design Spezifikation legt das Prozeßverhalten sowie das Aktivitätenverhalten mit den erforderlichen Funktionen bzw. funktionalen Operationen und Ressourcen fest.
Auch diese Spezifikation wird mit Pseudocode beschrieben. Auf der Implementierungsebene
schließlich wird das Modell der Design Spezifikation vervollständigt und in relationalen Strukturen unter Benutzung von SQL120 abgebildet.121
Problematisch an CIM-OSA ist, daß die bisherigen Konstrukte sich vor allem auf die Darstellung von Prozessen, Aktivitäten und Funktionen beschränken, wohingegen es für die zugrunde
liegende Struktur fast keine Beschreibungsmittel gibt. Die Abbildung der Spezifikationen in
Pseudocode und graphischen Darstellungen, wie sie auf der Anforderungsebene vorgenommen
wird, bedeutet eine klare Erleichterung für das Verständnis. Es fehlt allerdings an einer Verbindung zwischen den pseudosprachlichen und graphischen Darstellungen, die zur einfachen
Anwendbarkeit dieser Spezifikationen beitragen würde. Eine weitere Schwachstelle ist der
117.
118.
119.
120.
121.
Vgl. Abschnitt 3.1 Klassifikationen für die Fertigungslenkung
Vgl. [MSJ94], S. 104 ff.
Vgl. [DaWa97], S. 246 ff.
SQL (Structured-Query-Language) ist die verbreitetste Datenbanksystem-Sprache und dient zur Definition des konzeptionellen Modells sowie zur Manipulation von Daten. Seit 1989 ist sie international
normiert und stellt den Marktstandard dar (vgl. [Han92], S. 574 ff.).
Vgl. [Ver93], S. 72 ff.
80
Kapitel 3
etwas unklare Übergang von der Anforderungs- zur Designspezifikation. Eine Kombination
beider Beschreibungen würde die Nutzung vereinfachen und beschleunigen. Außerdem könnten so Fehler beim Übergang zwischen den Ebenen bzw. den verschiedenen Spezifikationen
vermieden werden.
Wie auch im Rahmenwerk CIM-OSA besitzen die unterschiedlichen Beschreibungsebenen im
ARIS Konzept von Scheer122 jeweils spezifische Darstellungsarten. Auf höchster Ebene, der
betriebswirtschaftlichen Problemstellung, werden nur halbformale Beschreibungsmethoden
eingesetzt, um grobe Tatbestände, die sehr nahe an den fachlichen Zielsetzungen und der fachlichen Sprachwelt orientiert sind, darzustellen. Das Fachkonzept bietet dagegen bereits eine
soweit formalisierte Sprache, daß es Ausgangspunkt einer konsistenten Umsetzung in die
Informationstechnik sein kann. Es ist jedoch immer noch eng mit der betriebswirtschaftlichen
Problemstellung verbunden. Die Ebene des DV-Konzepts ermöglicht die Übertragung der
Begriffswelt des Fachkonzeptes in die Kategorien der DV-Umsetzung. In ihr werden die ausführenden Module oder Benutzertransaktionen definiert. Zwischen Fachkonzept und DV-Konzept besteht nur eine lose Kopplung. Auf unterster Ebene wird das DV-Konzept auf konkrete
hardware- und softwaretechnische Komponenten übertragen und somit die physische Verbindung zur Informationstechnik hergestellt.
Demzufolge ähneln die an das Fachkonzept gestellten Anforderungen denen, die der hier zu
entwickelnden Spezifikationssprache zugrunde liegen. Bezüglich der verschiedenen Beschreibungssichten besitzt das Fachkonzept von ARIS jedoch unterschiedliche Darstellungsarten. So
sind die Beschreibungsmethoden der Funktionssicht Hierarchiediagramme und Funktionsbäume zur statischen Darstellung der Funktionsstruktur, ein Netzwerk von Anordnungsbeziehungen zur Beschreibung der Ablauffolgen mit Zeitbezug und Nassi-Shneiderman Diagramme
zur Abbildung der Funktionsausführung, womit die Transformationsregeln von Eingabe- zu
Ausgabedaten gemeint sind. Letztere werden auch bei der Erarbeitung des DV-Konzepts eingesetzt. In der Organisationssicht wird die Organisationsstruktur bzw. -gliederung mittels
Organigrammen verknüpft durch Weisungsbefugnisse dargestellt. Die Beschreibung des Fachkonzepts der Datensicht erfolgt durch ein erweitertes Entity-Relationship-Model (ERM)123.
Die Steuerungssicht schließlich, welche die Verknüpfung von Funktionen, Organisation und
Daten behandelt, bildet diese mit ereignisgesteuerten Prozeßketten, einer Verbindung von
122.
123.
Vgl. [Schee98], S. 14 ff.
ERM ist ein spezielles Datenmodell zur Darstellung eines konzeptionellen Schemas (vgl. [Han92], S.
563 ff. und [Sche98], S. 31 ff.).
Stand der Technik
81
Bedingungs-Ereignisnetzen der Petri-Netz-Theorie mit Verknüpfungselementen, wie sie z.B.
von dem stochastischen Netzplan-Verfahren GERT124 verwendet werden, ab.
Die Vielzahl unterschiedlicher Beschreibungsmethoden des ARIS-Konzepts ist für die einzelnen Sichten sehr nützlich und anwenderfreundlich, da die Methoden direkt auf die speziellen
Problematiken zugeschnitten sind. So beschreibt das ERM z.B. Datenzusammenhänge; die
Spezifikation von Funktionen und die Abbildung von Funktionsabläufen mit dieser Beschreibungsmethode ist jedoch nicht möglich.125 Dem Konzept fehlt indessen eine gemeinsame
Basis dieser Methoden, so daß die verschiedenen Darstellungen keine Verbindungen besitzen
und nicht direkt miteinander zu verknüpfen sind. Dieser Umstand erschwert oder verhindert in
den meisten Fällen sogar eine umfassende und einheitliche Beschreibung der Fertigungslenkung, wie sie für die in der vorliegenden Arbeit zu entwickelnde Spezifikationssprache gefordert ist. Darüber hinaus fehlen dem ARIS-Konzept aufgrund des großen Problembereichs, den
es abgedeckt, bzw. wegen seiner Allgemeingültigkeit die Nähe zur Fertigungslenkung und
außerdem mnemonische Konstrukte in den einzelnen Beschreibungsmethoden. Da der hier zu
spezifizierende Bereich auf die Fertigungslenkung beschränkt ist, sind die Methoden bzw. die
Darstellungsarten der Funktionssicht des ARIS-Konzepts von besonderem Interesse. Auf sie
wird deswegen im Rahmen der Spezifikation von Fertigungslenkungsfunktionen noch näher
eingegangen.
Im Aachener PPS-Modell besitzt ebenfalls jede Referenzsicht ihre eigenen Darstellungsmethoden, die speziell auf den von ihr dargestellten Problembereich ausgerichtet sind.126 So erfolgt
z.B. die Dokumentation der Referenzprozesse auf Basis von DIN 66001, während die Funktionen rein semantisch über eine verbale Beschreibung des Funktionsmerkmals und seiner Ausprägungen beschrieben werden.127 Eine Besonderheit dieses Modells ist die objektorientierte
Referenzsicht, die der Unterstützung von Projekten zur objektorientierten Entwicklung von
PPS-Systemen dient. Diese bietet den Vorteil einer leichten Umsetzung in eine Programmiersprache und eignet sich somit als Vorbild der hier zu entwickelnden Spezifikationssprache. Die
objektorientierte Referenzsicht wird in der Notation der Unified Modeling Language (UML)
angegeben. Ebenso wie beim ARIS-Konzept fehlt es den Beschreibungsmethoden des Aachener PPS-Modells aber an einer gemeinsamen Grundlage. Die Referenzsichten dienen jeweils
bestimmten Zwecken und sind für den Einsatz in unterschiedlichen PPS-Projekten vorgesehen;
124.
125.
126.
127.
Vgl. [Rit98], S. 57 ff.
Vgl. [SMJ93], S. 37 f.
Vgl. [Scho98], S. 14 ff.
Vgl. Abschnitt 3.2.2.3 Spezifikationssprachen für Fertigungslenkungsfunktionen
82
Kapitel 3
zwischen ihnen bestehen jedoch nur lose Zusammenhänge. So liefert die Aufgabensicht z.B.
die Grobstruktur für die Funktionen und die Objektklassen der PPS. Außerdem gibt sie Prozeßschritte vor. Insgesamt mangelt es diesem Konzept ebenfalls an der geforderten Einheitlichkeit und damit der Anwendbarkeit als Gesamtspezifikation. Ein weiteres Defizit ist wiederum
die fehlende Orientierung am Problembereich.
Die objektorientierte Sprache ORVAN128 wurde für die Darstellung und Modellierung von
Produktionsprozessen und Planungsstrategien entwickelt, wobei insbesondere die Implementierung von Leitständen im Vordergrund stand. Sie basiert auf einer Synthese der Konzepte der
objektorientierten Programmierung und der objektorientierten Wissensrepräsentation. Ihre
Zielsetzung ist es, entsprechend der Wiederverwendung von Programmcode in objektorientierten Programmiersprachen, Modellfragmente von Produktionsprozessen erneut einzusetzen.
Dieses ist ein Ansatz, der als Vorbild der hier zu entwickelnden Spezifikationssprache und insbesondere ihrer Implementierung dienen kann. Als Bausteine von ORVAN werden nur elementare Datentypen, wie z.B. Real, Integer, String, usw., genutzt. Zusätzlich gibt es fertigungslenkungsspezifische, einfache Erweiterungen, wie z.B. Zeit, Relationen und
Entscheidungstabellen. Allerdings bietet ORVAN damit eine Spezifikation, die der von herkömmlichen Programmiersprachen weitestgehend entspricht und sich auf einer sehr detaillierten Darstellungsebene befindet. Dieses widerspricht jedoch den hier an die Spezifikationssprache gestellten Anforderungen. Außerdem fehlt in der Grundphilosophie von ORVAN ein
spezielles (problembereichsorientiertes) Konzept für die Behandlung der Fertigungslenkungfunktionalität.129
EXPRESS130 wurde im Rahmen des US Air Force ICAM Product Definition Data Interface
Programms131 entwickelt. Zunächst war es eine einfache Data Definition Language, wurde
jedoch später zu einer Data Specification Language weiterentwickelt. EXPRESS ist eine formale Beschreibungssprache zur Modellierung von Produktinformationen und ermöglicht die
Entkopplung von Dateninhalten und physikalischen Speicherformaten. Weiterhin besitzt es allgemeine Konstrukte zur Strukturierung von Daten durch Datenobjekte, Datenbeziehungen und
Attribute sowie deren Dekomposition. Eine Besonderheit von EXPRESS ist die Möglichkeit
128.
129.
130.
131.
Vgl. [Pla93]
Vgl. [Fel96], S. 32
EXPRESS ist Teil der Entwicklung von STEP (STandard for the Exchange of Product model data),
einem internationalen Standard zur Beschreibung von Produkten (vgl. [MSJ94], S. 89 ff. und
[ScWi94]).
Integrated Computer Aided Manufacture-Program (ICAM)
Stand der Technik
83
der Darstellung von Kommunikation zwischen einzelnen Systemen. Die folgenden Elemente
werden von dieser Sprache zur Verfügung gestellt:132
• Types (Variablen, Parameter)
• Entities (Objekte)
• Algorithms: Rules, Functions (Sequenz von Operationen), Procedures (Zusammenfassung von Functions und Rules)
• Schema (Vorgang - Zusammenfassung von Types, Entities, Functions und Rules)
Die Struktur und Syntax von EXPRESS ist der Programmiersprache Pascal ähnlich, allerdings
sind Grundzüge einer Objektorientierung enthalten. Dennoch werden nur Daten- bzw. Informationsobjekte und deren Beziehungen betrachtet, weswegen die Spezifikationssprache
EXPRESS auf statische Informationen beschränkt ist. Ein weiterer Nachteil von EXPRESS ist
die komplizierte und nicht problembereichsspezifische, konkret auf die Fertigungslenkung
bezogene Notation. Der rein sprachlichen Darstellung fehlt es trotz der teilweisen Objektorientierung ab einem gewissen Datenumfang an Anschaulichkeit und Übersichtlichkeit. Dieses
liegt nicht zuletzt am hohen Detaillierungsgrad von EXPRESS und führt dazu, daß eine
Anwendung der Sprache deutlich erschwert wird.
Einzelprobleme der Fertigungslenkung, vor allem Ablauf- oder Reihenfolge- und Los- oder
Bestellgrößenplanungen, werden immer noch häufig mit optimierenden Verfahren133 bearbeitet. Die Grundlage dieser Verfahren bilden rein mathematische Beschreibungen. Meistens handelt es sich dabei um isolierte Planungen, die von speziellen und vielfach stark einschränkenden Prämissen, z.B. bezüglich des Produktionsprogramms oder der Fertigungsart, ausgehen.
Diese große Zahl an Annahmen erlauben zwar die beschränkte Untersuchung interessanter
Größen, aber keine umfassende Betrachtung der Fertigungslenkung.134 Daneben werden
lineare oder gemischt-ganzzahlige Programme zur Spezifikation der Probleme immer umfassenderer Simultanmodelle entwickelt. Sie spezifizieren den Problembereich mit Variablen,
Nebenbedingungen und Zielfunktionen und beziehen sachliche und zeitliche Interdependenzen
der einzelnen Teilbereiche der Fertigungslenkung mit ein. Allerdings stoßen diese Programme
bezüglich ihrer Operationalisierbarkeit auf Probleme.135
132.
133.
134.
135.
Vgl. [ISO94]
Optimierende Verfahren sind Verfahren, die ausgehend von einer zulässigen Basislösung, die oder
eine optimale Lösung eines Problems liefern (vgl. [DoDr95], S. 74).
Vgl. [Sau93]
Vgl. zur Kritik [Swi89] oder zur Darstellung und zum Vergleich von ganzzahligen Programmen in der
Ablaufplanung [See75]
84
Kapitel 3
Ein Spezialfall dieser mathematischen Spezifikationen findet sich bei Rittgen.136 Er hat einen
eigenen Kalkül für die Ablaufplanung entwickelt, der ihre wesentlichen Charakteristika einfach und in theoretischer Form beschreibt. Dieser Kalkül ist gleichzeitig auch die Basis für
eine effiziente Heuristik zur Optimierung. Als Kern der Ablaufplanung sieht Rittgen den (Produktions-)Prozeß und wählt deswegen die Prozeßtheorie als Basis seines Kalküls. Der von
Rittgen gewählte Ansatz der Spezifikation, auf der seine Implementierung basiert, kann als
Vorbild der hier entwickelten Spezifikation dienen.
Für den Kalkül von Rittgen wie auch die anderen derartigen Spezifikationen ist allerdings
nachteilig, daß sie meistens auf einer rein mathematischen Beschreibung der Fertigungslenkungsprobleme basieren. Diese Darstellung besitzt zwar einen hohen Abstraktionsgrad, kann
den Anforderungen bei realistischen Problemstellungen jedoch nicht entsprechen. Außerdem
ist diese Form der Beschreibung weder leicht verständlich noch besonders benutzerfreundlich.
Darüber hinaus mangelt es den Modellen auch an mnemonischen Konstrukten sowie an der
Vollständigkeit ihrer Abbildung in Bezug auf die Fertigungslenkung. Letzteres liegt vor allem
darin begründet, daß eine derartige Spezifikation auf einem sehr niedrigen Aggregationsniveau
ansetzt. Die Beschreibung ist genauestens auf ein spezifisches Problem zugeschnitten. Bereits
bei kleinsten Abweichungen oder einer geringfügigen Variation der Formulierung von Variablen und Restriktionen ändert sich der Modellumfang137 und der erforderliche Rechenaufwand. Diese als gemischt-ganzzahlige Optimierungsmodelle formulierten monolithischen
Modelle stellen demnach keine anwendbaren Lösungsansätze dar, sondern bieten in erster
Linie eine Beschreibung der Probleme. Außerdem machen sie die Wechselwirkungen zwischen den Teilbereichen der Fertigungslenkung sichtbar.138
Ansätze zur Entwicklung einer Spezifikationssprache für die Fertigungslenkung finden sich
auch bei Felser.139 Er hat in seiner Arbeit einen Problemdeskriptor zur Beschreibung der steuerungs- und planungsrelevanten Eigenschaften eines Fertigungssteuerungssystems entwickelt.
Im einzelnen untergliedert der Deskriptor die Steuerungs- und Planungsprobleme in die Teilkomponenten Prozeß, Ziel und Umsysteme. Dabei beinhaltet die Komponente Prozeß die
Struktur und die lokalen Eigenschaften der Probleme. Die Komponente Umsysteme besteht
aus der Kopplung mit diesen und der Ereignismenge. Weiterhin setzt sich die Struktur aus den
Komponenten Makrostruktur, welche die Ablaufstruktur spezifiziert, und Mikrostruktur, die
136.
137.
138.
139.
Vgl. [Rit98]
Mit Modellumfang ist hier die Zahl der Variablen und Nebenbedingungen gemeint.
Vgl. [Zäp82], S. 303
Vgl. [Fel96], S. 84 ff.
Stand der Technik
85
den bzw. die Prototypen abbildet, zusammen.140 Lokale Eigenschaften sind entweder Knotenoder Kanteneigenschaften. Die Darstellung im Problemdeskriptor teilt sich in graphische und
sprachliche Beschreibungselemente auf.
Insgesamt bietet Felser eine sehr gut verständliche und präzise Spezifikation für die Fertigungslenkung, die ein großes Spektrum der dort anzutreffenden Probleme umfaßt. Ein Nachteil des Problemdeskriptors ist es jedoch, daß er von einem simplifizierten Zeitmodell, und
zwar einem einheitlichen und kontinuierlichen, sowie weiteren Vereinfachungen bezüglich der
Dimensionierung der Betriebsmittel und der Unterbrechbarkeit von Vorgängen ausgeht. Darüber hinaus ist diese Beschreibungsform einerseits bezüglich der Darstellung der Fertigungslenkungsabläufe und -funktionen nicht ausführlich genug, und auf der anderen Seite in Bezug
auf die Knoten- und Kanteneigenschaften bereits zu detailliert, um sinnvoll auf die gesamte
Fertigungslenkung angewendet zu werden. Die Spezifikation eines umfangreichen Problems
mit dieser Spezifikationssprache bzw. diesem Problemdeskriptor bietet nicht die geforderte
Transparenz, Anschaulichkeit und Übersichtlichkeit. Daneben ist auch die Entfernung der
Beschreibung von der Implementierung zu bemängeln, welche die Umsetzung der Spezifikation in ein lauffähiges Programm erschwert.
Hartmann141 hat in seiner Arbeit eine Spezifikationssprache für Methoden zur Definition hierarchischer Abläufe entwickelt. Mittels dieser Methoden soll ein hierarchischer Ablauf der
Gesamtheit vordefinierter Fertigungssteuerungsfunktionen definiert und damit der Ablauf des
Fertigungssteuerungssystems festgelegt werden. Das Ablaufnetz, das, wie bereits in Abschnitt
3.1.1 Klassifikationen für Fertigungslenkungsstrukturen dargestellt, auf dem Modell der Fertigungssteuerung basiert, setzt sich aus den Konstrukten Objektknoten, Vorgangsknoten,
Schnittstelle und Kante zusammen, die eine flexible Abbildung erlauben. Auf diesem Ablaufnetz basiert die Spezifikationssprache, durch die eine einheitliche und problembereichsspezifische Formulierung der Methoden zur Definition hierarchischer Abläufe ermöglicht werden
soll. Sie dient sowohl zur Beschreibung der In- und Outputdaten als auch der Funktionalität
dieser Methoden. Dabei verwendet sie mnemonische Sprachkonstrukte, die sich an der Syntax
natürlicher Sprachen orientieren. Diese enge Verknüpfung von einer graphischen (Ablaufnetz)
mit einer sprachlichen (Spezifikationssprache) Notation zeigt viele Vorteile und soll deswegen
als Vorbild der hier zu entwickelnden Spezifikation genutzt werden.
140.
141.
Vgl. Abschnitt 3.1.1 Klassifikationen für Fertigungslenkungsstrukturen
Vgl. [Hart95]
86
Kapitel 3
Als definierte Syntax nutzt Hartmann eine der Programmiersprache Modula-2 ähnliche Notation, um eine möglichst einheitliche Darstellung der problembereichsunabhängigen und
-abhängigen Datentypen zu erreichen. Allerdings ist ein entscheidendes Problem dieser Spezifikationssprache ihre Komplexität und schwierige Lesbarkeit. Trotz der Verwendung von mnemonischen Sprachkonstrukten sind die Programme aufgrund ihrer wenig anschaulichen Notation nur schwer verständlich. Weiterhin geht Hartmann vereinfachend davon aus, daß
Fertigungssteuerungsfunktionen vorgegeben sind und geht deswegen auf diese nicht im Detail
sondern nur als „schwarzer Kasten“ ein. Dieses bedeutet gleichzeitig, daß er keine umfassende
Darstellung der Funktionen in der Spezifikationssprache ermöglicht. Auf seine Beschreibung
der Strukturen und Abläufe wird in den folgenden Abschnitten noch näher eingegangen.
Auch Brucker142, dessen Klassifikation von Schedulingproblemen bereits in Abschnitt 3.1
Klassifikationen für die Fertigungslenkung betrachtet wurde, nutzt eine Spezifikationssprache
zur algorithmischen Darstellung der Belegungsverfahren. Diese Sprache ist eine Mischung aus
Pseudocode und Elementen höherer Programmiersprachen, wie z.B. Bedingungen, Schleifen,
Zuweisungen usw. Bruckers Ziel ist jedoch in erster Linie eine Darstellung der Unterschiedlichkeit der einzelnen Schedulingverfahren bezüglich Effizienz und Zielerreichung und nicht
eine einheitliche und vollständige Beschreibung der Fertigungslenkung. Aus diesem Grund ist
seine Spezifikationssprache auf einer sehr niedrigen programmiertechnischen Ebene angesiedelt. Die Programme sind sehr detailliert und entsprechen in weiten Teilen der Implementierung in einer höheren Programmiersprache. Somit widerspricht die Zielsetzung dieser Spezifikationssprache den für die hier zu entwickelnde Sprache gestellten Anforderungen. Sie ist
vielmehr ein Hilfsmittel für den Programmierer, der Verfahren optimal implementieren will,
und nicht für den Anwender, für den eine anschauliche und verständliche Beschreibung seiner
Fertigungslenkungsproblematik im Vordergrund steht. Aus diesem Grund sollte im Rahmen
der Implementierung der Spezifikationssprache wieder auf diesen Ansatz zurückgekommen
werden. Kritisch ist an Bruckers Ansatz weiterhin zu sehen, daß die jeweils zugrunde liegende
Lenkungsstruktur und die Lenkungsabläufe des Schedulingproblems einerseits nur unvollständig und andererseits ausschließlich in Pseudocode beschrieben werden, was gegenüber einer
Darstellung mittels einer graphischen Notation klare Nachteile bezüglich Verständlichkeit,
Übersichtlichkeit und Anwendbarkeit in sich birgt.
Zur Realisierung inhaltlicher Verbesserungen gegenüber den bisher verwendeten Modellen
und Methoden der Produktionsplanung untersucht Kurbel143 Entwurfsprinzipien für die Ent142.
Vgl. [Bru81]
Stand der Technik
87
wicklung von Softwaresystemen für diesen Problembereich. Er geht dabei von in der Praxis
eingesetzten Produktionsplanungskonzepten und Planungsmodellen aus dem Operations-Research mit komplizierten Lösungsalgorithmen, wie z.B. heuristischen, simultanen Planungsverfahren sowie Optimierungsverfahren, aus und erstellt Konzeptionen für die Gestaltung von
Softwaresystemen für diese Problembereiche. Dabei strukturiert er, basierend auf dem Softwareentwurfskonzept Modularisierung, die Softwaresysteme nach Teilgebieten der Produktionsplanung sowie nach Abstraktionsebenen.144 Letztere unterteilen ein System in vier Bereiche: Steuermodule, prozedurale Abstraktionen, abstrakte Datenstrukturen und die elementare
Datenverwaltung. Die höchste Abstraktionsebene kontrolliert den algorithmischen Ablauf der
einzelnen Aufgabenkomplexe. Diese Steuermodule spezifiziert Kurbel anhand von NassiShneiderman-Diagrammen, wodurch ihre Struktur sehr anschaulich und übersichtlich dargestellt wird. Ein Beispiel der Beschreibung eines Steuermoduls ist der in Abbildung 3-3 dargestellte Algorithmus der bedarfsgesteuerten Materialdisposition nach dem Dispositionsstufenverfahren145.
Wiederholen für jede Dispositionsstufe i = 1 ... n
Wiederholen für jedes Teil j der Stufe i
Bruttobedarfsermittlung
Nettobedarfsermittlung
Losgrößenplanung
Sekundärbedarfsermittlung
Vorlaufverschiebung
Abbildung 3-3:Materialdisposition nach dem Dispositionsstufenverfahren
(vgl. [Kur83], S. 216)
Kurbel hat mit seinen Abstraktionsebenen eine hierarchische Systemstruktur entwickelt, der
eine Gliederung der Produktionsplanung nach Teilgebieten, die sich unter anderem in ihrem
zeitlichen Horizont unterscheiden (Sukzessivplanungskonzept), zugrunde liegt. Aufbauend auf
seinem schrittweisen Planungsablauf nimmt er weiterhin eine Modularisierung der System143.
144.
145.
Vgl. [Kur83]
Vgl. Abschnitt 3.1 Klassifikationen für die Fertigungslenkung
Das Dispositionsstufenverfahren organisiert die Erzeugnisstrukturen im Gegensatz zum Fertigungsstufenverfahren nach den jeweils tiefsten Fertigungsstufen, auf denen das betrachtete Teil in irgendeiner Erzeugnisstruktur vorkommt, den sogenannten Dispositionsstufen (vgl. [Kur93]).
88
Kapitel 3
komponenten vor. Während Kurbel also vom starren Sukzessivplanungskonzept ausgeht und
damit feste Module umfangreicher Funktionalität erhält, wurde in dieser Arbeit bereits im
Rahmen der Klassifikation größere Flexibilität gefordert, so daß sukzessive wie auch simultane
Planung ermöglicht wird. Außerdem wird durch die Trennung von Abläufen und Funktionen
eine größere Variabilität der Fertigungslenkung geboten.
Die Spezifikationssprache, die Kurbel zur Beschreibung seiner Steuermodule nutzt, setzt sich
aus Iterations-, Schleifenanweisungen und Funktionsaufrufen (Modulen)146 zusammen. Problematisch dabei ist die Definition des betrachteten Bereichs, die rein sprachlich und nicht auf
einer graphischen Notation, wie z.B. einem Vorgangsnetz, basierend vorgenommen wird. Als
abstrakte Datenstrukturen dieser Steuermodule nutzt Kurbel Strukturdarstellungen aus der
Softwaretechnik, wie z.B. Bäume, Netzpläne, Balkendiagramme, Ketten u.a., die zwar in
einem einzigen Datenbestand abgelegt, jedoch nicht durch ein zugrunde liegendes Gesamtmodell verknüpft sind. Mit ihnen stellt er z.B. Erzeugnisstruktur-, Teilefertigungs- oder Dispositionsstufenketten dar. Diese Datenstrukturen werden genau so abgebildet, wie sie auch in einer
höheren Programmiersprache implementiert würden, was jedoch für den Anwender der Sprache zu detailliert und außerdem zum Teil wenig anschaulich und übersichtlich ist. Dieses
widerspricht darüber hinaus den in Kapitel 2 formulierten Anforderungen, die eine Beschreibung der Fertigungslenkung auf einer anwendernahen Ebene fordern, um so eine leicht verständliche und nutzbare Spezifikationssprache zu erlangen. Eine direkte Abbildung der Fertigungslenkungsproblematik in einer höheren Programmiersprache kann diese Anforderungen
nicht erfüllen. Insoweit ist die von Kurbel entwickelte Spezifikationssprache und seine Vorgehensweise zur Entwicklung eines Softwaresystems für die Produktionsplanung für Softwareentwickler nicht jedoch für die Anwender aus der Fertigungslenkung geeignet.
Das Ziel der Arbeit von Sauer147 ist die Entwicklung einer einheitlichen Repräsentation von
Ablaufplanungsverfahren auf Basis von Heuristiken. Zur Lösung dieser Aufgabe erstellt er die
Heuristik-Sprache HERA, die eine einheitliche und transparente Beschreibung von Ablaufplanungsproblemen und des zur Lösung geeigneten Wissens darstellt. Letzteres spezifiziert er
weiter in Form von statischem und dynamischem Ablaufplanungswissen sowie von Kontrollwissen. Zur Darstellung des Ablaufplanungswissens werden Planskelette148 und Auswahlre146.
147.
148.
Bedingte Anweisungen finden sich erst in den Algorithmen eine Ebene tiefer.
Vgl. [Sau93]
Bei der Aktionsplanung: Darstellung eines Plans zur Durchführung von Aktionen durch abstrakte
Operatoren, die situationsspezifisch verfeinert werden. Für die Heuristik-Sprache: Schema eines Algorithmus, der den Durchlauf durch einen Und/Oder-Baum beschreibt; abstrakte Operatoren stehen
u.a. für Auswahlregeln für Knoten (vgl. [Sau93], S. 185).
Stand der Technik
89
geln genutzt. Weiterhin ist HERA kontextfrei und beruht auf der Programmiersprache Prolog149, d.h. Basis für die Sprache sind die syntaktischen Grundbereiche und weitere
Eigenschaften von Prolog, die noch durch problemangepaßte Erweiterungen Ergänzung finden. Die Repräsentation verwendet daneben zur Darstellung von Wissen Aspekte objektorientierter und regelorientierter Konzepte. Dieser wissensbasierte Ansatz einer Spezifikationssprache für die Fertigungslenkung zeigt bezüglich der aufgestellten Anforderungen verschiedene
Mängel. Zuerst einmal ist er auf Ablaufplanungsprobleme begrenzt und bietet damit keine
vollständige Beschreibung der Fertigungslenkung. Daneben entspricht die Syntax nicht den
gestellten Anforderungen, denn sie ist zwar gut strukturiert und in kleinerem Umfang auch
recht anschaulich, dieser Vorteil schwindet allerdings bei komplexeren Systemen. Aufgrund
der Nähe zu Prolog fehlt es HERA darüber hinaus an der geforderten Abstraktion, die Sprache
ist zu detailliert. Außerdem ist die logische Programmierung keine besonders benutzerfreundliche und direkt verständliche Form der Darstellung.
Das Process Specification Language (PSL) Project150 der Manufacturing Systems Integration
Division des National Institute of Standards and Technology hat sich zur Aufgabe gesetzt, eine
allgemeine, robuste und generische Sprache, eine Standard-Spezifikationssprache, zur Repräsentation von Prozessen und ihren Ablaufstrukturen zu erarbeiten. Diese Sprache soll eine
Darstellung des allen Prozessen zugrunde liegenden Konzepts und damit eine gemeinsame
Basis für alle die Funktionen sein, die Prozeßdaten benötigen bzw. mit Prozessen arbeiten.
Dabei soll ihre Sichtweise von Prozessen nicht auf eine bestimmte Strategie oder einen speziellen Problembereich beschränkt sein. Weiterhin baut PSL auf verschiedenen existierenden
Methodiken auf. Die Entwicklung einer derartigen übergreifenden Sprache ist möglich, da eine
Vielzahl ihrer Grundvoraussetzungen allen bisherigen Ansätzen gemeinsam ist. Die dabei zu
integrierenden Funktionen reichen quer durch den Lebenszyklus eines Produktes, von den
ersten Produktionsprozessen über die Prozeßplanung (Workflow), Validierung, Maschinenbelegungsplanung (Production Scheduling) bis zur Produktionsregelung (Control) und umfassen
somit Geschäftsprozesse wie auch technische (Produktions-) Prozesse. Derzeit haben alle
diese Funktionen typischerweise ihre eigenen Beschreibungsansätze, die sich sowohl syntaktisch als auch semantisch unterscheiden.
PSL setzt sich zusammen aus einem Schema, einer Grammatik und einer Syntax sowie mehreren Darstellungsarten. Letztere sind deswegen nötig, da die Sprache einerseits eine Notation
149.
150.
Prolog ist eine prädikative bzw. logische Programmiersprache. In einem Prolog-Programm wird versucht, die Richtigkeit einer Eingabe anhand vorhandener Regeln zu überprüfen (vgl. [Han92], S. 367).
Vgl. [SKR96]
90
Kapitel 3
besitzen soll, die direkt in ein Programm umgesetzt werden kann, und andererseits verschiedene graphische Notationen, die den Anwendern die Abbildung in der Spezifikationssprache
und ihre Nutzung erleichtern und eine umfassende Sicht auf die Prozesse ermöglichen sollen.
Das diesen Darstellungsarten zugrunde liegende Schema der Sprache muß aufgrund von deren
Unterschiedlichkeit formal und darstellungsunabhängig sein. Die zur Prozeßbeschreibung
erforderlichen Daten und Strukturen werden größtenteils aus externen Modellen entnommen.
In PSL selbst werden nur die dargestellt, die nirgendwo sonst abgebildet sind.
Die Analyse existierender Beschreibungssprachen bzw. -ansätze im Rahmen der Entwicklung
von PSL ergab, daß fast alle derzeitigen Darstellungsarten ihren Schwerpunkt eher auf die
Syntax als die Semantik der Prozeßspezifikation legen. Demzufolge werden in diesen Ansätzen unterschiedliche Begriffe mit gleicher bzw. gleiche Begriffe mit unterschiedlicher Bedeutung verwendet. Da die PSL allerdings für eine übergreifende Nutzung in verschiedenen Bereichen entwickelt wird, benötigt sie einen Satz von eindeutigen semantischen Ausdrücken.151
Der nächste Schritt in der Entwicklung der PSL ist somit das Erarbeiten von Methoden, die
eine exakte Abbildung der Semantik existierender Prozeßbeschreibungen auf den detaillierten
und wohl definierten semantischen Konzepten der PSL ermöglichen.152 Anschließend sollen
Pilotprojekte gestartet werden, um die Sprache bezüglich ihrer Robustheit und Vollständigkeit
zu validieren.
Das PSL Projekt zeigt insgesamt viele Parallelen zu der in dieser Arbeit zu entwickelnden Spezifikationssprache. In beiden Fällen ist der Ausgangspunkt eine Vielzahl unterschiedlicher
Darstellungs- bzw. Modellierungsarten für einen gewissen Problembereich, denen es an einer
gemeinsamen Basis mangelt und die neben einer unterschiedlichen Syntax auch verschiedenartige Semantiken verwenden, so daß ein Datenaustausch zwischen ihnen kaum möglich ist.
Die Ziele beider Ansätze entsprechen sich ebenfalls weitestgehend, und zwar soll jeweils eine
allgemeine und einheitliche Spezifikationssprache entwickelt werden, die dem Anwender
einerseits die Beschreibung und andererseits auch die Umsetzung in die Realität bzw. in ein
Informationssystem entscheidend vereinfachen soll. Insoweit kann das PSL-Projekt eindeutig
als Vorbild dieser Arbeit dienen. Ein wichtiger Unterschied ist jedoch der Anwendungsbereich
der jeweiligen Sprache, der sich in der vorliegenden Arbeit auf die Fertigungslenkung
beschränkt, während die PSL bereichsübergreifend ist und sowohl Fertigungsprozesse als auch
Geschäftsprozesse mit einschließt. Diese Verknüpfung unterschiedlicher Bereiche resultiert in
151.
152.
Vgl. [Knu98], S. 36
Vgl. [SIK98]
Stand der Technik
91
einigen speziellen Anforderungen, wie z.B. der umfassenden Vereinheitlichung der Semantik.
Weitere Unterschiede bestehen bezüglich der angestrebten Darstellungsarten. PSL soll verschiedene sprachliche und graphische Notationen beinhalten, was aufgrund des abzudeckenden breiten Spektrums sicherlich vorteilhaft ist. Außerdem soll sie so weit wie möglich auf
bestehenden Beschreibungsmethodiken aufbauen. Bei der hier zu entwickelnden Spezifikationssprache für die Fertigungslenkung wird hingegen ein anderer Ansatz verfolgt. Zwar sollen
auch hier bestehende Ansätze mit einbezogen werden, aber es geht in erster Linie um die Einheitlichkeit und Benutzerfreundlichkeit der Beschreibungssprache. Um diesen Anforderungen
zu entsprechen und die Sprache möglichst einfach und verständlich zu gestalten, soll es nur
eine umfassende Notation geben, die sich allerdings aus sprachlichen und graphischen Elementen zusammensetzen kann.
Zusammenfassend läßt sich bezüglich der untersuchten Spezifikationssprachen feststellen, daß
sie jeweils bestimmte Eigenschaften der Fertigungslenkung effizient beschreiben. Dabei stehen
bei allen Spezifikationen Kombinationen aus der Beschreibung von Funktionen, von Abläufen
und/oder von Daten bzw. Struktur im Vordergrund. Weitere Aspekte können teilweise ergänzend abgebildet werden, jedoch werden in allen untersuchten Fällen bestimmte Teilbereiche,
die zu einer vollständigen Abbildung der Fertigungslenkung unerläßlich sind, vernachlässigt.
Außerdem variiert der beschriebene Problembereich von sehr weitgefaßten Ansätzen der
Unternehmensmodellierung bis zu Spezifikationssprachen für ganz besondere und sehr detaillierte Ablaufplanungsprobleme. Demzufolge bietet keiner der untersuchten Ansätze eine
umfassende und einheitliche Darstellung aller drei Aspekte der Fertigungslenkung und erfüllt
die hier gestellten Anforderungen. Darüber hinaus genügt auch die Darstellungsart und die
daraus resultierende Anschaulichkeit und Verständlichkeit der meisten analysierten Spezifikationssprachen nicht den Forderungen aus Kapitel 2. Die Beschreibungssprachen von Felser,
Hartmann und Kurbel erwiesen sich allerdings als geeignet zur Abbildung von speziellen Teilbereichen. Im folgenden werden nun noch einige Spezifikationssprachen für die in der Klassifikation herausgearbeiteten Teilkriterien der Fertigungslenkung, Fertigungslenkungsstrukturen, -abläufe und -funktionen, untersucht.
3.2.2.1 Spezifikationssprachen für Fertigungslenkungsstrukturen
Spezifikationssprachen, die auch die Fertigungslenkungsstrukturen konkretisieren, wurden
bereits im vorhergehenden Abschnitt im Rahmen umfassenderer Ansätze untersucht. Dabei
stellte sich heraus, daß eine graphische Darstellung der Struktur aufgrund ihrer Transparenz
92
Kapitel 3
und Verständlichkeit eindeutig von Vorteil ist. Diese Vorzüge, wie z.B. bei Petri-Netzen, gehen
indessen ab einem gewissen Umfang des Problembereichs verloren. In den meisten Fällen
kombinieren diese Beschreibungssprachen jedoch in ihrer Darstellung Fertigungslenkungsstrukturen mit -abläufen und erlauben keine entkoppelte Spezifikation der beiden Bereiche,
wodurch ihre Flexibilität klar eingeschränkt wird.
Das bereits in Abschnitt 2.1.1 Fertigungslenkung eingeführte und im Rahmen der Klassifikation verwendete Modell der Fertigung (MFERT) kann auch zur detaillierteren Spezifikation
der Fertigungslenkungsstrukturen genutzt werden. MFERT ermöglicht die Darstellung aller
relevanten Informationen über die Struktur aber auch der Daten des Fertigungsprozesses bzw.
der Elemente der Fertigung.153 Der Prozeß wird ähnlich wie bei Petri-Netzen durch ein Vorgangsnetzwerk modelliert. Allerdings bietet MFERT darüber hinaus das Konstrukt des Strukturprototypen154, der das Grundmuster der Fertigungslenkungsstruktur unter Vernachlässigung
möglicher mehrfacher Wiederholungen abbildet. Der Vorteil dieses Konstrukts liegt darin
begründet, daß durch die Reduktion auf das jeweilige Grundmuster auch bei einer umfangreichen Struktur eine übersichtliche und anschauliche Darstellung möglich ist. Weiterhin erlaubt
MFERT eine problembereichsspezifische und somit anwendernahe Abbildung der Fertigungslenkungsstruktur, was nicht zuletzt darauf beruht, daß es speziell für diesen Problembereich
entwickelt wurde. Demzufolge stellen die Strukturprototypen von MFERT (in Kombination)
eine ideale Spezifikationssprache zur Beschreibung von Fertigungslenkungsstrukturen dar.
3.2.2.2 Spezifikationssprachen für Fertigungslenkungsabläufe
Fertigungsabläufe (Materialflüsse) werden von vielen Spezifikationssprachen beschrieben.
Allerdings bilden diese nur teilweise auch die Abläufe der Fertigungslenkung ab und wenn,
dann unterscheiden sie nicht, wie oben bereits erwähnt, zwischen Fertigungslenkungsstrukturen und -abläufen, sondern stellen eine Kombination der beiden Bereiche dar. Um jedoch die
Sprache flexibel zu gestalten, ist eine derartige Verknüpfung nicht vorteilhaft. Die im folgenden untersuchten Beschreibungen von Fertigungsabläufen schließen alle eine Abbildung der
Abläufe der Fertigungslenkung mit ein.
Die Netzplantechnik155, die sowohl zur Darstellung des Ablaufs von Projekten wie auch zur
Darstellung von Arbeitsabläufen in Arbeitsplänen eingesetzt wird, verwendet deterministische
153.
154.
155.
Vgl. [Fel96], S. 9
Vgl. Abschnitt 2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur
Vgl. [DaWa97], S. 243 und [Har95], S. 25 ff.
Stand der Technik
93
Netzpläne. Diese Netzpläne sind Vorgangsnetze, die Abhängigkeiten zwischen verschiedenen
Vorgängen abbilden. Dabei können nicht nur Vorgänger- und Nachfolgerbeziehungen, sondern
auch zeitliche Abstände oder Überlappungen dargestellt werden. In einer speziellen Ausprägung der Netzpläne, den Entscheidungsnetzplänen, ist es außerdem möglich, alternative und
parallele Abläufe zu beschreiben. Der Nachteil dieser Darstellungsart liegt jedoch einerseits
darin, daß mit Netzplänen keine problembereichsspezifische Ausprägung möglich ist, und sie
andererseits keine Konstrukte zur Abbildung von Zuständen bereitstellen. Insgesamt ist die
Netzplantechnik vorrangig für die Terminierung von Vorgängen zu gebrauchen, Material- und
Fertigungsmitteleinsatz sind nicht darstellbar.
Imperative Programmiersprachen, wie z.B. Pascal oder C, bilden Abläufe (Ablaufbeziehungen) mittels spezieller Ablaufstrukturen, wie z.B. Sequenz, Alternativen, Wiederholung,
Rekursion, usw. ab. Parallelität kann mit ihnen nicht dargestellt werden.156 Die Ablaufstrukturen umrahmen in diesen Sprachen die Funktionen157, deren Vorgehensweise sie auch bestimmen. Allerdings mangelt es der Darstellung der Abläufe in diesen Programmiersprachen an
Übersichtlichkeit und Transparenz vor allem dann, wenn das Programm einen gewissen
Umfang übersteigt. Hartmann158 verwendet für seine Spezifikation von Methoden zur Definition hierarchischer Abläufe Konstrukte der ebenfalls imperativen Programmiersprache
Modula-2. Auch bei ihm ist die Darstellung der Ablaufreihenfolgen wenig anschaulich und nur
schwer verständlich.
Rittgens Prozeßalgebra159 ermöglicht es, vom Benutzer mit einem Modellierungswerkzeug
beschriebene und dann in einen prozeßalgebraischen Term übersetzte Abläufe eines geplanten
Systems zu simulieren und zu optimieren. Allerdings ist die Menge der möglichen Modellierungswerkzeuge beschränkt und diese, wie z.B. Petri-Boxen, sind für den Anwender aus der
Fertigung nicht direkt verständlich und anwendbar. Um den hier formulierten Anforderungen
zu genügen, ist es deswegen sinnvoller, ein Beschreibungsmittel zu wählen, das aufgrund seiner Nähe zum betrachteten Problembereich benutzerfreundlicher ist und mit weniger Aufwand
verwendet werden kann.
Die bereits im vorherigen Abschnitt dargestellte Ablaufspezifikation mittels Struktogrammen160 zeigt bezüglich ihrer Anschaulichkeit und einfachen Handhabung klare Vorteile gegen156.
157.
158.
159.
160.
Vgl. [FeSi98], S. 311 ff.
Sie umrahmen aber auch einfache Zuweisungen, Bedingungen, usw.
Vgl. [Har95]
Vgl. [Rit98], S. 226 ff.
Vgl. [HeBu87], S. 93 ff.
94
Kapitel 3
über den hier untersuchten Ansätzen. Die Strukturblöcke des Struktogramms sind geeignet, die
Ablaufreihenfolge der Fertigungslenkungsfunktionen gut strukturiert und verständlich darzustellen.161 Außerdem ermöglichen sie eine Unterscheidung nach verschiedenen Schleifenarten. Die weiteren Kategorien, Ablaufpriorisierung und Ablaufrichtung, können jedoch mit
Hilfe eines Struktogramms nicht zweckmäßig spezifiziert werden, da sie sich in erster Linie
nicht auf einzelne Funktionen sondern auf Strukturprototypen oder auch umfangreichere Teilgraphen beziehen. Für sie erscheint eine sprachliche Spezifikation mit mnemonischen Konstrukten sinnvoller.
3.2.2.3 Spezifikationssprachen für Fertigungslenkungsfunktionen
Fertigungslenkungsfunktionen werden in bestehenden Ansätzen meistens mit Hilfe von höheren Programmiersprachen beschrieben, um so die direkte Nutzung in einem ausführbaren Programm zu ermöglichen. Dazu werden in erster Linie imperative und deklarative Programmiersprachen genutzt. In imperativen Programmiersprachen werden Funktionen als Algorithmen
dargestellt, d.h. Funktionen werden in Teilfunktionen zerlegt und diese werden mit den zwischen ihnen bestehenden Ablaufbeziehungen abgebildet. Insoweit spezifizieren diese Algorithmen sowohl die Funktionen als auch die Abläufe im jeweiligen Problembereich. Die Teilfunktionen dieser Funktionen dagegen entsprechen dem, was in dieser Arbeit unter Funktion
verstanden wird. Prozedurdeklarationsschemata beschreiben die Funktionen. Sie bestehen aus
einem Funktionskopf, der den Bezeichner und eine Liste formaler Attribute enthält, sowie
einem Funktionsrumpf mit Deklarationen und Anweisungen.162
Deklarative Programmiersprachen sind für die Beschreibung von Relationen konzipiert. Dieses
schließt den Spezialfall der Funktion, die eine rechtseindeutige Relation ist, mit ein.163 Die
Nachteile dieser Spezifikationen sind neben dem zu hohen Detaillierungsgrad, der die
Beschreibungen verkompliziert und teilweise auch unübersichtlich macht, die fehlende Nähe
zum Problembereich und den Anwendern, da die Darstellung in höheren Programmiersprachen zum Zwecke der Allgemeingültigkeit neutral und problembereichsunabhängig ist. Diese
Sprachen sind demnach ideal zur Implementierung von Funktionen in ausführbaren Programmen, nicht so sehr jedoch zur ihrer anschaulichen und verständlichen Spezifikation.
161.
162.
163.
Auch in [DaWi93a], S. 177 ff. werden Struktogramme zur Darstellung der lokalen Funktionen bzw.
-typen verwendet.
Vgl. [Har95], S. 17 f.
Vgl. [FeSi98], S. 268
Stand der Technik
95
Im Aachener PPS-Modell werden PPS-Funktionen durch Merkmale beschrieben, die sich aus
folgenden Elementen zusammensetzen:
• Funktionsmerkmal
• verbale Beschreibung des Merkmals und seiner Ausprägungen
• Ausprägungen
Diese Art der Darstellung ermöglicht zwar eine umfassende Beschreibung der PPS-Funktionen, aber die Einbindung dieser Funktionen in den Ablauf der Fertigungslenkung und ihre
Position in der Fertigung wird auf diese Weise nicht spezifiziert. Obendrein setzen sich diese
PPS-Funktionen bereits, entsprechend dem hier zugrunde liegenden Verständnis von Fertigungslenkungsfunktionen, aus einer Kombination von Funktionen mit konkretisiertem Ablauf
zusammen. Hinzu kommt, daß die verbale Spezifikation auf einer aggregierten Ebene erfolgt,
so daß gewisse Funktionsunterschiede nicht erkennbar werden und somit die Fertigungslenkungsfunktionen nicht eindeutig beschrieben werden können.
Nach [DaWi93a] stellen lokale Funktionen die algorithmischen Grundbausteine der Fertigungssteuerungen dar. Jedes dieser Funktionskonstrukte setzt sich aus den folgenden elementaren Funktionsprinzipien zusammen:
• Eingangsgrößen bereitstellen
• Berechnungen durchführen
• Entscheidungen treffen
• Funktionswiederholung
• Ergebnisse ausgeben
Die Funktionsprinzipien „Berechnung durchführen“ und „Entscheidungen treffen“ können
dabei in beliebiger Reihenfolge zu einem Ausführungsblock zusammengesetzt werden. Zwar
sind diese Prinzipien einerseits sehr gut verständlich und nutzbar, andererseits jedoch zu elementar und allgemein, um die geforderte Übersichtlichkeit und leichte Anwendbarkeit im Problembereich der Fertigungslenkung zu gewährleisten. Außerdem beinhaltet das Prinzip Funktionswiederholung eine Ablaufspezifikation, die entsprechend den Anforderungen im Rahmen
der Funktionsbeschreibung nicht vorgenommen werden soll.
Hartmann164 greift zur Spezifikation von Fertigungssteuerungsfunktionen auf die bereits
beschriebenen Konstrukte problembereichsunabhängiger Programmiersprachen zurück. Als
164.
Vgl. [Har95], S. 40 ff.
96
Kapitel 3
Beschreibungsmittel nutzt er einen Bezeichner, eine Input- und Outputspezifikation und eine
Spezifikation der Fertigungssteuerungsfunktion in ihrer Gesamtheit, die z.B. festlegt, welchem
Knoten die Funktion zugeordnet ist oder für welche Zeitpunkte sie gilt. Darüber hinaus kann
die Superfunktion, in der diese Funktion verwendet wird, ebenfalls mitangeführt werden. In
dieser Darstellung fehlen jedoch die Funktionsdetails. Außerdem schließt sie teilweise auch
eine Beschreibung der Abläufe mit ein (Superfunktion) und es fehlt der Notation an Transparenz und Verständlichkeit.
Einen ebenfalls sehr elementaren Ansatz zur Beschreibung der Fertigungslenkungsfunktionen
verfolgt Schneider165 mit ihren elementaren Aktionen, aus denen sich unter Anwendung einer
Beschreibung für die Aktionensteuerung beliebige Fertigungssteuerungsverfahren erstellen
lassen. Die elementaren Aktionen repräsentieren die einfachsten vorstellbaren Teilaufgaben
von Fertigungssteuerungsaufgaben und basieren auf einem festen Satz von Operationen. Die
Operatoren werden syntaktisch mittels der Angabe des Namens der Operation, der Menge der
Inputdaten und der Menge der Outputdaten beschrieben. Die Spezifikation der Semantik
erfolgt entweder prozedural in einer geeigneten ausführbaren Sprache oder deklarativ in Form
von Axiomen der mathematischen Logik. Aufgrund ihrer Neutralität und Allgemeingültigkeit
wurde von Schneider die deklarative Darstellung vorgezogen, was jedoch den hier festgelegten
Anforderungen klar widerspricht. Wie auch schon bei den vorher untersuchten Spezifikationssprachen fehlt es auch dieser sehr elementaren Darstellung an Transparenz, Verständlichkeit
und vor allem an Anwendernähe.
Insgesamt läßt sich feststellen, daß die untersuchten Spezifikationssprachen für Fertigungslenkungsfunktionen keine anforderungsgerechten Beschreibungsformen sowie teilweise auch keinen genügenden Sprachumfang zur Verfügung stellen. Die meisten dieser Ansätze sind zu allgemein, d.h. nicht konkret auf die Fertigungslenkung bezogen, und gleichzeitig zu elementar.
Im Gegensatz zu den bestehenden Spezifikationssprachen für Fertigungsstrukturen und
-abläufe, die sich in der Mehrzahl der Fälle als zu abstrakt und nicht problemorientiert herausstellten, gilt für die Fertigungslenkungsfunktionen, daß die Darstellungen fast immer zu detailliert und zu nahe an der Implementierung sind. Somit offenbart sich ein klarer Schnitt zwischen den existierenden Beschreibungssprachen der drei Kategorien. Die Aufgabe dieser
Arbeit ist es nun, mit einer einheitlichen und umfassenden Spezifikationssprache eine Verbindung dieser Teilaspekte der Fertigungslenkung herzustellen.
165.
Vgl. [Schn96], S. 164 ff.
Zu leistende Arbeiten zur Entwicklung einer Spezifikationssprache für die Fertigungslenkung
4
97
Zu leistende Arbeiten zur Entwicklung einer Spezifikationssprache für
die Fertigungslenkung
Ziel dieser Arbeit ist die Entwicklung einer umfassenden, einheitlichen und problembereichsorientierten Spezifikationssprache als Metasystem für die Fertigungslenkung. Daneben sollen
die Abläufe und Funktionen der Fertigungslenkung in einer anwendungsunabhängigen höheren Programmiersprache implementiert werden, um somit eine direkte Umsetzung der Spezifikationssprache in ein ausführbares Programm zu ermöglichen. Als Basis dieser Beschreibungssprache wurde bereits in Kapitel 2 eine Klassifikation der Fertigungslenkung hergeleitet,
welche die allgemeinen zugrunde liegenden Konzepte dieses Problembereichs umfassend
systematisiert. Diese Klassifikation baut auf dem Modellierungsansatz MFERT1 auf und
nimmt eine Strukturierung in die Merkmale Fertigungslenkungsstruktur, -abläufe und -funktionen vor. Als Klassifikationsschema wurde das von Schneider2 verwendete komplexe Konstrukt
eines Repräsentanten (Strukturprototyp) gewählt, da es einerseits eine anschauliche Darstellung der Problemstruktur bietet und andererseits von Wiederholungen abstrahiert. Die Untersuchung bestehender Systematiken im Abschnitt 3.1 Klassifikationen für die Fertigungslenkung führte zu der Feststellung, daß derzeit zwar eine Vielzahl von diesbezüglichen Ansätzen
existiert, diese allerdings stets aufgrund ihrer Ausrichtung auf bestimmte Lenkungs- bzw. Vorgehensweisen oder wegen ihrer Spezialisierung auf gewisse Fragestellungen nur Teilaspekte
der Fertigungslenkung abbilden.
Die Analyse des Standes der Technik bezüglich der im Kapitel 2 formulierten Anforderungen
für eine Spezifikationssprache für die Fertigungslenkung verdeutlichte, daß es momentan keinen Ansatz gibt, der eine einheitliche, umfassende und problembereichsorientierte Lösung dieses Problems darstellt und damit den aufgestellten Forderungen gänzlich genügt. Aus den einzelnen Ergebnissen dieser Untersuchung werden im folgenden nun die verbleibenden
Aufgaben zur Erreichung der in dieser Arbeit angestrebten Ziele abgeleitet.
Ebenso wie die existierenden Ansätze zur Klassifikation beschreiben bestehende Spezifikationssprachen für die Fertigungslenkung entweder nur Teilaspekte des Problembereichs, wie
z.B. Ablauf- oder Reihenfolgeplanungsprobleme, oder basieren auf einer bestimmten Sichtweise bzw. einer starren Vorgehensstrategie, wie z.B. dem Sukzessivplanungskonzept. Es fehlt
jedoch eine Darstellungsform, welche die Fertigungslenkung vollständig und ohne eine spezielle Ausrichtung abbildet, so daß die Flexibilität der Sprache nicht eingeschränkt wird. Dane1.
2.
Vgl. [DaWi93a], [DaGe95], [Schn96] und [Hol98]
Vgl. [Schn96], S. 194 f.
98
Kapitel 4
ben lassen sich die existierenden Beschreibungssprachen unterscheiden in einerseits sehr
abstrakte und problemübergreifende Ansätze, z.B. aus dem Bereich der Unternehmensmodellierung, und andererseits ausgesprochen detaillierte respektive elementare Ansätze, z.B. aus
dem Forschungsfeld des Operations Research, die allerdings häufig auf realitätsfremden
Annahmen basieren. Der ersten Gruppe fehlt es aufgrund ihres Aggregationsgrades an der
geforderten Problemorientierung und Anwendungsnähe. Außerdem bieten diese Ansätze meistens keine Möglichkeit zur direkten Umsetzung der Spezifikation in ein ausführbares Programm. Im Gegensatz dazu ermöglicht die zweite Gruppe zwar eine einfache Implementierung, da diese Ansätze größtenteils direkt auf einer Programmiersprache (-notation) aufbauen,
gleichzeitig erfüllen sie damit aber nicht die Anforderungen nach leichter Verständlichkeit,
guter Anschaulichkeit und einfacher Benutzbarkeit. Hier gilt es einen Mittelweg zu finden und
eine Beschreibungssprache zu entwickeln, die einerseits nicht zu abstrakt (neutral) und zu weit
vom Problembereich entfernt sowie andererseits unkompliziert und anwenderfreundlich ist.
Dieses Ziel ist durch teilweise Modifikation bzw. Adaption und Kombination existierender
Lösungsansätze an die spezielle Aufgabenstellung zu erreichen.
Die Untersuchung der Syntax existierender Spezifikationssprachen aus verwandten Bereichen,
insbesondere der Softwaretechnik, verdeutlichte, daß eine Kombination aus graphischer und
sprachlicher Darstellung klare Vorteile gegenüber Beschreibungssprachen aus einer der beiden
Domänen besitzt. Als eine vielversprechende Darstellungsform für die der Fertigungslenkung
zugrunde liegende Vorgangsstruktur haben sich Petri-Netze, erweitert durch einige Ergänzungen, herausgestellt.3 Für die Spezifikation von Abläufen und Funktionen erwies sich eine Verknüpfung von Struktogrammen und Pseudocode, wie sie z.B. in der Strukturierten Analyse4
und auch bei Kurbel5 verwendet wird, als günstig. Infolgedessen verbleibt in dieser Arbeit die
Aufgabe, eine geeignete Kombination der als vorteilhaft bewerteten Ansätze zu entwickeln,
von der alle gestellten Anforderungen erfüllt werden. Da die Spezifikationssprache direkt in
eine höhere Programmiersprache umgesetzt werden soll, bedarf es außerdem zur Vereinfachung dieses Vorgehens einer gewissen Formalisierung der Syntax. Darüber hinaus muß der
Spezifikationssprache neben dieser neutralen Syntax mittels einer problembereichsorientierten
Semantik die nötige Anwendungsnähe bereitgestellt werden.
Da die Spezifikationssprache auf der Klassifikation der Fertigungslenkung basiert, liegt auch
ihr der Modellierungsansatz MFERT6 zugrunde. Er ermöglicht mit Ablaufstrukturen und
3.
4.
5.
Vgl. [Ghe91], [SMJ93]
Vgl. [DeM79], [Ghe91], [FeSi98]
Vgl. [Kur83]
Zu leistende Arbeiten zur Entwicklung einer Spezifikationssprache für die Fertigungslenkung
99
Modelldaten, wie z.B. Attributen und Restriktionen, eine vollständige und transparente
Beschreibung des Fertigungsgraphen. Zur Verringerung der Komplexität dieser Darstellung
soll wiederum das Konstrukt des Strukturprototypen7 genutzt werden. Dieses bildet das
Grundmuster der Fertigungslenkungsstruktur unter Vernachlässigung möglicher mehrfacher
Wiederholungen ab. Als Basis für die Beschreibung der Fertigungslenkungsabläufe können die
Ansätze in [Har95] und [DaWa97] dienen. Allerdings muß die Anschaulichkeit, Verständlichkeit und Anwendernähe dieser Darstellungen erhöht und das von ihnen abbildbare Spektrum
erweitert werden, um der Aufgabenstellung zu genügen. Da derzeit keine anforderungsgerechten Beschreibungsformen zur Spezifikation der Funktionen der Fertigungslenkung zur Verfügung stehen, gilt es, aufbauend auf der entwickelten Klassifikation bzw. den Klassifikationsmerkmalen
der
Fertigungslenkungsfunktionen
eigene
Konstrukte
zur
einheitlichen,
vollständigen und vor allem anwendungsorientierten Darstellung zu entwickeln. Die Verknüpfung der drei Teilbereiche Struktur, Abläufe und Funktionen erfolgt auf Basis der Syntax, der
wiederum das Modell der Fertigung zugrunde liegt.
Im Anschluß an die Entwicklung der Syntax und Semantik der Spezifikationssprache müssen
entsprechend den angestrebten Zielen Implementierungen der Fertigungslenkungsfunktionen
und -abläufe in einer problembereichsunabhängigen, höheren Programmiersprache gegeben
werden. Als Darstellungsart empfiehlt es sich dabei, auf einer Standard-Programmiersprache,
wie z.B. C, C++ oder Pascal, aufzubauen und gebräuchliche Konstrukte dieser Sprache zu
benutzen. In dieser Arbeit soll eine der objektorientierten Programmiersprache C++ ähnliche
Notation verwendet werden, da diese Sprache bereits zur Erstellung des Rahmenwerks der
Fertigungslenkung respektive für das Daten- und das Funktionenmetamodell von Fertigungslenkungssystemen verwendet wurde.8 Somit bietet sie ideale Voraussetzungen zur Umsetzung
der beschriebenen Fertigungslenkungsproblematik in ein ablauffähiges Programm. Zur Verdeutlichung der Nutzbarkeit und Vorteilhaftigkeit der Klassifikation sowie der Spezifikationssprache sind weiterhin Anwendungsbeispiele für die gebräuchlichsten Fertigungslenkungsverfahren anzuführen. Hierbei gilt es, die Fertigungslenkungsverfahren zu klassifizieren, in der
Spezifikationssprache zu beschreiben und das Ergebnis anhand der definierten Anforderungen
zu prüfen.
6.
7.
8.
Vgl. Abschnitt
Vgl. [Fel96]
Vgl. [Hol99]
2.1.1 Fertigungslenkung
100
Kapitel 4
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
5
101
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
Die Notwendigkeit einer Spezifikationssprache für die Fertigungslenkung ist vor allem darin
zu sehen, daß aufgrund einer fehlenden Metasprache in diesem Problembereich immer wieder
Unternehmen ihre eigene Fertigungslenkung bzw. Verfahren für diese neu entwickeln und
somit „das Rad erneut erfinden“. Wie in Kapitel 3 herausgestellt wurde, gibt es derzeit allerdings noch keine Spezifikationssprache, die entsprechend den in dieser Arbeit gestellten
Anforderungen eine ideale Kombination aus Einheitlichkeit, Anschaulichkeit, Anwendungsorientierung, damit ist insbesondere gute Verständlichkeit und unkomplizierte Nutzbarkeit für
die Anwender gemeint, sowie Implementierungsnähe, d.h. leichte und effiziente Umsetzbarkeit in ein ausführbares Programm, besitzt.
Die hier zu definierende Spezifikationssprache stellt durch ihre allgemeinen, auf einem einheitlichen Modellierungsansatz basierenden Strukturen und aufgrund ihrer unkomplizierten
Anwendbarkeit und Erweiterbarkeit eine vorteilhafte Lösung für die beschriebenen Probleme
dar. Sie paßt sich dabei der jeweiligen Situation flexibel an und erhöht auf diese Weise die Effizienz der Entwicklung eines Fertigungslenkungssystems. Abbildung 5-1 zeigt detailliert, wie
mit der Klassifikation und der Spezifikationssprache eine bestimmte Fertigungslenkungsproblematik systematisiert, beschrieben und in ein Fertigungslenkungssystem umgesetzt werden
kann.
Fertigungslenkungsproblematik
Modelleditor
Klassifikation
Charakteristika
Modell der Fertigung
Algorithmen
Spezifikationssprache
Abläufe
Funktionen
Fertigungslenkungssystem
Abbildung 5-1: Anwendung der Klassifikation und Spezifikationssprache
102
Kapitel 5
Als Grundlage der Spezifikationssprache wurde in Kapitel 2 eine Klassifikation entwickelt,
welche die verschiedenen Merkmalsausprägungen von Fertigungslenkungen charakterisiert.
Auf ihrer Basis kann eine Auswahl geeigneter Fertigungslenkungsverfahren bzw. Ablaufstrukturen und Funktionen für die jeweilige Problematik vorgenommen werden.1 In einem zweiten
Schritt wird nun die Syntax und Semantik der Spezifikationssprache, mit der die Fertigungslenkung beschrieben werden soll, dargestellt. Im Anschluß daran folgt die Entwicklung einer
Methoden-Bibliothek, die sich aus Implementierungen der vorher beschriebenen Fertigungslenkungsfunktionen und -abläufe in einer an die höhere Programmiersprache C++2 angelehnten Notation zusammensetzt. Schließlich werden Anwendungsbeispiele der Klassifikation und
Spezifikationssprache anhand von allgemein genutzten Fertigungslenkungsverfahren gegeben,
welche die Flexibilität und Praktikabilität dieser Beschreibungsmittel hervorheben.
5.1 Syntax der Spezifikationssprache
Die zu entwickelnde Spezifikationssprache ist eine reine Beschreibungssprache, die sich aus
problembereichsspezifischen, mnemonischen Konstrukten3 zusammensetzt. Sie ist nur im
Zusammenhang mit dem Modell der Fertigung, das bereits vorher im OOPUS-Modelleditor4
erstellt wurde, einsetzbar. In diesem Modell sind alle Attribute der Fertigungslenkungsobjekte
hinterlegt, so daß es die Daten- und Strukturbasis der Fertigungslenkung bildet. Die Syntax
der Spezifikationssprache gliedert sich dementsprechend auf in die Bereiche Modell und
Sprachkonstrukte, wobei ersteres durch eine eindeutige Darstellung5 und letztere durch eine
eindeutige Grammatik näher bestimmt werden.
Modell
Semantik
Syntax
Sprachkonstrukte
Abbildung 5-2: Architektur der Sprache
1.
2.
3.
4.
5.
Vgl. für diesen Auswahlprozeß [Fel96], S. 112 ff.
C++ ist eine Obermenge der Programmiersprache C, die um objektorientierte Merkmale, wie z.B. das
Klassenkonzept mit Vererbungsmöglichkeiten, die Mechanismen zur Überladung, virtuelle Funktionen, das dynamische Binden, u.a., erweitert wurde. Von besonderem Vorteil sind die Knappheit, Vielseitigkeit und Maschinennähe dieser Sprache (vgl. [Schr92] S. 76). Außerdem zeichnet sich die
Programmiersprache C++ durch eine weite Verbreitung und vielfältige Einsatzgebiete aus, weswegen
sie in dieser Arbeit exemplarisch ausgewählt wurde.
Vgl. Abschnitt 2.2.2 Klassifikationsmerkmale der Fertigungslenkung
Vgl. [Hol97] und [DFH95]
Mit Darstellung sind hier sowohl der Modellgraph als auch die Klassendefinitionen der Modellelemente gemeint.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
103
Die Konstrukte der Spezifikationssprache, Fertigungslenkungsstrukturen, -abläufe und -funktionen, repräsentieren bestimmte Teilgraphen6 des Gesamtmodells der jeweiligen Fertigung
sowie Programmmodule für den Ablauf und die Funktionen in diesem Teilmodell. Obwohl
sich die Sprache nur aus diesen drei Konstrukten zusammensetzt und eine eindeutige Konstruktionsvorschrift gegeben ist, stellt sie im Sinne der Informatik keine formale Sprache7 dar.
Einerseits nämlich bietet sie zur leichteren Nutzbarkeit am Anwendungsbereich orientierte
Konstrukte auf höherem semantischen Niveau als eine herkömmliche Programmiersprache,
wodurch sie nicht äquivalent zu einer Turingmaschine (Turingvollständigkeit)8 ist. Andererseits steht die Menge der Ausprägungen der Sprachkonstrukte aufgrund der geforderten Flexibilität bzw. Anpaßbarkeit an die sich ständig wandelnde Fertigungslenkung nicht vollständig
fest. Trotzdem erlaubt die Spezifikationssprache durch eine deutlich abgegrenzte Menge der
wesentlichen Ausprägungen ihrer Konstrukte eine präzise und eindeutige Spezifikation der
Fertigungslenkung. Ihre klare und übersichtliche Struktur und die Kombination aus graphischen und sprachlichen Elementen machen sie außerdem leicht lesbar, verständlich und
anwendbar. Hinzu kommt, daß eine mögliche automatische Übersetzung der Spezifikationssprache in die objektorientierte Programmiersprache C++ oder eine andere problembereichsunabhängige höhere Programmiersprache durch diese Vorgaben erleichtert wird, da eine derartige Transformation ein eindeutiges Format und eine präzise Syntax der Sprache erfordert. In
der Syntax muß klar definiert sein, wie die Konstrukte der Sprache zusammengesetzt werden
können.
Das erste Konstrukt der Spezifikationssprache repräsentiert die Fertigungslenkungsstruktur.
Dieses erfolgt über die Angabe des Teilgraphen, auf dem die Fertigungslenkungsabläufe und
-funktionen durchgeführt werden, und zwar anhand eines sprachlichen Repräsentanten, der
gleichzeitig einen Verweis auf den speziellen Ausschnitt des jeweiligen Modells der Fertigung
beinhaltet. Beispielsweise kann auf diese Weise die Unterteilung des Gesamtmodells in Dispositionsstufen, nach denen z.B. bei der Materialbedarfsplanung9 vorgegangen wird, abgebildet
werden. Die folgenden Abbildungen zur Verdeutlichung der einzelnen Konstrukte beziehen
sich alle auf das Verfahren der Materialbedarfsplanung. Die dargestellten Teilgraphen entsprechen Strukturprototypen, wie sie auch in der Klassifikation verwendet werden. Allerdings
6.
7.
8.
9.
Siehe Definition 13, S. 21
„Unter einer formalen Sprache versteht man in der Informatik eine Sprache L, wobei L eine Teilmenge
der Menge aller Wörter, die sich durch die Hintereinanderreihung endlich vieler, nicht notwendig verschiedener Zeichen aus einem vorgegebenen Alphabet A ergeben, ist, zusammen mit einer Definitionsvorschrift, die im allgemeinen konstruktiv ist.“ [DuIn89]
Vgl. [Hol98], S. 154 - Die Turingvollständigkeit ist Bedingung für eine formale Sprache.
Vgl. Abschnitt 5.4.5.1 Materialbedarfsplanung (MRP).
104
Kapitel 5
umfaßt die Spezifikationssprache durch die Verknüpfung mit dem Modell der Fertigung auch
Daten bzw. Attribute der Modellelemente bzw. -klassen.
Zur Verdeutlichung und Präzisierung der sprachlichen Beschreibung wird die graphische Darstellung auf Basis des Modells der Fertigung oder eines Teilmodells von diesem genutzt. Über
den sprachlichen Repräsentanten als Verweis läßt sich der jeweilige Ausschnitt des Modells
(farblich) markieren, wie es beispielhaft in Abbildung 5-3 und den folgenden Abbildungen
dargestellt ist. Auf diese Weise werden Mehrdeutigkeiten, die bei einer rein sprachlichen
Beschreibung entstehen könnten, vermieden. Im Rahmen der Klassifikation kann der hier
gewählte Graph allerdings noch weiter in Strukturprototypen reduziert werden, was vor allem
bei einem sehr komplexen Graphen zur Wahrung der Übersichtlichkeit und Verständlichkeit
geboten wäre. In diesem Beispiel wurde jedoch zur Verdeutlichung der Verknüpfung von Sprache und Modell ein nicht-reduziertes Modell (Graph) bzw. Modellausschnitt (Teilgraph)
gewählt.
Dispositionsstufe r3
Abbildung 5-3: Konstrukt Teilgraph
Abläufe werden durch das zweite Konstrukt dargestellt. Sie repräsentieren die unterschiedlichen Ablaufrichtungen, -reihenfolgen und -priorisierungen10, werden in einer oder mehreren
hierarchisch angeordneten Ablaufregeln spezifiziert und beziehen sich auf den Gesamtgraphen
oder auf Teilgraphen. Somit stellen diese Konstrukte auch die Verknüpfung der Prototypen
(Teilgraphen) untereinander auf einer gemeinsamen Datenbasis dar. Die Regeln weisen die
Priorisierungen zeit-, ereignis-, knoten-, produktionsstruktur- und auftragsorientiert sowie die
Reihenfolgen seriell, parallel und nebenläufig auf. Dabei ist eine weitere Unterteilung der
Knotenorientierung in die Arten Material-, Fertigungsmittel- und Vorgangsorientierung möglich. Bei diesen Vorgehensweisen kann die Ablaufregel zusätzlich noch eine Aussage über das
Reihenfolgekriterium enthalten, so daß, wie z.B. bei der materialorientierten Vorgehensweise,
das wichtigste Material zuerst bearbeitet wird. Darüber hinaus geben die Regeln an, ob der
Ablauf vorwärts- oder rückwärtsgerichtet erfolgt. Letztendlich besteht noch die Möglichkeit in
10.
Vgl. Abschnitt 2.2.2.2 Klassifikationsmerkmal Fertigungslenkungsabläufe
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
105
einem Zusatz eine Bedingung für den Ablauf festzulegen. In dem in Abbildung 5-4 wiedergegebenen Beispiel wird im markierten Teilgraphen zeitorientiert, vorwärts und seriell vorgegangen, d.h. der Teilgraph wird über mehrere Zeitabschnitte respektive Zeitpunkte betrachtet und
in diesen wird er seriell (z.B. alphabetisch) abgearbeitet.
zeitorientiert, vorwärts
seriell (z.B. alphabetisch)
Abbildung 5-4: Konstrukt Ablauf
Das dritte Konstrukt der Spezifikationssprache stellt jene Funktionen dar, die für einen spezifischen Teilgraphen zu einem bestimmten Zeitpunkt, abhängig vom gewählten Zeitmodell11 und
den Attributen des Teilgraphen, oder ausgelöst durch ein bestimmtes Ereignis, durchgeführt
werden.
Die Menge der Funktionen an den einzelnen Fertigungsknoten untergliedert sich in Eintritts-/
Austritts- und Zustandsfunktionen, die jedoch aufgrund der gemeinsamen Struktur- und
Datenbasis eng miteinander verknüpft sind. Diese Funktionen sind Makrofunktionen12 und
setzen sich aus verschiedenen Teilfunktionen zusammen. Die Eintritts- und Austrittsfunktionen bestehen aus den Teilfunktionen Zusammenfassungs- und Aufteilungsfunktionen. Die
Zustandsfunktionen wiederum beinhalten die unterschiedlichen Funktionen zur Bestands- und
Bedarfsrechnung, zur Terminierung und zur Losgrößenberechnung. Mit Hilfe dieser Funktionen werden die in der Klassifikation dargestellten Entscheidungsprobleme13 gelöst. Entsprechend des jeweiligen Zeitmodells, der Lenkungsstrategie und der vorliegenden Knotenattribute, wie z.B. den Restriktionen sowie Dispositions-14 und Transformationsprinzipien15,
werden diese Teilfunktionen noch weiter spezifiziert. In Abbildung 5-5 sind für den markierten
11.
12.
13.
14.
Die Wahl des Zeitmodells hängt von der Zielsetzung des Modells und vom Zeitverhalten der zu modellierenden Objekte und Prozesse ab. Letzteres kann im Extremfall von Prototyp zu Prototyp variieren
(vgl. [DaWi93a]).
Vgl. Abschnitt 2.2.2.3 Klassifikationsmerkmal Fertigungslenkungsfunktionen
Vgl. ebenda
Unter Dispositionsprinzipien versteht man das Auffüllen des Bestandes eines Materialknotens nach bestimmten Auslösungsarten. Im wesentlichen unterscheidet man dabei in Bestellrhythmus- und Bestellpunkt-Verfahren. Diese Prinzipien werden auch Bestell- oder Lagerhaltungspolitiken genannt (vgl.
z.B. [DaWa97], [Kur93], [Hac84], u.a.). Somit sind die Dispositionsprinzipien abhängig von dem jeweils zugrunde liegenden Zeitmodell und der vorherrschenden Lenkungsstrategie.
106
Kapitel 5
Teilgraphen und speziell die beiden Materialknoten einmal beispielhaft Funktionskonstrukte
mit der Darstellung möglicher Teilfunktionen in Klammern eingetragen.
Eintrittsfunktion (Bruttobedarfe
zusammenfassen)
Zustandsfunktion (Bestandsrechnung - Nettobedarfe bestimmen)
Austrittsfunktion (Nettobedarfe
aufteilen)
Abbildung 5-5: Konstrukt Funktionen
Anhand dieser allgemeinen Funktionskonstrukte wird nun allerdings noch nicht deutlich, an
welchem Knoten des jeweiligen Prototypen die einzelnen Funktionen angesiedelt sind. Um
diesen Bezug herzustellen, erhalten die Konstrukte entweder den Zusatz, „fe“ oder „fv“, der
verdeutlicht, zu welcher Knotenart sie gehören. Auf diese Weise sind die Funktionen des Fertigungsvorgangsknotens bereits eindeutig zugeordnet, da nach Definition jeder Strukturprototyp
nur genau einen derartigen Knoten beinhaltet. Jedoch ist damit noch nicht die Verteilung der
anderen Funktionen klargestellt, da es in einem Strukturprototypen mehrere Fertigungselementknoten geben kann. Außerdem ist bei diesen auch die Unterscheidung in Material- und
Fertigungsmittelknoten zu beachten. Die Zuordnung zu den jeweiligen Fertigungselementknoten wird deswegen durch die Reihenfolge der Angabe der Funktionskonstrukte geklärt, die
wiederum von der Ablauforientierung des Strukturprototypen abhängt. Darüber hinaus werden
alle Knoten im Graphen, die keine Funktionalität besitzen, zur Hervorhebung gestrichelt dargestellt. Die Teilfunktionen der einzelnen Funktionskonstrukte sowie erklärende Kommentare
werden den Konstrukten als zusätzliche Information in Klammern beigefügt.
Trotz der mnemonischen Konstrukte der Spezifikationssprache und der weiteren Informationen in Klammern kann eine zusätzliche Kommentierung nötig und zweckmäßig sein. Aus diesem Grund ist es möglich, an jeder beliebigen Stelle des Programms, d.h. in jeder Programmzeile, jeweils eingeleitet durch ein Doppelpaar Querstriche („//“)16, Kommentare beliebiger
Länge anzugeben. Falls diese Kommentare sich über mehrere Zeilen erstrecken, ist ein Dop-
15.
16.
Transformationsprinzipien beschreiben die nach unterschiedlichen Prinzipien vorgehende Bearbeitung
an Fertigungsmitteln, wie z.B. Einzelplatz, serielle Fertigungsvorgänge, usw. Sie sind nur möglich, da
es aggregierte Fertigungsknoten gibt. Somit sind sie eine Frage der zweckmäßigen Modellierung (vgl.
[DaWa97], S. 192 ff.). Darüber hinaus finden Transformationsprinzipien in erster Linie in der Serienfertigung Anwendung.
Dieses Vorgehen ist vergleichbar mit der Definition von Kommentaren bzw. Kommentarblocks in
C++, die in die Zeichenpaare „/*“ und „*/“ eingeschlossen sind.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
107
pelpaar Querstriche zu Beginn des Kommentarblocks und ein weiteres am Ende von diesem
ausreichend.
Zur Syntaxbeschreibung der Spezifikationssprache wird im folgenden eine der Erweiterten
Backus-Naur-Form (EBNF) angelehnte17 Beschreibungsform verwendet. Die Backus-NaurForm (BNF) ist eine Beschreibungsform kontextfreier Grammatiken und damit der Syntax vieler Programmiersprachen.18 Die EBNF wurde aufgrund verschiedener Mängel der BNF entwickelt und besitzt einige zusätzliche Fähigkeiten, wie z.B. optionale Teile in eckigen Klammern. Die folgende Grammatik stellt nun die Beschreibung der Spezifikationssprache in dieser
Darstellungsart dar:19
<program>
<stmt_list>
->
<stmt_list>
->
<stmt> |
<stmt_list>
<stmt>
->
[Teilgraphspezifikation];
[Menge_der_Ablaufspezifikationen];
[Menge_der_Funktionsspezifikationen];
// Kommentar //
Die Sprachkonstrukte stellen Nicht-Terminale (-Symbole) der Sprache da, d.h. sie sind Zeichen oder Zeichenfolgen, die bezüglich der Spezifikationssprache grammatikalische Konstrukte repräsentieren, sich aber in andere Konstrukte (Elementarkonstrukte) und Terminal
(-symbole) weiter zerlegen lassen. Zur Verdeutlichung werden sie in eckigen Klammern eingeschlossen dargestellt.
Die Ausprägungen des Konstruktes Teilgraphspezifikation sind:20
Teilgraphspezifikation
Gesamtgraph
=
(Knges, Kges)21.
Teilgraph
=
(Kni,Ki) mit Kn i ⊆ Kn ges und K i ⊆ K ges .
Knoten
=
(Kni,Ki) mit Kn i = 1 und K i = 1 .
(Zusatz: Beschreibung).
17.
18.
19.
20.
21.
Eine formale Syntaxbeschreibung der Spezifikationssprache mit EBNF kann nicht erfolgen, da sie, wie
bereits vorher erläutert, keine formale Sprache ist.
Vgl. [Seb92] und [InDu89]
Sonst übliche Anfangs- und Endbezeichner („begin“, „end“) werden in der Spezifikationssprache graphisch dargestellt (Strukturblöcke im Nassi-Shneiderman-Diagramm).
Zur Erklärung der Notation siehe Definition 15, S. 23
Wobei Kn die Knotenmenge und K die Kantenmenge ist.
108
Kapitel 5
Allerdings berücksichtigt die Spezifikationssprache als minimale Teilgraphen keine einzelnen
Knoten, sondern Strukturprototypen22 bzw. Kombinationen von diesen. Es ist jedoch möglich,
daß nur ein Knoten eines Strukturprototypen Relevanz besitzt, d.h. er allein ist aktiv und verfügt über Funktionalität. Verdeutlicht wird dieses im Graphen durch die gestrichelte Darstellung der übrigen, nicht-aktiven Knoten. Die Teilgraphspezifikation kann zum Zwecke der
Anschaulichkeit und leichteren Verständlichkeit der Beschreibung durch einen Zusatz in
Klammern näher erläutert werden. Die Angabe dieses Zusatzes ist indessen optional, da bereits
durch den Verweis auf das Modell der Fertigung bzw. das jeweilige Teilmodell genauere Informationen über dieses vorliegen.
Eine Ablaufspezifikation wird abhängig vom Zeitmodell, der Lenkungsstrategie und den Attributen der Modellelemente, insbesondere den lokalen Regeln bzw. Restriktionen der Fertigungslenkung, folgendermaßen dargestellt:
Ablaufspezifikation
Ablaufpriorisierung
=
zeitorientiert | ereignisorientiert |
knotenorientiert = vorgangsorientiert | materialorientiert |
fertigungsmittelorientiert
| produktionsstrukturorientiert | auftragsorientiert.
Ablaufrichtung
=
vorwärtsorientiert | rückwärtsorientiert.
Ablaufreihenfolge
=
seriell | parallel | nebenläufig.
(Zusatz: Bedingung; Beschreibung).
Diese Ausprägungen entsprechen den in der Klassifikation für Fertigungslenkungsabläufe herausgestellten Merkmalen. Allerdings muß die Ablaufspezifikation nicht jedes einzelne dieser
Ablaufkriterien (Priorisierung, Richtung und Reihenfolge) besitzen. Darüber hinaus kann in
der Spezifikationssprache mit einem Zusatz in Klammern festgelegt werden, ob dem Ablauf
eine bestimmte Bedingung (Ablauf- bzw. Abbruchbedingung) zugrunde liegt23, aber auch eine
Beschreibung kann beigefügt werden. Die Ablaufspezifikation und zwar insbesondere die
Unterscheidung zwischen verschiedenen Schleifenarten wird ferner durch die Diagrammdarstellung der Spezifikationssprache näher bestimmt, die im folgenden noch genauer beschrieben
wird.
Für Funktionsspezifikationen gilt:
Menge_der_Funktionsspezifikationen = SET OF24 Funktionsspezifikationen
22.
23.
24.
Vgl. Definition 14, S. 22
Vgl. Bedingungsschleifen (While und Repeat bzw. Repeat-Until) in höheren Programmiersprachen
(vgl. [DuIn89]).
Die Schlüsselwörter „SET OF“ kennzeichnen die Datenstruktur einer reinen Mengenspezifikation.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
109
Das Konstrukt Funktionsspezifikation ist insbesondere ebenfalls abhängig vom Zeitmodell, der
Lenkungsstrategie und den Attributen der Modellelemente, dabei vornehmlich wiederum von
den lokalen Regeln bzw. Restriktionen. Es stellt die Makrofunktionen an den einzelnen Knoten, ihre Teilfunktionen und gegebenenfalls eine zusätzliche Beschreibung dar. Demnach hat
die Funktionsspezifikation die folgende Notation:
Funktionsspezifikation
Knotentyp
=
fe | fv -
Makrofunktion
=
Eintritt | Austritt | Zustand.
(Teilfunktion
=
Zusammenfassen | Aufteilen | Bestandsrechnung |
Bedarfsrechnung | Terminierung | Losgrößenbestimmung;
Zusatz: Beschreibung).
In einem Prototypen besitzt jedoch nicht jeder Knoten alle hier angeführten Funktionen oder
überhaupt Funktionalität. Nur Knoten oder Teile von Knoten, die aktiv25 sind, können mit
Funktionalität behaftet sein. Demzufolge beinhaltet das Konstrukt Funktionsspezifikation eine
bestimmte Zusammenstellung der möglichen Funktionen des jeweiligen Teilgraphen. Diese
Funktionen haben die Aufgabe, die in der Klassifikation am Teilgraphen aufgeführten Entscheidungsprobleme zu lösen. Durch die Angabe der Teilfunktion/-en und möglicherweise
weiterer Kommentare in Klammern werden die Funktionen näher erläutert, was die Verständlichkeit der Beschreibung deutlich steigert. Im Gegensatz zu den zusätzlichen Informationen
bei der Teilgraphspezifikation ist hier die Angabe der Teilfunktion/-en zwingend erforderlich,
da durch sie die Funktionen am Knoten erst näher bestimmt werden. Beispielsweise wird eine
Eintrittsfunktion als Zusammenfassungsfunktion mit einer bestimmten Verknüpfungsregel als
zusätzlicher Kommentar spezifiziert. Auf diese Weise enthält das Programm in der Spezifikationssprache nicht nur strukturelle sondern auch inhaltliche Vorgaben und ist anschaulicher
sowie leichter umsetzbar. Die speziellen Funktionsbeschreibungen sind aber gleichzeitig auch
den Attributen des Modells der Fertigung bzw. des jeweiligen Teilgraphen des Modells zu entnehmen, wofür jedoch eine Datenmodell- bzw. Datenbankabfrage nötig wäre.
Eine genauere Beschreibung der verschiedenen Ausprägungen der Ablauf- und Funktionsspezifikationen sowie der möglichen Zusatzinformationen folgt in Abschnitt 5.2 Semantik der
Spezifikationssprache. Implementierungen dieser Abläufe und Funktionen in einzelnen Programmodulen werden anschließend in Abschnitt 5.3 Implementierung der Spezifikationssprache in einer an die höhere Programmiersprache C++ angelehnten Notation dargestellt. Im fol25.
Auf die Aktivität bzw. auf das, was an einem Knoten aktiv ist, wird im Abschnitt 5.2.1 Funktionalität
an Modellelementen näher eingegangen.
110
Kapitel 5
genden wird nun noch detaillierter auf die äußere Form der Darstellung in der
Spezifikationssprache eingegangen, die insbesondere zur Ablaufspezifikation beiträgt.
Die Programme in der Spezifikationssprache setzen sich bezogen auf die jeweils betrachteten
Teilgraphen aus hierarchisch strukturierten Befehlsszeilen zusammen. Jede nachfolgende Zeile
im Programm bezieht sich demnach entweder wiederum auf denselben Graphen oder auf einen
Teilgraphen von diesem. Jede Zeile besteht mindestens aus zwei Konstrukten und zwar der
Teilgraph- und der Ablauf- oder der Funktionsspezifikation. Nur Teilgraphen, die eine eigene
und von anderen Teilgraphen unterschiedliche Ablaufstruktur und/oder Funktionalität besitzen, müssen einzeln spezifiziert werden. Alle anderen können als redundante Teilgraphen
durch einen Strukturprototypen dargestellt werden. Dabei ist zu berücksichtigen, daß die Funktionalität von den Attributen der Elemente des Teilgraphen und speziell den Restriktionen
sowie den Lenkungsprinzipien (Dispositions- oder Transformationsprinzipien) abhängt.
Außerdem beinhalten die Befehlszeilen keine elementaren Aktionen bzw. Elementarfunktionen26, wie sie z.B. von [Schn96] definiert wurden, sondern bestehen aus den gerade dargestellten reinen Beschreibungskonstrukten.
Das Konstrukt Fertigungslenkungsfunktion ist jedoch nicht unbedingter Bestandteil jeder Programmzeile, denn in den meisten Fällen wird Funktionalität nur bezogen auf Strukturprototypen und nicht auf höheren Modellebenen bzw. umfassenderen Teilgraphen betrachtet. Diese
Möglichkeit soll in der vorliegenden Arbeit indessen nicht ausgeschlossen werden. Eine
bestimmte Funktionalität ist darüber hinaus aber immer mit einer speziellen Ablaufstruktur
verknüpft, die allerdings bereits auf einer höheren Ebene in der Programmstruktur, d.h. in
einer früheren Programmzeile, angegeben sein kann, da sie für einen Teilgraphen und nicht nur
einen bestimmten Strukturprototypen aus diesem relevant ist. Die Programme haben demnach
eine vertikale Struktur, die entweder streng hierarchisch (linear) oder baumartig, falls es parallele oder nebenläufige Prozesse gibt, aufgebaut sein kann.
Zur Verdeutlichung der Ablaufstruktur werden die Programme in der Spezifikationssprache
mit an Nassi-Shneiderman-Diagrammen angelehnten Struktogrammen dargestellt. Jeder Programmzeile wird dabei ein Strukturblock zugeordnet. Die Abwandlung der Diagramme
besteht darin, daß nur einfache Strukturblöcke und Wiederholungs-Strukturblöcke von NassiShneiderman-Diagrammen verwendet werden. Wiederholungs-Strukturblöcke haben die Ausprägungen While-Schleife und Repeat-Schleife, die beide in der Spezifikationssprache Ver-
26.
Vgl. Abschnitt 2.2.2.3 Klassifikationsmerkmal Fertigungslenkungsfunktionen
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
111
wendung finden. Dabei werden durch die While-Schleife sowohl einfache Zählschleifen (ForNext) als auch Bedingungsschleifen (While-Do) dargestellt. Eine Besonderheit dieser Schleifen ist die, daß bei der While-Schleife zu Beginn und bei der Repeat-Schleife zum Ende der
Durchführung Funktionen ausgeführt werden können. Abbildung 5-1 stellt die beiden Ausprägungen graphisch dar.
Teilgraph A, Ablauf, Funktionen
While-Schleife
Teilgraph A1, Ablauf, Funktionen
Teilgraph A1, Ablauf, Funktionen
Teilgraph A1, Ablauf, Funktionen
Repeat-Schleife
Teilgraph A1, Ablauf, Funktionen
Teilgraph A, Ablauf, Funktionen
Abbildung 5-6: Darstellung While-Schleife und Repeat-Schleife
Mit Wiederholungs-Strukturblöcken, wie sie in Abbildung 5-7 als Beispiel in der Ausprägung
While-Schleife zu sehen sind, wird Parallelität wie auch Serialität beschrieben. Die Unterscheidung dieser beiden Vorgehensweisen wird dabei in der Ablaufspezifikation vorgenommen.
Teilgraph A, parallel
Teilgraph A1, Ablauf, Funktionen
Teilgraph A1, Ablauf, Funktionen
Teilgraph A, seriell
Teilgraph A1, Ablauf, Funktionen
Teilgraph A1, Ablauf, Funktionen
Abbildung 5-7: Darstellung von Parallelität und Serialität in Teilgraphen
Auswahl-Strukturblöcke sowie Mehrfachverzweigungen werden auf dieser aggregierten Programmierebene nicht genutzt, es ist indessen denkbar, die Syntax der Sprache mit diesen
Strukturen zu erweitern, um dem Nutzer noch detailliertere Beschreibungsmöglichkeiten zu
bieten. Allerdings würde die Anwendung der Sprache dadurch wieder komplizierter und die
Programmierung unübersichtlicher, was im Widerspruch zu den in Kapitel 2 formulierten
Anforderungen stände. Einfache Strukturblöcke sind auf der untersten Hierarchiestufe der Pro-
112
Kapitel 5
gramme zu finden, d.h. ihre Ablaufregel bezieht sich nicht auf weitere Teilgraphen, sondern
nur auf die Funktionen auf einem speziellen Teilgraphen (Prototypen).
Ein Beispiel für einen derartigen einfachen Strukturblock ist ein Prototyp, in dem nur am Fertigungsvorgangsknoten Funktionalität vorliegt. An diesem werden verschiedene Zustandsfunktionen für gleichzeitig stattfindende Prozesse (Vorgänge) simultan durchgeführt. Das MinimalProgramm in der Spezifikationssprache für diesen Prototyp besteht aus folgender Zeile:
Teilgraph (Fertigungsvorgangsknoten), parallel, fv-Zustand (Terminierung)
In diesem sehr eingeschränkten Fall wird allerdings auf die Darstellung in einem Nassi-Shneiderman-Diagramm verzichtet, da die Programmstruktur dieses Minimalprogramms auch ohne
dieses Beschreibungsmittel eindeutig abgebildet werden kann.
Zur Darstellung der Parallelität von Funktionen in einem Strukturprototypen bedarf es keiner
Wiederholungs-Strukturblöcke, sondern nur einer Angabe in der Ablaufspezifikation. Wiederholungs-Strukturblöcke dagegen finden auf höheren Hierarchiestufen Verwendung. Ihre
Ablaufstrukturen spezifizieren die Vorgehensweisen auf den ihnen untergeordneten Ebenen,
den Teilgraphen (Prototypen). Eine höhere Hierarchiestufe stellt z.B. der Gesamtgraph dar, der
produktionsstrukturorientiert, nach Dispositionsebenen, abgearbeitet wird. Dieses wird in der
Spezifikationssprache folgendermaßen dargestellt:
Gesamtgraph, produktionsstrukturorientiert
Funktionen gibt es auf dieser Ebene nicht. Die untergeordneten Ebenen sind im beschriebenen
Fall eines produktionsstrukturorientierten Ablaufs z.B. die Dispositionsebenen der Fertigung.
Jede Programmzeile beschreibt mit den in ihr enthaltenen Konstrukten und dem Verweis auf
das Modell genau einen speziellen Teilgraphen (Strukturprototypen) des Fertigungsmodells.
Außerdem enthält sie entweder eine Ablaufanweisung bezüglich dieses Graphen und/oder ein
bis mehrerer Funktionsanweisungen, die auf diesem Teilgraphen durchgeführt werden. Abbildung 5-8 stellt ein etwas umfassenderes Beispielprogramm in der Spezifikationssprache dar.
In diesem Beispiel sind A und B Teilgraphen vom Gesamtgraphen und A1 und A2 wiederum
Teilgraphen von A. Die weitere Unterteilung von A in A1 und A2 liegt in der Verschiedenartigkeit des Ablaufs und der Funktionalität an diesen Teilgraphen begründet. Ebenso besitzt
auch B einen von A unterschiedlichen Ablauf. Die Vorgehensweise auf dem Teilgraphen A
wird durch eine While-Schleife bestimmt.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
113
Gesamtgraph, Ablauf
Teilgraph A, Ablauf
Teilgraph A1, Ablauf, Eintritts-, Zustands- und
Austrittsfunktionen
Teilgraph A2, Ablauf, Eintritts-, Zustands- und
Austrittsfunktionen
Teilgraph B, Ablauf, Eintritts-, Zustands- und
Austrittsfunktionen
Abbildung 5-8: Beispielprogramm
5.2 Semantik der Spezifikationssprache
Die Semantik27 beschäftigt sich mit der inhaltlichen Bedeutung einer Sprache bzw. eines Programms. Infolgedessen werden in diesem Abschnitt die Funktionalität der Fertigungslenkung,
die Funktionen am Gesamtgraphen wie auch an den Teilgraphen, und die Ablaufstrukturen
betrachtet. Letztere setzen sich zusammen aus den unterschiedlichen Abläufen auf dem Fertigungsgraphen, dem Gesamtgraphen oder den Teilgraphen, welche demnach die Funktionen
zur Lösung der Fertigungslenkungsaufgabe miteinander verknüpfen. Eine genauere Darstellung des Modells der Fertigung, das die Struktur- und Datenbasis der Spezifikationssprache
bildet, erfolgte bereits in Abschnitt 2.1.1 Fertigungslenkung. Da es ebenfalls möglich ist, mit
der Spezifikationssprache die Lenkung von Ausschnitten des Fertigungsmodells (Teilmodellen) vorzunehmen, kann sie auch als Hilfsmittel zur Änderungsrechnung (Net Change) genutzt
werden.28
Im folgenden werden allgemeine Darstellungen der verschiedenen Teilfunktionalitäten der
Fertigungslenkung gegeben. Diese Teilfunktionalitäten spannen zusammen mit den Ablaufstrukturen und dem Modell der Fertigung einen Baukasten auf, aus dem sich jedes beliebige
Fertigungslenkungssystem erstellen bzw. zusammenfügen läßt. Erklärt werden sie am Metastrukturprototypen29 der Fertigung oder Ausschnitten von diesem. Der Metastrukturprototyp
beschreibt das Grundmuster des Modells der Fertigung und ist eine allgemeine Form der
Strukturprototypen, die bereits in einigen früheren Arbeiten zum Modell der Fertigung Ver27.
28.
29.
In den meisten Praxisbeispielen wird die Semantik nicht formal definiert, sondern implizit durch die
jeweilige Implementierung (vgl. [GJM91], S. 480).
Vgl. [HoDa97]
Vgl. Abschnitt 2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur
114
Kapitel 5
wendung fanden.30 Mit dem Metastrukturprototyp bzw. Verknüpfungen von Metastrukturprototypen läßt sich jede beliebige Fertigung abbilden. Abbildung 5-9 stellt einen Metastrukturprototypen
graphisch
dar.
Der
Pfeil
soll
dabei
die
möglichen
Ablauf-
bzw.
Abarbeitungsrichtungen verdeutlichen.
1 Fertigungsvorgangsknoten
n Fertigungselementknoten
Abbildung 5-9: Metastrukturprototyp
Die Kanten des Metastrukturprototypen sind gerichtet, allerdings ist die Richtung im Allgemeinen nicht fest vorgegeben, da das Modell sowohl vorwärts als auch rückwärts durchlaufen
werden kann. Die Ablaufrichtung wird im Rahmen der Spezifikationssprache in der Ablaufspezifikation, die sich auf das Gesamtmodell bezieht, festgelegt. Es ist jedoch auch möglich,
Teilmodelle mit einer anderen Ablaufrichtung zu belegen, was z.B. bei der Lenkung nach dem
OPT-Konzept31 genutzt wird. Die diesbezügliche Entscheidung ist abhängig von der Planungsstrategie, die mit der Fertigungslenkung verfolgt wird. Eine Vorwärtsorientierung führt zur
Ermittlung der frühesten Fertigstellungstermine, während eine Rückwärtsorientierung die spätesten Starttermine der Fertigung als Ergebnis hat. Natürlich ist auch eine Kombination beider
Vorgehensweisen möglich, um Terminpuffer zu ermitteln.
5.2.1 Funktionalität an Modellelementen
Die Beschreibung der Funktionalität beginnt mit den grundlegenden Elementen des Modells
der Fertigung, den Kanten und Knoten (Fertigungselement- und -vorgangsknoten), deren spezifische Eigenschaften steuerungs- und planungsrelevant sind. Diese Eigenschaften werden
bestimmt durch die Attribute der Knoten und zwar bilden sie Stamm- und Bewegungsdaten der
Knoten ab. Ein wichtiger Bestandteil der Stammdaten sind die Restriktionen, die auf einzelnen
Elementen, Elementklassen oder auch dem Gesamtmodell definiert sind. Sie werden aus dem
Grund zu den Stammdaten gezählt, da sie über einen gewissen Zeitraum konstant sind. Stammdaten legen darüber hinaus Daten zur Identifikation oder Administration, aber auch zur
30.
31.
Vgl. [Fel96], S. 84 ff. und [Schn96], S. 196 ff.
Vgl. Abschnitt 5.4.5.3 Engpaßorientiertes Fertigungssteuerungsverfahren (OPT)
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
115
Bestimmung der Dispositionsprinzipien von Fertigungselementknoten und Transformationsprinzipien von Fertigungsvorgangsknoten fest.
Restriktionen können sowohl zustands-, zeit- als auch mengenorientiert sein. Zustandsbezogene Restriktionen beziehen sich auf die Merkmale der Klassenbeschreibung des jeweiligen
Modellelements. So kann ein Fertigungselementknoten, insbesondere ein Fertigungsmittelknoten, z.B. im Zustand „frei“ oder „belegt“ sein und dementsprechend den Eintritt eines Fertigungselements bzw. eines Fertigungsvorgangs erlauben oder verbieten. Die zeitbezogenen
Restriktionen basieren auf dem für den jeweiligen Teilgraphen genutzten Zeitmodell, das in
der Modelldatenbank festgelegt ist. Die Grundlage der mengenbezogenen Restriktionen wird
durch die Angaben zur Bestandsführung an den Elementen gelegt. Sie beinhalten die objektspezifischen Rahmenbedingungen. Bewegungsdaten bilden die tatsächlichen Bestandsverläufe
über der Zeit ab.32 Diese Daten zum Prozeßablauf sind entweder Solldaten, also Ergebnis eines
Planungsprozesses, oder Istdaten, die über ein Betriebsdatenerfassungssystem aus dem realen
Prozeß zugeführt wurden.
Auch die Lenkungs- bzw. Planungsstrategie der Fertigung muß im Rahmen der Betrachtung
der Funktionalität berücksichtigt werden. Eine verbrauchsorientierte Ablauflogik oder eine
programmgebundene Anstoßlogik bedingen nämlich gänzlich andere Funktionen oder auch
den Wegfall von bestimmten Funktionen an einigen Modellelementen als eine bedarfsorientierte Ablauflogik oder eine kundengebundene Anstoßlogik.33 Ein weiterer wichtiger Einflußfaktor auf die Funktionalität an den Modellelementen ist das zugrunde liegende Zeitmodell des
Gesamtgraphen bzw. jeweiligen Teilgraphen. Unterschiedliche Verhältnisse von Zeit- bzw.
Planungsabschnitten und Durchlaufzeiten von Vorgängen oder Bestellzeiten von Materialien
bedingen verschiedene Funktionen respektive Ausprägungen von Funktionen, wie z.B. bei der
Losgrößenbestimmung.
Im folgenden wird nun zuerst auf die Funktionalität an den Modellkanten eingegangen und
herausgestellt, weswegen es vorteilhafter ist, diese Funktionen an den Knoten durchzuführen,
von denen die Kanten ausgehen oder in die sie eingehen. Im Anschluß daran wird die Funktionalität der Knoten genauer erläutert.
Kanten repräsentieren die Austausch- bzw. Zuordnungsbeziehungen zwischen den Knoten des
Fertigungsgraphen, den Fertigungselementen und -vorgängen. Sie verbinden immer Ferti32.
33.
Die Bewegungsdaten werden im Rahmen des Modells der Fertigung in Zeit-/Mengenleisten dokumentiert (vgl. [DaWi96], S. 22 ff.).
Vgl. [Wie98], S. 98 ff.
116
Kapitel 5
gungselement- mit Fertigungsvorgangsknoten. Dabei gibt es zwei Betrachtungsweisen für jede
Kante, einerseits geht sie von einem Knoten aus und andererseits in einen anderen Knoten ein.
Diese unterschiedlichen Sichtarten zeigen sich auch in der Funktionalität, die in den meisten
Fällen auf speziellen Regeln basiert.34 Bei ausgehenden Kanten werden Aufteilungsregeln
(Splittungsfunktionen) nach gewissen Prioritäten oder Verhältnissen angewendet, um die
Angebote (Bedarfe) auf diese zu verteilen. Bei eingehenden Kanten dagegen werden Zusammenfassungsregeln (Gruppierungsfunktionen), ebenfalls basierend auf Prioritäts- oder Verhältnisregeln, genutzt, um die einzelnen Angebote (Bedarfe) zu verknüpfen. Alle diese Regeln
sind einerseits immer abhängig von den Restriktionen des bzw. der Knoten, von denen die
Kante/-n ausgehen, und andererseits von den Restriktionen des bzw. der Knoten, in welche die
Kante/-n eingehen. Somit benötigt jede Kante zur Durchführung ihrer Funktionen Informationen von bzw. über die angrenzenden Knoten.
Die Abbildung 5-10 stellt die beiden unterschiedlichen Kantenarten, ein- und ausgehende Kanten an Fertigungselement- und Fertigungsvorgangsknoten, dar. Durch Pfeile wird die Ausrichtung der Kanten verdeutlicht, denn der Fertigungsgraph kann sowohl vorwärts als auch rückwärts durchlaufen werden. Abhängig von der Ablauforientierung handelt es sich dann
entweder um Bedarfe oder um Angebote.
Abbildung 5-10: Ein- und ausgehende Kanten
Im einfachsten Fall besitzt ein Knoten genau eine Kante bzw. eine eingehende und eine ausgehende Kante. Trifft dieses für den gesamten Graphen zu, so wird von einem linearen Netzwerk
gesprochen. Mehrere Kanten an einem Knoten können unterschiedliche steuerungs- und planungsrelevante Beziehungen besitzen.35 Und zwar können sie:
• komplementär,
• konkurrierend oder
• alternativ sein.
Sind die Kanten komplementär, so bedeutet das, daß die einzelnen Vorgänge am Knoten verschiedene Inputs erfordern bzw. verschiedene Outputs erzeugen. Konkurrierende Kanten besa-
34.
35.
Nur in Spezialfällen sind weder Aufteilungs- noch Zusammenfassungsregeln zur Bestimmung des
Aus- oder Eingangs nötig.
Vgl. Abbildung 5-11
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
117
gen, daß gleiche Elemente (Objekte) von verschiedenen Fertigungselementknoten bezogen
werden können. Bei alternativen Kanten werden dagegen verschiedene Elemente, alternative
Inputs/Outputs alternativer Vorgänge, von verschiedenen Fertigungselementknoten geliefert.36
Diese Beziehungen können allerdings auch in Kombination an einem Knoten gleichzeitig auftreten. Zur Verdeutlichung stellt Abbildung 5-11 die verschiedenen Beziehungen noch einmal
graphisch dar. Dabei ist zu beachten, daß das logische Oder („v“) immer ein ausschließendes
komplementär
konkurrierend
alternativ
Kombination verschiedener Beziehungen
Abbildung 5-11: Beziehungen zwischen Kanten
Oder (EXOR) darstellt. Zur Vereinfachung wurden hier nur die unterschiedlichen Beziehungen
von links ein- bzw. ausgehenden Kanten dargestellt, die Abbildung der anderen Möglichkeiten
erübrigt sich, da sie sich spiegelbildlich verhalten.
Um die Funktionalität der Kanten nutzen zu können, müssen diese Informationen über die
steuerungs- und planungsrelevanten Eigenschaften ihrer Nachbar-/Mitkanten besitzen, um auf
diese Weise z.B. die Konkurrenz zu erkennen. Es ist jedoch unkomplizierter, den Kanten keine
eigene Funktionalität zu geben, sondern die Funktionen auf die Knoten zu übertragen. Dieses
ist auch deswegen effizienter, da andernfalls einige Funktionen für jede Kante einzeln durchgeführt werden müßten, während sie am Knoten in gebündelter Form vollzogen werden können.
Auf diese Weise muß nur der jeweilige Knoten seine ein- und ausgehenden Kanten kennen.
Das Wissen über die Funktionalität der Kanten wird also an Knoten gebündelt. Außerdem sind
Kanten keine Träger zusätzlicher Informationen, wie z.B. die Attribute der Knoten, die im folgenden noch näher beschrieben werden.37
Die Funktionalität eines Knotens beruht auf den steuerungs- und planungsrelevanten Eigenschaften bezüglich gegebener Attribute an den Knoten bzw. den Knotenklassen. Die Attribute
36.
37.
Vgl [Fel96], S. 89 ff.
Vgl. [DaGe95]
118
Kapitel 5
stellen die Stamm- und Bewegungsdaten dar und sind im Modell der Fertigung hinterlegt. Von
den Stammdaten werden neben der Bezeichnung und den administrativen Angaben auch die
jeweiligen Dispositions- oder Transformationsprinzipien sowie die Restriktionen eines Knotens festgelegt. Letztere gliedern sich auf in Zeit-, Zustands- und Mengenrestriktionen und
können in jeder Kombination vorkommen. Die Bewegungsdaten beinhalten den Bestand bzw.
die Bestandsänderungen über der Zeit und den Status des jeweiligen Knotens.38 Die Restriktionen und der Status bestimmen das Input- und Outputverhalten des Knotens.
Die Funktionen am Knoten haben allgemein die Aufgabe, auftretende Inkonsistenzen, die
durch Zu- oder Abgänge entstehen können, zu beseitigen. Zur Vermeidung dieser Inkonsistenzen besitzt jeder Knoten die oben genannten Restriktionen. Mengenrestriktionen beschränken
Zu- oder Abgänge aufgrund von Höchst- oder Mindestgrenzen des Bestands. Durch Zustandsrestriktionen wird die Beachtung des jeweiligen Knotenstatus gewährleistet. Zeitrestriktionen
erlauben oder erzwingen39 Zu- und Abgänge nur zu bestimmten Zeitpunkten bzw. in bestimmten Zeitabschnitten. Um diesen Restriktionen gerecht zu werden, ist eine Verwaltung der Zuund Abgänge sowie des Zustandes der einzelnen Knoten notwendig, wofür die Knotentypen
folgende Funktionen gemeinsam haben:40
• Ein- und Austrittsfunktionen
• Zustandsfunktionen
Diese Ein- und Austrittsfunktionen beinhalten als gemeinsame Teilfunktionen:
• Zusammenfassungsfunktionen
• Aufteilungsfunktionen
Die Zustandsfunktionen teilen sich unter besonderer Beachtung der in Klammern stehenden
Prinzipien weiter auf in:
• Bestands- und Bedarfsrechnungsfunktionen (Dispositionsprinzipien),
• Terminierungsfunktionen (Transformationsprinzipien) und
• Losgrößenberechnungsfunktionen.
Bezogen auf die in Abschnitt 2.2.2.3 Klassifikationsmerkmal Fertigungslenkungsfunktionen
angeführten ablauforganisatorische Entscheidungsprobleme werden in den Ein- und Austritts38.
39.
40.
Vgl. [DaWi93a], S. 23 ff.
Ein Beispiel für eine Zustandsdauerrestriktion ist im Rahmen des Schweißvorgangs eines Bagger-Unterwagens anzutreffen: erst nach 8-stündigem Vorwärmen kann und muß der Bagger-Unterwagen geschweißt werden.
Vgl. Abbildung 5-12
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
119
funktionen mit Hilfe der oben dargestellten Teilfunktionen Aufteilungs- bzw. Verteilungs-,
Gruppierungs- und Reihenfolgeprobleme gelöst. In den Zustandsfunktionen werden Bestands/Bedarfsermittlungs-, Terminierungs- und wiederum Gruppierungsprobleme (Losgrößenbestimmung) behandelt. Die Funktionen an den unterschiedlichen Knoten können einzeln oder in
Kombination auftreten. Beinhaltet ein Knoten mehrere Funktionen, so werden diese entweder
der Reihe nach entsprechend der Auflistung in der Spezifikationssprache abgearbeitet oder es
ist eine Ablaufregel zur Bestimmung der Reihenfolge dieser Teilfunktionen spezifiziert, wie
z.B. parallel.
Abbildung 5-12 verdeutlicht die Ansatzpunkte der Fertigungslenkungsfunktionen, wobei der
Kreis für einen allgemeinen Knotentyp anstelle eines Dreiecks oder Rechtecks steht.
Eintritt
Zustand
Zusammenfassen/Aufteilen
ohne Regel
nach Regel:
- Priorität
- Verhältnis
- losweise
- Restriktionen
Austritt
Zusammenfassen/Aufteilen
ohne Regel
Bestandsrechnung
Bedarfsrechnung
Terminierung
Losgrößenrechnung
nach Regel:
- Priorität
- Verhältnis
- losweise
- Restriktionen
Abbildung 5-12: Funktionalität am Knoten
Ob an einem Knoten oder einer Knotenklasse eine41 oder mehrere dieser Funktionen durchgeführt werden, hängt auch entscheidend davon ab, welcher Knoten/Knotenklasse oder welcher
Teil eines Knotens aktiv ist. Aktiv bedeutet hier, daß an diesem Knoten oder diesem Teil des
Knotens aktiv der Fertigungselementefluß verändert bzw. gesteuert und die Änderung an
andere Knoten übermittelt wird. Dieses Verhalten wird Dominanz eines Knotens genannt, d.h.
dieser Knoten bestimmt den Fertigungselementefluß. Passive Knoten oder Teilknoten haben
keine Reaktionsmöglichkeit und können keine Vorschläge an andere Knoten absetzen. Sie
besitzen darüber hinaus auch nicht die vollständige Kanteninformation und ihr Funktionsumfang ist auf die jeweilige Zustandsverwaltung begrenzt.42 Sind z.B. alle Fertigungsvorgangsknoten eines Modells aktiv sowie alle Fertigungselementknoten passiv und liegt außerdem eine
Rückwärtsbetrachtung vor, so tragen die Fertigungsvorgangsknoten ihre Bedarfe aktiv bei den
Fertigungselementknoten ein. Letztere wissen nicht, woher diese Bedarfseinträge kommen.
41.
42.
Die Zustandsfunktionen sind Bestandteil jedes Knotens.
Vgl. [DaWa97], S. 91 ff.
120
Kapitel 5
Der Funktionsumfang der Fertigungselementknoten beschränkt sich auf die Zustandsverwaltung. Im entgegengesetzten Fall erhalten die Fertigungselementknoten keine Bedarfsanforderungen von den Fertigungsvorgangsknoten, sondern müssen alle angekoppelten Fertigungsvorgangsknoten je Zeitabschnitt auf Änderungen abfragen. Dabei ist der Funktionsumfang der
Fertigungsvorgangsknoten auf die Zustandsverwaltung beschränkt.
Weiterhin gibt es die Möglichkeit, daß Knoten links passiv und rechts aktiv sind, wie z.B. bei
einer rückwärtsorientierten, synthetischen Vorgehensweise. Falls beide Knotenarten aktiv sind,
können Informationen in beide Richtungen zu beliebigen Zeitpunkten übermittelt werden. In
der Spezifikationssprache erfolgt die Unterscheidung in aktive und passive Knoten bzw. Knotenteile durch die Angabe oder das Weglassen von Funktionen43 in den jeweiligen Funktionskonstrukten der Teilgraphen. Eine Änderung von Bedarf oder Angebot kann demnach also
vom Fertigungsvorgangs- und/oder Fertigungselementknoten ausgehen. Auf diese Weise wird
festgelegt, welche Teilaufgaben von welchem Knoten angestoßen werden, d.h. welche Funktionen an welchem Knoten durchgeführt werden. Gleichzeitig muß wiederum bedacht werden,
welche Knoten bzw. Knotenteile aktiv sind. Abbildung 5-13 zeigt beispielhaft die Informationsübertragung bzw. Übermittlung von Änderungen zwischen angrenzenden Knoten.
Bedarfseintrag
Abfrage auf Änderung
Abbildung 5-13: Übermittlung von Änderungen
Wie bereits in Abschnitt 2.2.2.1 Klassifikationsmerkmal Fertigungslenkungsstruktur dargestellt, sind die kleinsten für die Spezifikationssprache relevanten Teilgraphen Strukturprototypen. Aneinander grenzende Prototypen eines Fertigungsmodells überlappen sich an ihren
Materialknoten. Fertigungsmittelknoten können sowohl nur an einen Fertigungsvorgangsknoten gebunden sein, dann befinden sie sich genau in einem Strukturprototypen, oder sie werden
von mehreren Vorgangsknoten genutzt und sind in mehreren Prototypen zu finden. Aus diesem
Grund muß in der Spezifikationssprache festgelegt werden, welche Funktionen an diesen Knoten in welchen Prototypen Anwendung finden. Die Reihenfolge der Funktionenanwendung
wird durch die auf den Gesamtgraphen und auf Teilgraphen (Strukturprototypen) bezogenen
Ablaufkonstrukte bestimmt.
43.
Natürlich werden nur an aktiven Knoten/-teilen Funktionen durchgeführt. Knoten ohne Funktionalität
werden, wie vorher bereits erläutert, gestrichelt dargestellt.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
121
Die Eintritts- und Austrittsfunktionen an Knoten bestimmen bei möglicherweise mehreren
Kanten, die auf den Knoten zielen, welche Fertigungselemente in einen Knoten hinein oder
aus ihm heraus gehen dürfen. Dabei müssen sie den Attributen und speziell den Restriktionen
des Knotens sowie auch denen der Vorgänger- und Nachfolgerknoten gerecht werden. Es ist
also entweder ein Zugang oder ein Abgang zu bestimmen, der mit allen Restriktionen der
beteiligten Knoten konsistent ist. Dieser Abgleich mit den Restriktionen kann sowohl vor als
auch nach dem Zusammenfassen oder Aufteilen der ein- bzw. ausgehenden Fertigungselemente erfolgen. Wann er stattfindet, ist abhängig davon, welche Knoten aktiv sind und welche
Restriktionen sie besitzen. Außerdem muß jeder Ausgang bzw. Eingang mit den Restriktionen
des jeweiligen Knotens, aus dem ausgetreten oder in den eingetreten wird, abgestimmt werden.
Diese Problematik wird im folgenden noch genauer ausgeführt.
Mit der Zusammenfassungsfunktion werden in den Knoten eingehende Bedarfe oder Angebote
entsprechend bestimmter Regeln44, die auf den angesprochenen Restriktionen basieren, kombiniert. Bei einem Abgleich vor dem Zusammenfassen werden die Angebote bzw. Bedarfe45
bereits auf den Kanten bzw. in den Vorgängerknoten in einer bestimmten Reihenfolge bzw. in
einem speziellen Verhältnis zusammengefaßt.46 Diese Art des Zusammenfassens wird z. B.
dann genutzt, wenn ein Ein- oder Austritt bzw. ein Bedarf oder Angebot aufgrund einer ereignisorientierten Vorgehensweise jederzeit auftreten kann. In der Spezifikationssprache wird dieses Vorgehen durch die Ausprägung des Ablaufkonstrukts bestimmt. Die aufgrund der Restriktionen „abgewiesenen“ Fertigungselemente müssen in den Vorgängerknoten auf ihre
Bearbeitung warten, die abhängig vom nächsten Auftreten eines bestimmten Bedarfs bzw.
Angebots ist. Die Restriktionen können sowohl Ausgangsrestriktionen der Vorgängerknoten
als auch Eingangsrestriktionen sein. Ausgangsrestriktionen begrenzen die Zahl der ausgehenden Fertigungselemente z.B. anhand von Mindestbestandsmengen oder Prioritäten anderer
Nachfolgerknoten. Im Gegensatz dazu beschränken Eingangsrestriktionen die Zahl eingehender Fertigungselemente z.B. ebenfalls durch Mengenbegrenzungen (max. Bestand oder Belegung), zeitliche Begrenzungen basierend auf einem speziellen Schichtenmodell (Stillstandszeiten) oder Prioritäten anderer eingehender Elemente.
Im Falle eines Abgleichs nach dem Zusammenfassen werden die Angebote bzw. Bedarfe zu
Beginn eines Zeitabschnitts ohne Beachtung von Reihenfolgeregeln oder Prioritäten in einer
44.
45.
46.
Gibt es keine spezifischen Reihenfolge- bzw. Kombinationsregeln, so wird z.B. alphabetisch vorgegangen.
Dieses ist abhängig von der Ablauforientierung: vorwärts - Angebote und rückwärts - Bedarfe
Vgl. [Hol99], S. 161 ff.
122
Kapitel 5
Warteliste47 zusammengefaßt. Dieser Art des Zusammenfassens liegt demnach eine zeitorientierte Vorgehensweise zugrunde, die in der Spezifikationssprache durch das Ablaufkonstrukt
festgelegt wird. Über dem Zeitintervall wird diese Liste dann einer Regel folgend abgearbeitet.48 Die verwendete Regel beruht auf den Prioritäten der Fertigungselemente und den
Restriktionen der Knoten, in welche die Elemente eingehen sollen, die im Modell respektive
an den jeweiligen Knoten hinterlegt sind. Sie ist nicht von den Vorgängerknoten abhängig.
Eine Prioritätsregel ist dann anwendbar, wenn Knoten eine der oben beschriebenen Restriktionen aufweisen, was bedeutet, daß nur eine begrenzte Zahl an Fertigungselementen in den Knoten eintreten kann, obgleich mehrere alternative und/oder konkurrierende Fertigungselemente
gleichzeitig eintrittsbereit sind. Diese Elemente werden entsprechend ihrer Priorität und dem
gegebenen Zeitmodell49 oder auch einem Bearbeitungstakt, wie z.B. bei einem Montageband,
der Warteliste entnommen und abgearbeitet. Zu Beginn des nächsten Zeitintervalls wird wiederum ein Abgleich der Angebote bzw. Bedarfe vorgenommen. Wird die Warteliste im Zeitintervall nicht vollständig abgearbeitet, so werden die Angebote bzw. Bedarfe abhängig von der
zugrundeliegenden Fertigungslenkungsstrategie entweder ins nächste Zeitintervall übernommen oder nicht.
Abbildung 5-14: Zusammenfassungsfunktion
Gehen dagegen komplementäre Fertigungselemente in einen Knoten ein, so sind diese nach
einer Verhältnisregel, welche die Anteile der einzelnen Elemente bestimmt, zu koordinieren.
Ein Zusammenfassen der Fertigungselemente ist also nur möglich, wenn sie in den jeweiligen
Anteilen vorhanden sind, andernfalls muß entsprechend dem zugrunde liegenden Zeitmodell
eine bestimmte Zeitspanne bis zur erneuten Überprüfung oder bei Ereignisorientierung bis zur
47.
48.
49.
Eine Warteliste bzw. -schlange ist eine Folge von noch abzuarbeitenden Fertigungselementen bzw.
-vorgängen.
Im Falle einer ereignisorientierten Abarbeitung erfolgt der Übergang zwischen zwei Knoten oder auch
das Abarbeiten der Warteliste abhängig von bestimmten Ereignissen, wie z.B. dem Beenden eines Vorgangs (vgl. [SIM93]).
Das Zeitmodell kann z.B. vorschreiben, daß Fertigungselemente nur zu Beginn eines Zeitabschnitts
eintreten können, was bedeutet, daß alle Fertigungselemente, die aufgrund ihrer Priorität zu Beginn eines Zeitabschnitts nicht eintreten dürfen, mindestens bis zum Beginn des nächsten Zeitabschnitts warten müssen.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
123
Ankunft der noch benötigten Fertigungselemente gewartet werden. Somit ist in diesem Fall ein
Zusammenfassen nur nach dem Abgleich, der hier das Anteilsverhältnis bestimmt, möglich.
Ein Beispiel für diese Zusammenfassungsregel ist die Montage eines Unterwagens für einen
Radbagger. Dieser Unterwagen besteht aus einer Traverse und zwei Längsträgern, so daß der
Unterwagen nur montiert werden kann, wenn alle drei Teile vorrätig sind. Sind diese nicht vorhanden, so muß die Montage bis zum Eintreffen der entsprechenden Teile verschoben werden
(ereignisorientiert). Wenn mit der Montage immer nur zu bestimmten Zeitpunkten begonnen
wird (zeitorientiert), erfolgt sie in diesem speziellen Fall zum nächsten dieser Zeitpunkte, zu
dem alle erforderlichen Teile vorrätig sind.
Ferner kann die Zusammenfassung auch unter einer Verknüpfung beider Regeln erfolgen, falls
z.B. mehrere Kombinationen von Fertigungselementen möglich sind, wie bei einem Montagevorgang, in dem verschiedene Produkte montiert werden können. Die Summe der schließlich
eingehenden Fertigungselemente stellt das resultierende Angebot oder den resultierenden
Bedarf am jeweiligen Fertigungsknoten dar.
Mit der Aufteilungsfunktion werden aus einem Knoten ausgehende Fertigungselemente
gesteuert. Die Steuerung erfolgt ebenfalls nach Verhältnis- oder Prioritätsregeln, denn entweder werden die Fertigungselemente nach einem bestimmten Verhältnis oder nach Prioritäten
auf die folgenden Knoten verteilt. Weiterhin ist die Aufteilungsfunktion abhängig von den
Restriktionen der Knoten. So wird z.B. im Falle einer Bestandsuntergrenze des Knotens festgelegt, wie viele Fertigungselemente austreten dürfen. Eine Bestandsobergrenze der nachfolgenden Knoten kann das Austreten ebenfalls verhindern (blockieren). Zu berücksichtigen ist
hier außerdem, ob der Abgleich mit diesen Restriktionen vor oder nach dem Aufteilen der ausgehenden Fertigungselemente stattfindet.
Abbildung 5-15: Aufteilungsfunktion
Die Zustandsfunktionen verwalten den aktuellen Zustand eines Knotens. Sie teilen sich auf in
die Funktionen Bestands-, Bedarfsrechnung und Losgrößenbestimmung am Fertigungselementknoten sowie Terminierung am Fertigungsvorgangsknoten. Eine Terminierung ist an Fertigungselementknoten nicht nötig, da im Gegensatz zu Fertigungsvorgangsknoten eingetretene
124
Kapitel 5
Fertigungselemente sofort wieder austreten können. In der Bestands- und Bedarfsrechnung
werden an Fertigungselementknoten, basierend auf den eingehenden Bruttoangeboten/-bedarfen und den jeweiligen Beständen, die ausgehenden Nettoangebote/-bedarfe und der resultierende Bestand an diesen Knoten respektive diesen Knotenklassen berechnet. Dabei erfolgt ein
Abgleich mit den Sicherheitsbeständen bzw. Untergrenzen der Bestände, den Mindestbeständen. Somit werden an dieser Stelle, falls es sich um eine verbrauchsorientierte Mengenplanung
handelt, auch die Reaktionen auf ein Unterschreiten dieser Bestände, die in den Dispositionsprinzipien50 des jeweiligen Knotens oder der Knotenklasse festgelegt sind, ausgelöst. Sie
bestimmen, zu welchen Zeitpunkten bzw. aufgrund welcher Ereignisse Bedarf an vorgelagerten Stellen ausgelöst wird. Das Erreichen des Maximalbestands, der z.B. den Zugang oder
Abgang eines Fertigungselements verhindern würde, wird bereits bei den Ein- und Austrittsfunktionen berücksichtigt.
Die Gruppierung der ausgehenden Nettoangebote/-bedarfe nach Losgrößen bzw. die Ermittlung der optimalen Losgröße erfolgt nach Abschluß der Bestands- und Bedarfsrechnung. Für
die Berechnung der Losgrößen gibt es verschiedene Modelle, die auf bestimmte Aspekte der
jeweiligen Lenkungs- bzw. Planungssituation ausgerichtet sind.51 Somit bestimmen Struktur
und Ablauf der Fertigungslenkung in weiten Teilen das einzusetzende Losgrößenmodell. In
der Praxis werden in der Regel die analytische Losgrößenberechnung nach der Andlerschen
Losgrößenformel (Grundmodell), der Algorithmus für die sogenannte gleitende wirtschaftliche Losgröße oder der Algorithmus für den Stück-Perioden-Ausgleich (Part-Period Verfahren)
angewendet.52 Allerdings ist die Gruppierung nach Losen nur dann sinnvoll, wenn der Auflegungs- bzw. Bestellzyklus größer als der gewählte Zeitabschnitt ist und Rüstkosten sowie
möglichst auch Lager- und Bestellkosten vorliegen. Andernfalls ist eine Einzelbestellung, bei
welcher der Bestellzyklus die Einplanung der Bedarfe bestimmt und die Bestellung erst im
Zeitpunkt des Auftretens des Bedarfes erfolgt, vorteilhafter.
Schließlich berechnet die Terminierungsfunktion aus einem Anfangs- oder Endtermin auf
Basis der Durchlaufzeiten53 einen neuen End- oder Anfangstermin für einen Fertigungsvorgang. Dabei wird jeweils entsprechend der Terminierungsrichtung (vorwärts, rückwärts) und
50.
51.
52.
53.
Die Dispositionsprinzipien sind Attribute des Knotens oder der Knotenklasse (vgl. Abschnitt 5.2.1.1.1
Attribute an Fertigungselementknoten).
Diese Aspekte umfassen z.B. die Stufigkeit der Fertigung, Fehlmengenbehandlung, Bedarfsschwankungen, Auflagehäufigkeiten, u.a.
Vgl. [Hac84], S. 150 f. und die Nachteile dieser Berechnungsarten auf S. 156 ff.
Die vorgangsbezogene Durchlaufzeit setzt sich aus den Elementen Rüstzeit, Bearbeitungszeit, Transportzeit, Kontrollzeit und Liege- bzw. Wartezeit zusammen (vgl. [Zäp82], S. 222).
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
125
unter Beachtung von Zeitpuffern (z.B. bei Mittelpunktsorientierung) vorgegangen. Außerdem
sind das jeweilige Zeitmodell und die Transformationsprinzipien54 des Knotens bzw. der Knotenklasse zu bedenken, die entscheidenden Einfluß auf die Terminierung haben.
5.2.1.1 Funktionalität an Fertigungselementknoten
Die beiden Fertigungselementknotentypen, Material- und Fertigungsmittelknoten, unterscheiden sich bezüglich ihrer Funktionalität nur geringfügig. Bei beiden ist der gesamte Umfang der
Funktionen am Fertigungselementknoten möglich, allerdings verhält sich ein Fertigungsmittelknoten im Gegensatz zu einem Materialknoten in der Regel passiv. Er meldet weder einen Nettobedarf bei seinem Vorgänger noch ein Nettoangebot bei seinem Nachfolger an. Eine Ausnahme von dieser Regel könnte z.B. dann eintreten, wenn eine Maschine nicht leerlaufen darf
und deswegen immer Nachschub benötigt.55 In diesem Fall würde der Fertigungsmittelknoten
bei dem ihm vorausgehenden Materialknoten einen bestimmten Nettobedarf anmelden.
Eintritt/
Austritt
Zustand
Austritt/
Eintritt
Eintritt/
Austritt
Zustand
Attribute
Attribute
Materialknoten
Austritt/
Eintritt
Fertigungsmittelknoten
Abbildung 5-16: Funktionalität an Fertigungselementknoten
Im folgenden wird nun zuerst auf die Attribute und insbesondere auf die Restriktionen an Fertigungselementknoten eingegangen, bevor die Funktionen genauer dargestellt werden, da
erstere entscheidenden Einfluß auf die Funktionalität haben.
5.2.1.1.1 Attribute an Fertigungselementknoten
Die Attribute an Fertigungselementknoten/-klassen teilen sich in Stamm- und Bewegungsdaten
auf. Für die Funktionalität von Interesse sind einerseits die Stammdaten, von denen die Dispositionsprinzipien und die Restriktionen festgelegt werden, und andererseits die Bewegungsdaten, welche die Bestands- und Zustandsdaten und ihre Änderung über der Zeit beinhalten. Dispositionsprinzipien legen den Ein- bzw. Austritt von Fertigungselementen fest und sind
abhängig vom Erreichen vorgegebener Zustände oder Zeitpunkte. Anwendung finden sie z.B.
54.
55.
Die Transformationsprinzipien sind Attribute des Knotens oder der Knotenklasse (vgl. Abschnitt
5.2.1.2.1 Attribute an Fertigungsvorgangsknoten).
Nachschub kann hier sowohl im Sinne von Nettobedarf als auch von Nettoangebot verstanden werden.
126
Kapitel 5
im Rahmen der verbrauchsorientierten Mengenplanung56, aber auch in der bedarfsorientierten
Mengenplanung57 werden sie genutzt. In Abbildung 5-17 sind die vorherrschenden Dispositionsprinzipien abgebildet. Sie sind Teil der Funktionalität und bestimmen das spezielle Verhalten einer Fertigungselementklasse.
s
Bestellpunkt (Meldebestand)
S
Sollbestand (Maximalbestand)
T
Bestellzyklus (konstantes Zeitintervall)
B
(Perioden-)Bedarf/Bestand
Q
Bestellmenge
Auffüllen
Bestellrhythmus
feste Menge
Auffüllen
(s, S)
ohne Bestellpunkt
(T, S)
mit Bestellpunkt
(T, S, s)
ohne Bestellpunkt
(T, Q)
mit Bestellpunkt
(T, Q, s)
Bestellpunkt
feste Menge
(s, Q)
Abbildung 5-17: Dispositionsprinzipien/Auslösungsarten
(vgl. [DaWa97], S. 162 ff.)
Entweder wird der Bestand nach einem Bestellzyklus bzw. zu vorgegebenen Zeitpunkten
(Bestellrhythmus) ergänzt bzw. verringert:
• Anfordern des Bedarfs/Anbieten des Bestands (Periodenzugangs) (T, B)
• Auffüllen auf den Maximalbestand/Entleeren auf den Minimalbestand (T, S)
• Anfordern/Anbieten einer festen Losgröße (T, Q)
• Auffüllen auf den Maximalbestand/Entleeren auf den Minimalbestand, falls
Mindestbestand/Maximalbestand erreicht (T, S, s)
• Anfordern einer festen Losgröße, falls Mindestbestand/Maximalbestand
erreicht (T, Q, s)
56.
57.
„Die verbrauchsorientierte Mengenplanung betrachtet lediglich Verbrauche (tatsächlich erfolgte Bestandabgänge) und davon abgeleitete Bestände ausgewählter isolierter Materialklassen. Die Zeitbetrachtung reduziert sich auf den aktuellen Zeitpunkt bzw. aktuellen Zeitabschnitt“ [DaWa97], S. 260 ff.
In der bedarfsorientierten Mengenplanung werden Aufträge zeitlich und mengenmäßig so ausgelöst,
wie sie zur Befriedigung eines gegebenen Primärbedarfs erforderlich sind (vgl. [DaWa97], S. 291 ff.).
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
127
Oder eine permanente Überwachung des Bestandes reagiert auf ein spezielles Ereignis, wie
z.B. das Erreichen des Bestellpunktes58, um ihn aufzufüllen bzw. zu entleeren:
• Anfordern des Bedarfs bei Erreichen des Minimalbestandes/Anbieten des
Bestands bei Erreichen des Maximalbestandes (s,B)
• Auffüllen auf den Maximalbestand/Entleeren auf den Minimalbestand bei
Erreichen des Mindesbestandes/Maximalbestandes (s, S)
• Anfordern einer festen Losgröße, falls Mindestbestand/Maximalbestand
erreicht (s, Q)
Desweiteren ist es auch möglich, daß zu einem variablen Zeitpunkt eine variable Menge,
abhängig von den jeweils vorliegenden Bedarfen, disponiert wird. Zur Berechnung der Bestellmenge bzw. Losgröße kann dabei z.B. das Part-Period Verfahren59 verwendet werden.
Die Vorgabe eines Dispositionsprinzips kann jedoch nicht unabhängig von der Wahl des Zeitmodells gesehen werden60, denn in allen Fällen muß die Auslösung des Auftrags so rechtzeitig
erfolgen, daß zwischen Auslösetermin und erwartetem Zugang die Wiederbeschaffung möglich ist. Bei den Dispositionsprinzipien mit fester Losgröße ist ein von Los zu Los (Bestellos)
unterschiedlicher Maximalbestand zu erwarten. Eine Gruppierung nach Losen ist jedoch nur
dann möglich bzw. sinnvoll, wenn der Bestellzyklus größer als der gewählte Zeitabschnitt ist.
Restriktionen an Fertigungselementknoten unterteilen sich in zeitliche und mengenmäßige
Beschränkungen sowie Zustandsrestriktionen. Als Attribute des jeweiligen Knotens sind sie in
der Modelldatenbank gespeichert. Ferner begrenzen sie den Ein- oder Austritt in einen Fertigungselementknoten folgendermaßen:
Eintrittsbegrenzung
Austrittsbegrenzung
min/max Eintritt (max. Bestand)
min/max Austritt (min. Bestand/Sicherheitsbestand)
min/max Zugang
min/max Abgang
Eintritt bis Zeitpunkt oder Eintritt nur zu
bestimmten Zeitpunkten
Austritt bis Zeitpunkt oder Austritt nur zu
bestimmten Zeitpunkten
Tabelle 5-1: Restriktionen an Fertigungselementknoten
58.
59.
60.
Die wichtigste Bestimmungsgröße für den Bestellpunkt ist die Wiederbeschaffungszeit des jeweiligen
Teils, damit der Bestand ergänzt werden kann, bevor ein gewisser Mindestbestand unterschritten wird
(vgl. [Hac84], S. 150 f.).
Vgl. Abschnitt 5.4.1 Mengenplanung
Vgl. [DaWa97], S. 168
128
Kapitel 5
Eintrittsbegrenzung
Austrittsbegrenzung
Eintritt vom Zustand (des austretenden und
des eintretenden Knotens) abhängig (z.B.
Vollbelegung verhindert Eintritt)
Austritt vom Zustand (des austretenden und
des eintretenden Knotens) abhängig (z.B.
Störung verhindert Austritt)
Tabelle 5-1: Restriktionen an Fertigungselementknoten
5.2.1.1.2 Eintritts-/Austrittsfunktionen an Fertigungselementknoten
Die Ablaufrichtungen Vorwärts- und Rückwärtsorientierung verhalten sich an Material- und
Fertigungsmittelknoten spiegelbildlich. Fertigungselemente stellen an Material- wie auch an
Fertigungsmittelknoten bei der vorwärtsorientierten Vorgehensweise Angebote und beim rückwärtsorientierten Ablauf Bedarfe dar. Berechnet werden dabei aus den Bruttogrößen durch
Abgleich mit den Beständen und Restriktionen der Knoten die Nettogrößen. Abbildung 5-18
verdeutlicht diesen Sachverhalt, wobei zu beachten ist, daß die Dreiecke hier sowohl Materialals auch Fertigungsmittelknoten darstellen können.
Bruttoangebot
Nettobedarf
Nettoangebot
Bruttobedarf
Abbildung 5-18: Brutto-/Netto-Angebote/Bedarfe
In der Spezifikationssprache werden die Ein- und Austrittsfunktion eines Fertigungselementknotens folgendermaßen dargestellt:61
Teilgraph (Fertigungselementknoten), Ablaufspezifikation,
fe-Eintritt (Zusammenfassen; Verknüpfungsregel), fe-Austritt (Aufteilen;
Splittungsregel)
Ob es sich bei den Eintritts- oder Austrittsfunktionen um Zusammenfassungs- oder Aufteilungsfunktionen handelt, muß als Zusatz der jeweiligen Funktionsspezifikation in Klammern
beigefügt werden. Auf die Ausprägungen der Verknüpfungs- oder Splittungsregeln, die ebenfalls mitangegeben werden können, wird in den folgenden Abschnitten näher eingegangen.
61.
Bei allen folgenden Darstellungen in der Spezifikationssprache wird immer dann auf die Verwendung
von Nassi-Shneiderman-Diagrammen verzichtet, wenn es sich nur um die Abbildung einzelner Programm- bzw. Befehlszeilen handelt und demzufolge keine weiteren Ablaufstrukturen bestehen.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
129
Materialknoten
Ein- und ausgehende Kanten bei Materialknoten können bezüglich der Reihenfolge des Ausoder Eintritts miteinander konkurrieren. Diese Beziehungen gründen auf den möglichen
Restriktionen der Materialknoten62, die im vorhergehenden Abschnitt erläutert wurden. Alternative und komplementäre Kanten treten in diesem Zusammenhang nicht auf, da Materialknoten immer genau einem Material zugeordnet sind und der Zu- oder Abgang eines Elements
nicht an den Zu- oder Abgang eines anderen Elements gebunden ist. Nur im Falle von Restriktionen aufgrund von Mindest- oder Höchstbeständen kann der Zu- oder Abgang eines Elements mit dem Zu- oder Abgang eines anderen Elements verknüpft sein.
Bei eingehenden Kanten wird eine Gruppierungsfunktion zur Zusammenfassung der Bruttoangebote/-bedarfe verwendet. Da der Eintritt in bzw. Austritt aus Materialknoten durch Mengenund Zeitrestriktionen begrenzt sein kann, sind Prioritäts- oder Verhältnisregeln zur Belegung
der Materialknoten63 notwendig. Beide Arten von Regeln bestimmen die Reihenfolge der eintretenden Fertigungselemente. Gleichzeitig müssen aber auch die Restriktionen der Vorgängerknoten beachtet werden.
Eintrittsbegrenzung
Austrittsbegrenzung
Abbildung 5-19: Ein- und Austrittsbegrenzung an Materialknoten
Die in den Zustandsfunktionen ermittelten Nettoangebote/-bedarfe werden beim Austritt mittels einer Aufteilungsfunktion auf die ausgehenden Kanten gesplittet. Diese Aufteilung erfolgt
wie auch die Gruppierung der eingehenden Kanten nach Prioritäts- oder Verhältnisregeln, die
wiederum abhängig sind von den jeweiligen Restriktionen der Materialknoten, die den Austritt
beschränken. Gleichzeitig müssen aber auch hier die Restriktionen der Nachfolgerknoten
beachtet werden, die möglicherweise den Zugang zu diesen begrenzen.
62.
63.
Im Falle des Austritts und passiver Nachfolger des Materialknotens können diese auch Auswirkungen
auf die Konkurrenzbeziehungen haben.
Beispiel: Ein Produkt wird in mehreren Vorgängen hergestellt, allerdings darf nicht von all diesen Vorgängen (Vorgangsknoten) mit gleicher Priorität bzw. gleichem Verhältnis (diese Nutzung der Verhältnisregel ist eine Ausnahme, sie wird in erster Linie bei Fertigungsvorgangsknoten verwendet) das
anschließende Lager (Fertigungsmaterialknoten) belegt werden.
130
Kapitel 5
Fertigungsmittelknoten
Fertigungsmittelknoten besitzen ebenfalls nur konkurrierende eingehende Kanten, d.h. die
Fertigungsvorgänge der eingehenden Kanten konkurrieren um die Belegung des Fertigungsmittels. Dabei ist zu berücksichtigen, daß ein Fertigungsmittel verschiedene Zustände64 annehmen kann und zwar: „frei“, „belegt“ oder „gestört“. Nur im ersten Fall ist der Eintritt eines Fertigungsvorgangs möglich. Eine Störung kann neben dem Zustand „belegt“ ein weiterer Grund
dafür sein, daß eine Belegung nicht möglich ist. Allerdings sagt der Zustand „gestört“ nichts
darüber aus, ob das Fertigungsmittel belegt oder frei ist. Ist das Fertigungsmittel belegt, müssen eintrittswillige Fertigungsvorgänge warten. Ferner hat der Zustand des Fertigungsmittels
direkte Auswirkungen auf die mit bzw. auf dieser Ressource durchzuführenden Vorgänge und
beschränkt somit den Zugang zu den Fertigungsvorgangsknoten, die mit diesem Fertigungsmittelknoten verknüpft sind.
5.2.1.1.3 Zustandsfunktionen an Fertigungselementknoten
Zustandsfunktionen an Fertigungselementknoten verwalten den Zustand, der als Menge von
Fertigungselementen mit Attributen zu einem bestimmten Zeitpunkt beschrieben wird65, und
damit auch den Bestand dieser Knoten. Da jedes eingetretene Fertigungselement an diesen
Knoten sofort wieder austreten kann, entspricht der Austrittszustand dem Eintrittszustand.
Ausnahmen treten nur bei über der Zeit veränderlichen Attributen auf, wie z.B. bei verderblichen Gütern.66
In der Spezifikationssprache werden Zustandsfunktionen folgendermaßen dargestellt:
Teilgraph (Fertigungselementknoten), Ablaufspezifikation,
fe-Zustand (Bestands-/Bedarfsrechnung, Losgrößenbestimmung;
Part-Period Verfahren)
Wiederum wird durch die zusätzliche Angabe von Teilfunktionen und Regeln in Klammern die
Funktion weiter spezifiziert. Diese zusätzlichen Informationen erhöhen entscheidend die
Anschaulichkeit der Darstellung und erleichtern ihre Nutzung.
64.
65.
66.
Auch am Materialknoten kann von verschiedenen Zuständen gesprochen werden, allerdings gibt es
dort nur die Zustände „frei“, d.h. der maximale Bestand ist noch nicht erreicht und es können weitere
Fertigungselemente eintreten, und „belegt“, d.h. der maximale Bestand ist erreicht und es können keine
weiteren Fertigungselemente eintreten, bevor nicht ein Fertigungselemente ausgetreten ist.
Vgl. [DaWa97], S. 170
Der Sonderfall, daß diese Güter wegen überschrittener Haltbarkeitszeit ganz vernichtet werden, wird
hier nicht genauer betrachtet. Er müßte durch spezielle Zustandsfunktionen geregelt werden.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
131
Materialknoten
Mit den gruppierten Bruttoangeboten/-bedarfen wird im Anschluß an die Eingangsfunktionalität die Bestands- und Bedarfsrechnung des Knotens durchgeführt, in der durch Abgleich mit
dem Materialbestand die Nettoangebote/-bedarfe ermittelt werden. Der Bestand läßt sich in
verschiedene Arten untergliedern, die allerdings nicht disjunkt sind: tatsächlicher Lagerbestand (Ist-Bestand), reservierter Bestand (Vormerkbestand)67, Bestellbestand (Auftragsbestand)68 und Sicherheitsbestand. Der verfügbare Bestand setzt sich demzufolge zusammen aus
dem tatsächlichen Lagerbestand unter Abzug des reservierten Bestands und des Sicherheitsbestands.69 Weiterhin kann die Qualität des Bestands die Zustände (Status) „geprüft“, „ungeprüft“, „gesperrt“ und „freigegeben“ annehmen und den Umfang des verfügbaren Bestands
beeinflussen. Bei der Nettobedarfsrechnung sind Bestandsuntergrenzen, wie z.B. Mindestoder Sicherheitsbestände, zu beachten und es werden entsprechend der Orientierung der Mengenplanung - verbrauchs- oder bedarfsorientiert - und des jeweiligen Dispositionsprinzips des
Knotens, also abhängig vom Erreichen eines bestimmten Zeitpunkts oder Zustandes (Ereignisses), Bedarfe an vorgelagerten Knoten ausgelöst. Diese versetzen den Materialknoten wieder
in einen ausgeglichenen Zustand. Eine Terminierung erfolgt am Materialknoten nicht, da hier,
wie bereits vorher erläutert, keine Zeit verbraucht wird. Vielmehr kann jedes eingehende Fertigungselement sofort wieder austreten.
Eine weitere Zustandsfunktion am Materialknoten ist die Losgrößenberechnung, in der auf
Basis von bestimmten Attributen der Fertigungselemente bzw. Fertigungselementknoten, wie
z.B. den Lager-, Bestell- und Rüstkosten, eine optimale Losgröße (Fertigungs- oder Bestellosgröße) ermittelt wird. Diese wird zeit- oder ereignisorientiert disponiert. Die Bestimmung von
Losgrößen ist allerdings nur sinnvoll, wenn einerseits der Bestellzyklus größer als die Zeitabschnitte ist, nach denen vorgegangen wird, und andererseits Rüst-, Bestell- oder Lagerungskosten vorhanden und nicht nur marginal sind.
Fertigungsmittelknoten
Über den Bestand wird bei einem Fertigungsmittelknoten geregelt, ob auf dem bzw. den Fertigungsmitteln noch Kapazitäten verfügbar sind. Ein Fertigungsmittel ist genau dann belegt,
67.
68.
69.
Der Reservierte Bestand ist der Teil des Lagerbestands, der für bestimmte Aufträge vorgemerkt ist und
zu einem bestimmten Zeitpunkt dem Bestand entnommen werden soll (vgl. [Zäp82], S. 161).
Der Bestellbestand ist der Bestand an offenen Bestellungen, die zu einem bestimmten Zeitpunkt dem
Bestand hinzugefügt werden (vgl. [Zäp82], S. 161).
Vgl. [GGR92], S. 52
132
Kapitel 5
wenn alle Bearbeitungsplätze, falls dieses Fertigungsmittel mehrere derartige Plätze hat,
besetzt sind. Es ist frei, solange noch ein weiterer Fertigungsvorgang eingelastet werden kann.
Insoweit ist der Bestand eines Fertigungsmittelknotens zu einem bestimmten Zeitpunkt gleichzeitig sein Status. Ist das Fertigungsmittel belegt, so müssen eintrittswillige (-fähige) Fertigungsvorgänge in einer Warteliste gesammelt werden, was jedoch durch die Funktionalität am
Fertigungsvorgangsknoten, die im folgenden noch genauer dargestellt wird, gesteuert wird.
Diese Warteliste wird anschließend entsprechend der Ablaufstruktur und dem zugrunde liegenden Zeitmodell sowie der in den Knotenattributen festgelegten Priorisierung abgearbeitet.
5.2.1.2 Funktionalität an Fertigungsvorgangsknoten
Fertigungsvorgangsknoten führen im Gegensatz zu Fertigungselementknoten Ströme verschiedener Fertigungselementklassen zusammen und nehmen Zustandstransformationen an diesen
vor. Sie unterscheiden sich außerdem von den Fertigungselementknoten bezüglich einiger
Attribute (Transformationsprinzipien) und Funktionen (Terminierung). Gemeinsamkeiten
bestehen dagegen bei den Mengen- und Zeitrestriktionen. Im Gegensatz zu Fertigungselementknoten kommen an Fertigungsvorgangsknoten alle in Abschnitt 5.2.1 Funktionalität an
Modellelementen beschriebenen Kantenarten vor, denn Vorgänge konsumieren Ressourcen
und produzieren Materialien in einer bestimmten mengen- und zeitmäßigen Konfiguration.
Eintritt/
Austritt
Zustand
Austritt/
Eintritt
Attribute
Abbildung 5-20: Funktionalität an Fertigungsvorgangsknoten
5.2.1.2.1 Attribute an Fertigungsvorgangsknoten
Die Stammdaten an Fertigungsvorgangsknoten/-knotenklassen beinhalten wie auch an Fertigungselementknoten die verschiedenen Restriktionen und zusätzlich insbesondere die Transformationsprinzipien dieser Knoten. Die Bewegungsdaten geben den Bestand bzw. die
Bestandsänderungen im Zeitablauf sowie den Status wieder.
Verschiedene Fertigungsvorgangstypen besitzen unterschiedliche Transformationsprinzipien,
welche die Funktionalität an diesen Knoten entscheidend beeinflussen. Diese Transformationsprinzipien sind abhängig von dem zugrunde liegenden Zeitmodell und dem Verhältnis der
Durchlaufzeiten zu den betrachteten Zeitabschnitten. Außerdem sind sie an die Verfügbarkeit
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
133
der Fertigungsmittel gebunden. Ist nur eine Maschine verfügbar, liegt ein Einzelplatz vor. Sind
mehrere Fertigungsmittel gleichermaßen geeignet, einen Vorgang durchzuführen, so handelt es
sich um Parallelbearbeitung. Dieses bedeutet gleichzeitig, daß nach Angabe des Transformationsprinzips das bzw. die Fertigungsmittel nicht mehr in allen Einzelheiten modelliert werden
müssen.70 Auf diese Weise wird eine klare Vereinfachung der Modellierung erreicht, allerdings sind weitere Modellparameter nötig, die Einfluß auf die Funktionen an den relevanten
Knoten nehmen. Serielle Fertigungsvorgänge können im Fertigungsgraphen auch als ein Fertigungsvorgangsknoten mit mehreren Fertigungselementknoten dargestellt werden, wobei die
Vorgänge nicht parallel, sondern in einem bestimmten Abstand, der Taktzeit, ablaufen. Die folgende Tabelle stellt die unterschiedlichen Fertigungsvorgangstypen mit ihren Transformationsprinzipien dar.71
Fertigungsvorgangstypen/
Transformationsprinzip
Beschreibung
Beispiel
Einzelplatz
genau ein einziger Fertigungsvorgang
zu einem Zeitpunkt (Eintrittsabstand
(Taktzeit) = Durchlaufzeit = Austrittsabstand - muß bei Zeitabschnitt >
Durchlaufzeit nicht eingehalten werden)
ein Montageplatz
Parallele Fertigungsvorgänge
mehrere voneinander unabhängige Fertigungsvorgänge zu einem Zeitpunkt der Outputprozeß mit einer in der Regel
anderen Sequenz als der Inputprozeß
Maschinengruppe
(Unterscheidung:
identische Maschinen, unterschiedliche Maschinen)
First-in/last-out-Fertigungsvorgänge
zu einem Zeitpunkt nur Eintritte, zu
einem anderen Zeitpunkt nur Austritte
möglich
Regelung der Folge von Eintritt/Austritt
über eine Prioritätsregel
der Austritt kehrt die Eintrittsreihenfolge um
Nebenschlußstrecke (Sackgasse)
Serielle Fertigungsvorgänge
mehrere Fertigungsvorgänge zu einem
Zeitpunkt, die in einer durch die Inputsequenz gegebenen Reihenfolge bearbeitet und beendet werden
Montageband
Tabelle 5-2: Transformationsprinzipien an Fertigungsvorgangstypen
70.
71.
Vgl. [DaWa97], S. 196 ff.
Vgl. [DaWa97], S. 192 ff.
134
Kapitel 5
Ein weiterer wichtiger Einflußfaktor auf die Funktionalität sind die Restriktionen an Fertigungsvorgangsknoten und zwar sind es wiederum Zustands-, Zeit- und Mengenrestriktionen.
Diese Restriktionen sind als Attribute des jeweiligen Knotens in der Modelldatenbank gespeichert.
Eintrittsbegrenzung
Austrittbegrenzung
max/min Eintritt (Bestandsbegrenzung)
max/min Austritt (Bestandsbegrenzung,
Blockierung durch Unmöglichkeit des
Zugangs zum Nachfolgerknoten)
max/min Zugang
max/min Abgang
Taktzeit (z.B. Montageband)
Taktzeit (z.B. Montageband)
Eintritt bis Zeitpunkt oder Eintritt nur zu
bestimmten Zeitpunkten
Austritt bis Zeitpunkt oder Austritt nur zu
bestimmten Zeitpunkten
Eintritt vom Zustand (des austretenden und
des eintretenden Knotens) abhängig
Austritt vom Zustand (des austretenden und
des eintretenden Knotens) abhängig
Tabelle 5-3: Restriktionen an Fertigungsvorgangsknoten
Die Restriktion Taktzeit wird insbesondere dann offenkundig, wenn die Zeit durch eine Veränderung der Prozeßgeschwindigkeit variiert wird. In diesem Fall kommt es zu Kapazitätsschwankungen; dabei können Rückstaus (bei Senkung der Transformationsgeschwindigkeit)
oder auch Leerzeiten (bei Erhöhung der Transformationsgeschwindigkeit) entstehen. Der Austritt aus einem Fertigungsvorgangsknoten ist genau dann blockiert, wenn der Zugang zum
Nachfolgerknoten unmöglich ist, was z.B. eintritt, wenn der besagte Knoten bereits seinen
maximalen Bestand erreicht hat, das Lager voll ist oder eine Störung aufgetreten ist. Dieser
Fall tritt jedoch nur auf, wenn beide Knoten aktiv oder der Fertigungsvorgangsknoten aktiv
und der bzw. die Nachfolgerknoten passiv sind.
Bei der Festlegung der Funktionalität an Fertigungsvorgangsknoten muß besonderes Gewicht
auf das jeweils genutzte Zeitmodell gelegt werden. Basiert die Ablaufstruktur z.B. auf Fortschrittszahlen72, handelt es sich demnach um ein kumulatives Modell, so kann nicht verbrauchte Kapazität auch im nächsten Zeitabschnitt noch zur Verfügung stehen. In allen anderen Fällen ist dieses nicht möglich und die Restkapazität geht verloren. Weiterhin ist
entscheidend, ob die Vorgangsdauer ganzzahlig ist. Denn in diesem Fall sind der Beginn und
das Ende eines Vorgangs, wie z.B. ein Eintritt, nur zu festgelegten Zeitpunkten möglich. Dieses verhindert eine Mehrfachbelegung oder Überlappung im Falle eines Fertigungsloses. Ist
72.
Vgl. Abschnitt 5.4.5.5 Fortschrittszahlenkonzept
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
135
dagegen ein Eintritt genau dann möglich, wenn der Vorgängervorgang beendet ist, so ist im
weiteren das Verhältnis von Durchlaufzeit zum Zeitabschnitt entscheidend.
Ist die Durchlaufzeit eines Vorgangs größer als ein Zeitabschnitt, so ist eine 0/1 Aussage über
die Belegung des Fertigungsmittels möglich. Ist sie dagegen kleiner, so können mehrere Fertigungsvorgänge pro Zeitabschnitt abhängig von der jeweiligen Inanspruchnahme des Fertigungsmittels durchgeführt werden. Wird dabei nach Fertigungslosen vorgegangen, so muß
eine Aufteilung (Lossplittung) und eine teilweise Ablieferung der Lose möglich sein. In diesem Fall wird von Überlappung gesprochen, denn der nächste Vorgang beginnt bereits, bevor
der unmittelbar vorhergehende abgeschlossen ist.73 Ungeduldige Vorgänge werden anderen
vorgezogen und zwar findet bei Blockierung ein frühzeitiges Abschließen dieser Vorgänge
statt. Das beschriebene Vorgehen ist jedoch im Falle von Fertigungslosen nur möglich, falls die
Vorgänge aufgeteilt werden können.
Weiterhin ist der Status des Fertigungsvorgangsknotens zu berücksichtigen, der einerseits
besagt, ob der Knoten belegt oder frei ist (abhängig von den verbundenen Fertigungsmittelknoten), und andererseits festlegt, welche Inanspruchnahme des Fertigungsmittels der Vorgang
benötigt:
• vollständig
• teilweise
Die vollständige Inanspruchnahme des Fertigungsmittels führt bei einer Durchlaufzeit, die
kürzer als der betrachtete Zeitabschnitt ist, sehr häufig zu Fehlzeiten. Bei einer teilweisen Inanspruchnahme ist dieses nur in begrenztem Umfang der Fall, da mehrere Vorgänge pro Zeitabschnitt eingeplant werden können.
5.2.1.2.2 Eintritts-/Austrittsfunktionen an Fertigungsvorgangsknoten
Bei der Betrachtung der Funktionalität der Fertigungsvorgangsknoten muß sowohl zwischen
vorwärts- und rückwärtsorientierten Ablaufstrukturen, unterschiedlichen Zeitmodellen74 als
auch verschiedenen Kantenarten unterschieden werden. An Fertigungselementknoten gibt es
nur konkurrierende Kanten, wohingegen bei Fertigungsvorgangsknoten alle Kantenarten und
diese auch in beliebiger Kombination auftreten können. Weiterhin besitzen die Vorgangskno73.
74.
Ein Lossplitting läßt sich nur bei Losen mit großen Stückzahlen realisieren, da diese in Teillose aufgespalten werden können (vgl. [Hac84], S. 177).
Diese Unterscheidung erfolgt zwar durch die Ablaufstruktur, aber die Funktionalität an den Vorgängen
hängt entscheidend von den zugrunde liegenden Zeitmodellen ab.
136
Kapitel 5
ten ebenso wie die Elementknoten zeitliche und mengenmäßige Restriktionen, welche in
Abschnitt 5.2.1.2.1 Attribute an Fertigungsvorgangsknoten bereits näher ausgeführt wurden.
Diese beschränken den Ein- bzw. Austritt. Somit sind auch beim Vorgangsknoten abhängig
vom Erreichen bestimmter Zustände, wie z.B. dem Abschluß eines Vorgangs, Folgeereignisse
auszulösen. Eintretende Elemente können Material und Fertigungsmittel sein und müssen entweder in eine Reihenfolge oder in ein bestimmtes Verhältnis gebracht werden. Austretende
Elemente eines Vorgangs werden nur in speziellen Fällen aufgeteilt, wie z.B., wenn Materialien in verschiedenen Lagern abgelegt werden sollen.
Die Funktionalität am Fertigungsvorgangsknoten ist von der Ablauforientierung der Fertigungslenkung abhängig. Zur Vereinfachung werden in Tabelle 5-4 allerdings nur die Ausprägungen der Kanten bei Vorwärtsorientierung beschrieben.
Ein- und Ausgangsfunktionalität
komplementäre
Kanten
alternative
Kanten
konkurrierende
Kanten
eingehende Kanten
Inputs nach Verhältnis zusammenfassen (z.B.
Montage)
Reihenfolge der
Inputs nach Regel
auswählen
Reihenfolge der
Inputs nach Regel
auswählen
ausgehende Kanten
Outputs nach Verhältnis aufteilen
(z.B. Demontage)
Outputs durch
Inputs festgelegt
(verschiedene
Nachfolgerknoten)
Outputs durch
Inputs festgelegt
(ein Nachfolgerknoten)
Tabelle 5-4: Kantenarten an Fertigungsvorgangsknoten
Allerdings ist die Funktionalität bei einer rückwärtsorientierten Vorgehensweise mit der hier
dargestellten fast völlig identisch. Unterschiede bestehen nur insoweit, daß die in der Tabelle
angeführten Beispiele für komplementäre Kanten (Montage, Demontage) vertauscht werden
müssen. In der Spezifikationssprache werden die Ein- und Austrittsfunktionen folgendermaßen
dargestellt:
Teilgraph (Fertigungsvorgangsknoten), Ablaufspezifikation,
fv-Eintritt (Zusammenfassen; Verknüpfungsregel), fv-Austritt (Aufteilen;
Splittungsregel)
Auch diese Funktionen müssen durch zusätzliche Erläuterungen in Klammern ergänzt werden.
Auf die möglichen Zusatzangaben wird im folgenden Abschnitt am Beispiel der verschiedenen
steuerungs- und planungsrelevanten Beziehungen zwischen eingehenden Kanten an Fertigungsvorgangsknoten näher eingegangen.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
137
Fertigungsvorgangsknoten mit komplementären Kanten
Fertigungsvorgangsknoten, die verschiedene Inputs für einen Vorgang erfordern, besitzen
komplementäre eingehende Kanten. Ein Beispiel für einen derartigen Vorgang ist ein Montageprozeß, wie z.B. die Fertigung eines Tisches aus einer Platte und vier Beinen. Dabei werden
verschiedene Fertigungselemente zu einem neuen verknüpft. Die eintretenden Fertigungselemente unterliegen dabei einer Regel, die festlegt, in welchem Verhältnis sie in den Vorgang
eingehen. Im beschriebenen Beispiel wäre dieses Verhältnis 4 : 1, je Tisch vier Beine und eine
Platte.
Abbildung 5-21: Komplementäre Kanten
Dabei bildet bei der Vorwärtsorientierung das geringste spezifische Angebot eines Vorgängerknotens den kritischen Pfad. Der Vorgang bzw. das Gesamtverhältnis ist somit abhängig von
der Verfügbarkeit der Fertigungselemente dieses Knotens. Eine rückwärtsorientierte Vorgehensweise entspricht in diesem Fall einer Stücklistenauflösung. In ihr würde bezogen auf dieses Beispiel die Zahl an Beinen und Platten für einen bestimmten Bedarf an Tischen ermittelt.
Fertigungsvorgangsknoten mit alternativen Kanten
Fertigungsvorgangsknoten75, an denen verschiedene Vorgänge durchgeführt werden, die unterschiedliche Inputs benötigen, besitzen alternative eingehende Kanten. Anhand dieses Falles
zeigt sich die Variabilität eines Fertigungsvorgangsknotens, an dem unterschiedliche Vorgänge
(Prozesse) mit verschiedenen Inputs ablaufen können. Die Unterschiedlichkeit dieser Vorgänge kann z.B. in ihrer Dauer oder den benötigten Fertigungshilfsmitteln76 liegen. Als Beispiel dafür kann ein Schweißprozeß genannt werden, der zur Bearbeitung verschiedener Fertigungselemente unterschiedlich lange Zeit benötigt. Zur Festlegung der Reihenfolge, nach der
die eingehenden Kanten abgearbeitet werden, ist eine Prioritätsregel notwendig, die bestimmt,
75.
76.
Hierbei ist aber zu beachten, daß sich diese Knoten im Fertigungsgraphen auch in mehrere Knoten, einen Knoten je Vorgang, untergliedern lassen. Die Zahl der Vorgänge je Knoten ist somit eine Frage der
Aggregation (siehe auch Transformationsprinzipien).
Auch Fertigungshilfsmittel, wie z.B. Energie oder bestimmte Werkzeuge, können, falls sie Steuerungsnotwendigkeit besitzen, im Modell als Fertigungsmittel abgebildet werden.
138
Kapitel 5
welche Fertigungselemente (in welcher Reihenfolge) eingehen dürfen und damit auch welche
Vorgänge durchgeführt werden.
Abbildung 5-22: Alternative Kanten
Die verschiedenen Vorgänge erzeugen jedoch auch verschiedene Outputs. Bei einer Rückwärtsorientierung wird demzufolge durch den spezifischen Bedarf an Outputelementen bereits
der benötigte Input bzw. die benötigten Inputelemente festgelegt, so daß nur eine in den Vorgangsknoten eingehende Kante weiterverfolgt werden muß.
Fertigungsvorgangsknoten mit konkurrierenden Kanten
Fertigungsvorgangsknoten, an denen dieselben Vorgänge mit verschiedenen Inputs durchgeführt werden, haben konkurrierende eingehende Kanten. Verschiedene Inputs kann hier z.B.
bedeuten, daß ein Vorgang entweder mit selbst- oder mit fremdgefertigten Materialen durchgeführt werden kann. Auch in diesem Fall muß nach einer Regel vorgegangen werden, die
anhand von Prioritäten eine bestimmte Reihenfolge für die eingehenden Fertigungselemente
festlegt und somit eine Entscheidung zwischen den konkurrierenden Kanten trifft.
Abbildung 5-23: Konkurrierende Kanten
Im Falle einer rückwärtsorientierten Vorgehensweise, also bei Anmeldung eines Bedarfes an
Outputelementen, wird ebenfalls anhand einer Regel oder auch der Verfügbarkeit der Fertigungselemente festgelegt, welche Inputelemente in den Vorgang eingehen bzw. an welchen
Inputelementen Bedarf besteht.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
139
Kombination verschiedener Kantentypen an Fertigungsvorgangsknoten
Häufig tritt auch eine Kombination aus den beschriebenen Kantentypen auf, nämlich genau
dann, wenn an einem Fertigungsvorgangsknoten verschiedene Vorgänge durchgeführt werden
können, die unterschiedliche Inputs erfordern. Dabei sind wiederum für bestimmte Vorgänge
alternative Inputs (Substitute) möglich. Ein Beispiel für eine derartige Kombination verschiedener Kantentypen ist eine Montagelinie, an der sowohl Tische als auch Stühle montiert werden. Die einzelnen Tische unterscheiden sich dabei durch die verwendeten Materialien, denn
sie können entweder eine Holz- oder eine Glasplatte besitzen. Die Tischbeine können weiterhin sowohl aus Metall als auch aus Holz gefertigt sein. Somit treten in diesem Fall komplementäre (Tischplatte und -beine), konkurrierende (Holz, Glas oder Metall) und alternative
Kanten (Tische oder Stühle) auf. Außerdem ist eine Kombination aus verschiedenen Regeln
(Prioritäten, Verhältniszahlen) nötig, um das Nettoangebot (den Nettobedarf) in ein resultierendes Angebot (Bedarf) umzusetzen.
Abbildung 5-24: Kombination verschiedener Kanten
Ist der Beginn eines Fertigungsvorgangs aufgrund des Status oder spezieller Restriktionen des
Knotens nicht möglich77, so müssen die Fertigungselemente entweder in eine Warteliste
geschrieben werden oder verbleiben in den Vorgängerknoten. Wie dieser Zustand aufgelöst
wird, ist abhängig vom zugrunde liegenden Zeitmodell und der Fertigungslenkungsstrategie.
Bei einer zeitorientierten Vorgehensweise kann z.B. zu Beginn des nächsten Zeitzyklus erneut
der Versuch unternommen werden, den Fertigungsvorgang zu starten, der jedoch wiederum
nicht von Erfolg gekrönt sein muß. Wird ereignisorientiert vorgegangen, so entscheidet ein
spezifisches Ereignis, wie z.B. das Ende eines Vorgangs, über den Start eines neuen Vorgangs.
Auch der Abschluß eines bzw. Austritt aus einem Fertigungsvorgang kann unmöglich sein.
Dieser Zustand wird „blockiert“ genannt. Der Austritt ist damit nicht mehr nur eine ausschließ-
77.
In diesem Fall wird von aktiven Fertigungsvorgangsknoten und von inaktiven Fertigungsmittelknoten
ausgegangen. Die Fertigungsmittel besitzen somit keine eigene Lenkungsfunktionalität, sondern die
Lenkung wird von den Vorgangsknoten aus vorgenommen. Sie fragen den Zustand der Fertigungsmittelknoten ab und teilen diesen Fertigungselemente zu.
140
Kapitel 5
lich vorgangsinterne Angelegenheit, vielmehr schließt er knotenübergreifende Prüfungen mit
ein. Auch die Auflösung dieser Inkonsistenz hängt von der spezifizierten Ablaufstruktur ab.
Die aus einem Vorgang entstandenen (austretenden) Fertigungselemente werden ebenfalls
nach einer Regel, der entweder Prioritäten oder ein bestimmtes Aufteilungsverhältnis
zugrunde liegt, auf die ausgehenden Kanten verteilt. Hierbei kann es zu Blockierungen kommen, wenn die Nachfolgerknoten nicht aufnahmebereit sind. Dieses ist z.B. dann der Fall,
wenn sie bereits ihren Maximalbestand erreicht haben. Durch die Nachfolger bedingte
Zugangsrestriktionen können indessen nur durch eine vorab durchgeführte Rückwärtsbetrachtung ermittelt werden.
5.2.1.2.3 Zustandsfunktionen an Fertigungsvorgangsknoten
Entsprechend der Bestandsrechnung am Elementknoten erfolgt am Vorgangsknoten die Terminierung der Fertigungselemente, die aus dem (geänderten) Anfangs-/Endtermin eines Fertigungsvorgangs einen neuen End-/Anfangstermin (vorwärts/rückwärts) ermittelt. Bei einem
Vorgangsknoten hat ein Eintrittsereignis in jedem Fall ein Austrittsereignis zur Folge, was von
anderen Fertigungsvorgängen nur zeitlich beeinflußt werden kann. Der aktuelle Zustand
bestimmt sich demnach aufgrund der Zu- oder Abgänge; somit besitzt ein Vorgangsknoten keinen Bestand im Sinne der Elementknoten.78 Die Terminierung ist abhängig vom zugrunde liegenden Zeitmodell, dem jeweiligen Transformationsprinzip und nicht zuletzt auch der bearbeiteten Materialmenge (z.B. ein Los).
Vorgangsdauer
Taktzeit
Durchlaufzeit
Anfangstermin
Endtermin
Transformationsprinzip
Abbildung 5-25: Vorgangsterminierung
In der Spezifikationssprache wird die Zustandsfunktionalität am Fertigungsvorgangsknoten
folgendermaßen dargestellt:
Teilgraph (Fertigungsvorgangsknoten), Ablaufspezifikation,
fv-Zustand (Terminieren; Transformationsprinzip)
78.
Bei einem Montageband könnte ebenfalls von einem Bestand gesprochen werden, allerdings ist ein
Montageband kein generischer Fertigungsvorgangsknoten und kann weiter aufgesplittet werden in Fertigungselement- und -vorgangsknoten.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
141
Durch einen Zusatz in Klammern wird die Zustandsfunktion am Fertigungsvorgangsknoten
näher beschrieben. Die Ausprägungen dieser Zusatzangabe, die zur Verdeutlichung ebenfalls
mitangegeben werden können, werden im Anschluß näher präzisiert.
Im einfachsten Fall, dem Transformationsprinzip „Einzelplatz“, befindet sich zu einem Zeitpunkt höchstens ein einziger Fertigungsvorgang in einem Fertigungsvorgangsknoten bzw.
einer Fertigungsvorgangsknotenklasse. Demnach entspricht der Eintrittsabstand zwischen den
Vorgängen ihrer Durchlaufzeit, und der früheste Eintrittszeitpunkt wird bestimmt durch den
resultierenden Inputfluß. Der späteste Austrittszeitpunkt dagegen wird festgelegt durch den
resultierenden Outputfluß. Ist jedoch die Durchlaufzeit kleiner als der vom zugrunde liegenden
Zeitmodell vorgegebene Zeitabschnitt, so werden mehrere Fertigungsvorgänge je Zeitabschnitt
betrachtet.
Bei parallelen Fertigungsvorgängen kann genau dann ein neuer Fertigungsvorgang beginnen,
wenn einer der parallelen Vorgänge beendet ist. Im Gegensatz dazu spielt bei seriellen Fertigungsvorgängen die Taktzeit neben der Durchlaufzeit eine entscheidende Rolle.79 Tabelle 5-5
stellt die Terminierung bei unterschiedlichen Transformationsprinzipien und Betrachtungsrichtungen (Ablauforientierungen) genauer dar. Die darin verwendeten Bezeichner haben folgende
Bedeutung:
i
(Arbeits-)Vorgang i
j
Vorgängervorgang j
k
Folgevorgang k
Tia
Anfangszeitpunkt des Vorgangs i
Tja
Anfangszeitpunkt des Vorgangs j
Tka
Anfangszeitpunkt des Vorgangs k
Tie
Endzeitpunkt des Vorgangs i
Tje
Endzeitpunkt des Vorgangs j
Tke
Endzeitpunkt des Vorgangs k
ti
Durchlaufzeit des Vorgangs i
tt
Taktzeit
79.
Hierbei handelt es sich um das sogenannte Fließbandabgleichproblem, das bei mehrstufiger Massenfertigung auftritt, bei der die gleichen Arbeitsoperationen an sehr vielen Werkstücken über einen längeren Zeitraum hinweg wiederholt durchgeführt werden. Zur Lösung dieses Problems gibt es
verschiedene Verfahren, wie z.B. die Heuristik von Helgeson und Birnie (vgl. [KiSt93]).
142
Kapitel 5
Transformationsprinzipiena
Vorwärtsterminierung
Rückwärtsterminierung
Einzelplatz
Tie = Tia + ti
Tia = Tie - ti
parallele Fertigungsvorgänge
Tie = Tja + tj
frühestmöglicher Tia =
min{∀ j Tja + tj}
Tia = Tke - tk
spätestmöglicher Tie =
max{∀k Tke + tk}
serielle Fertigungsvorgänge
Tie = Tia + ti falls Tia + ti >
Tje + tt sonst Tie = Tje + tt
Tia = Tie - ti falls Tie - ti >
Tja - tt sonst Tie = Tja - tt
Tabelle 5-5: Terminierung bei unterschiedlichen Transformationsprinzipien
a. Das Transformationsprinzip First-in/Last-out-Fertigungsvorgänge (vgl. [DaWa97], S. 197) findet
hierbei keine Beachtung, da es sich um einen Spezialfall handelt, der in den meisten Fällen auf einer
Störung basiert. Dieser Fall erfordert situationsabhängige Lösungsstrategien, die nicht allgemein
dargestellt werden können.
Neben der Unterscheidung nach Transformationsprinzipien sind die bereits vorher im Detail
dargestellten Attribute des Fertigungsvorgangsknotens (Takt, Vorgangsdauer) und das Zeitmodell (Zeitabschnitt) entscheidend für die jeweilige Ausprägung der Zustandsfunktion bzw. der
Terminierung.
5.2.2 Ablaufstrukturen
Während das Modell der Fertigung die Grundlage der Funktionalität bildet, beschreiben die
Abläufe der Fertigungslenkung das „Durchlaufen“ (Traversieren) und somit die Kopplung der
verschiedenen Funktionen dieses Modells. Dabei geht es einerseits um die Abarbeitung der
Ablaufstruktur im Sinne einer Graphstruktur (Fertigungsfortschritt) und andererseits um die
Abarbeitung der Zeitstruktur (Zeitachse). Daneben gibt es auch noch die Möglichkeit einer
produkt- oder auftragsweisen Abarbeitung. Standard Graph-Algorithmen, Vorgehensweisen
zur Abarbeitung der Graphstruktur, sind z.B. die topologische Sortierung zyklenfreier Digraphen, die Bestimmung von Vorgänger/Nachfolgerstrukturen mit einer Adjazenzmatrix oder die
Bestimmung der Menge der von einem Knoten aus erreichbaren Knoten mit einem Markierungsalgorithmus.80 Die Aufgaben dieser Algorithmen werden in der Spezifikationssprache
jedoch bereits durch das zugrunde liegende (Prozeß-)Modell der Fertigung erfüllt, indem es
Vorgänger- und Nachfolgerstrukturen sowie Erreichbarkeiten im Rahmen seiner Strukturdaten
abbildet.81
Ablaufstrukturen können die Ablauforientierungen zeit-, ereignis-, knoten- (material-, vorgangs- und fertigungsmittelorientiert), produktionsstruktur- oder auftragsorientiert besitzen,
80.
81.
Vgl. [Gal92] und [DoDr95], S. 57 ff.
Vgl. Abschnitt 5.2.2.4 Produktionsstrukturorientierte Vorgehensweise
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
143
wobei Zeit- und Ereignisorientierung den anderen Abläufen „übergeordnet“ sind. Sie bilden
die Basisvorgehensweisen, innerhalb derer die Ablaufstruktur nach einer der anderen Vorgehensweisen abgearbeitet wird. Auf ihnen aufbauend kann die Ablaufstruktur sich aus beinahe
beliebigen Verknüpfungen der verschiedenen Vorgehensweisen bis hinunter zur Knotenebene
zusammensetzen. Ordnungsrelationen innerhalb dieser Ablauforientierungen spezifizieren die
Reihenfolge der Abarbeitung noch zusätzlich. Außerdem können zur weiteren Spezifikation
Ablauf- bzw. Abbruchbedingungen als Zusatz in Klammern angegeben werden.
Wenn Fertigungselemente nur einem Fertigungsvorgang zugeordnet werden können, wie z.B.
bei linearen Strukturen, so können die Ablaufstrukturen durch einfache Algorithmen realisiert
werden. Sind sie dagegen mehreren Fertigungsvorgängen zugeordnet, so wird die Ermittlung
der Abläufe bzw. der Reihenfolge der Vorgänge schnell zu einem äußerst aufwendigen kombinatorischen Problem.82 Über die Ablaufreihenfolge wird darüber hinaus festgelegt, ob Teilmodelle seriell, parallel oder nebenläufig durchlaufen werden.
Die verschiedenen Vorgehensweisen können, wie bereits erwähnt, auch ineinander verschachtelt sein. So kann z.B. innerhalb einer zeitorientierten Ablaufstruktur des gesamten Fertigungsmodells auf einem Teilgraphen vorgangsorientiert - die wichtigsten Vorgänge werden zuerst
eingeplant - vorgegangen werden. Weiterhin ist aber auch eine Verschachtelung der „untergeordneten“ Vorgehensweisen möglich. So können z.B. der Gesamtgraph oder Teilgraphen von
diesem vorgangsorientiert durchlaufen werden, jedoch an den einzelnen Vorgangsknoten wird
fertigungsmittelorientiert - das wichtigste Fertigungsmittel wird zuerst belegt - vorgegangen.
Daneben kann das Fertigungsmodell immer, abhängig von der jeweiligen Sichtweise und Zielsetzung der Fertigungslenkung, in den beiden Ablaufrichtungen vorwärts und rückwärts
durchlaufen werden. Abbildung 5-26 zeigt ein Beispiel für eine derartige Verschachtelung der
Vorgehensweisen.
Im folgenden werden nun die verschiedenen Ablaufstrukturen anhand von graphischen Darstellungen und der Spezifikationssprache beschrieben. Die Abbildung in der Spezifikationssprache ist recht unkompliziert, da einerseits die Parameter zur genauen Bestimmung der
Abläufe bereits bei der Modellbildung festgelegt werden und so im Modell der Fertigung vorliegen und andererseits die Nutzung von Nassi-Shneiderman-Diagrammen die Ablaufstrukturierung wesentlich vereinfacht. Die Funktionalität wird in diese Darstellungen nicht miteinbezogen, sie gelten allein zur Verdeutlichung der unterschiedlichen Abläufe. Im daran
82.
Z.B. die Ermittlung eines Anfangstermins/Startereignisses (vgl. [DaWi93b])
144
Kapitel 5
Gesamtgraph, zeitorientiert, rückwärts
Teilgraph A, vorgangsorientiert, parallel
Teilgraph A1, materialorientiert (Prioritätsregel)
Teilgraph A2, fertigungsmittelorientiert (Prioritätsregel)
Teilgraph B, produktionsstrukturorientiert
Abbildung 5-26: Ablaufstrukturen
anschließenden Abschnitt erfolgt eine Darstellung dieser Vorgehensweisen in „algorithmischer“ Form in einer an die Programmiersprache C++ angelehnten Notation.
5.2.2.1 Zeitorientierte Vorgehensweise
Bei der zeitorientierten Vorgehensweise werden einzelne Zeitpunkte oder Zeitabschnitte über
das gesamte Fertigungsmodell oder über einzelne Teilmodelle in einer durch ein Reihenfolgekriterium bzw. durch das Zeitmodell vorgegebenen Sequenz abgearbeitet. Dieses Kriterium
unterteilt den Zeitraum bis zum Planungshorizont in Planungsabschnitte83, von denen jeweils
der Anfangs- und Endtermin relevant sind. Ein Fertigungsmodell kann mehrere unterschiedliche Zeitmodelle, die sich auf spezielle Teilmodelle beziehen, beinhalten. Innerhalb eines Zeitmodells kann darüber hinaus eine weitere Gliederung in Zeitpunktklassen erfolgen. Diese
Klassen unterscheiden sich dann z.B. durch differierende Reihenfolgebildung. Die Festlegung
der Zeitmodelle erfolgt im Rahmen der Erstellung des Modells der Fertigung.84
Abbildung 5-27: Zeitorientierung
T
Planungshorizont
Tn
n-ter Zeitpunkt im Planungshorizont
TH
letzter zu betrachtender Zeitpunkt im Planungshorizont
In der Spezifikationssprache wird die in Abbildung 5-28 dargestellte zeitorientierte Vorgehensweise bezogen auf einen Teilgraphen folgendermaßen beschrieben:
83.
84.
Für Planungsabschnitte werden auch die Begriffe Planungszyklen, -intervalle und -perioden gebraucht.
Für weitere Ausführungen zu Zeitmodellen siehe [Schn96], S. 102 ff.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
T
145
T
TH
T1
TH
T1
Abbildung 5-28: Zeitorientierte Vorgehensweise
Teilgraphspezifikation, zeitorientiert
Die Informationen über das Reihenfolgekriterium für die Zeitorientierung und zwar hier speziell der Planungshorizont und die zu betrachtenden Zeitpunkte bzw. Zeitabschnitte im Planungshorizont werden aus dem Modell der Fertigung respektive den Attributen an den Teilgraphen entnommen. Ein Teilgraph kann darüber hinaus auf Basis der Zeitorientierung noch nach
weiteren Vorgehensweisen abgearbeitet werden.
Bestellrhythmusverfahren
Das Bestellrhythmusverfahren ist eine spezielle Ausprägung der Zeitorientierung, die vorrangig bei der verbrauchsorientierten Mengenplanung eingesetzt wird.85 Bei diesem Verfahren
wird z.B. der Bestand eines Materials zu vorgegebenen Zeitpunkten geprüft und, falls er einen
Mindestbestand unterschreitet, um eine bestimmte Menge (z.B. Auffüllen auf den Maximalbestand) ergänzt. Das Zeitmodell des Modells der Fertigung schreibt Bestellzyklen vor, welche
die Überprüfungszeitpunkte bestimmen. Die Ausführung des Dispositionsprinzips erfolgt in
der Zustandsfunktion des Materialknotens.
Gesamtgraph, zeitorientiert (Überprüfungszeitpunkte), rückwärts
Teilgraph (Dispositionsebenen), knotenorientiert, fe-Zustand
(Bestands-/Bedarfsrechnung; Dispositionsprinzip)
// Auffüllen auf den Maximalbestand //
Abbildung 5-29: Darstellung Bestellrhythmusverfahren
5.2.2.2 Ereignisorientierte Vorgehensweise
Das jeweils nächste (zeitlich) oder wichtigste mögliche Ereignis hinsichtlich eines Reihenfolgekriteriums (Priorität) bestimmt die Abarbeitung des Fertigungsmodells bei der ereignisori85.
Vgl. Abschnitt 5.2.1.1.1 Attribute an Fertigungselementknoten
146
Kapitel 5
entierten Vorgehensweise. In Abbildung 5-30 und dem folgenden Beispiel in der Spezifikationssprachennotation wird nach dem wichtigsten Ereignis über einem speziellen Zeithorizont
vorgegangen. Eine auf der Ereignisorientierung basierende knotenorientierte Vorgehensweise
kann darüber hinaus eine Spezifizierung der Ereignisse auf einen bestimmten Knotentyp
bedingen.
Abbildung 5-30: Ereignisorientierung
ei
Ereignis
T
Planungszyklus (Planungshorizont)
ET
Menge der Ereignisse im Planungshorizont T
e*T
wichtigstes mögliches Ereignis in Zeitabschnitt T
ET
T
e4
e2
e7
e*T
e6
e1
e0
e5
Abbildung 5-31: Ereignisorientierte Vorgehensweise
Darstellung in der Spezifikationssprache:
Teilgraphspezifikation, ereignisorientiert
Die Informationen über die Prioritätsregeln86 für die Ereignisse sowie den der Ereignisorientierung zugrunde liegenden Zeithorizont werden bei dieser Vorgehensweise ebenfalls aus dem
Modell der Fertigung entnommen bzw. sind dort hinterlegt.
Bestellpunktverfahren
Ein Fertigungslenkungsverfahren, das ereignisorientiert vorgeht, aber ebenfalls vorrangig in
der verbrauchsorientierten Mengenplanung Verwendung findet, ist das Bestellpunktverfahren.
Bei diesem wird z.B. permanent (über einen Zeithorizont) überwacht, ob der aktuelle Lagerbestand einen festgelegten Bestellpunkt unterschreitet. Tritt dieses Ereignis ein, so wird ein Auftrag mit einer bestimmten Auftragsmenge initiiert. Die Größe dieser Auftragsmenge ist abhän86.
Die Prioritätsregel kann auch als Zusatz in Klammern der Ablaufspezifikation beigefügt werden.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
147
gig vom jeweiligen Bestellpunktverfahren. Entweder ist es eine feste Menge (Losgröße) oder
der Bestand wird bis zu einer gewissen Grenze (z.B. Maximalbestand) aufgefüllt. Die Bestellmenge wird im Falle der verbrauchsorientierten Mengenplanung einmalig berechnet und im
folgenden nicht mehr verändert. Abbildung 5-32 zeigt die Darstellung des Bestellpunktverfahrens in der Spezifikationssprache, wobei nach einem Planungszyklus vorgegangen wird.
Gesamtgraph, zeitorientiert (Planungszyklus)
Teilgraph (Strukturprototyp), ereignisorientiert, fe-Zustand
(Bestands-/Bedarfsrechnung; Dispositionsprinzip)
// Das Ereignis am Materialknoten ist in diesem Fall die
Unterschreitung des Bestellpunktes. //
Abbildung 5-32: Darstellung Bestellpunkt-Verfahren
5.2.2.3 Knotenorientierte Vorgehensweise
Bei der knotenorientierten Vorgehensweise werden die einzelnen Knoten des Fertigungsgraphen oder eines Teilgraphen entsprechend einer durch ein Reihenfolgekriterium87 vorgegebenen Sequenz über dem gesamten Planungshorizont abgearbeitet. Diese Art des Vorgehens läßt
sich weiter untergliedern respektive spezifizieren in vorgangs-, material- und fertigungsmittelorientierte Ablaufstrukturen. Eine knotenorientierte Vorgehensweise kann auch auf einer ereignisorientierten Ablaufstruktur basieren, allerdings ist das nur dann sinnvoll, wenn es je Knoten
mehrere Ereignisse gibt.
5.2.2.3.1 Vorgangsorientierte Vorgehensweise
Die vorgangsorientierte Ablaufstruktur stellt bestimmte Vorgänge in den Vordergrund und
durchläuft von diesen ausgehend den gesamten Fertigungsgraphen oder einen Teilgraphen. Die
Reihenfolge ist durch die vorgegebene Graphstruktur und die Ablaufrichtung oder eine spezielle Prioritätsregel (Ablaufbedingung) gegeben. In Abbildung 5-33 wird die Aufeinanderfolge
durch die Rangstufe der Vorgänge verdeutlicht. Außerdem muß bezüglich des weiteren Vorgehens im zugrunde liegenden Modell festgelegt sein, ob von den einzelnen Vorgängen aus
zuerst Bedarfe/Angebote an die Materialknoten und dann an die Fertigungsmittelknoten oder
umgekehrt gemeldet werden. Diese Problematik wird im Rahmen der Funktionalität der Vorgänge bzw. Vorgangsknoten mit Hilfe von Prioritätsregeln gelöst.
87.
Dieses Kriterium wird häufig durch den Fertigungsplan bzw. Arbeitsplan festgelegt.
148
Kapitel 5
i
(Arbeits-)Vorgang
r
Rangstufe
i
1,1
3,1
2,1
1,2
r
1
2
3,2
3
Abbildung 5-33: Vorgangsorientierte Vorgehensweise
In der Notation der Spezifikationssprache wird diese Ablaufstruktur mit Ablaufbedingung folgendermaßen dargestellt:
Teilgraphspezifikation, vorgangsorientiert (Prioritätsregel)
// Diese vorgangsorientierte Vorgehensweise kann z.B. auf einer zeit- oder
einer ereignisorientierten Ablaufstruktur basieren. //
5.2.2.3.2 Materialorientierte Vorgehensweise
Bei der materialorientierten Vorgehensweise erfolgt die Abarbeitung nach den eingesetzten
Materialien im gesamten Fertigungsgraphen oder in Teilgraphen, die nach einem Reihenfolgekriterium (Ablaufbedingung) angeordnet sind. Bezüglich der in einen Vorgang eingehenden
Materialien im Rahmen eines Strukturprototypen kann diese Reihenfolge z.B. auf einer Prioritätsregel der konkurrierenden Materialien beruhen. Das in Abbildung 5-34 dargestellte Beispiel zeigt einen Vorgang, der drei Materialien (A, B, C) benötigt, wobei es zu einem Material
zwei Alternativen (A1, A2) gibt, die miteinander konkurrieren. In diesem Fall handelt es sich
um eine materialorientierte Vorgehensweise auf einem Teilgraphen, der einem Strukturprototypen entspricht, oder um eine Materialorientierung, die auf einer vorgangsorientierten Abarbeitung eines Teilgraphen basiert.
In der Spezifikationssprache stellt sich diese Vorgehensweise folgendermaßen dar:
Teilgraphspezifikation, materialorientiert (Prioritätsregel)
// Diese materialorientierte Vorgehensweise kann z.B. auf einer zeit-, ereignis- oder auch einer vorgangsorientierten Ablaufstruktur basieren. //
i
(Arbeits-)Vorgang
p
Material
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
149
p
Material A1
i
Material A2
Material B
Material C
Abbildung 5-34: Materialorientierte Vorgehensweise
5.2.2.3.3 Fertigungsmittelorientierte Vorgehensweise
Ähnlich verhält es sich mit der fertigungsmittelorientierten Vorgehensweise, bei der hinsichtlich eines Reihenfolgekriteriums (Ablaufbedingung) das wichtigste (verfügbare) Fertigungsmittel im gesamten Fertigungsgraphen, einem Teilgraphen oder bezüglich eines Vorgangs
gesucht wird. Eine derartige Ablaufstruktur ist z.B. dann sinnvoll, wenn ein Fertigungsmittel
stets hoch ausgelastet sein soll, um so seine Anschaffungs- oder Betriebskosten (Fixkosten) zu
amortisieren. Abbildung 5-35 zeigt einen Vorgang, der auf drei verschiedenen Maschinen
durchgeführt werden kann. Die fertigungsmittelorientierte Vorgehensweise kann allerdings
auch auf einen Teilgraphen oder alle Dispositionsebenen und somit auf den gesamten Fertigungsgraphen ausgeweitet werden.
i
(Arbeits-)Vorgang
m
Maschine (Fertigungsmittel)
i
Maschine 1
m
Maschine 2
Maschine 3
Abbildung 5-35: Fertigungsmittelorientierte Vorgehensweise
In der Spezifikationssprache ergibt sich folgende Darstellung dieser Vorgehensweise:
Teilgraphspezifikation, fertigungsmittelorientiert (Prioritätsregel)
// Diese fertigungsmittelorientierte Vorgehensweise kann z.B. auf einer
zeit-, ereignis- oder auch einer vorgangsorientierten Ablaufstruktur basieren. //
150
Kapitel 5
5.2.2.4 Produktionsstrukturorientierte Vorgehensweise
Die produktionsstrukturorientierte Vorgehensweise orientiert sich an Strukturkriterien der Fertigung, wie z.B. Dispositionsstufen, Fertigungsstufen, Auflösungsstufen oder Vorgänger-/
Nachfolgerbeziehungen. Alle diese Strukturkriterien sind direkt oder mit wenig Aufwand aus
dem Fertigungsgraphen bzw. dem Prozeßmodell abzulesen. Außerdem kann diese Form der
Abarbeitung in bestimmten Fällen einer material-, vorgangs- oder fertigungsmittelorientierten
Vorgehensweise entsprechen.
Für das Erstellen von Adjazenzmatrizen88 und das Durchlaufen von (zyklenfreien) Digraphen
gibt es, wie zu Beginn dieses Abschnitts bereits erläutert, Standardalgorithmen, wie z.B. die
topologische Sortierung oder den Markierungsalgorithmus. Abbildung 5-36 zeigt ein Teilmodell eines Fertigungsgraphen, das in seine einzelnen Prototypen untergliedert ist. Die Überlappung der Prototypen beruht auf der Schnittstellenfunktion der Fertigungselementknoten. Eine
Nachfolgestruktur ergibt sich in diesem Graphen über die Verknüpfung der Knotengruppen
(Prototypen) durch die Kanten. Insoweit entspricht diese Darstellung einem Netzplan89 (z.B.
Vorgangsknotennetzplan), wobei jedoch zu bedenken ist, daß Netzpläne in erster Linie zur
Struktur- und Zeit- bzw. Terminplanung sowie teilweise auch mit Erweiterungen zur Kostenund Kapazitätsplanung, nicht aber zur Mengenplanung eingesetzt werden können.90 Netzpläne
gehen darüber hinaus immer von einer Fertigungselementmenge mit genau einem Element
bzw. einem isolierten Auftrag aus. Somit wird jeder Vorgang im Rahmen der Netzplanrechnung nur genau einmal durchgeführt.
Abbildung 5-36: Nachfolgestruktur
Eine derartige Strukturierung erfolgt dementsprechend im ersten Konstrukt der Spezifikationssprache, das den betrachteten Teilgraphen, wie z.B. Dispositions- oder Fertigungsstufen, oder
auch einen bestimmten Strukturprototypen angibt und einen Verweis auf das Modell der Ferti88.
89.
90.
Eine Adjazenzmatrix stellt die Nachfolgebeziehungen in einem Graphen in Form einer booleschen Matrix dar.
Vgl. Abschnitt 2.1.3 Klassifikation
Vgl. [DoDr95], S. 86 ff. und [DaWa97], S. 417 ff.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
151
gung beinhaltet. Letzterer trägt entscheidend zum Verständnis und zur Übersichtlichkeit der
Darstellung bei. Eine produktionsstrukturorientierte Vorgehensweise nach Prototypen für die
in Abbildung 5-36 dargestellte Struktur würde in der Spezifikationssprache folgendermaßen
dargestellt:
Gesamtgraph, produktionsstrukturorientiert
Teilgraph (Strukturprototyp), Vorgehensweise beliebig
Abbildung 5-37: Darstellung produktionsstrukturorientierter Ablauf
5.2.2.5 Auftragsorientierte Vorgehensweise
Bei der auftragsorientierten Vorgehensweise erfolgt die Abarbeitung des Fertigungsgraphen
nach Aufträgen, die entweder nach Prioritäten sortiert sind oder eine bestimmte Eigenschaft,
wie z.B. bei der Bedarfsorientierten Auftragsfreigabe Dringlichkeit, besitzen. Aufträge, die
diese Eigenschaft nicht besitzen bzw. Bedingung nicht erfüllen, werden nicht betrachtet.
a
Auftrag
m
Maschine (Fertigungsmittel
a
m1
m2
Abbildung 5-38: Auftragsorientierte Vorgehensweise
Das in Abbildung 5-38 abgebildete Beispiel zeigt zwei Vorgänge in einer linearen Struktur mit
jeweils einem Fertigungsmittel. Die Abarbeitung dieser Struktur erfolgt auftragsorientiert,
wobei die Aufträge nach Prioritäten sortiert sind, und für jeden einzelnen dieser Aufträge dann
fertigungsmittelorientiert. Abbildung 5-39 stellt die beschriebene Vorgehensweise in der Spezifikationssprache dar.
Gesamtgraph, auftragsorientiert (Prioritätsregel)
Teilgraph (Strukturprototyp), fertigungsmittelorientiert
Abbildung 5-39: Darstellung auftragsorientierter Ablauf
152
Kapitel 5
5.2.2.6 Kombinierte Ablaufstrukturen
Die beschriebenen Ablaufstrukturen können auf vielfältige Art und Weise miteinander kombiniert werden. In Abbildung 5-40 wird eine Kombinationsmöglichkeit aus materialorientierter
und fertigungsmittelorientierter Vorgehensweise an einem Strukturprototypen dargestellt,
wobei für jeden Vorgang des Fertigungsgraphen91 das Material vor den Fertigungsmitteln eingeplant wird.
1
2
Abbildung 5-40: Kombinierte Ablaufstruktur
Ein ähnliches Vorgehen erfolgt bei der Freigabe eines Auftrags, nämlich erst die Überprüfung,
ob genug Material vorhanden ist, und anschließend, ob genug Fertigungskapazität zur Verarbeitung des Materials verfügbar ist. Die Ablaufstruktur legt hierbei weiterhin fest, ob erst im
gesamten Netz das Material eingeplant werden soll und dann mit der Einplanung der Fertigungsmittel begonnen wird, also ein sukzessives Vorgehen, oder ob diese Planungsreihenfolge
sich auf einzelne Strukturprototypen bezieht.
Gesamtgraph, produktionsstrukturorientiert, rückwärts
Teilgraph (Strukturprototyp), materialorientiert (Prioritätsregel)
Teilgraph (Strukturprototyp), fertigungsmittelorientiert (Prioritätsregel)
Abbildung 5-41: Darstellung kombinierte Ablaufstrukturen
Im in Abbildung 5-41 dargestellten Beispiel erfolgt für jeden Prototypen zuerst die Einplanung
des Materials und im Anschluß daran die Einplanung der Fertigungsmittel. Diese Struktur
kann aber auch genau in entgegengesetzter Abfolge durchlaufen werden. Im Falle eines sukzessiven, auf den Gesamtgraphen bezogenen Vorgehens ergeben sich in der Spezifikationssprache zwei getrennte Programme, die einzeln durchzuführen sind:
Gesamtgraph, materialorientiert (Prioritätsregel), rückwärts
Gesamtgraph, fertigungsmittelorientiert (Prioritätsregel), rückwärts
91.
Insoweit liegt diesem Ablauf auch eine vorgangsorientierte Vorgehensweise zugrunde.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
153
Die Ablaufstruktur der einzelnen Funktionen an den Knoten ist durch die zugrunde liegende
Lenkungsstrategie, die z.B. auch festlegt, welche Knoten aktiv sind bzw. von welchen Knoten
die Lenkung eines Prototypen ausgeht, und das Zeitmodell eindeutig vorgegeben. Auf diese
Weise wird auch klargestellt, ob Restriktionen vor oder nach dem Zusammenfassen bzw. Aufteilen von Fertigungselementen beachtet werden müssen. In Abbildung 5-42 ist ein Beispiel
für die Spezifikation einer einfachen zweistufigen Fertigung dargestellt. Der Fertigungsgraph
läßt sich in zwei unterschiedliche Strukturprototypen (A und B) unterteilen, wobei noch eine
weitere Gliederung in die Strukturprototypen A1 und A2 vorgenommen werden muß. Eine
Reduktion auf einen Prototypen ist nicht möglich, da A1 und A2, wie im Nassi-ShneidermanDiagramm zu sehen, unterschiedliche Funktionalität besitzen.
A1
B
Gesamtgraph, zeitorientiert, vorwärts
Teilgraph A, produktionsstrukturorientiert
Teilgraph A1, FE-Zustand (Bestandsund Bedarfsrechnung), FV-Eintritt
(Zusammenfassen; Prioritätsregel)
Teilgraph A2, FE-Zustand (Bestandsund Bedarfsrechnung), FV-Eintritt
(Zusammenfassen; Verhältnisregel)
A2
Teilgraph B, ereignisorientiert, FE-Zustand
(Bestandsrechnung), FV-Eintritt
(Zusammenfassen; Verhältnisregel)
Abbildung 5-42: Spezifikationsbeispiel
5.3 Implementierung der Spezifikationssprache
Die in den vorhergehenden Abschnitten beschriebenen Funktionen und Abläufe der Fertigungslenkung werden hier nun in Algorithmen92, in einer an C++ angelehnten Notation implementiert, dargestellt. Diese Implementierungen sollen den Nutzern der Spezifikationssprache
die Übertragung in eine ausführbare Programmiersprache erleichtern und gleichzeitig die
Anwendbarkeit der Sprache verdeutlichen. Die Algorithmen bilden jedoch die Fertigungslenkung nicht vollständig ab; aufgrund der sich stets wandelnden Fertigungslenkungsstrategien
und der Fülle an Spezialfällen kann in der vorliegenden Arbeit nur eine beispielhafte Implementierung gegeben werden. Allerdings beschreiben die dargestellten Beispiele die gebräuchlichsten Funktionen und Abläufe der Fertigungslenkung in algorithmischer Form.
92.
Einerseits sind diese Algorithmen bereits vollständige und in sich abgeschlossene Methoden, andererseits aber auch nur Teile von Methoden, wie z.B. Schleifen.
154
Kapitel 5
Die genannten Algorithmen können in einer Datenbank bzw. Methoden-Bibliothek hinterlegt
werden, die durch ihre Gliederung die Auswahl relevanter Algorithmen unterstützt. Diese
Datenbank soll auf ihrer obersten Strukturebene in die Bereiche Funktionen und Abläufe
untergliedert sein. Weiterhin können die Algorithmen für Funktionen nach solchen an Fertigungselementknoten, an Fertigungsvorgangsknoten und allgemeine Funktionen strukturiert
werden. Die Algorithmen beider Bereiche lassen sich beliebig miteinander kombinieren. Im
folgenden werden nun zuerst die Implementierungen für die Funktionalität an den Knotenarten
sowie für allgemeine Funktionen und anschließend für die Abläufe über dem Gesamtmodell
bzw. den Teilmodellen dargestellt.
Vor diesen Implementierungen müssen allerdings noch verschiedene Klassendefinitionen93 für
Teilgraphen, Fertigungsobjekte, -elemente und -vorgänge sowie für Fertigungselement- und
Fertigungsvorgangsknoten angegeben werden. In diesen werden wichtige Attribute, Stammund Bewegungsdaten des Modells der Fertigung, definiert, die entscheidenden Einfluß auf die
Fertigungslenkungsfunktionen und -abläufe haben. Darüber hinaus beinhalten die Klassendefinitionen weitere Parameter zur Festlegung der Fertigungsstruktur sowie der dieser zugrunde
liegenden Datenstruktur. Das Zeitmodell der Fertigungslenkung wird ebenfalls in den Klassendefinitionen festgelegt. Die genannten Attribute sind jedoch nur beispielhaft angeführt und sollen zum besseren Verständnis der folgenden Algorithmen dienen. Außerdem sind sie entscheidend abhängig von der im jeweiligen Implementierungsfall zugrunde liegenden Datenbank
bzw. dem Datenmodell, welches in dieser Arbeit aus Gründen der Unabhängigkeit der Implementierung nicht näher spezifiziert werden soll.
In den folgenden Klassendefinitionen stehen demzufolge die Parameter im Vordergrund, die
von den Algorithmen für Funktionen und Abläufe benötigt werden. Deswegen sind die Klassendefinitionen nur als Beispiel und nicht als vollständige Darstellung zu verstehen. So beinhalten sie z.B. keine Methoden zur Erzeugung oder Vernichtung der einzelnen Klassen und
ebenfalls keine Untergliederung in public, privat und protected Variablen und Methoden.94
Außerdem ist in den Klassendefinitionen nur eine mögliche aber nicht vollständige Auswahl
von Attributen dargestellt, die noch entsprechend der speziellen Anforderungen an das jeweilige Fertigungsmodell erweitert werden kann.95 Daneben werden Basisklassen bzw. Wurzel93.
94.
95.
Klassen stellen ein wesentliches Element der Objektorientierung dar und repräsentieren das Konzept
eines Objektes (vgl. [Schr92], S. 33).
Vgl. [Lip91], S. 39 ff.
Überdies gibt es noch weitere Klassen, wie z.B. zur Modellierung des zeitlichen Bezugs, der Ereignisse sowie des Graphen, die hier nicht explizit angegeben sind. Diese Klassen liegen jedoch der Modelldatenbank zugrunde (vgl. [Hol98]).
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
155
klassen, wie z.B. Objekt als Wurzel aller verwendeten Klassen, Graph als Superklasse der Fertigungsgraphen oder Liste als Superklasse für Mengen, nicht näher spezifiziert. In der
vorliegenden Arbeit geht es nicht darum, eine optimale Klassen- bzw. Datenstruktur für das
Modell der Fertigung zu entwickeln, sondern eine möglichst klare und einfache respektive effiziente Implementierung der Funktionen und Abläufe zu finden, die leicht in andere Programmiersprachen übersetzt werden kann. Zur Definition einer optimalen Klassen- und Datenstruktur des Modells der Fertigung sei auf das objektorientierte Daten- und Funktionenmetamodell
für die Modellierung von Fertigungslenkungssystemen in [Hol98], wo auch auf vordefinierte
Basisklassen eingegangen wird, sowie das in [Schn96] und [DaGe95] definierte Modell der
Fertigung, auf dem diese Metamodelle basieren, verwiesen.
class Teilgraph : Graph
{
// Attribute
Orientierungstyp Ablauforientierung
// zeitorientiert, ereignisorientiert, knotenorientiert, produktionsstrukturorientiert oder
auftragsorientiert
Richtungstyp Ablaufrichtung
// vorwärts oder rückwärts
Planungstyp Planung
// Ist oder Soll
Steuerungstyp Steuerungsregel
// auf den Teilgraphen anzuwendende
Steuerungsregel, wie z.B. BOA oder Fortschrittszahlen. Dieses Attribut kann durch
zusätzliche Teilattribute, wie z.B. Warteliste weiter spezifiziert werden.
Zyklustyp Zeithorizont
// Zeithorizont im Zeitmodell
Zyklustyp Zeitabschnitt
// Zeitabschnitt im Zeitmodell - Länge eines
Planungszeitraums
Zyklustyp Bestellzyklus
// Zeitabschnitt im Zeitmodell - Länge eines
Bestellzyklus
unsigned int Rang
// Rangstufe (Dispositionsstufe) des Teilgraphen
// Methoden (mögliche Funktionalität des
Teilgraphen)
}
Die Klasse Teilgraph beinhaltet spezielle Beschreibungsattribute, wie z.B. die Ablauforientierung, die Ablaufrichtung oder den Zeithorizont und den Zeitabschnitt, zur Repräsentation des
zeitlichen Bezugs, da diese Attribute von Teilgraph zu Teilgraph unterschiedliche Ausprägungen besitzen können. Mit Hilfe von Methoden läßt sich außerdem auch auf Teilgraphen Funktionalität definieren.
156
Kapitel 5
class Fertigungsauftrag : Objekt
{
// Attribute
unsigned int Identifikation (Schlüssel)
// Schlüssel
char *Bezeichnung
// Name
time Start
// Starttermin des Fertigungsauftrags
time Ende
// Endtermin des Fertigungsauftrags
boolean ausführbar
// das Attribut liefert TRUE, wenn der Auftrag auf allen Fertigungsmitteln bearbeitet
werden kann (Probebelegung erfolgreich)
Plantyp Arbeitsplan
// Arbeitsplan des Fertigungsauftrags
}
Die Klasse Fertigungsauftrag besitzt Attribute für den Start- und den Endtermin, für den Status
(ausführbar) und für den Arbeitsplan des Auftrags. Das Attribut Arbeitsplan ist ein komplexer
Datentyp. Es beinhaltet die Vorgänge, die im Rahmen des Auftrags durchgeführt werden müssen, ihre Reihenfolge und teilweise auch die für sie benötigten Fertigungsmittel.
class Fertigungsobjekt : Objekt
{
// Attribute
unsigned int Identifikation (Schlüssel)
// Schlüssel
char *Bezeichnung
// Name
Fertigungsknoten Knoten
// Fertigungsknoten, an dem sich das Fertigungsobjekt befindet
}
Die Klasse Fertigungsobjekt stellt die Oberklasse der im folgenden beschriebenen Klassen
Fertigungselement und Fertigungsvorgang dar und vererbt an sie die Beschreibungsattribute
Identifikation, Bezeichnung und Knoten.
class Fertigungsobjektmenge : Liste
// Die Klasse Fertigungsobjektmenge ist abgeleitet von der Wurzelklasse Liste und unterscheidet sich von ihr nur insoweit, daß die betrachteten Objekte Fertigungsobjekte sind.
class Fertigungselement : Objekt
{
// Attribute
Zyklustyp Bestellzyklus
// Art bzw. Häufigkeit der Bestellunga
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
157
Punkttyp Bestellpunkt
// Bestandsgrenze, bei deren Unterschreitung ein Lagerauftrag ausgelöst wird
unsigned int Fixkosten/Rüstkosten
// fixe Kosten pro Bestellvorgang bzw. Auflage eines Loses
unsigned int Variable_Kosten
// bestellmengen- (bzw. losgrößen-) abhängige Kosten pro Mengen- und Zeiteinheit,
wie z.B. Lagerhaltungskosten
unsigned int Gesamtbedarf
// Gesamtbedarf im Planungszeitraum
a. Die Attribute Bestellzyklus und Bestellpunkt sind zur näheren Beschreibung der Disposition
des Fertigungselements gedacht. Wie im jeweiligen Programm vorgegangen wird, bestimmt die
Ablauforientierung.
}
Die Attribute der Klasse Fertigungselement umfassen Objekt- und Zustandsbeschreibungen
sowie zeitliche, qualitative und quantitative Eigenschaften des Elements. Neben den hier beispielhaft aufgeführten Attributen könnte das Fertigungselement noch durch weitere Beschreibungsattribute, wie z.B. Ausmaße, Farbe, Gewicht, Haltbarkeit und sonstige Charakteristika,
beschrieben werden. Die Attribute Bestellzyklustyp und -punkt sind vorrangig bei einer verbrauchsorientierten Fertigung (Mengenplanung) zur Auswahl des Dispositionsprinzips von
Interesse.
class Fertigungselementmenge : Liste
// Die Klasse Fertigungselementmenge ist ebenfalls abgeleitet von der Wurzelklasse Liste und
unterscheidet sich von ihr nur insoweit, daß die betrachteten Objekte Fertigungselemente
sind.
class Fertigungsvorgang : Objekt
{
// Attribute
time Bearbeitungszeit
// Vorgangsdauer
time Anfang
// Anfangszeitpunkt des Vorgangs
time Ende
// Endzeitpunkt des Vorgangs
Fertigungselementmenge Material
// Material, das für den Vorgang benötigt
wird
Fertigungselementmenge Ressourcen
// Ressourcen, die für den Vorgang benötigt
werden
Fertigungsauftrag Auftrag
// Fertigungsauftrag, in dessen Rahmen der
Fertigungsvorgang durchgeführt wird
}
Die Klasse Fertigungsvorgang beinhaltet ebenso wie die Klasse Fertigungselement Attribute,
welche die zeitlichen, qualitativen und quantitativen Eigenschaften der Vorgänge beschreiben.
158
Kapitel 5
Die hier angeführte Klassenbeschreibung kann wiederum um zusätzliche Attribute, wie z.B.
Rüstzeiten oder Vorwärmzeiten, ergänzt werden.
class Fertigungsvorgangsmenge : Liste
// Die Klasse Fertigungsvorgangsmenge ist ebenfalls abgeleitet von der Wurzelklasse Liste
und unterscheidet sich von ihr nur insoweit, daß die betrachteten Objekte Fertigungsvorgänge sind.
class Fertigungsknoten : Objekt
{
// Attribute
unsigned int Identifikation (Schlüssel)
// Schlüssel
char *Bezeichnung
// Name
Prioritätstyp Prioritätsregel
// anzuwendende Prioritätsregel, wie z.B.
FIFO
Verhältnistyp Verhältnisregel
// anzuwendende Verhältnisregel, die das
Verhältnis eintretender bzw. austretender
Fertigungselemente zueinander bestimmt
Fertigungsknotenmenge Vorgänger
// für dieses Attribut ist eine Vorausdeklaration nötig
Fertigungsknotenmenge Nachfolger
// für dieses ebenfalls
Teilgraph Graph
// Teilgraph, in dem sich der Knoten befindet
Fertigungsobjektmenge Eintritt
// Eintretende Elemente
Fertigungsobjektmenge Austritt
// Austretende Elemente
Fertigungselementmenge Bruttobedarf
// Bruttobedarf am Knoten (vor der
Bestandsrechnung)
Fertigungselementmenge Nettobedarf
// Nettobedarf am Knoten (Ergebnis der
Bestandsrechnung)
Fertigungsobjektmenge Warteliste
// Warteliste im Falle des Eintritts bzw. Austritts zu Beginn bzw. Ende eines Zeitabschnitts
boolean Priorität
// das Attribut liefert TRUE, wenn eine Prioritätsregel vorhanden ist
boolean Verhältnis
// das Attribut liefert TRUE, wenn eine Verhältnisregel vorhanden ist
}
Fertigungsknoten besitzen neben den identifizierenden Attributen Verweise auf Ihre Vorgänger- und Nachfolgerknoten sowie den Teilgraphen, zu dem sie gehören. Daneben beinhalten
sie Attribute für die Menge der ein- und austretenden Elemente wie auch den Brutto- und Nettobedarf. Das Attribut Warteliste repräsentiert eine Menge von Fertigungsobjekten, die, falls
der Fertigungsknoten ein oder mehrere Fertigungsmittel darstellt, vor diesen auf ihre Bearbei-
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
159
tung warten. Ob und welche Prioritäts- oder eine Verhältnisregel auf den Knoten anzuwenden
ist, das bestimmen die Attribute Priorität, Prioritätsregel, Verhältnis und Verhältnisregel.
class Fertigungsknotenmenge : Liste
// Die Klasse Fertigungsknotenmenge ist ebenfalls abgeleitet von der Wurzelklasse Liste und
unterscheidet sich nur insoweit von dieser, daß die betrachteten Objekte Fertigungsknoten
sind.
class Fertigungselementknoten : Fertigungsknoten
{
// Attribute
Dispositionstyp Dispoprinzip
// Dispositionsprinzipien
Losgrößentyp Losgröße
// Verfahren zur Losgrößenbestimmung
unsigned int Sicherheitsbestand
// Minimalrestriktion (Mindestbestand)
unsigned int Maximalbestand
// Maximalrestriktion (Höchstbestand)
Zustandstyp Zustand
// belegt, frei (frei beinhaltet hier auch den
Zustand teilweise belegt, falls der Eintritt
eines weiteren Fertigungselements möglich ist)
Statustyp Status
// aktiv, gestört, pausiert (Status des Fertigungsmittels)
Fertigungselementmenge Bestand
// im Fertigungselementknoten vorhandene
Fertigungselemente
boolean Los
// das Attribut liefert TRUE, wenn die Fertigungselemente losweise verarbeitet werden und eine Bestimmung der optimalen
Losgröße durchgeführt werden soll (d.h.
implizit, daß der Bestellzyklus größer als
der betrachtete Zeitabschnitt ist).
// Methoden
// Diese Methoden werden in Abschnitt
5.2.1.1 Funktionalität an Fertigungselementknoten näher spezifiziert.
void fe-Eintritt
// Eintrittsfunktion
void fe-Austritt
// Austrittsfunktion
void fe-Zustand
// Zustandsfunktion
}
Die Klasse Fertigungselementknoten umfaßt die spezifischen Attribute dieser Knotenart. Das
Attribut Dispositionstyp ist insbesondere für Fertigungsmaterialknoten von Bedeutung und
beinhaltet das in der Bestands- bzw. Bedarfsrechnung anzuwendende Dispositionsprinzip.
Falls eine losweise Planung bzw. Verarbeitung vorgenommen wird, so legt der Losgrößentyp
das Verfahren zur Losgrößenbestimmung fest. Attribute zur Bestimmung des Prioritäts- und
Verhältnistyps eines Vorgangs werden von der Oberklasse Fertigungsknoten vererbt. Weiterhin
160
Kapitel 5
enthält die Klassendefinition Attribute vom Zustands- und Statustyp. Dabei bezieht sich der
Zustand auf die Belegungssituation eines Fertigungselementknotens. Die Fertigungselemente,
mit denen der Knoten derzeitig belegt ist, beinhaltet das Attribut Bestand. Der Status ist vor
allem für Fertigungsmittel (-knoten) relevant und repräsentiert deren Gesamtzustand. Als
Methoden an Fertigungselementknoten sind Eintritts-, Austritts- und Zustandsfunktionen definiert, die im folgenden genauer spezifiziert werden.
class Fertigungsvorgangsknoten : Fertigungsknoten
{
// Attribute
Transformationstyp Transformprinzip
// Einzelplatz, parallele Fertigungsvorgänge,
serielle Fertigungsvorgänge
unsigned int Durchlaufzeit
// Durchlaufzeit eines Fertigungsvorgangs
unsigned int Taktzeit
// Abstandszeit bei serieller Fertigung
Fertigungsvorgangsmenge Vorgänge
// Fertigungsvorgänge in Bearbeitung am
Fertigungsvorgangsknoten
Fertigungsknotenmenge Fertigungsmittel
// Alle Fertigungsmittelknoten, die mit dem
Fertigungsvorgangsknoten verknüpft
sind.a
// Methoden
// Diese Methoden werden in Abschnitt
5.2.1.2 Funktionalität an Fertigungsvorgangsknoten näher spezifiziert.
void fv-Eintritt
// Eintrittsfunktion
void fv-Austritt
// Austrittsfunktion
void fv-Zustand
// Zustandsfunktion
a. Auch wenn die Fertigungsmittelknoten schon durch die jeweiligen Vorgänge am Knoten festgelegt werden, werden sie zur Vereinfachung durch dieses Attribut noch einmal repräsentiert.
}
Die Klasse der Fertigungsvorgangsknoten beinhaltet desgleichen spezifische Attribute und
zwar insbesondere vom Transformationstyp zur Festlegung der Transformationsprinzipien
sowie das Attribut Taktzeit zur Bestimmung der Abstandszeit bei serieller Fertigung, das hier
nur beispielhaft angegeben ist. Attribute zur Bestimmung des Prioritäts- und Verhältnistyps
eines Vorgangs werden von der Oberklasse Fertigungsknoten vererbt. Der Status bzw. Zustand
eines Vorgangs wird durch die Attribute des oder der mit diesem verknüpften Fertigungsmittel
bestimmt. Das Attribut Fertigungsknotenmenge gibt die Fertigungsmittelknoten an, auf denen
Vorgänge des Fertigungsvorgangsknotens ablaufen. Wie auch am Fertigungselementknoten
sind am Fertigungsvorgangsknoten als Methoden Eintritts-, Austritts- und Zustandsfunktionen
definiert, deren Beschreibung im Anschluß erfolgt.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
161
Die Instanziierung der Klassen und damit die Belegung der Klassenattribute bzw. Parameter,
soweit es Stammdaten betrifft, erfolgt im Modelleditor im Rahmen der Erstellung des Fertigungsmodells.96 Änderungen können aber im Nachhinein jederzeit mit Hilfe dieses Editors
eingepflegt werden. Die Bewegungsdaten werden ebenfalls im Editor instanziiert. Im weiteren
werden sie jedoch durch die verschiedenen Fertigungslenkungsfunktionen modifiziert.
5.3.1 Algorithmen für Funktionen
Die Funktionen (Methoden) lassen sich untergliedern in Ein-, Austritts- und Zustandsfunktionen für Fertigungselement- und Fertigungsvorgangsknoten. Die genannten Funktionen sind
allerdings, wie in Abschnitt 5.1 Syntax der Spezifikationssprache bereits erläutert, Makrofunktionen. Denn die Ein- und Austrittsfunktionen beinhalten die Teilfunktionen Zugang, Abgang,
Zusammenfassen und Aufteilen und die Zustandsfunktionen die Teilfunktionen Disposition
und Losgrößenberechnung. Ein-, Austritts- und Zustandsfunktionen besitzen abhängig von der
jeweiligen Knotenart und ihren Attributen sowie dem zugrunde liegenden Zeitmodell und der
Fertigungslenkungsstrategie verschiedene Ausprägungen. Die Aufgaben der einzelnen Funktionen werden im folgenden noch einmal kurz zusammengefaßt.
Ein- und Austrittsfunktionen bestimmen ob der Ein- oder Austritt an einem Fertigungsknoten
möglich ist und wie er zu erfolgen hat. Die Möglichkeit des Ein- oder Austritts wird von den
Teilfunktionen Zugang und Abgang geprüft. Die Art des Ein- oder Austritts bzw. die Anzahl
ein- oder austretender Fertigungsobjekte bestimmen die Teilfunktionen Zusammenfassen und
Aufteilen.
Der Algorithmus Zusammenfassen kombiniert entweder zeit- oder ereignisgesteuert in einen
Fertigungsknoten eingehende Fertigungsobjekte entsprechend bestimmter Regeln.97 Diese
Regeln können Prioritäts- oder Verhältnisregeln sein. Sie geben demnach entweder eine
bestimmte Reihenfolge an, in der die Fertigungsobjekte zusammengefaßt oder ein vorgegebenes Verhältnis, nach dem die Fertigungsobjekte kombiniert werden müssen. Im Gegensatz
dazu splittet der Algorithmus Aufteilen Fertigungsobjekte nach bestimmten Regeln auf Material-, Vorgangs- oder auch Fertigungsmittelknoten98 auf. Auch diese Regeln sind entweder
Prioritäts- oder Verhältnisregeln, was in diesem Fall bedeutet, daß entweder nach einer
96.
97.
98.
Vgl. Abschnitt 5.1 Syntax der Spezifikationssprache
Die jeweilige Ablaufregel wird durch die Implementierung der Ablaufstruktur von den Algorithmen
für Abläufe abgebildet.
Dieses ist z.B. dann der Fall, wenn ein Vorgang zur Bearbeitung ansteht und mehr als ein Fertigungsmittel unbelegt ist.
162
Kapitel 5
bestimmten Reihenfolge auf Fertigungsknoten aufgeteilt oder nach einem vorgegebenen Verhältnis auf diese gesplittet wird. Beim Zusammenfassen wie auch beim Aufteilen müssen die
Restriktionen sowohl der Knoten, in welche die Fertigungsobjekte eingehen, als auch derer,
von denen die Fertigungsobjekte ausgehen, miteinbezogen werden. Welche Restriktionen zu
beachten sind, hängt außerdem davon ab, welche Knoten bzw. Knotenteile aktiv sind.99 Geht
nur ein Fertigungsobjekt in einen Knoten ein oder von einem Knoten aus, so ist zwar keine
Zusammenfassung- oder Aufteilungsfunktionalität nötig, aber es bedarf auf jeden Fall eines
Abgleichs mit den Restriktionen der beteiligten Knoten.
Zustandsfunktionen ermitteln an Material- und Fertigungsmittelknoten die Veränderung des
Bestandes bzw. den neuen Bestand sowie die Bedarfe respektive Angebote an vor- oder nachgelagerte Stellen. Im Rahmen der Mengenplanung100 wird auf die Bestandsänderungen entsprechend eines vorgegebenen Dispositionsprinzips, wie z.B. einer Disposition basierend auf
einem bestimmten Bestellrhythmus, reagiert. Der Bestellrhythmus wird dabei durch die
Ablaufstrukturen spezifiziert. Außerdem ermitteln Zustandsfunktionen an Materialknoten
unter bestimmten Voraussetzungen101 möglichst optimale Losgrößen für ausgehende Fertigungselemente oder Bestellosgrößen für eingehende Fertigungselemente. An Vorgangsknoten
nehmen sie die Terminierung der Vorgänge entsprechend der jeweiligen Transformationsprinzipien102 oder einer einfachen Vorlaufzeitverschiebung basierend auf den vorgegebenen Bearbeitungszeiten vor.
Die Attribute der Knoten geben Auskunft über die Stamm- und Bewegungsdaten, wie z.B. die
Identifikation und Bezeichnung des Knotens, Restriktionen, Dispositions- und Transformationsprinzipien, den Status und den jeweiligen Zustand des Knotens. Ausmaße, Haltbarkeit und
Durchlaufzeiten (Bearbeitungszeiten) von Fertigungsvorgängen an bestimmten Maschinen und
weitere Spezifika werden, falls diese von den jeweiligen Elementen und nicht von Knoten bzw.
Knotenklassen abhängig sind, in den Attributen dieser Fertigungsobjekte bestimmt. Die jeweilige Ablaufstruktur der Lenkung, wie z.B. Zeit- oder Ereignisorientierung, wird mit der Spezifikationssprache in den Ablaufkonstrukten festgelegt. Eine Detaillierung des Zeitmodells
durch die Angabe der Zeitabschnittslänge, des Zeithorizonts, usw. erfolgt in den Attributen des
Gesamtgraphen oder der einzelnen Teilgraphen.
99. Vgl. Abschnitt 5.2.1 Funktionalität an Modellelementen
100.Vgl. Abschnitt 5.2.1.1.1 Attribute an Fertigungselementknoten
101.Eine Losgrößenberechnung hat, wie bereits vorher erläutert, nur
dann Sinn, wenn der Bestellzyklus
größer als der gewählte Zeitabschnitt ist und Rüstkosten sowie möglichst auch Lager- und Bestellkosten vorliegen.
102.Vgl. Abschnitt 5.2.1.2.1 Attribute an Fertigungsvorgangsknoten
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
163
Funktionen
fe
-eintritt
-zustand
-austritt
Zusammenfassung
-eintritt
-zustand
-austritt
fv
Zustandsrechnung
Aufteilung
Abbildung 5-43: Funktionen an Fertigungsknoten
Die Aktivität von Knoten oder Teilknoten, d.h. welche Funktionen an einem Knoten durchgeführt werden, so daß z.B. festgelegt wird, ob ein Knoten Bedarfe bei seinen Nachfolgerknoten
direkt einträgt bzw. anmeldet oder diese sich bei ihren Vorgängerknoten nach Bedarfen erkundigen, wird durch die Spezifikationssprache nur implizit angegeben.103 Im Einzelfall wird
anhand der im Programm verwendeten Funktionskonstrukte sowie der Darstellung im Graphen
deutlich, welche Teilbereiche eines Knotens aktiv auf die Lenkung einwirken. Es schließen
sich nun die Implementierungen der Funktionen an den Fertigungsknoten an.
5.3.1.1 Algorithmen für Funktionen an Fertigungselementknoten
Die Funktionalität an Material- und Fertigungsmittelknoten ist weitestgehend identisch, es
bestehen jedoch Unterschiede bezüglich der möglichen Knotenzustände.104 Darüber hinaus
verhalten sich Fertigungsmittelknoten in den meisten Fällen passiv. Sie werden von den Funktionen der mit ihnen verknüpften Fertigungsvorgangsknoten gelenkt und besitzen deswegen
häufig keine eigene Funktionalität.
Zur Vereinfachung der algorithmischen Darstellung werden im folgenden Mengenoperationen
als einfache arithmetische Operationen (Addition und Subtraktion) dargestellt. Dieses kann in
C++ durch die Nutzung einer Klassenbibliothek mit bestimmten Makros ermöglicht werden.
Außerdem wird eine spezielle for-Anweisung für Mengen genutzt, „for all (element in
menge)“, die ebenfalls als Makro zur Verfügung gestellt werden muß. Da als Grundlage der
Algorithmen nur eine beispielhafte Datenstruktur gewählt wurde, müssen bei Anwendung dieser Algorithmen, abhängig von der jeweils zugrunde liegenden Struktur bzw. dem als Basis
fungierenden Datenmodell, Änderungen und teilweise auch Erweiterungen vorgenommen
werden.
103.Vgl.
104.Vgl.
Abschnitt 5.2.1 Funktionalität an Modellelementen
Abschnitt 5.2.1.1 Funktionalität an Fertigungselementknoten
164
Kapitel 5
Algorithmus Fertigungselementknoten-Eintritt
void fe-eintritt (fertigungsknoten knoten)
{
if (knoten.teilgraph.ablaufrichtung == vorwärts) && (zugang(knoten) > 0)
// Ablauf vorwärtsorientiert und Zugang möglich
{
knoten.eintritt = zusammenfassen(knoten, knoten.vorgänger);
// Kombination der Nettoangebote der Vorgängerknoten zum resultierenden
// Bruttoangebot
}
else {
if (knoten.teilgraph.ablaufrichtung == rückwärts) && (zugang(knoten) > 0)
// Ablauf rückwärtsorientiert und Zugang möglich
{
knoten.eintritt = zusammenfassen(knoten, knoten.nachfolger);
/
// Kombination der Bruttobedarfe der Nachfolgerknoten zum resultierenden
// Bruttobedarf
}
}
}
Algorithmus Fertigungselementknoten-Austritt
void fe-austritt (fertigungsknoten knoten)
{
if (knoten.teilgraph.ablaufrichtung == vorwärts) && (zugang(knoten.nachfolger) > 0)
// Ablauf vorwärtsorientiert und Abgang möglich
{
knoten.austritt = aufteilen(knoten, knoten nachfolger);
// Splittung der Nettoangebote auf die Nachfolgerknoten
}
// rückwärts
else {
if (knoten.teilgraph.ablaufrichtung == rückwärts) &&
(zugang(knoten.vorgänger) > 0)
// Ablauf rückwärtsorientiert und Abgang möglich
{
knoten.austritt = aufteilen(knoten, knoten.vorgänger);
// Splittung der Nettobedarfe auf die Vorgängerknoten
}
}
}
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
165
Algorithmus Fertigungselementknoten-Zustand
void fe-zustand (fertigungsknoten knoten)
{
if (knoten.teilgraph.ablaufrichtung == vorwärts)
// Ablauf vorwärtsorientiert
{
if (knoten.teilgraph.planung == ist)
// Ist-Planung (verbrauchsorientiert)
{
knoten.bestand = knoten.bestand + knoten.eintritt;
// Bestimmung des Nettoangebots
disposition(knoten);
}
else {knoten.bestand = knoten.bestand + knoten.eintritt - knoten.austritt}
// Soll-Planung (bedarfsorieniert)
if (knoten.los)
// Bestimmung einer optimalen Losgröße für die Fertigungselemente dieses
// Knotens (unabhängig von Ist- oder Soll-Planung)
{
knoten.austritt = losgröße(knoten);
// Bestimmung der optimalen Losgröße
}
}
else {
// Ablauf rückwärtsorientiert
if (knoten.teilgraph.planung == ist)
// Ist-Planung (verbrauchsorientiert)
{
knoten.bestand = knoten.bestand - knoten.eintritt;
// Bestimmung des Nettobedarfs
disposition(knoten);
// Bestandsrechnung nach Dispositionsprinzip
}
else {knoten.bestand = knoten.bestand - knoten.eintritt + knoten.austritt}
// Soll-Planung (bedarfsorieniert)
if (knoten.los)
// Bestimmung einer optimalen Bestellosgröße für die Fertigungselemente dieses
// Knotens (unabhängig von Ist- oder Soll-Planung)
{
knoten.eintritt = losgröße(knoten);
}
}
}
166
Kapitel 5
5.3.1.2 Algorithmen für Funktionen an Fertigungsvorgangsknoten
Die Implementierung der Funktionen an Fertigungsvorgangsknoten unterscheidet sich von den
Funktionen an Fertigungselementknoten durch die Terminierungsfunktionen sowie die zu
berücksichtigenden Transformationsprinzipien im Rahmen der Zustandsverwaltung. Die Art
der Transformationsprinzipien wird dadurch bestimmt, wie viele Fertigungsmittel für einen
Vorgang zur Verfügung stehen. Entscheidend für die Zustandsfunktionen ist außerdem das Verhältnis der Durchlaufzeit eines Vorgangs zur Länge eines Zeitabschnitts.
Algorithmus Fertigungsvorgangsknoten-Eintritt
void fv-eintritt (fertigungsknoten knoten)
{
if (knoten.teilgraph.ablaufrichtung == vorwärts) && (zugang(knoten) > 0)
// Ablauf vorwärtsorientiert und Zugang möglich (Abprüfung des Transformations// prinzips und des Verhältnisses der Durchlaufzeit zum Zeitabschnitt)
{
knoten.eintritt = zusammenfassen(knoten, knoten.vorgänger);
// Kombination der Nettoangebote der Vorgängerknoten
}
else {
if (knoten.teilgraph.ablaufrichtung == rückwärts) && (zugang(knoten) > 0)
// Ablauf rückwärtsorientiert und Zugang möglich (Abprüfung des
// Transformationsprinzips und des Verhältnisses der Durchlaufzeit zum
// Zeitabschnitt)
{
knoten.eintritt = zusammenfassen(knoten, knoten.nachfolger);
// Kombination der Nettobedarfe der Nachfolgerknoten
}
}
}
Algorithmus Fertigungsvorgangsknoten-Austritt
void fv-austritt (fertigungsknoten knoten)
{
if (knoten.teilgraph.ablaufrichtung == vorwärts) && (zugang(knoten.nachfolger) > 0)
// Ablauf vorwärtsorientiert und Zugang möglich (Abprüfung des Transformations// prinzips und des Verhältnisses der Durchlaufzeit zum Zeitabschnitt)
{
knoten.austritt = aufteilen(knoten, knoten.nachfolger);
// Splittung der Nettoangebote auf die Nachfolgerknoten (Bruttoangebote)
}
else {
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
167
if (knoten.teilgraph.ablaufrichtung == rückwärts) &&
(zugang.vorgänger(knoten) > 0)
// Ablauf rückwärtsorientiert und Zugang möglich (Abprüfung des
// Transformationsprinzips und des Verhältnisses der Durchlaufzeit zum
// Zeitabschnitt)
{
knoten.austritt = aufteilen(knoten, knoten.vorgänger);
// Splittung der Austritte auf die Vorgängerknoten (Bruttobedarfe)
}
}
}
Algorithmus Fertigungsvorgangsknoten-Zustand
void fv-zustand (fertigungsknoten knoten)
{
for all (vorgang in knoten.vorgangsmenge) do
{
if (knoten.transformprinzip == einzelplatz) || (knoten.transformprinzip == parallel)
// Transformationsprinzipien „Einzelplatz“ oder „parallele Fertigungsvorgänge“
{
if (knoten.teilgraph.ablaufrichtung == vorwärts)
// Ablauf vorwärtsorientiert
{
vorgang.ende = vorgang.anfang + vorgang.bearbeitungszeit;
}
else {
// Ablauf rückwärtsorientiert
vorgang.anfang = vorgang.ende - vorgang.bearbeitungszeit;
}
}
else {
// Transformationsprinzip „serielle Fertigungsvorgänge“
if (knoten.teilgraph.ablaufrichtung == vorwärts)
// Ablauf vorwärtsorientiert
{
if (vorgang.anfang + vorgang.bearbeitungszeit >
vorgang.vorgänger.ende + knoten.taktzeit)
{
vorgang.ende = vorgang.anfang + vorgang.bearbeitungszeit;
}
else {
vorgang.ende = vorgang.vorgänger.ende + knoten.taktzeit;
}
168
Kapitel 5
}
else {
// Ablauf rückwärtsorientiert
if (vorgang.ende - vorgang.bearbeitungszeit
< vorgang.nachfolger.anfang - knoten.taktzeit)
{
vorgang.anfang = vorgang.ende - vorgang.bearbeitungszeit;
}
else {
vorgang.anfang = vorgang.nachfolger.anfang - knoten.taktzeit;
}
}
}
}
}
5.3.1.3 Algorithmen für allgemeine Funktionen
In diesem Abschnitt werden Algorithmen für allgemeine Funktionen (Teilfunktionen), die
sowohl von den Methoden für Funktionen an Fertigungselement- wie auch an Fertigungsvorgangsknoten genutzt werden, dargestellt. Die Zugangs- und die Abgangsfunktion prüfen, ob
ein Zugang oder Abgang trotz der Restriktionen am jeweiligen Knoten möglich ist. Dabei wird
unterschieden zwischen Zugängen und Abgängen an Fertigungselementknoten und an Fertigungsvorgangsknoten. Der Rückgabewert der Algorithmen ist die Anzahl der möglichen
Zugänge bzw. Abgänge.
Algorithmus Zugangsfunktion
int zugang (fertigungsknotenmenge knotenmenge)
{
for all (knoten in knotenmenge) do
{
if (knoten == Fertigungselementknoten) && (knoten.status == aktiv)
&& (knoten.zustand == frei)
// Status- und Zustandsrestriktionen abprüfen
{
zugang = knoten.maximalbestand - knoten.bestand;
}
elseif (knoten == Fertigungsvorgangsknoten)
{
for all (fertigungsmittelknoten in knoten.fertigungsmittel) do
// Zugangsrestriktionen an den verknüpften Fertigungsmittelknoten abprüfen
(Status und Zustand)
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
169
{
if (zugang(fertigungsmittelknoten) > 0)
{
zugang = zugang + fertigungsmittelknoten.bestand;
}
}
}
}
return zugang;
}
Algorithmus Abgangsfunktion
int abgang(fertigungsknotenmenge knotenmenge)
{
for all (knoten in knotenmenge) do
{
if (knoten == Fertigungselementknoten) && (knoten.status == aktiv) &&
(knoten.zustand == belegt)
// Status- und Zustandsrestriktionen abprüfen
{
abgang = knoten.bestand - knoten.minimalbestand;
}
elseif (knoten == Fertigungsvorgangsknoten)
{
abgang = 0;
for all (fertigungsmittelknoten in knoten.fertigungsmittel) do
/ Abgangsrestriktionen an den verknüpften Fertigungsmittelknoten abprüfen
(Status und Zustand)
{
if (fertigungsmittelknoten.status == aktiv) &&
(fertigungsmittelknoten.zustand == belegt)
{
abgang = 1;
}
}
}
return abgang;
}
Der Algorithmus Zusammenfassen bestimmt unter Beachtung der Nachbarknoten, damit sind
abhängig von der Ablaufreihenfolge Vorgänger oder Nachfolger gemeint, die Menge der Fertigungselemente, die in einen Knoten eintreten können. Im Gegensatz dazu ermittelt der Algo-
170
Kapitel 5
rithmus der Aufteilungsfunktion ebenfalls unter Beachtung der Nachbarknoten die Menge der
Fertigungselemente, die aus einem Knoten austreten können.
Beim Zusammenfassen und Aufteilen ist zu berücksichtigen, daß Regeln zur Bestimmung der
Reihenfolge nur dann eingesetzt werden, wenn sie nötig bzw. im Modell hinterlegt sind. Dieses ist z.B. der Fall, wenn mehrere Fertigungselemente gleichzeitig ein- oder austreten wollen.
Bei Eintritt nur eines Elements erübrigt sich die Zusammenfassungsfunktionalität mit ihren
Reihenfolgeregeln, allerdings müssen auch in diesem Fall die Restriktionen an Ein- und Ausgangsknoten beachtet werden. Im Falle einer zeitorientierten Vorgehensweise, die auf einem
im Modell der Fertigung hinterlegten Zeitmodell beruht, bestimmt diese respektive die Zeitrestriktionen an den einzelnen Knoten, welche Fertigungselemente jeweils ein- bzw. austreten
können. Bei einem ereignisorientierten Ablauf regeln die Ereignisse die Reihenfolge der einbzw. austretenden Fertigungselemente. Diese Ablauforientierungen werden durch die Algorithmen für Abläufe, die im nachfolgenden Kapitel dargestellt werden, genauer bestimmt. Verhältnisregeln, die allerdings vorrangig bei komplementären Kanten und somit bei Fertigungsvorgangsknoten auftreten, sind dagegen bei jedem Eintritt zu bedenken.
Algorithmus Zusammenfassen
fertigungselementmenge zusammenfassen(fertigungsknoten knoten, fertigungsknotenmenge nachbarknoten)
{
if (knoten.teilgraph.steuerungsregel.warteliste)
// die Warteliste des vorhergehenden Zyklus soll übernommen werden
{knoten.eintritt = knoten.eintritt + knoten.warteliste}
if (nachbarknoten.priorität)
// die Ausgangsknoten besitzen Prioritäten und Abgangsrestriktionen
{
for all (nachbar in nachbarknoten, sort nachbarknoten.prioritätsregel) do
// for-Anweisung mit Sortierung nach Kriterium (Prioritätsregel)
// Die Sortierung kann mit Standardalgorithmen, wie z.B. Bubble- oder Quicksort,
// durchgeführt werden.
{
if (zugang(knoten) > 0) && (abgang(nachbar) > 0)
// Eingangs- und Ausgangsrestriktionen
{
knoten.eintritt = knoten.eintritt + nachbar.austritt.element;
nachbar.austritt = nachbar.austritt - nachbar.austritt.element;
}
}
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
elseif (knoten.priorität)
// Eingangsknoten besitzt Prioritätsregeln
{
for all (element aus nachbarknoten.austritt, sort knoten.prioritätsregel) do
// for-Anweisung mit Sortierung nach Kriterium (Prioritätsregel)
{
if (zugang(knoten) > 0) && (abgang(element.knoten) > 0)
// Eingangs- und Ausgangsrestriktionen
{
knoten.eintritt = knoten.eintritt + element;
element.knoten.austritt = element.knoten.austritt - element;
}
elseif (abgang(element.knoten) > 0) &&
(knoten.teilgraph.steuerungsregel.warteliste)
{
knoten.warteliste = knoten.warteliste + element;
element.knoten.austritt = element.knoten.austritt - element;
}
}
elseif (knoten.verhältnis)
// Eingangsknoten besitzt Verhältnisregel
{
for all (elementmenge in nachbarknoten.austritt,
sort knoten.verhältnisregel) do
// for-Anweisung mit Sortierung nach Kriterium (Verhältnisregel)
{
if (zugang(knoten) > 0) && (abgang(elementmenge.knoten) > 0)
{
knoten.eintritt = knoten.eintritt + elementmenge;
elementmenge.knoten.austritt =
elementmenge.knoten.austritt - elementmenge;
}
}
}
elseif (knoten.teilgraph.steuerungsregel == BOA)
{
if (zugang(knoten) > 0)
{knoten.nachfolger.auftrag.ausführbar = TRUE}
}
}
return knoten.eintritt;
}
171
172
Kapitel 5
Algorithmus Aufteilen
fertigungselementmenge aufteilen (fertigungsknoten knoten, fertigungsknotenmenge nachbarknoten)
{
if (knoten.priorität)
// Ausgangsknoten besitzt Prioritätsregeln
{
for all (element in knoten.austritt, sort knoten.prioritätsregel) do
// for-Anweisung mit Sortierung nach Kriterium (Prioritätsregel)
{
if (zugang(nachbar) > 0) && (abgang(knoten) > 0)
// Eingangs- und Ausgangsrestriktionen
{
knoten.austritt = knoten.austritt - element;
nachbarknoten.knoten.eintritt = nachbarknotenknoten.eintritt
+ element;
}
}
}
else {
if (knoten.verhältnis)
// Eingangsknoten besitzt Verhältnisregel
{
for all (elementmenge in knoten.austritt, sort knoten.verhältnisregel) do
// for-Anweisung mit Sortierung nach Kriterium (Verhältnisregel)
{
if (zugang(nachbarknoten) > 0) && (abgang(knoten) > 0)
{
nachbarknoten.eintritt = nachbarknoten.eintritt
+ elementmenge;
knoten.austritt = knoten.austritt - elementmenge;
}
}
}
else {
if (nachbarknoten.priorität)
// die Eingangsknoten besitzen Prioritäten und Zugangsrestriktionen
{
for all (nachbar in nachbarknoten, sort nachbarknoten.prioritätsregel) do
// for-Anweisung mit Sortierung nach Kriterium (Prioritätsregel)
{
if (zugang(nachbar) > 0) && (abgang(knoten) > 0)
// Eingangs- und Ausgangsrestriktionen
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
173
{
nachbar.eintritt = nachbar.eintritt + knoten.austritt.element;
knoten.austritt = knoten.austritt + knoten.austritt.element;
}
}
}
return knoten.austritt
}
Der Algorithmus Disposition ermittelt abhängig von der Ablauforientierung (zeit- oder ereignisorientiert) und dem im Modell am Fertigungselementknoten hinterlegten Dispositionsprinzip den Nettobedarf des jeweiligen Knotens. Dabei unterscheidet er acht Dispositionsprinzipien. Dieser Algorithmus wird jedoch nur im Rahmen der verbrauchsorientierten
Mengenplanung angewendet. Die Disposition bei bedarfsorientierter Mengenplanung erfolgt
direkt im Algorithmus Fertigungselementknoten-Zustand.
Algorithmus Disposition
void disposition (fertigungsknoten knoten)
// Die Ablauforientierung des jeweiligen Teilgraphen bestimmt das Dispositionsprinzip
{
if (knoten.teilgraph.ablauforientierung == zeitorientiert)
// Ablauforientierung zeitorientiert, Bestellrhythmus
{
if (dispoprinzip == 1)
{
// Dispositionsprinzip 1: (T, PB) Anfordern des Bedarfs im Bestellzyklus, Anbieten
// des Periodenzugangs zu vorgegebenen Zeitpunkten
if (knoten.bestand < Sicherheitsbestand)
{knoten.nettobedarf = knoten.bestand}
}
if (dispoprinzip == 2)
{
// Dispositionsprinzip 2: (T, S) Auffüllen auf den Maximalbestand/Entleeren auf
// den Minimalbestand zu vorgegebenen Zeitpunkten
knoten.nettobedarf = knoten.maxbestand - knoten.bestand;
}
if (dispoprinzip == 3)
{
// Dispositionsprinzip 3: (T, q) Anfordern/Anbieten einer festen Losgröße zu
// vorgegebenen Zeitpunkten
174
Kapitel 5
knoten.nettobedarf = los;
}
if (dispoprinzip == 4)
{
// Dispositionsprinzip 4: (T, S, s) Auffüllen auf den Maximalbestand/Entleeren auf
// den Minimalbestand zu vorgegebenen Zeitpunkten falls Mindestbestand
// Maximalbestand erreicht
if (knoten.bestand < knoten.mindestbestand)
{knoten.nettobedarf = knoten.maxbestand - knoten.bestand}
}
if (dispoprinzip == 5)
{
// Dispositionsprinzip 5: (T, Q, s) Anfordern einer festen Losgröße zu
// vorgegebenen Zeitpunkten falls Mindestbestand/Maximalbestand erreicht
if (knoten.bestand < knoten.mindestbestand)
{knoten.nettobedarf = los}
}
}
else {
if (knoten.teilgraph.ablauforientierung == ereignisorientiert)
// Ablauforientierung ereignisorientiert, Bestellpunkt
{
if (dispoprinzip == 6)
{
// Dispositionsprinzip 6: (s,B) Anfordern des Bedarfs/Anbieten des
// Bestands eines Zeitpunktes
knoten.nettobedarf = knoten.bestand - knoten.bruttobedarf;
}
if (dispoprinzip == 7)
{
// Dispositionsprinzip 7: (s,S) Auffüllen auf den Maximalbestand/
// Entleeren auf den Minimalbestand bei Erreichen des
// Mindesbestandes/Maximalbestandes (s, S)
knoten.nettobedarf = knoten.maxbestand - knoten.bestand;
}
if (dispoprinzip == 8)
{
// Dispositionsprinzip 8: (s,Q) Anfordern einer festen Losgröße, falls
// Mindestbestand/Maximalbestand erreicht
knoten.nettobedarf = los;
}
}
}
}
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
175
Abhängig vom jeweiligen Losgrößenmodell/-verfahren können bei der Berechnung der optimalen Losgröße bzw. Bestellosgröße auch Kapazitäten mitberücksichtigt werden. Das Losgrößenmodell wird als Attribut am Fertigungselementknoten hinterlegt. Als Beispiel für ein Losgrößenverfahren wurde hier das Part-Period Verfahren105 gewählt, welches Kapazitäten nicht
berücksichtigt. Für diese Berechnung sind weitere Attribute, wie z.B. Fixkosten oder variable
Kosten eines Bestellvorgangs, an den jeweiligen Fertigungselementen nötig. Diese wurden in
der Klassendefinition in Abschnitt 5.3 Implementierung der Spezifikationssprache bereits mit
angeführt.
Algorithmus Losgrößenberechnung
fertigungselementmenge losgröße (knoten)
// Der Algorithmus ist abhängig vom jeweils genutzten Losgrößenverfahren - hier als Beispiel
das Part-Period Verfahren
{
if (knoten.losgrößentyp == Part-Period)
// Im Attribut Losgrößentyp ist das jeweils zu nutzende Verfahren festgelegt
{
losgröße = elementmenge
(knoten.elementmenge.fixkosten == knoten.elementmenge.variable_kosten)
// Das Optimum ist näherungsweise dort, wo Lagerhaltungs- und Rüstkosten für
// eine Losgröße gleich sind
return losgröße
}
elseif (knoten.losgrößentyp == Gleitenden Bestellmengenrechnung)
// Möglichkeit weiterer Losgrößenverfahren
...
}
5.3.2 Algorithmen für Abläufe
Es folgen die Implementierungen für die Ablaufstrukturen, wobei zu beachten ist, daß die
Abfrage der jeweiligen Ablaufrichtung, nämlich vorwärts oder rückwärts, in den Algorithmen
der Funktionen enthalten ist. Die Ablaufreihenfolgen, parallel und seriell, werden in der Spezifikationssprache durch Wiederholungs-Strukturblöcke im Nassi-Shneiderman-Diagramm
abgebildet. Die parallele Ausführung von Fertigungslenkungsfunktionen bedarf allerdings spezieller Algorithmen zur Parallelisierung der im vorherigen Abschnitt beschriebenen Funktionen. Eine nähere Beschäftigung mit den genannten Algorithmen geht jedoch über das Ziel der
105.Vgl.
Abschnitt 5.4.1 Mengenplanung
176
Kapitel 5
vorliegenden Arbeit hinaus, so daß auf diese Problematik hier nicht näher eingegangen werden
kann. Demzufolge wird hier nur die Implementierung der Ablauforientierungen:
• zeitorientiert,
• ereignisorientiert,
• knotenorientiert,
• produktionsstrukturorientiert und
• auftragsorientiert dargestellt.
Diese Abläufe stellen implementiert einfache bedingte Schleifen dar. Ihre Unterschiede liegen
in den verschiedenen Bedingungen, die sich an der Zeit, Ereignissen, Materialien, Vorgängen,
Fertigungsmitteln oder auch der Produktionsstruktur orientieren. Diese Bedingungen sind im
Modell der Fertigung bzw. den Attributen der Modellelemente hinterlegt, wie z.B. eine
genauere Bestimmung des zugrunde liegenden Zeitmodells durch die Angabe der Länge der
verwendeten Zeitabschnitte (in der Klasse Teilgraph). Die Spezifikationssprache legt fest, welche Vorgehensweise auf welchem Teil des Fertigungsmodells angewendet werden soll.
5.3.2.1 Algorithmus für zeitorientierte Abläufe
Die zeitorientierte Ablaufstruktur bedingt eine Vorgehensweise entsprechend der vom Zeitmodell bzw. im Modell der Fertigung vorgegebenen Zeitpunkte oder -abschnitte, die nacheinander
abgearbeitet werden.
Algorithmus für Ablauf zeitorientiert
for all (zeitabschnitt in graph.zeithorizont) do
// Ablaufpriorisierung zeitorientiert - zeitabschnittsweise
{
// Planungen in diesem Zeitabschnitt vornehmen
}
5.3.2.2 Algorithmus für ereignisorientierte Abläufe
Bei der ereignisorientierten Vorgehensweise wird z.B. nach dem nächsten Ereignis in einem
Zeithorizont oder einer Ereignisliste vorgegangen. Ein ereignisorientierter Ablauf kann aber
auch nach dem in Bezug auf eine bestimmte Regel (Bedingung) wichtigsten Ereignis innerhalb
eines Zeitabschnitts, dessen Länge vom Zeitmodell vorgegeben ist, erfolgen. Die folgenden
drei Algorithmen geben unterschiedliche Arten der Ereignisorientierung wieder.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
177
Algorithmen Ablauf ereignisorientiert
for all (ereignis in graph.zeithorizont) do
// Ereignisorientierung basierend auf einem Zeithorizont
{
// Ereignisse einplanen
}
for all (ereignis in graph.ereignisliste) do
// Ereignisorientierung basierend auf einer Ereignisliste
{
// Ereignisse einplanen
}
for all (ereignis aus graph.ereignismenge, sort graph.ereignismenge.priorität) do
// Ereignisorientierung nach wichtigstem Ereignis in Ereignismenge
{
// Ereignisse nach Priorität sortiert einplanen
}
5.3.2.3 Algorithmen für knotenorientierte Abläufe
Die knotenorientierte Ablaufstruktur orientiert sich an einer der drei Knotenarten und arbeitet
diese nach einer bestimmten Reihenfolge basierend auf Prioritätsregeln über dem Gesamtgraphen oder einem Teilgraphen ab.
Algorithmus Ablauf vorgangsorientiert
for all (vorgang in graph.vorgangsmenge, sort graph.vorgangsmenge.priorität) do
// Vorgangsorientierung über dem Gesamtgraphen
{
// Vorgangsplanungen/-steuerungen durchführen
}
Algorithmus Ablauf materialorientiert
for all (material in graph.teilgraph.materialmenge,
sort graph.teilgraph.materialmenge.priorität) do
// Material nach Prioritätsregel auf Teilgraphen sortieren
{
// Materialplanungen/-steuerungen durchführen
}
178
Kapitel 5
Algorithmus Ablauf fertigungsmittelorientiert
for all (fertigungsmittel in graph.rang.fertigungsmittelmenge,
sort graph.rang.fertigungsmittelmenge.priorität) do
// Fertigungsmittel nach Prioritätsregel auf Dispositionsebene/Rang sortiert
{
// Fertigungsmittelplanungen/-steuerungen durchführen
}
5.3.2.4 Algorithmus für produktionsstrukturorientierte Abläufe
Im Fall eines produktionsstrukturorientierten Ablaufs gibt der Fertigungsgraph die Struktur
vor, nach der vorgegangen wird. Beispielsweise kann ein produktionsstrukturorientierter
Ablauf darin bestehen, daß die Vorgangsknoten rangweise eingeplant werden.
Algorithmus Ablauf produktionsstrukturorientiert
for all (fertigungsvorgangsknoten in graph.fertigungsvorgangsknotenmenge,
sort graph.struktur) do
// Ablaufpriorisierung produktionsstrukturorientiert - Vorgehen nach Rängen
{
// Planungen am Vorgangsknoten vornehmen
}
5.3.2.5 Algorithmus für auftragsorientierte Abläufe
Auftragsorientierte Abläufe orientierten sich an einer bestimmten Reihenfolgeregel in Bezug
auf die Gesamtmenge der Aufträge. Eine derartige Regel legt z.B. ein Vorgehen nach der
Dringlichkeit der Aufträge, wie es im Rahmen von BOA durchgeführt wird, fest.
Algorithmus Ablauf auftragsorientiert
for all (fertigungsauftrag in graph.fertigungsauftragsmenge sort fertigungsauftrag.start) do
// Ablaufpriorisierung auftragsorientiert - Vorgehen nach dringlichen Aufträgen
{
// Planung der Aufträge bzw. freigegebener Vorgänge dieser Aufträge vornehmen
}
5.3.2.6 Algorithmus für kombinierte Abläufe
Im Normalfall liegen in einem Fertigungslenkungssystem kombinierte Ablaufstrukturen vor,
wobei in den meisten Fällen auf oberster Ablaufstrukturebene zeit-, ereignis- oder produktionsstrukturorientiert vorgegangen wird. Darunter ist eine beliebige Verschachtelung bis zu einzelnen Knoten möglich.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
179
Algorithmus Ablauf kombiniert
for all (zeitabschnitt in graph.zeithorizont) do
// Ablaufpriorisierung zeitorientiert
{
for all (vorgangsknoten in graph.fertigungsvorgangsknotenmenge) do
{
for all (material in vorgangsknoten.vorgänger.fertigungselementmenge,
sort vorgangsknoten.vorgänger.priorität) do
{
// Materialeinplanungen (z.B. nach Prioritäten oder Verhältnis)
}
for all (fertigungsmittel in vorgangsknoten.vorgänger.fertigungselementmenge
sort vorgangsknoten.vorgänger.priorität) do
{
// Fertigungsmitteleinplanungen (z.B. nach Prioritäten)
}
}
5.4 Anwendungsbeispiele für die Spezifikationssprache
Die folgenden Anwendungsbeispiele für die Klassifikation und die Spezifikationssprache stellen Standardverfahren der Fertigungslenkung dar. Sie untergliedern sich in einfache und auf
einen Planungsbereich, wie z.B. die Mengenplanung oder die Zeitplanung, begrenzte Verfahren sowie komplexere Verfahren, die mehrere Planungsbereiche umfassen. Letztere folgen entweder dem Sukzessivplanungskonzept106 oder gehören zur Gruppe der „neueren Ansätze“107,
die den Mängeln des genannten Konzeptes z.B. mit simultanem Vorgehen begegnen. Mit den
hier dargestellten Beispielen, speziell den umfassenderen Verfahren, kann die Mehrheit aller
Fertigungslenkungsprobleme gelöst werden. Sie sollen an dieser Stelle als exemplarischer
Nachweis der Sinnhaftigkeit und Praktikabilität der entwickelten Klassifikation und Spezifikationssprache dienen.
Eine Klassifikation wird im folgenden allerdings nur bei den komplexeren Verfahren vorgenommen, da sie in den anderen Fällen aufgrund der unkomplizierten Struktur als Vorbereitung
bzw. Basis für die Spezifikationssprache nicht zwingend erforderlich ist. Der Fertigungsgraph
wird bei den einfachen Verfahren explizit angegeben. Außerdem wird in einigen Fällen eine
Implementierung der Verfahren in an C++ angelehnter Notation gegeben. Bei den komplexe106.Vgl.
107.Vgl.
Abschnitt 3.1 Klassifikationen für die Fertigungslenkung
[Cor98], S. 508 und [DSV93], S. 20
180
Kapitel 5
ren Verfahren dagegen wird der Fertigungsgraph im Rahmen der Klassifikation und nicht noch
einmal speziell für die Spezifikationssprache dargestellt. Zu Beginn der Ausführungen steht
jeweils eine kurze informale Beschreibung des betrachteten Verfahrens. Die Beispiele für einfache Verfahren sind entsprechend des in der Praxis in den meisten Fällen noch vorherrschenden Sukzessivplanungskonzeptes in die Teilbereiche bzw. -aufgaben, Mengen-, Zeit- und
Kapazitätsplanung, gegliedert. Im Anschluß daran werden beispielhaft die komplexeren Verfahren dargestellt.
5.4.1 Mengenplanung
In der Mengenplanung werden Aufträge über Erzeugnisse und davon abgeleitete Materialien
an die Fertigung und den Einkauf weitergeleitet. Diese Aufträge enthalten Informationen über
die erforderlichen Zeitpunkte und Mengen. Sie tragen damit zur Erfüllung des Fertigungsprogramms bei. Eine Einplanung der Materialien auf den einzelnen Fertigungsmitteln wird dabei
nicht vorgenommen.108 Die Grundfunktionalität der Mengenplanung wird durch die in
Abschnitt 5.3.1 Algorithmen für Funktionen dargestellten Algorithmen zur Zustandsbestimmung, Disposition und Losgrößenberechnung am Fertigungselementknoten gebildet. Allerdings kann diese Funktionalität noch um weitere Zusatzfunktionen für Spezialfälle erweitert
werden.
Als Beispiel des Zusammenfassens von Bedarfen zu Losen soll hier näher auf das Part-Period
Verfahren (Stück-Perioden-Ausgleich) eingegangen werden. Dieses ist ein spezielles Verfahren der Los- bzw. Bestellosgrößenberechnung. Es geht von der Eigenschaft des klassischen
Bestellmengenmodells von Andler aus, die besagt, daß im Optimum die Lagerhaltungskosten
und die bestellfixen Kosten gerade gleich sind.109 Diese Eigenschaft wird auf eine diskrete
Betrachtungsweise mit einzelnen Periodenbedarfen bezogen. Darauf aufbauend erfolgt die
Bestellung der im Fertigungsprozeß benötigten Materialien. Die Vorgehensstruktur wird durch
das Modell der Fertigung und das in ihm festgelegte Zeitmodell vorgegeben. Der folgende
Algorithmus nutzt den im vorherigen Abschnitt beschriebenen Algorithmus Fertigungselementknoten-Zustand und wendet diesen mit einem zeitabschnittsweisen Vorgehen auf den
gesamten Fertigungsgraphen respektive alle Materialknoten an. Dabei muß im Rahmen der
Modellerstellung in den Fertigungselementknoten das Attribut Losgrößentyp mit dem Losgrößenverfahren Part-Period belegt worden sein.
108.Vgl.
109.Vgl.
[DaWa97], S. 257 ff.
[Kur83], S. 69 f. und [DaWa97], S. 353 f.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
181
Algorithmus Part-Period Verfahren
for all (zeitabschnitt in graph.zeithorizont) do
// Ablaufpriorisierung zeitorientiert
{
for all (materialknoten in graph.materialknotenmenge) do
// für alle Materialknoten im Fertigungsgraphen
{
fe-zustand(materialknoten);
// Durchführung der Zustandsfunktionen am Materialknoten. Hier speziell:
// Berechne optimale Losgröße für diese Knoten (Produktionslosgröße)
// mit dem Algorithmus Losgrößenberechnung
}
}
5.4.2 Terminplanung
In der Terminplanung werden die Anfangs- und Endtermine der einzelnen Vorgänge einer
Gesamtaufgabe ermittelt. Dieses kann sowohl mit einer Vorwärtsterminierung als auch einer
Rückwärtsterminierung erfolgen. Im Rahmen der Rückwärtsterminierung wird über eine
Durchlaufterminierung der terminierte Bedarf an Zwischenprodukten (Baugruppen, Teile) und
Einsatzmaterialien (Rohstoffe, Zukaufteile) ausgehend von Mengen und Terminen der Endprodukte errechnet. Die Vorwärtsterminierung dagegen geht von den zur Verfügung stehenden
Einsatzmaterialien aus und berechnet über eine Durchlaufterminierung den terminierten
Bedarf an Zwischenprodukten und letztendlich die Fertigstellungstermine der Endprodukte.
Die Flexibilität der Planung ergibt sich durch das Einführen von Terminierungspuffern, die den
Vorlaufzeiten überlagert werden.
5.4.2.1 Durchlaufterminierung
Die Durchlaufterminierung ist gleichzusetzen mit der Zeitplanung in der Netzplantechnik.110
Dabei ist jedoch zu berücksichtigen, daß in der Netzplantechnik immer von der Produktionsmenge 1 ausgegangen wird. Der Fertigungsgraph wird im Rahmen der Durchlaufterminierung
entsprechend seiner Reihenfolge (Rangstufen bzw. Dispositionsstufen) entweder vorwärts oder
rückwärts abgearbeitet. Bei vorwärtsorientierter Vorgehensweise werden die frühesten und bei
rückwärtsorientierter die spätesten Anfangs- und Endtermine berechnet. Die Rangfolge der
Vorgänge (Vorgänger-/Nachfolgerstrukturen) wird vorher mittels eines Algorithmus, wie er in
Abschnitt 5.2.2 Ablaufstrukturen beispielhaft dargestellt wurde, ermittelt.
110.Vgl.
Abschnitt 5.2.2.4 Produktionsstrukturorientierte Vorgehensweise
182
Kapitel 5
0
1
2
3
Abbildung 5-44: Netzplan mit Fertigungsvorgängen nach Rängen sortiert
5.4.2.1.1 Vorwärtsrechnung bei bekanntem Rang
Die vorwärtsorientierte Terminplanung unter der Voraussetzung, daß der Rang der einzelnen
Vorgänge bekannt ist, was für die Spezifikationssprache aufgrund des zugrunde liegenden
Modells der Fertigung gewährleistet ist, wird im folgenden sowohl mit der Bedarfsmenge 1 als
auch der Bedarfsmenge n in der Spezifikationssprache und als Algorithmus in C++ ähnlicher
Notation dargestellt.
Analytisch verbessernde Terminplanung mit Bedarfsmenge 1
Dieser Sonderfall eines Fertigungsgraphen, bei dem genau ein Vorgang pro Vorgangsknoten
durchgeführt wird, entspricht einem Netzplan. Die Vorwärtsterminierung auf diesem Graphen
erfolgt, indem die Vorgängervorgänge Endtermine zu ihren Nachfolgervorgängen schreiben.
Von diesen Endterminen werden dann jeweils die spätesten als Startzeitpunkte für die Nachfolgervorgänge ausgewählt.
Darstellung in der Spezifikationssprache:
Gesamtgraph, produktionsstrukturorientiert, vorwärts
Teilgraph (Dispositionsebenen), vorgangsorientiert,
fv-Zustand (Terminierung)
Abbildung 5-45: Struktogramm Terminplanung vorwärts
Der Ablauf erfolgt produktionsstrukturorientiert nach Rangstufen, wobei auf den einzelnen
Dispositionsebenen vorgangsorientiert ohne spezielle Prioritätsregel (z.B. alphabetisch) vorgegangen wird. Das anzuwendende Transformationsprinzip wird als Attribut der Fertigungsvorgangsknoten im Modell der Fertigung hinterlegt. Vor der Durchführung der Terminberechnung
müssen die diesbezüglichen Attribute an den Vorgangsknoten initialisiert werden.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
183
Algorithmus Terminplanung vorwärts mit Bedarfsmenge 1
for all (vorgang in graph.vorgangsmenge) do
// Initialisierung der Vorgangsattribute
{
vorgang.anfang = 0;
}
for (rang = 1; rang <= graph.maxrang; ++rang) do
// Ablaufpriorisierung produktionsstrukturorientiert
{
for all (knoten in graph.fertigungsvorgangsknotenmenge) do
{
if (knoten.teilgraph.rang == rang)
{
fv-zustand(knoten);
// Durchführung der Zustandsfunktion am Vorgangsknoten - Terminierung
// (Die Ablaufrichtung wird in der Zustandsfunktion abgeprüft).
}
}
}
Analytisch verbessernde Terminplanung mit Bedarfsmenge n
Dieser allgemeinere Fall der Terminplanung, bei dem von n Vorgängen pro Fertigungsvorgangsknoten ausgegangen wird, entspricht der Durchlaufterminierung in MRP. Die Anzahl der
Vorgänge pro Vorgangsknoten wird vorher in der Mengenplanung über eine Stücklistenauflösung oder Bedarfsrechnung und die Bestandsrechnung festgelegt. Weiterhin ist zu beachten,
daß alle n Vorgänge an einem Knoten in einem bestimmten Zeitabschnitt denselben Anfangsund Endtermin besitzen (Anfang und Ende des Zeitabschnitts).
vorwärts
rückwärts
1
2
0
4
3
0
1
2
3
Abbildung 5-46: Fertigungsgraph mit Bedarfsmengen > 1
Die Darstellung dieses Programms in der Spezifikationssprache sowie die Abbildung in der
C++ ähnlichen Notation unterscheiden sich nicht von dem vorher dargestellten Fall mit der
Bedarfsmenge 1. Die Unterschiede sind im Modell bzw. den Attributen sowie in der Imple-
184
Kapitel 5
mentierung der Funktionen verankert und werden nicht explizit im Programm angegeben. Die
genaue Anzahl der Vorgänge wird in der Zustandsfunktion im Rahmen der Terminberechnung
berücksichtigt.
5.4.2.1.2 Rückwärtsrechnung bei bekanntem Rang
Dieselben Terminierungsverfahren können auch rückwärtsorientiert durchgeführt werden,
wobei vom Fertigstellungstermin des Endproduktes ausgegangen wird. Die Nachfolgervorgänge schreiben in diesem Fall Startzeitpunkte zu den jeweiligen Vorgängervorgängen, wovon
der früheste als Endzeitpunkt gewählt wird.
Darstellung in der Spezifikationssprache:
Gesamtgraph, produktionsstrukturorientiert, rückwärts
Teilgraph (Dispositionsebenen), vorgangsorientiert,
fv-Zustand (Terminierung)
Abbildung 5-47: Struktogramm Terminplanung rückwärts
Da die Unterscheidung zwischen Vorwärts- und Rückwärtsorientierung im Algorithmus Fertigungsvorgangsknoten-Zustand vorgenommen wird, ändert sich an der Darstellung in der C++
ähnlichen Notation gegenüber der Vorwärtsrechnung nichts.
Bei einer Mittelpunktsterminierung, wie sie z.B. im Fertigungssteuerungsverfahren OPT
(Optimized Production Technology) Anwendung findet, erfolgt die Terminrechnung sowohl
vorwärts- als auch rückwärtsgerichtet, dabei wird von Engpässen in der Fertigung ausgegangen, die im vorhinein bestimmt werden müssen.111 In diesem Fall müssen die dargestellten
Programme jeweils für beide Orientierungen einzeln durchgeführt werden.
5.4.3 Termin- und Mengenplanung
Im Sukzessivplanungskonzept bildet die Mengenplanung die Grundlage der Terminplanung
und bestimmt über die Menge der herzustellenden Güter die Zahl der durchzuführenden Vorgänge. Für diese findet anschließend im Rahmen der Terminplanung eine Durchlaufterminierung ohne Berücksichtigung der Kapazitäten statt.
111.Vgl.
Abschnitt 5.4.5.3 Engpaßorientiertes Fertigungssteuerungsverfahren (OPT)
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
185
Analytisch verbessernde Terminplanung mit Bedarfsplanung
Dieser zweite rückwärtsorientierte Algorithmus geht von n Vorgängen pro Vorgangsknoten
aus. Desweiteren umfaßt er neben der Terminierung auch die Bestandsrechnung bezüglich der
jeweils ermittelten Bedarfsmengen. Die Bestandsrechnung kalkuliert aufgrund der Primärbedarfe respektive Bruttobedarfe und der Bestände die Nettobedarfe an den einzelnen Vorgängen. Die Darstellung dieses Programms in der Spezifikationssprache sowie die Abbildung in
der C++ ähnlichen Notation differieren von denen im vorherigen Abschnitt beschriebenen nur
insoweit, daß neben den Zustandsfunktionen an den Fertigungsvorgängen (Terminierung) auch
die Zustandsfunktionen an den Fertigungselementen (Bestands-/Bedarfsrechnung) ausgeführt
werden.
Darstellung in der Spezifikationssprache:
Gesamtgraph, produktionsstrukturorientiert, rückwärts
Teilgraph (Dispositionsebenen), vorgangsorientiert, fe-Zustand
(Bestands-/Bedarfsrechnung), fv-Zustand (Terminierung)
Abbildung 5-48: Struktogramm Mengen- und Terminplanung rückwärts
Algorithmus Terminplanung mit Bedarfsplanung
for all (vorgang in graph.vorgangsknotenmenge) do
// Initialisierung der Vorgangsattribute
{
vorgang.anfang = 0;
}
for (rang = grap.maxrang; rang > 1; --rang) do
// Ablaufpriorisierung produktionsstrukturorientiert
{
for all (teilgraph in graph.teilgraph.menge) do
{
if (teilgraph.rang == rang)
{
fe-zustand(teilgraph.fertigungselementknoten)
// Ermittlung der Nettobedarfe aufgrund der Bruttobedarfe und Bestände
fv-zustand(teilgraph.fertigungsvorgangsknoten)
// Rückwärtsterminierung der Vorgänge
}
}
}
186
Kapitel 5
1
0
2
3
Abbildung 5-49: Fertigungsgraph mit Kapazitäten
5.4.4 Kapazitätsplanung
Die Kapazitätsplanung beinhaltet Anpassungsmaßnahmen an bestimmte Kapazitätsbelastungen bzw. Kapazitätsrestriktionen der Fertigungsmittel und Arbeitsgänge, die als Ergebnis der
Durchlaufterminierung auftreten. Kapazitätsabstimmungen bzw. -abgleiche setzen sich aus der
Anpassung des Kapazitätsbedarfs und des Kapazitätsangebots zusammen. Dabei erfolgt eine
Gegenüberstellung des Kapazitätsbedarfs jeder Anlage mit der voraussichtlichen Istkapazität.
Bei Überlast werden korrigierende Maßnahmen ergriffen, wie z.B. Überstunden oder Kurzarbeit, die das Kapazitätsangebots verändern, oder auch zeitliche Verschiebungen und Splittung
von Aufträgen, die den Kapazitätsbedarf beeinflussen.
Dieses sind die Grundlagen für die Auftragsfreigabe, die neben der Materialverfügbarkeit als
wichtiges Kriterium auch auf der Verfügbarkeit der Ressourcen beruht. Daneben werden zur
Bestimmung der Freigabereihenfolge noch weitere Kriterien herangezogen, die im Anschluß
erläutert werden.112 Die folgenden Anwendungsbeispiele haben als Ausgangspunkt die Freigabe von Aufträgen an Fertigungsmitteln. Um den Graphen fertigungsmittelorientiert abzuarbeiten, müssen die Aufträge vorher in eine Struktur gebracht werden. Dabei wird zwischen
zeit- und ereignisorientierter Freigabe unterschieden. Zu beiden Fällen werden hier nun Algorithmen dargestellt.
5.4.4.1 Zeitorientierte Auftragsfreigabe
Die zeitorientierte Freigabe erfolgt z.B. immer zu Beginn eines (Produktions-)Zyklus. In ihr
wird anhand der Länge des bzw. der betrachteten Zeitabschnitte und der Bearbeitungszeit der
Aufträge (Vorgänge) zwischen summarischen113 und Reihenfolgeverfahren114 unterschieden.
Summarische Verfahren werden dann eingesetzt, wenn die Zeitdauern der Fertigungsvorgänge
112.Vgl.
113.Vgl.
114.Vgl.
[Scho98], S. 165 f.
[DaWa97], S. 466 ff.
[DaWa97], S. 472 ff.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
187
kleiner als die der Zeitabschnitte sind. Diese Verfahren werden in der Praxis häufig als „Freigabe-Verfahren“ bezeichnet. In ihnen wird der jeweilige Zeitabschnitt bestmöglich mit Fertigungsvorgängen aufgefüllt.115 Somit werden mehrere Vorgänge je Fertigungsmittel und Zeitabschnitt betrachtet, jedoch wird keine vollständige Reihenfolge der Vorgänge ermittelt.
Demnach stellen summarische Verfahren eine Grobplanung der Vorgänge dar. Sie kann einerseits als eine Vorabplanung genutzt werden, die später noch durch ein Reihenfolge-Verfahren
verfeinert wird, andererseits genügt vielen Unternehmen aber auch ein nicht so detailliertes
Verfahren.116 Der Ablaufstruktur liegt dabei eine zeitorientierte Vorgehensweise zugrunde.
Darauf basierend werden die Vorgänge dispositionsebenenweise auf den Fertigungsmitteln
eingeplant, wobei keine spezielle Reihenfolgeregel genutzt wird.
Darstellung in der Spezifikationssprache:
Gesamtgraph, zeitorientiert, vorwärts
Teilgraph (Dispositionsebenen), fertigungsmittelorientiert,
fv-Eintritt (Zusammenfassen; alphabetische Reihenfolge)
Abbildung 5-50: Struktogramm Summarisches Verfahren
Algorithmus Summarisches Verfahren
for all (zeitabschnitt in graph.zeithorizont) do
// Ablaufpriorisierung zeitorientiert
{
for all (rang = 1; rang <= graph.maxrang; ++rang) do
// Ablaufpriorisierung produktionsstrukturorientiert - Teilgraphen =
// Dispositionsebenen/Ränge
{
for all (fertigungsmittel in graph.fertigungsmittelmenge with
fertigungsmittel.teilgraph.rang = rang) do
{
for all (knoten in graph.vorgangsknotenmenge with
knoten.fertigungsmittel = fertigungsmittel) do
{
fv-eintritt(knoten)
// Vorgänge ohne spezielle Reihenfolge einplanen, bis Kapazität
// aufgebraucht bzw. Eingang nicht mehr möglich ist
115.Vgl. Abschnitt 5.4.5.6 Belastungsorientierte Auftragsfreigabe (BOA)
116.In bestimmten Fällen ist ein detaillierteres Verfahren als das Summarische Verfahren aufgrund fehlen-
der Daten bzw. Informationen gar nicht möglich.
188
Kapitel 5
}
}
}
}
Die Ablaufstruktur der Belastungsorientierten Auftragsfreigabe, die auch zu den summarischen Verfahren zu zählen ist, unterscheidet sich insoweit von diesem Beispielfall, daß dort
eine Probebelegung aller (Arbeits-)vorgänge eines Auftrags vorgenommen wird. In diesem
Fall wird statt einer produktionsstrukturorientierten Schleife ein auftragsorientiertes Vorgehen
gewählt.117
Eine feinere Planung der Vorgänge erfolgt dagegen in den zeitorientierten Reihenfolge-Verfahren. Diese Verfahren gehen davon aus, daß die Zeitdauer eines Fertigungsvorgangs bzw. die
Taktzeit größer oder gleich einem Zeitabschnitt ist. In diesem Fall kann nur höchstens ein Vorgang je Zeitabschnitt bearbeitet werden. Die Einplanung erfolgt anhand einer Reihenfolgeregel. Alle anderen Vorgänge, die nicht in diesem Zeitabschnitt eingeplant werden können, müssen in eine Warteliste geschrieben werden. Die Bestimmung der Reihenfolge sowie die
Einplanung der Vorgänge erfolgt im Algorithmus Fertigungsvorgangsknoten-Eintritt bzw. im
von diesem aufgerufenen Algorithmus Zusammenfassen.
Darstellung in der Spezifikationssprache:
Gesamtgraph, zeitorientiert, vorwärts
Teilgraph (Dispositionsebenen), fertigungsmittelorientiert,
fv-Eintritt (Zusammenfassen; Prioritätsregel KOZ)
Abbildung 5-51: Struktogramm Reihenfolge-Verfahren
Algorithmus Reihenfolge Verfahren
for all (zeitabschnitt in graph.zeithorizont) do
// Ablaufpriorisierung zeitorientiert
{
for all (rang = 1; rang <= graph.maxrang; ++rang) do
// Ablaufpriorisierung produktionsstrukturorientiert - Teilgraphen =
// Dispositionsebenen/Ränge
{
for all (fertigungsmittel in graph.fertigungsmittelmenge with
fertigungsmittel.teilgraph.rang = rang) do
117.Vgl.
Abschnitt 5.4.5.6 Belastungsorientierte Auftragsfreigabe (BOA)
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
189
{
for all (knoten in graph.vorgangsknotenmenge with
knoten.fertigungsmittel = fertigungsmittel) do
{
fv-eintritt(knoten)
// Reihenfolge der Vorgänge ermitteln und Vorgänge gegebenenfalls in
// Warteliste schreiben
}
}
}
}
Die Freigabe mit Reihenfolge ist besser bekannt unter dem Namen Maschinenbelegungsplanung. Diese Freigabeverfahren werden auch allgemeiner Scheduling-Verfahren genannt. Nur
einige wenige der Schedulingprobleme sind polynomial lösbar, so daß eine optimale Lösung
berechnet werden kann. Zur Lösung der anderen Probleme gibt es nur die Möglichkeit, mit
Hilfe von Heuristiken, wie z.B. Prioritätsregeln, möglichst gute Lösungen zu ermitteln. Im folgenden sollen nun einige der Verfahren für polynomial lösbare Maschinenbelegungsprobleme
in der Spezifikationssprache dargestellt werden.
5.4.4.1.1 Einmaschinenproblem
Beim Einmaschinenproblem wird von genau einem Fertigungsmittel ausgegangen, auf dem
beliebig viele Arbeitsvorgänge durchgeführt werden sollen. Diese Vorgänge gilt es in eine Reihenfolge zu bringen. Aus Gründen der Effizienz wird dabei nicht zeit-, sondern vorgangsorientiert vorgegangen. Allerdings wird nicht die Einplanung isolierter Vorgänge, sondern aller Vorgänge aus der gesamten Ablaufstruktur bzw. Vorgangsstruktur betrachtet. Für die einzelnen
Vorgänge sind dabei bestimmte Bereitstellungstermine festgelegt. Die Dauer der Vorgänge ist
beliebig.
2
3
5
1
4
Maschine
Abbildung 5-52: Einmaschinenproblem
190
Kapitel 5
Abbildung 5-52 stellt eine mögliche Darstellung des Einmaschinenproblems dar. In diesem
Beispiel wird jeder Vorgang durch einen eigenen Fertigungsvorgangsknoten repräsentiert. Eine
andere Darstellungsmöglichkeit wäre es, alle am Fertigungsmittel durchgeführten Arbeitsvorgänge durch einen einzigen Knoten darzustellen. Der Vorteil der hier gewählten Abbildung
liegt jedoch darin, daß sie die Ablaufstruktur der Vorgänge verdeutlicht, während diese bei der
Darstellung mit einem Knoten nicht direkt ersichtlich wäre. Nachfolgend werden nun zwei
mögliche Lösungen des Einmaschinenproblems mit Hilfe der Spezifikationssprache dargestellt.
Im ersten Fall seien eine beliebige Anzahl von Vorgängen in beliebiger Ablaufstruktur, Bereitstellungszeitpunkte, minimale Gesamtdurchlaufzeit und beliebige Dauer vorausgesetzt. In der
Spezifikationssprache wird das Reihenfolgeverfahren zu diesem Problem folgendermaßen dargestellt:
Gesamtgraph, vorgangsorientiert (Vorgängervorgang eingeplant,
kleinster Bereitstellungstermin), vorwärts
Teilgraph (Vorgang), fv-Zustand (Terminierung)
Abbildung 5-53: Struktogramm Einmaschinenproblem vorwärts
Da eine Abarbeitung der Vorgänge nach Ebenen (produktionsstrukturorientiert), wie sie auf
Basis des Graphen leicht möglich ist, Lücken im Plan ergeben würde, erfolgt die Abarbeitung
des Graphen vorgangsorientiert nach der Regel: Es werden nur die Vorgänge eingeplant, deren
Vorgänger bereits eingeplant wurden. Liegen mehrere derartige Vorgänge vor, so werden diejenigen mit kleineren Bereitstellungszeitpunkten vorgezogen.118
Im zweiten Fall sind dagegen nicht minimale Gesamtdurchlaufzeit, sondern maximale Verspätung (Fertigstellungszeitpunkte) zugrunde gelegt, was eine umgekehrte Vorgehensweise
bedingt. Somit ergibt sich folgende Abbildung in der Spezifikationssprache:
Gesamtgraph, vorgangsorientiert (kein Nachfolgervorgang vorhanden,
maximaler Fertigstellungstermin) rückwärts
Teilgraph (Vorgang), fv-Zustand (Terminierung)
Abbildung 5-54: Struktogramm Einmaschinenproblem rückwärts
118.Vgl.
Algorithmus und Optimalitätsbeweis in [Bru81], S. 65 f.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
191
Die Abarbeitung erfolgt wiederum vorgangsorientiert, wobei nur Vorgänge eingeplant werden,
die keinen Nachfolgervorgang besitzen. Falls es mehrere dieser Vorgänge gibt, so wird der mit
dem maximalen Fertigstellungstermin bevorzugt.119
5.4.4.1.2 Problem identischer Maschinen
Im Gegensatz zum Einmaschinenproblem werden die Vorgänge in diesem Problemfall auf
mehreren identischen Maschinen, was die Möglichkeit von zwei identischen Maschinen einschließt, eingeplant. Die graphische Darstellung des betrachteten Problems entspricht bei voneinander abhängigen Vorgängen, d.h. Vorgängen in einer Ablaufstruktur, dem Einmaschinenproblem, wobei der Fertigungsmittelknoten eine Fertigungsmittelklasse mit mehreren
identischen Fertigungselementen repräsentiert. Ist vorausgesetzt, daß die Vorgangsdauer genau
einem Zeitabschnitt entspricht, so beschreibt Abbildung 5-55 das Verfahren zu diesem Problem in der Spezifikationssprache.120
Gesamtgraph, zeitorientiert, vorwärts
Gesamtgraph, vorgangsorientiert (Vorgängervorgang
eingeplant, maximale Rangstufe)
Teilgraph (Vorgang), fv-zustand (Terminierung)
Abbildung 5-55: Struktogramm Problem identischer Maschinen
Mit diesem Verfahren werden zu jedem Zeitpunkt bzw. Zeitabschnitt alle die Vorgänge eingeplant, deren Vorgänger bereits eingeplant sind und die außerdem eine maximale Rangstufe
besitzen. Da es sich um mehrere Maschinen handelt, können auf diesen auch mehrere Vorgänge gleichzeitig eingeplant werden.121 Sind die Vorgänge voneinander unabhängig, so kann
über alle Vorgänge eine Reihenfolge gemäß der kürzesten Operationsregel122 bestimmt werden, um einen optimalen Plan zu berechnen.
119.Vgl. Algorithmus und Optimalitätsbeweis in [Bru81], S. 67 f.
120.Die Rangstufe des Vorgangs berechnet sich aus seinem Fertigstellungstermin und der Rangstufe seines
Nachfolgers (vgl. [DaWa97], S. 480 f.).
Algorithmus und Optimalitätsbeweis in [Bru81], S. 88 ff.
[KiSt90], S. 146 ff. und Abschnitt 2.2.2.2 Klassifikationsmerkmal Fertigungslenkungsabläufe
121.Vgl.
122.Vgl.
192
Kapitel 5
5.4.4.1.3 N-Maschinen-Problem
Ein Spezialfall des n-Maschinen-Problems ist das Zwei-Maschinen-Problem mit einer beliebigen Anzahl von Vorgängen in beliebiger Ablaufstruktur. Hierbei geht es darum, die Reihenfolgen der Vorgänge auf zwei unterschiedlichen Maschinen möglichst optimal zu kombinieren.
Gibt es einen Plan, der alle Fertigstellungszeitpunkte einhält, d.h. ist das Problem lösbar, so
entspricht die Darstellung in der Spezifikationssprache der oben angeführten bei identischen
Maschinen. Weiterhin läßt sich das n-Maschinen-Problem unterteilen in Flow-shop-, Openshop- und Job-shop-Probleme, für die es allerdings nur wenige polynomiale Algorithmen gibt.
In allen Fällen sind die betrachteten Aufträge völlig isoliert voneinander und es gibt keine
Ablaufstruktur zwischen den Aufträgen. Dieses ist möglich, da nur freigegebene Vorgänge,
deren Vorgänger bereits eingeplant sind, betrachtet werden. Die Einplanung dieser Vorgänge
erfolgt immer zu Beginn eines Zeithorizonts bzw. -abschnitts.
Bei einem Flow-shop-Problem sind n Aufträge auf m verschiedenen Maschinen zu verteilen.
Es gibt demnach n x m Vorgänge. Alle Aufträge durchlaufen alle Maschinen und zwar in der
gleichen Reihenfolge. Im Gegensatz zu Flow-shop-Problemen ist bei Open-shop-Problemen
die Reihenfolge, in der die Aufträge die Maschinen durchlaufen, beliebig. Job-shop-Probleme
erlauben eine unterschiedliche Reihenfolge der Aufträge auf den Maschinen und außerdem ein
mehrmaliges Durchlaufen einer Maschine. In allen Problemfällen mit n Maschinen wird die
Reihenfolge durch Regeln (Prioritäten) über der Auftrags- bzw. Vorgangsmenge eines Zeitpunkts oder -abschnitts bestimmt. Insoweit erfolgt die Abbildung in der Spezifikationssprache
mit einem Zusatz zur vorgangsorientierten Vorgehensweise, der als Bedingung eine Reihenfolgeregel angibt. Diese Reihenfolgeregel besteht dabei häufig aus kombinierten Prioritätsregeln.
In der Spezifikationssprache werden alle diese Probleme demnach folgendermaßen dargestellt:
Gesamtgraph, zeitorientiert, vorwärts
Gesamtgraph, vorgangsorientiert (Reihenfolgeregel)
Teilgraph (Vorgang), fv-zustand (Terminierung)
Abbildung 5-56: Struktogramm Problem identischer Maschinen
5.4.4.2 Ereignisorientierte Auftragsfreigabe
Bei dieser Art der Freigabe wird auf einem Zeithorizont, der durch eine in größeren Planungszyklen vorgenommene Durchlaufterminierung bestimmt wird, ereignisweise vorgegangen.123
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
193
Die Ereignisse sind entweder die Meldung eines Fertigungsmittels, daß es gerade frei geworden ist und mit einem neuen Vorgang belegt werden kann, oder der Austritt eines Fertigungselements (Material) aus einem Fertigungsmittel.
Darstellung in der Spezifikationssprache:
Gesamtgraph, ereignisorientiert, fv-Eintritt
Dieses Programm ist begrenzt auf die Auslösung des Starts eines Vorgangs aufgrund eines
Ereignisses an einem bestimmten Knoten und könnte durch zusätzliche Funktionen erweitert
werden. Die Darstellung des Programms in der an C++ angelehnten Notation entspricht dem
Algorithmus Ablauf ereignisorientiert.
Algorithmus Ereignisorientierte Freigabe
for all (ereignis in graph.zeithorizont) do
// Ereignisorientierung basierend auf einem Zeithorizont
{
fv-eintritt(ereignis.knoten)
// Einplanen des Vorgangs am jeweiligen Knoten
}
5.4.5 Komplexe Fertigungslenkungsverfahren
Im folgenden werden nun komplexere Standardverfahren der Fertigungslenkung klassifiziert
und in der Spezifikationssprache beschrieben. Diese Ansätze umfassen mehrere Planungsbereiche und basieren zum Teil nicht auf einer strikt sukzessiven Vorgehensweise. Sie haben
dann das primäre Ziel, den geplanten Output mit den vorhandenen Kapazitäten in besserer
Weise abzustimmen, als es nach dem Sukzessivplanungskonzept möglich ist. Dabei gehen sie
entweder bestands- oder engpaßorientiert vor.124 Anhand der Darstellungen im Klassifikationsschema und der Beschreibungen mit der Spezifikationssprache werden Ähnlichkeiten bzw.
Parallelen zwischen diesen unterschiedlichen Verfahren deutlich. Dieses zeigt auf, daß bei
ihnen teilweise dieselben Methoden (Algorithmen) genutzt werden können. Außerdem wird
die Beschränkung der Verfahren auf bestimmte Teilprobleme bzw. spezielle Vorgehensstrategien der Fertigungslenkung deutlich.
123.Vgl.
124.Vgl.
[DaWa97], S. 520 f.
[Cor98], S. 508 und [ZäMi88], S. 127 ff.
194
Kapitel 5
5.4.5.1 Materialbedarfsplanung (MRP)
Die Materialbedarfsplanung125 ist das klassische Verfahren zur Definition, Terminierung und
Freigabe von Fertigungsaufträgen. Sie beinhaltet eine rückwärtsorientierte Materialdisposition
auf Basis einer Stücklistenauflösung mit Durchlaufzeitverschiebung. Kapazitäten werden im
Rahmen der Materialbedarfsplanung nicht berücksichtigt, aus diesem Grund wird auch keine
Veränderung bzw. Anpassung der ermittelten Termine aufgrund begrenzter Fertigungsmittelkapazitäten vorgenommen. Die Freigabe der Fertigungsaufträge erfolgt auf Grundlage der so
berechneten Termine.
Das Zeitmodell der Materialbedarfsplanung ist einheitlich für alle Knoten. Die Vorlaufzeit und
die Reichweite eines Fertigungsloses bzw. der Bestellzyklus können sowohl größer als auch
kleiner als eine Zeiteinheit sein. Dementsprechend kann die Materialbedarfsplanung in vier
verschiedene Fälle unterschieden werden, von denen drei zeitorientiert sind und einer ereignisorientiert ist:126
• zeitorientiert (Bedarf in (nahezu) jedem Zeitabschnitt)
• Reichweite (Fertigungs-)Los < Zeitabschnitt und Vorlaufzeit < Zeitabschnitt
• Reichweite (Fertigungs-)Los > Zeitabschnitt und Vorlaufzeit < Zeitabschnitt
• Reichweite (Fertigungs-)Los > Zeitabschnitt und Vorlaufzeit >Zeitabschnitt
• ereignisorientiert (Sporadischer Bedarf)
Die folgende Darstellung in der Klassifikation und der Spezifikationssprache beschreibt den
einfachsten dieser Fälle, die periodenweise Bedarfsermittlung ohne Losgrößengruppierung.
Dabei wird durch den Strukturprototypen „Montagestruktur“ die Struktur repräsentiert. Der
Ablauf erfolgt produktionsstrukturorientiert auf dem Gesamtgraphen, knotenorientiert auf den
Dispositionsebenen und zeitorientiert auf den einzelnen Strukturprototypen. Das Klassifikationsschema für diese Ausprägung der Materialbedarfsplanung ist in Abbildung 5-57 dargestellt.
125.Vgl.
126.Vgl.
Abschnitt 5.1 Syntax der Spezifikationssprache
[DaWa97], S. 302 ff.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
195
Gruppierungsfunktion, Bestand-/
Bedarfsfunktion, Terminierungsfunktion
zeitorientiert, vorwärts
knotenorientiert, alphabetisch
produktionsstrukturorientiert, rückwärts
Abbildung 5-57: Klassifikationsschema MRP ohne Losgrößengruppierung
Die Darstellung in der Spezifikationssprache hat folgende Form:
Gesamtgraph, produktionsstrukturorientiert, rückwärts
Teilgraph (Dispositionsebene), knotenorientiert, alphabetisch
Teilgraph (Strukturprototyp), zeitorientiert (Zeitabschnitt),
vorwärts, fe-Eintritt (Zusammenfassung), fe-Zustand
(Bestands-/Bedarfsrechnung), fv-Zustand (Terminierung)
Abbildung 5-58: Struktogramm MRP ohne Losgrößengruppierung
Ist die Bestandsreichweite größer als der gewählte Zeitabschnitt, so wird der Nettobedarf nach
Losen gruppiert. Die Darstellung des Falls eines Bestellzyklus in der Klassifikation und der
Spezifikationssprache bedarf einer weiteren zeitorientierten Ablaufstruktur, die auf diesen
Bestellzyklen basiert. Außerdem muß die Losgrößenbestimmung in die Klassifikation und die
Spezifikationssprache mitaufgenommen werden. Demzufolge zeigt das Klassifikationsschema
in Abbildung 5-59 eine weitere zeitorientierte Ablaufstruktur und beinhaltet außerdem eine
zusätzliche Gruppierungsfunktion, welche die Losgrößenbestimmung zur Aufgabe hat.
In der Spezifikationssprache wird die weitere zeitorientierte Ablaufstruktur als Repeat-Schleife
dargestellt. Die Zustandsfunktion am Fertigungsmaterialknoten wird um die Losgrößenbestim-
196
Kapitel 5
Gruppierungsfunktion, Bestand-/Bedarfsfunktion
Gruppierungsfunktion, Terminierungsfunktion
zeitorientiert
zeitorientiert, vorwärts
knotenorientiert, alphabetisch
produktionsstrukturorientiert, rückwärts
Abbildung 5-59: Klassifikationsschema MRP mit Losgrößengruppierung
mung erweitert. Diese Funktion wird jedoch in die Repeat-Schleife miteinbezogen, da die
Bestellung eines Loses zu Beginn des Bestellzyklus erfolgt.
Gesamtgraph, produktionsstrukturorientiert, rückwärts
Teilgraph (Dispositionsebene), knotenorientiert, alphabetisch
Teilgraph (Strukturprototyp), zeitorientiert (Zeitabschnitt),
fe-Eintritt (Zusammenfassung), fe-Zustand (Bestands-/
Bedarfsrechnung),
Teilgraph (Strukturprototyp), zeitorientiert (Bestellzyklus),
vorwärts, fe-Zustand (Losgrößenbestimmung)
Teilgraph (Strukturprototyp), zeitorientiert (Zeitabschnitt),
fe-Zustand (Bestandsrechnung)
Teilgraph (Strukturprototyp), zeitorientiert (Bestellzyklus),
vorwärts, fv-Zustand (Terminierung)
Abbildung 5-60: Struktogramm MRP mit Losgrößengruppierung
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
197
Zur Darstellung einer ereignisorientierten Vorgehensweise mit oder ohne Losgrößengruppierung, wenn also nicht mehr in jedem Zeitabschnitt Bedarfe auftreten, ist nur der Wechsel der
Ablaufspezifikation von „zeitorientiert (Zeitabschnitt)“ zu „ereignisorientiert“ nötig. Darüber
hinaus ist auch eine bestellpunktorientierte Losgrößenbestimmung abbildbar, indem statt der
Repeat-Schleife über dem Bestellzyklus eine Repeat-Schleife ereignisorientiert mit Abbruchbedingung „Erreichen bzw. Unterschreiten des Bestellpunktes“ spezifiziert wird.
5.4.5.2 Arbeitsgangterminierung des Fertigungssystems CAPOSS-E
Die Arbeitsgangterminierung von CAPOSS-E127 berechnet und terminiert eine abarbeitbare
Folge von Arbeitsgängen für jeden Arbeitsplatz unter der Berücksichtigung der Kapazitäten
und bestehender Belastungen128 der Arbeitsplätze. Dabei werden für jeden Arbeitsplatz in
Zyklen, die durch das zugrunde liegende Zeitmodell bestimmt werden (z.B schicht- oder tageweise), Wartelisten gebildet, welche dann nacheinander abgearbeitet werden.
Gruppierungsfunktion
Terminierungsfunktion
ereignisorientiert
auftragsorientiert
fertigungsmittelorientiert
zeitorientiert, vorwärts
Abbildung 5-61: Klassifikationsschema Arbeitsgangterminierung
Die Arbeitsgangterminierung hat unterschiedliche Zeitmodelle für Material- und Fertigungsmittelknoten. Weiterhin gilt, daß die Vorgangsdauer kleiner als ein Zyklus ist. Die Struktur
wird durch den Strukturprototypen „lineare Struktur mit Ressource“ repräsentiert. Die Abar-
127.Vgl. [CAPOSS], [BrPi81] und [Har95], S. 130 ff.
128.Die bestehenden Belastungen beruhen auf Arbeitsgängen,
die im letzten Zyklus nicht durchgeführt
werden konnten. In CAPOSS werden diese Arbeitsgänge (Vorgänge) in den nachfolgenden Zyklus
übernommen.
198
Kapitel 5
beitung des Fertigungsgraphen erfolgt insgesamt zeitorientiert, zu den Zyklen auftragsorientiert und für die freigegebenen Vorgänge (Arbeitsgänge)129 dieser Aufträge fertigungsmittelorientiert. Abbildung 5-61 gibt das Klassifikationsschema der Arbeitsgangterminierung
wieder.
In der Spezifikationssprache wird die Arbeitsgangterminierung folgendermaßen dargestellt:
Gesamtgraph, zeitorientiert, vorwärts
Gesamtgraph, auftragsorientiert (Vorgängervorgänge eingeplant)
fe-Eintritt (Zusammenfassen; Warteschlange)
Gesamtgraph, fertigungsmittelorientiert
Teilgraph, ereignisorientiert, fv-Zustand (Terminierung)
Abbildung 5-62: Struktogramm Arbeitsgangterminierung
Dabei wird die Bedingung der auftragsorientierten While-Schleife, die besagt, daß die Vorgängervorgänge der einzuplanenden Vorgänge bereits eingeplant sein müssen, explizit angegeben.
Die Bildung der Warteschlangen, die sich aus nicht abgearbeiteten Vorgängen des letzten
Zyklus sowie den neu einzuplanenden Vorgängen zusammensetzen, wird im Rahmen der Eintrittsfunktion der Fertigungsmittel und zwar speziell in der Teilfunktion Zusammenfassen
durchgeführt. Anschließend erfolgt im Rahmen der Zustandsfunktion am Fertigungsvorgangsknoten das Terminieren der Vorgänge.
5.4.5.3 Engpaßorientiertes Fertigungssteuerungsverfahren (OPT)
Das Fertigungssteuerungsverfahren OPT130 ist ein ressourcen- bzw. engpaßorientiertes Lenkungskonzept und kombiniert Mengen- und Kapazitätsplanung. Sein primäres Ziel ist nicht die
optimale Auslastung der Kapazitäten, da dieses aufgrund der Problematik der Kapazitätsharmonisierungen nicht grundsätzlich möglich ist, sondern die Optimierung des Fertigungs- bzw.
Materialflusses.131
Der erste Schritt des Verfahrens ist die Identifizierung der Engpässe. Dieses erfolgt auf der
Grundlage einer retrograden, zeitorientierten Materialbedarfsplanung/Durchlaufterminierung
und einer darauf aufbauenden Kapazitätsbedarfsermittlung (die ggf. mit Fortschrittszahlen
129.Das sind die Vorgänge, deren Vorgängervorgänge
130.Vgl. [Gol84] und [Cor98], S. 527 ff.
131.Vgl. [Scho98], S. 70
bereits eingeplant sind.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
Gruppierungsfunktion
Bestand-/Bedarfsfunktion
Gruppierungsfunktion
produktionsstrukturorientiert
vorwärts, rückwärts
199
Terminierungsfunktion
ereignisorientiert
fertigungsmittelorientiert
zeitorientiert, vorwärts
Abbildung 5-63: Klassifikationsschema OPT (Vorgehensweise nach Engpaßermittlung)
erfolgen könnte). Das Ergebnis dieser Berechnungen ist die Teilung des Fertigungsnetzes in
einen kritischen Teil, nämlich die Engpässe, und einen nichtkritischen Teil. Von den Engpässen
ausgehend wird anschließend die Einplanung der Bedarfe vorgenommen.
Ein möglicher Erklärungsansatz für die in der Literatur nicht beschriebene weitere Vorgehensweise von OPT könnte folgendes Vorgehensmodell sein: Grundsätzlich wird eine zyklische
Vorgehensweise vergleichbar zu der im vorhergehenden Absatz beschriebenen CAPOSS-Vorgehensweise angenommen (Die Zyklen werden identisch mit den Zyklen der Materialbedarfsplanung gewählt.). Die bei CAPOSS nur linearen und jeweils mit der Menge 1 behafteten
Strukturzusammenhänge sind um Montagestrukturen und Strukturmengen erweitert. Damit ist
im Gegensatz zu CAPOSS ein echte Bestands-/Bedarfs- und Losgrößenrechnung möglich. Die
Belegung innerhalb eines Zyklus beginnt auf den Engpaßfertigungsmitteln, die vollständig
belegt werden. Dieser Belegungsumfang bestimmt - anders als in CAPOSS - den Umfang der
Warteschlangen auf den vorgelagerten Fertigungsstufen bzw. Bearbeitungsstellen (selbstverständlich um die Anzahl der den Fertigungsstufen entsprechenden Zyklen nach vorne verschoben). Die Belegung der vorgelagerten Stellen erfolgt dann in einer Rückwärtsrechnung. Die
Vorgehensweise bei den nachgelagerten Stellen ist analog.
Zur Abbildung der Fertigungsstruktur wird grundsätzlich der Strukturprototyp „Montage- bzw.
Sortierstruktur mit Ressourcen“ genutzt. Das Klassifikationsschema ist in Abbildung 5-63
beschrieben.
200
Kapitel 5
Es folgt die Abbildung von OPT in der Spezifikationssprache:
Gesamtgraph, zeitorientiert, vorwärts
Gesamtgraph, produktionsstrukturorientiert, vorwärts, rückwärts
fe-Eintritt (Zusammenfassen), fe-Zustand (Bestands-/Bedarfsrechnung) fe-Zustand (Losgrößenbestimmung; Warteliste)
Gesamtgraph, fertigungsmittelorientiert
Teilgraph, ereignisorientiert, fv-Zustand (Terminierung)
Abbildung 5-64: Struktogramm OPT (Vorgehensweise nach Engpaßermittlung)
5.4.5.4 Kanban
Die Kanban-Steuerung132 unterliegt dem „Just-in-time“ oder Hol-Prinzip. Es wird nur die
jeweils verbrauchte Menge eines Materials gefertigt bzw. angefordert. Kanban führt somit eine
verbrauchsorientierte Mengenplanung durch. Diese „Steuerung durch Selbstregulierung“ hat
das Ziel, die Lagerbestände in der Fertigung auf einem möglichst geringen Niveau zu halten.
Insoweit entspricht Kanban einem Bestellpunktverfahren mit dem Dispositionsprinzip (s,B),
Anfordern des Bedarfs bei Erreichen des Minimalbestandes.133 Die Kanban-Steuerung läßt
sich in verschiedene Arten unterteilen, wie z.B. Ein-Karten-Kanban, Signal-Kanban, usw.
Allerdings benötigt Kanban zu seiner erfolgreichen Anwendung neben der Anordnung der
Betriebsmittel nach dem Fließprinzip einen gleichförmigen Fertigungsablauf ohne große
Bedarfsschwankungen. Weiterhin wird von weitgehend standardisierten Teilen und einem
geringen Variantenspektrum, um unter anderem die Rüstzeiten niedrig zu halten, sowie von
einem stetigen Bedarf und einer hohen Umschlagshäufigkeit der Teile ausgegangen.134
Als verbrauchsorientierte Mengenplanung reduziert sich die Zeitbetrachtung von Kanban auf
die Gegenwart. Das Material wird nur dann angefordert, wenn der tatsächliche Bestand unter
der vorgesehenen Bestandshöhe liegt; deswegen ist kein Planungshorizont nötig. Insoweit ist
die Ablaufstruktur ereignisorientiert. Eine Fertigungsstruktur (Erzeugnisstruktur) als Basis des
Materialflusses liegt bei Kanban nicht vor; die Materialien sind nicht miteinander verbunden.135 Das Klassifikationsschema von Kanban ist in Abbildung 5-65 beschrieben.
132.Vgl.
133.Vgl.
134.Vgl.
[Kur93] und [Wil84]
Abschnitt 5.2.1.1.1 Attribute an Fertigungselementknoten
[Cor98], S. 522 ff.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
201
Bestand-/Bedarfsfunktion
ereignisorientiert
Abbildung 5-65: Klassifikationsschema Kanban
Die Darstellung in der Spezifikationssprache hat folgende Struktur:136
Gesamtgraph, ereignisorientiert
fe-Zustand (Bestands-/Bedarfsrechnung; Dispositionsprinzip (s,B))
5.4.5.5 Fortschrittszahlenkonzept
Beim Fortschrittszahlenkonzept137 werden bestimmte Unternehmensprozesse, wie z.B. Einund Auslagerungen oder Anlieferungen, mittels Fortschrittszahlen erfaßt bzw. abgebildet, um
speziell koordiniert und gesteuert zu werden. Das Konzept stellt eine Kombination aus traditioneller Programm- und Mengenplanung und dem Holprinzip dar.138 Zur Strukturierung wird
der betrachtete Unternehmensbereich in Kontrollblöcke gegliedert, die sich abhängig von den
jeweiligen Anforderungen auf unterschiedlichen Detaillierungsniveaus befinden können. Die
Ein- und Ausgänge dieser Kontrollblöcke werden als Fortschrittszahlen gemessen und dabei
die Soll- den Ist-Werten gegenübergestellt. Auf diese Weise können Abweichungen, wie z.B.
mengenmäßiger Vorlauf oder Rückstand, direkt erkannt werden. Allerdings ist der Einsatz des
Fortschrittszahlenkonzeptes an folgende Voraussetzungen gebunden:139
135.Wenn
die Bedarfsermittlung statt mit einem Kanban mit einem Rechner stattfinden soll, dann ist dazu
ein rechnerinternes Modell notwendig. Dieses entspricht im Prinzip einer Durchlaufterminierung, bei
der zwar zeitlich vorwärts aber im Sinne des Materialflusses rückwärts gerechnet wird. Fallweise werden dann lineare oder Montagstrukturen verwendet.
136.Da das Programm aus einer Zeile besteht, ist hier wiederum eine Darstellung ohne ein Nassi-Shneiderman-Diagramm möglich bzw. mit dieser gleichbedeutend.
137.„Eine Fortschrittszahl stellt allgemein eine kumulierte, sich auf ein Teil beziehende Mengengröße dar,
die jeweils einem bestimmten Zeitpunkt bzw. Termin zugeordnet ist.“ [GGR92]
138.Vgl. [DaWa97], S. 342 ff., [GGR92], S. 232 ff., u.a.
139.Vgl. [Cor98], S. 511 f.
202
Kapitel 5
• Leistungsaustausch zwischen Kontrollblöcken erfolgt nur in eine Richtung (linearer Produktionsprozeß)
• harmonisierte Kapazitäten
• Produktspektrum setzt sich aus Standarderzeugnissen mit geringer Variantenvielfalt und hoher Produktionsmenge zusammen
Anwendung findet das Fortschrittszahlenkonzept vor allem in der Automobilindustrie, da dort
eine montageorientierte Großserienfertigung mit dem Organisationstyp der Fließfertigung und
mit sehr engen Beziehungen zwischen Zulieferern und Herstellern vorliegt.140 Das Hauptziel
dieser Fertigungen sind möglichst geringe Lagerbestände, die z.B. durch ein „Just-in-time“Vorgehen erreicht werden.
Insgesamt betrachtet, ist das Fortschrittszahlenkonzept insbesondere eine Frage des Zeitmodells und kann für verschiedene Formen der Mengenplanung eingesetzt werden.141 Insoweit
entspricht seine Darstellung in der Klassifikation und der Spezifikationssprache dem jeweils
genutzten Mengenplanungsverfahren wie z.B. der Materialbedarfsplanung. Die Unterschiede,
die auf der Kumulation der Bedarfe und Verbräuche über dem Zeithorizont und dem Vergleich
von Soll- und Ist-Werten beruhen, werden in beiden Darstellungsformen nicht explizit
beschrieben, sondern im zugrunde liegenden Modell der Fertigung bzw. in dessen Zeitmodell
festgelegt.
5.4.5.6 Belastungsorientierte Auftragsfreigabe (BOA)
BOA ist eine Methode, die den mittleren Bestand vor Fertigungsmitteln respektive Belastungsgruppen möglichst konstant halten soll, um somit die Durchlaufzeiten bzw. die Wartezeiten der
Aufträge zu verkürzen und eine bessere Einhaltung der Fertigstellungstermine zu erreichen.
Das Zeitmodell von BOA ist eine einzige Zeiteinheit, die größer ist als die Losbearbeitungsdauer. Zur Abbildung der Struktur wird der Strukturprototyp „lineare Struktur mit Ressource“
verwendet. Als Ausgangsdaten stehen die gewünschten Endtermine der Aufträge in Form von
Grobterminen sowie die Arbeitspläne und die Losgrößen fest. Die Maschinen- und Personalkapazitäten der zu planenden Periode sind bekannt. Aufträge werden nur dann freigegeben,
wenn die Belastung der für sie relevanten Ressourcen kleiner als eine vorgegebene Belastungsschranke ist.
140.Vgl.
141.Vgl.
[Kur93], S. 190 ff.
[DaWa97], S. 342 f.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
203
Gruppierungsfunktion
fertigungsmittelorientiert
auftragsorientiert
zeitorientiert
Abbildung 5-66: Klassifikationsschema Belastungsorientierte Auftragsfreigabe
In der betrachteten Periode ist die Vorgehensweise an dringlichen Aufträgen142 orientiert.
Diese werden auftragsorientiert Betriebsmitteln zugewiesen, solange das probeweise Belegen
der Fertigungsmittel, in der Spezifikationssprache dargestellt durch die Eintrittsfunktion, möglich ist. Die vor der Belegung durchzuführende Abwertung der Auftragsstunden wird in beiden
Darstellungsformen nicht abgebildet. War der Belegungsvorgang bei allen Fertigungsmitteln
erfolgreich, so kann der Auftrag freigegeben werden. Die spezielle Freigaberegel von BOA ist
im Attribut Steuerungsregel des Teilgraphen hinterlegt. Ob ein Auftrag freigegeben ist, kann
anhand seines Attributs „ausführbar“ festgestellt werden, das im Rahmen der Eintrittsfunktion
des Fertigungsmittels gesetzt wird. Das Klassifikationsschema der Belastungsorientierten Auftragsfreigabe zeigt Abbildung 5-66.
In der Spezifikationssprache erfolgt die Darstellung von BOA folgendermaßen:
Gesamtgraph, zeitorientiert (Periode)
Gesamtgraph, auftragsorientiert (Dringlichkeit)
Teilgraph (Fertigungsmittel), fe-Eintritt
Teilgraph, fertigungsmittelorientiert (Ausführbarkeit)
Abbildung 5-67: Struktogramm Belastungsorientierte Auftragsfreigabe
142.Dringliche
Aufträge sind die Aufträge, für die eine Auftragsfreigabe bzw. -einlastung im Hinblick auf
die jeweilige Planperiode überprüft wird (vgl. [GGR92], S. 211).
204
Kapitel 5
Dabei wird die auftragsorientierte Vorgehensweise mit einer While-Schleife dargestellt, die
durch die Bedingung „Dringlichkeit“ näher bestimmt wird. Somit wird gewährleistet, daß die
Fertigungsmittel nur mit dringlichen Aufträgen probeweise belegt werden. Der anschließende
fertigungsmittelorientierte Ablauf wird von einer Repeat-Schleife mit der Abbruchbedingung
„Ausführbarkeit“ abgebildet. Auf diese Weise wird die Schleife abgebrochen, sobald die Belegung eines Arbeitsgangs des Auftrags nicht erfolgreich war.
5.4.5.7 Netzplantechnik
Mit dieser auf Netzplänen143, der graphischen Darstellung von Abläufen und deren Abhängigkeiten, basierenden Technik ist es möglich, Zeit- und Terminplanungen, aber auch Kosten- und
Kapazitätsplanungen durchzuführen. Das zugrunde liegende Zeitmodell ist dabei einheitlich
und eine Zeiteinheit ist kleiner als die Vorgangsdauer der einzelnen Aktivitäten. Der Ablauf
erfolgt produktionsstrukturorientiert, iterativ oder nach Dispositionsebenen, wobei vorwärts
wie auch rückwärts vorgegangen werden kann. Das Klassifikationsschema in Abbildung 5-68
zeigt einen Netzplan zur Terminplanung.
Terminierungsfunktion
produktionsstrukturorientiert, vorwärts/rückwärts
Abbildung 5-68: Klassifikationsschema Netzplantechnik
Die Funktionalität der Fertigungselementknoten wird in der Netzplantechnik nicht genutzt, da
von der Bedarfsmenge 1 ausgegangen und pro Vorgangsknoten nur ein Vorgang durchgeführt
wird.144 Aus diesem Grund sind die Fertigungselementknoten im Klassifikationsschema
143.Vgl. Abschnitt 2.1.3 Klassifikation
144.Wird die Netzplantechnik zur Kapazitätsplanung
eingesetzt, so erfolgt die Steuerung des Fertigungsmittelknotens bzw. der Kapazitätsbelegung vom Fertigungsvorgangsknoten aus.
Entwicklung einer Spezifikationssprache für die Fertigungslenkung
205
gestrichelt dargestellt. Dieses ist auch der folgenden Darstellung der Netzplantechnik in der
Spezifikationssprache zu entnehmen:
Gesamtgraph, produktionsstrukturorientiert (Dispositionsebenen),
fv-Zustand (Terminierung)
Anhand dieser beispielhaften Darstellungen der wichtigsten Fertigungslenkungsverfahren und
-methoden konnten die Vorteile des Klassifikationsschemas und der Spezifikationssprache verdeutlicht werden. Sie liegen einerseits in der Erfüllung der in Abschnitt 2.3.1 dargestellten problembereichsunabhängigen Anforderungen, wie z.B. der Benutzerfreundlichkeit durch allgemeinverständliche sowie präzise Syntax und mnemonische Sprachkonstrukte und der
Flexibilität der Sprache. Andererseits beruhen die Vorteile auch auf der Berücksichtigung der
speziellen Probleme der Fertigungslenkung durch eine geeignete Repräsentation der Datenund Graphstruktur sowie der Abläufe und Funktionen der Fertigungslenkung, die eine unkomplizierte und flexible Umsetzung in eine gängige Programmiersprache erlauben. Infolgedessen
sind die hier entwickelte Klassifikation und Spezifikationssprache ein ideales Hilfsmittel zur
anschaulichen, anwendernahen und flexiblen Kategorisierung und Beschreibung der Fertigungslenkung.
206
Kapitel 5
Zusammenfassung und Ausblick
6
207
Zusammenfassung und Ausblick
Für den Bereich der Fertigungslenkung gibt es eine Vielzahl von unterschiedlichen Methoden
und Verfahren, von denen die meisten ihre eigene spezifische Darstellungsart besitzen. Außerdem wurde fast jede dieser Methoden für eine ausgewählte Zielgruppe entwickelt und bezieht
sich deswegen sowohl auf ganz bestimmte Aspekte und Vorgehensweisen der Fertigungslenkung als auch auf spezielle Ausprägungen von Fertigungen. Zur Lösung dieser Problematik
bedarf es einer umfassenden, einheitlichen und problembereichsorientierten Spezifikationssprache als Metasystem für die Fertigungslenkung. Diese Sprache ermöglicht eine integrierte
Beschreibung der diversen Methoden und Verfahren, indem sie auf den zugrunde liegenden
allgemeinen Konzepten der Fertigungslenkung aufbaut. Auf diese Weise bietet sie die Robustheit und Flexibilität allen Anforderungen derzeitiger wie auch in der Zukunft noch entstehender Fertigungslenkungsprobleme zu genügen. Die Grundlage der Spezifikationssprache bildet
eine vollständige und transparente Klassifikation des Problembereichs, in der diese Konzepte
herausgearbeitet und strukturiert werden. Um eine Umsetzung der Spezifikationssprache in ein
ausführbares Programm zu ermöglichen, müssen außerdem Methoden für die Sprachkonstrukte in einer höheren Programmiersprache implementiert werden.
Nach einer Einführung in den Problembereich und die Begriffswelt der Fertigungslenkung
wurden in dieser Arbeit die Anforderungen an eine Klassifikation der Fertigungslenkung
detailliert dargelegt. Zur besseren Vergleichbarkeit dieser Systematik mit bestehenden Ansätzen erfolgte anschließend die Definition der Klassifikationskriterien. Dabei wurde auf die
Strukturierung des Modellierungsansatzes MFERT zurückgegriffen und eine Einteilung in die
Merkmale Fertigungslenkungsstruktur, -abläufe und -funktionen vorgenommen, die eine vollständige Klassifikation des Problembereichs ermöglichen. Während das Fertigungsmodell die
Fertigungslenkung bezüglich der Dimensionen Zeit und Struktur beschreibt, stellen die
Abläufe und Funktionen den Prozeßfortschritt dar. Das Kriterium Fertigungslenkungsstruktur
läßt sich weiter in einzelne Teilgraphen bzw. Strukturprototypen untergliedern. Fertigungslenkungsabläufe werden systematisiert durch die Ablaufrichtung, -priorisierung und -reihenfolge.
Ablauf- und zustandsorganisatorische Entscheidungsprobleme bilden die weitere Strukturierung der Fertigungslenkungsfunktionen. Die Darstellung der Klassifikation erfolgt aus Gründen der Übersichtlichkeit und Verständlichkeit in Form von Repräsentanten. Im Anschluß an
die Festlegung der Klassifikationsmerkmale wurden die problembereichsunabhängigen und
-abhängigen Anforderungen an die Spezifikationssprache für die Fertigungslenkung formuliert.
208
Kapitel 6
Die nachfolgend durchgeführte Untersuchung von existierenden Ansätzen zur Klassifikation
der Fertigungslenkung ergab, daß es derzeit keine speziell auf diesen Problembereich ausgerichtete Systematik gibt. Die bestehenden Klassifikationen sind entweder nur auf Teilbereiche
der Fertigungslenkung begrenzt und damit nicht vollständig oder sie gehen über den Problembereich hinaus, was dazu führt, daß sie zu abstrakt und ungenau sind. Bei der Analyse existierender Spezifikationssprachen zeigte sich ein ähnliches Bild. Zwar gibt es eine Vielzahl von
Beschreibungssprachen für Teilbereiche der Fertigungslenkung oder umfassendere Problembereiche, aber sie erfüllen alle nicht die an die Syntax gestellten Anforderungen bezüglich
leichter Verständlichkeit und Anwendbarkeit. Außerdem mangelt es ihrer Semantik an Problemorientierung und Klarheit. Hinzu kommt in fast allen Fällen eine Einschränkung auf
bestimmte Sichtweisen oder Vorgehensstrategien, die ebenfalls einer vollständigen Beschreibung zuwiderlaufen.
Ausgehend von diesem Vergleich der Problemstellung mit bestehenden Ansätzen wurde die
noch zu leistende Arbeit zur Entwicklung der Spezifikationssprache festgelegt. Dabei wurde
von der durch die Klassifikation vorgegebenen Strukturierung der Fertigungslenkung in Fertigungslenkungsstruktur, - abläufe und -funktionen ausgegangen und somit die Vollständigkeit
der Darstellung gewährleistet. Als Syntax der Sprache wurde eine Kombination aus graphischen und sprachlichen Elementen gewählt, wodurch die Vorteile beider Darstellungsarten vereint und die Nachteile größtenteils vermieden werden konnten. Auf diese Weise wurden die
Anforderungen bezüglich Transparenz, Verständlichkeit und Anwendbarkeit der Beschreibung
erfüllt. Während die Fertigungslenkungsstruktur mit Hilfe des Modells der Fertigung und zwar
wiederum in Form von Strukturprototypen beschrieben wird, erfolgt die Spezifikation der Fertigungslenkungsabläufe und -funktionen mit Nassi-Shneiderman-Struktogrammen und Pseudocode. Dabei werden einerseits Ablaufreihenfolgen durch spezielle Konstrukte des Struktogramms und andererseits Ablaufpriorisierungen und -richtung sowie die Funktionen durch
Befehlszeilen in Pseudocode konkretisiert. Diese Darstellung mittels Pseudocode bietet den
Vorteil von mnemonischen Sprachkonstrukten, die den Vorstellungen und Denkmustern der
Anwender entsprechen. Zur Formalisierung dieser Konstrukte wurde eine der Erweiterten
Backus-Naur-Form (EBNF) angelehnte Beschreibungsform verwendet.
Im Anschluß an die Definition der Syntax folgte die Darstellung der Semantik der Spezifikationssprache anhand der möglichen Ausprägungen der Funktionalität an Modellelementen, Fertigungselement- und Fertigungsvorgangsknoten, sowie der Ablaufstrukturen. Funktionen und
Kapitel6 22.10.99
1. Oktober 1999 20.20
Zusammenfassung und Ausblick
209
Abläufe basieren dabei auf dem Modell der Fertigung, das die Daten- und Strukturbasis der
Spezifikationssprache bildet. Um die Übersetzung der Beschreibungssprache in ein ablauffähiges Programm zu ermöglichen, wurden Funktionen und Abläufe außerdem in Algorithmen in
einer an die Programmiersprache C++ angelehnten Notation implementiert. Diesen Modulen
liegt eine Klassendefinition des Modells der Fertigung respektive der einzelnen Objekte des
Modells zugrunde.
Als Nachweis der Praktikabilität des Klassifikationsschemas und der Spezifikationssprache
wurden anschließend Anwendungsbeispiele anhand von allgemein genutzten Fertigungslenkungsverfahren, die sowohl einfacher, d.h. mit begrenztem Problembereich, als auch komplexer Natur, d.h. mit übergreifendem Problembereich, waren, gegeben. Hierbei wurde gezeigt,
daß die Klassifikation bei komplexen Verfahren ein wichtiges Hilfsmittel für die Spezifikationssprache darstellt, jedoch zur Beschreibung der Problematik nicht ausreicht, was die identische Strukturierung von zwei recht unterschiedlicher Verfahren verdeutlichte. In diesem Fall
wurden erst durch die Spezifikationssprache die Unterschiede herausgestellt. Darüberhinaus
wurde demonstriert, daß die Konstrukte der Spezifikationssprache ausreichen, die Mehrheit
aller Fertigungslenkungsprobleme, repräsentiert durch die dargestellten Standardverfahren,
abzubilden. Gleichzeitig verhindern sie Redundanzen und ermöglichen so eine sehr transparente und gut verständliche Darstellung.
Als Fortführung dieser Arbeit sollte ein intelligentes Werkzeug entwickelt werden, mit dem in
der Spezifikationssprache beschriebene Programme in einem ersten Schritt automatisch
geprüft bzw. verifiziert und anschließend in Programme in einer problembereichsunabhängigen Programmiersprache wie z.B. C++ übersetzt werden könnten. Dieses Werkzeug sollte
dabei auf dem bereits bestehenden Modellierungswerkzeug OOPUS1 aufbauen und dessen
Funktionalitäten zur Erstellung und Darstellung des Modells der Fertigung nutzen. Außerdem
wäre es sinnvoll zur Unterstützung der Übersetzung der Spezifikationssprache aus den hier
implementierten Funktionen und Abläufen eine Methodenbibliothek zu erstellen, die ebenfalls
mit in dieses Werkzeug integriert werden sollte. Für die Implementierung der Sprache wäre
darüber hinaus auch die Entwicklung eines Compilers denkbar, allerdings müßte dafür höchstwahrscheinlich eine weitergehende Formalisierung der Darstellung vorgenommen werden.
Durch die Integration der Methodenbibliothek könnte das Modellierungswerkzeug die
Beschreibung in der Spezifikationssprache mittels Vorschlägen2 möglicher respektive erlaubter
1
Objektorientierte Plattform für die Generierung und Integration individueller Fabrikplanungs- und
-steuerungssysteme vgl. [Hol97], [DFH95] u.a.
210
Kapitel 6
Sprachkonstrukte unterstützen und somit die Anwendung zusätzlich vereinfachen und
beschleunigen. Eine weitere Verbesserung der Benutzbarkeit dieses Modellierungswerkzeuges
könnte durch eine Optimierung der graphischen Darstellung der Spezifikationssprache erreicht
werden.
2
Z.B. könnten alle potentiellen Ablaufspezifikationen für einen Teilgraphen oder die potentiellen Funktionen respektive Teilfunktionen an einem Fertigungsknoten zur Auswahl gestellt werden.
Kapitel6 22.10.99
1. Oktober 1999 20.20
Literaturverzeichnis
7
211
Literaturverzeichnis
[Ada69]
Adam, Dietrich.:
Produktionsplanung bei Sortenfertigung. Ein Beitrag zur Theorie der Mehrproduktunternehmung. Gabler, Wiesbaden 1969.
[AMI89]
ESPRIT Consortium AMICE:
Open System Architecture for CIM. In: Research Reports ESPRIT. Project 688
AMICE Volume 1, Springer, Berlin 1989.
[BrPi81]
Bresser, W. P.; Pitra, L.:
Untersuchung von EDV-gestützten Systemen zur Grobplanung der Produktion.
In: FIR-Mitteilungen, Aachen 41/1981, S. 1-15.
[Bru81]
Brucker, P.:
Scheduling. Akademische Verlagsgesellschaft, Wiesbaden 1981.
[Brü95]
Brüggemann, W.:
Ausgewählte Probleme der Produktionsplanung: Modellierung, Komplexität
und neuere Lösungsmöglichkeiten. Physica, Heidelberg 1995.
[Bus89]
Busch, U.:
Entwicklung eines PPS-Systems : praktische Anleitung für Auswahl und Realisierung von Produktions-Planungs- und -Steuerungssystemen. Erich Schmidt,
Berlin 1989.
[CAPOSS]
IBM-Deutschland:
Capacity Planning and Operation Sequencing System-Extended (CAPOSS-E).
Programmbeschreibung Band 1: Planungssystem IBM Form SH12-5422.
[CMM67]
Conway, R.W.; Maxwell, W.L.; Miller, L.W.:
Theory of Scheduling, Addison Wesley, Reading, Mass., USA 1967.
[Cor98]
Corsten, H.:
Produktionswirtschaft: Einführung in das industrielle Produktionsmanagement.
Oldenbourg, München 1998.
[DaGe95]
Dangelmaier, W.; Geck-Mügge, K.:
Information model for manufacturing process monitoring and control. ISO
TC184/SC4/WG8-P3, working draft, Version 0.3, 1995.
[DaHo95]
Dangelmaier, W.; Holtkamp, R.:
Modellorientiertes Generierungssystem für Fertigungssteuerungssysteme. Zwischenbereich, Berichtszeitraum 1. Mai 1994 bis 31. Mai 1995. DFG Schwerpunktprogramm Modellierung der Produktion, Mai 1995.
[Dan99]
Dangelmaier, W.:
Fertigungsplanung: Planung von Aufbau und Ablauf der Fertigung; Grundlagen, Algorithmen und Beispiele. Springer, Berlin 1999.
212
Literaturverzeichnis
[DaWa97]
Dangelmaier, W.; Warnecke, H.-J.:
Fertigungslenkung: Planung und Steuerung des Ablaufs der diskreten Fertigung. Springer, Berlin 1997.
[DaWi93a]
Dangelmaier, W.; Wiedenmann, H.:
Modell der Fertigungssteuerung; In: Entwicklungen zur Normung von CIM.
Hrsg.: Warnecke, H.-J.; Schuster, R. und DIN Deutsches Institut für Normung e.
V. Beuth, Berlin 1993.
[DaWi93b]
Dangelmaier, W.; Wiedenmann, H.:
Konzepte für zukünftige flexible Fertigungen: Modellierung von Fertigungsund Steuerungsprozessen. In: DIN (Hrsg.): Referatensammlung CIM-Ergebnisse aus Forschung und Praxis. Stuttgart, 31. März/1. April 1993. Beuth, Berlin
1993, S. 7-1 - 7.46.
[DeM79]
DeMarco, T.:
Structured Analysis and System Specification. Prentice Hall, Englewood Cliffs,
N.J. 1979.
[DFH95]
Dangelmaier, W.; Felser, W.; Holtkamp, R.:
OOPUS - a distributed system for modelling, simulation and production planning and control. In: ESPRIT Working Group 9245. Improving Manufacturing
Performance in Distributed Enterprise: Advanced Systems and Tools. Edinburgh (U.K.), 1995, S. 79-88.
[DGW99]
Dangelmaier, W.; Grobbel, R.; Wenski, R.:
KOMNET- Kommunikationsplattform für kmU-Netzwerke. In: Elektronische
Märkte - Ein Schritt in eine andere Welt. Hrsg.: Dangelmaier, W.; Felser, W.
ALB-HNI-Verlagsschriftenreihe Innovative Produktion und Logistik. Paderborn
1999, S. 145-163.
[Dij69]
Dijkstra, E. W.:
Structured Programming, 1969. Reprinted in: Yourdon, E.: Classics in Software
Engineering. Yourdon Press. New York 1979.
[DIN66261] o.V.
DIN 66261: Sinnbilder für Struktogramme nach Nassi-Shneiderman. Hrsg.:
Deutsches Institut für Normung. Beuth, Berlin, 1985.
[DKS97]
Dangelmaier, W.; Kuhn, A.; Schekelmann, A.:
Modellierung von Fertigungssystemen zur Simulation und Wissensakquisition.
In: Tagungsband zum Graduiertenkollegs-Workshop im Rahmen der 27. Jahrestagung der GI. Hrsg.: Spaniol, O. Erschienen in der Reihe Aachener Beiträge
zur Informatik, Band 21, 1997, S. 141-155.
[DoDr95]
Domschke, W. Drexel, A.:
Einführung in Operations-Research. Springer, Berlin 1995.
[DSV93]
Domschke, W.; Scholl, A.; Voß, S.:
Produktionsplanung : ablauforganisatorische Aspekte. Springer, Berlin 1993.
Literaturverzeichnis
213
[Du96]
Duden:
Deutsches Universalwörterbuch. Dudenverlag, Mannheim 1996.
[DuIn89]
Duden Informatik:
Ein Sachlexikon für Studium und Praxis. Dudenverlag, Mannheim 1989.
[Eid95]
Eidenmüller, B.:
Die Produktion als Wettbewerbsfaktor: Herausforderungen an das Produktionsmanagement. Industrielle Organisation, Köln 1995.
[Fah95]
Fahrwinkel, U.:
Methode zur Modellierung und Analyse von Geschäftsprozessen zur Unterstützung des Business Process Reengineering. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1995.
[FFG94]
Fandel, G.; Francois, P.; Gubitz, K.-M.:
PPS-Systeme: Grundlagen, Methoden, Software, Marktanalyse. Springer, Berlin 1994.
[FFG97]
Fandel, G.; Francois, P.; Gubitz, K.-M.:
PPS- und integrierte betriebliche Softwaresysteme: Grundlagen - Methoden Marktanalyse. Springer, Berlin 1997.
[Feh88]
Fehrmann, J.:
Qualität und Transparenz - Zeitgemäßes Engineering bei Softwareprojekten. In
Software für die Fertigung: Produkt mit Problemen. AWF-Ausschuß für Wirtschaftliche Fertigung e.V, Eschborn 1988.
[Fel96]
Felser, W.:
Eine Methode zur Erstellung von Fertigungssteuerungsverfahren aus Bausteinen. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1996.
[FeSi98]
Ferstl, O.K.; Sinz, E.J.:
Grundlagen der Wirtschaftsinformatik. R. Oldenbourg, München 1998.
[Gal92]
Gal, T:
Grundlagen des Operations-Research: Graphen und Netzwerke, Netzplantechnik, Transportprobleme, ganzzahlige Optimierung. Springer, Berlin, 1992.
[Gei83]
Geitner, U. W.:
Betriebsinformatik für Produktionsbetriebe: REFA-Anwendungsmethodik d.
Betriebsinformatik. Hanser, München 1983.
[GGR92]
Glaser, H.; Geiger, W.; Rohde, V.:
PPS - Produktionsplanung und -steuerung: Grundlagen - Konzepte -Anwendungen. Gabler, Wiesbaden 1992.
[GJM91]
Ghezzi, C.; Jazayeri, M.; Mandrioli, D.:
Fundamentals of software engineering. Prentice Hall, Inc., New Jersey 1991.
214
Literaturverzeichnis
[Gol84]
Goldratt, E. M.:
The OPT-Way of thinking. GF+M Symposium München 1984.
[Gro74]
Große-Oetringhaus, W. F.:
Fertigungstypologie unter dem Gesichtspunkt der Fertigungsablaufplanung.
Duncker und Humblot, Berlin 1974.
[Gro96]
Groover, M. P.:
Fundamentals of modern manufacturing: materials, processes, and systems.
Prentice-Hall, Inc., New Jersey 1996.
[Gun85]
Guntram, U.:
Die Allgemeine Systemtheorie. Ein Überblick. ZfB, 55 (1985) 3, S. 296-323.
[Gut79]
Gutenberg E.:
Grundlagen der Betriebswirtschaftslehre, Erster Band, Die Produktion, 23. Auflage, Berlin et al., 1979.
[Hac84]
Hackstein, R.:
Produktionsplanung und -steuerung (PPS): ein Handbuch für die Betriebspraxis. VDI-Verlag, Düsseldorf 1984.
[Han92]
Hansen, H.R.:
Wirtschaftsinformatik I: Einführung in die betriebliche Datenverarbeitung.
Gustav Fischer, Stuttgart 1992.
[Harr84]
Harrington, J.:
Unterstanding the Manufacturing Process: key to successful CAD/CAM implementation. Marcel Dekker Inc., New York 1984.
[Hart95]
Hartmann, T.:
Spezifikation und Klassifikation von Methoden zur Definition hierarchischer
Abläufe. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1995.
[Heb89]
Hebbeler, M. B.:
Standardisierung von Ablauf- und Zeitplanung: einzel und Kleinserienfertigung. TÜV Rheinland, Köln 1989.
[HeBu87]
Heinrich, L.J.; Burgholzer, P.:
Systemplanung: die Planung von Informations- und Kommunikationssystemen.
R. Oldenbourg, München 1987.
[Hoi93]
Hoitsch, H.-J.:
Produktionswirtschaft: Grundlagen einer industriellen Betriebswirtschaftslehre.
Franz Vahlen, München 1993.
[HoDa97]
Holthöfer, N.; Dangelmaier, W.:
Verteilte und parallele Änderungsrechnung für Flow Shop Probleme auf der
Basis einer objektorientierten Plattform. Technical Report tr-rsfb-97-041; Universität Paderborn; Mai 1997.
Literaturverzeichnis
215
[Hol98]
Holtkamp, R.:
Ein objektorientiertes Rahmenwerk zur Erstellung individueller, verteilter Fertigungslenkungssysteme. Dissertation, HNI-Verlagsschriftenreihe, Paderborn
1999.
[Hol97]
Holtkamp, R.:
Modellierungswerkzeug OOPUS: Modellausführung OOPUS/X. In: Modellbasiertes Planen und Steuern der Fertigung. Hrsg.: Dangelmaier, W.; Wiedenmann, H. Beuth, Berlin 1997, S. 142-155.
[Hub93]
Hub, H.:
Betriebsorganisation. Gabler Studientexte, Gabler, Wiesbaden 1993.
[ISO94]
ISO 10303-11:
Product Data Representation and Exchange - Part 11. EXPRESS language
Reference Manual. International Organization for Standardization 1994.
[JKK82]
Jaeger, F.; Klein, A.; Kuntze, W.:
Betriebliche Fertigungswirtschaft: betriebswirtschaftliche Auspekte moderner
industrieller Produktion. expert, Stuttgart 1982.
[Kat94]
Katsundo, H.:
Analysis and Design of Manufacturing Systems; In: Handbook of design,
manufacturing and automation; Hrsg.: Dorf, R. C.; Kusiak, A. John Wiley &
Sons, Inc., New York 1994, S. 405-433.
[KiKu92]
Kieser, A.; Kubicek, H.:
Organisation. De Gruyter, Berlin 1992.
[KiSt93]
Kistner, K.-P.; Steven, M.:
Produktionsplanung. Physika, Heidelberg 1993.
[Kla99]
Klahold, R. F.:
Dimensionierung komplexer Produktionsnetzwerke. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1999.
[KlBu75]
Klaus, G.; Buhr, M.:
Philosophisches Wörterbuch. VEB Enzyklopädie, Leipzig 1975.
[KlLi76]
Klaus, G.; Liebscher:
Wörterbuch der Kybernetik. Dietz, Berlin 1976.
[Knu98]
Knutilla, A.; et al.:
Process Specification Language: Analysis of Existing Representations, NISTIR
6133, National Institute of Standards and Technology, Gaithersburg, MD 1998.
[Kuh98]
Kuhn, A.:
Referenzmodell für Produktionsprozesse zur Untersucheung und Gestaltung
von PPS-Aufgaben. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1998.
216
Literaturverzeichnis
[Kur78]
Kurbel, K.:
Simultane Produktionsplanung bei mehrstufiger Serienfertigung: Möglichkeiten
u. Grenzen d. Losgrößen-, Reihenfolge- u. Terminplanung. E. Schmidt, Berlin
1978.
[Kur83]
Kurbel, K.:
Software Engineering im Produktionsbereich. Gabler, Wiesbaden 1983.
[Kur93]
Kurbel, K.:
Produktionsplanung und -steuerung. R. Oldenbourg, München 1993.
[LaSc85]
Lamport, L.; Schneider, F.B.:
Formal Foundation for Specification and Verification. Distributed Systems:
Methods and Tools for Specification. An Advanced Course. In: Lecture Notes in
Computer Science. Hrsg.: Paul, M.; Siegert, H.J. Springer, Berlin 1985.
[LeMa94]
Lehner, F.; Maier, R.:
Daten, Informationen, Wissen - Versuch einer Begriffsdefinition für die Wirtschaftsinformatik. WHU Koblenz, Schriftenreihe des Lehrstuhls für Wirtschaftsinformatik, Forschungsbericht Nr. 11, Mai 1994.
[Lip91]
Lippman, St. B.:
C++ Einführung und Leitfaden. Addison-Wesley, Bonn 1991.
[LMW86]
Loeckx, J.; Mehlhorn, K.; Wilhelm, R.:
Grundlagen der Programmiersprachen. B. G. Teubner, Stuttgart 1986.
[MAS86]
Martinez, J.; Alla, H.; Silva, M.:
Petri Nets for the Specification of FMSs. In: Modelling and Design of Flexible
Manufacturing Systems. Hrsg.: Kusiak, A. Elsevier Science Publishers B.V.,
Amsterdam, 1986.
[Mel94]
Melzer-Ridinger, R.:
PPS: systemgestützte Produktionsplanung: Konzeption und Anwendung. R.
Oldenbourg, München, Wien 1994.
[Mer95]
Mertens, P.:
Integrierte Informationsverarbeitung. Gabler, Wiesbaden 1995.
[MSJ94]
Mertins, K.; Süssenguth, W.; Jochem, R.:
Modellierungsmethoden für rechnerintegrierte Produktionsprozesse: Unternehmensmodellierung, Softwareentwurf, Schnittstellendefinition, Simulation. Hanser, München 1994.
[MüMe73]
Müller-Merbach, H.:
Operations Research: Methoden und Modelle der Optimalplanung. Franz Vahlen, München 1973.
[NaSh73]
Nassi. I.; Shneiderman, B.:
Flowchart Techniques for Structured Programming. SIGPLAN Notices, Band 8,
Nr. 8, August 1973, S. 12-26.
Literaturverzeichnis
217
[Oßw79]
Oßwald, J.:
Produktionsplanung bei losweiser Fertigung: Operationale Modelle zur simultanen Programm-, Ablauf- und Losgrößenplanung bei ein- und mehrstufiger Produktion. In: Beiträge zur industriellen Unternehmensforschung. Gabler,
Wiesbaden 1979.
[Pap90]
Pape, D. F.:
Logistikgerechte PPS-Systeme: Konzeption, Aufbau, Umsetzung. TÜV Rheinland, Köln 1990.
[Pla93]
Plapp, C.-U.:
Eine objektorientierte Sprache für die Modellierung von Produktionsprozessen
und die Implementierung von Leitständen zur Produktionsdurchführungsplanung. In: Textilmanagement, Band 3. Hrsg.: Egbers, G.; Fischer, T., Institut für
Textil- und Verfahrenstechnik Denkendorf. expert, Stuttgart 1993.
[Reg96]
Reger, K.:
Konzeption und Realisierung der Konfigurierbarkeit universeller Simulationssysteme. In: Advances in Simulation. Hrsg.: Kerckhoffs, E.; Lehmann, A.;
Pierreval, H.; Zobel, R., Society for Computer Simulation Int. Erlangen 1996.
[Rit98]
Rittgen, P.:
Prozeßtheorie der Ablaufplanung: algebraische Modellierung von Prozessen,
Ressourcen Restriktionen und Zeit. B. G. Teubner, Stuttgart 1998.
[Röt91]
Rötzel, A.:
Rechnerunterstützte Fertigungsplanung und -steuerung. Hüthig, Heidelberg
1991.
[Ros80]
Roschmann, K.-H.:
Fertigungssteuerung: Einführung und Überblick; Hanser, München 1980.
[Run90]
Runzheimer, B.:
Operations-Research. Gabler, Wiesbaden 1990.
[Sai85]
Sainis, P.:
Die neuesten Tendenzen in der Fertigungssteuerung und ihre Anwendung in der
Praxis. In: ZwF 80 (1985) 12, S. 561-566.
[Sau93]
Sauer, J.:
Wissensbasiertes Lösen von Ablaufplanungsproblemen durch explizite Heuristiken. Dissertation. In: Berichte aus dem Fachbereich Informatik, Hrsg.: Die
Professoren des Fachbereichs Informatik, Universität Oldenburg. März 1993.
[See75]
Seelbach, H.:
Ablaufplanung. Physika, Würzburg 1975.
[ScDa99]
Schmidtmann, A.; Dangelmaier, W.:
A Specification Language for Production Control. In: International Conference
on Quality Manufacturing. Hrsg.: Katz, Z.; du Preez, N. Stellenbosch, South
Africa, January 13-15, 1999, S. 195-201.
218
Literaturverzeichnis
[Sche98]
Scheer, A.-W.:
Wirtschaftsinformatik: Referenzmodelle für industrielle Geschäftsprozesse.
Springer, Berlin 1998.
[Sche91]
Scheer, A.-W.:
Fertigungssteuerung: Expertenwissen für die Praxis. R. Oldenbourg, München
1991.
[Schn94]
Schneeweiß, C.:
Elemente einer Theorie hierarchischer Planung. OR Spektrum, 16/1994, S. 161168.
[Schn96]
Schneider, U.:
Ein formales Modell und eine Klassifikation für die Fertigungssteuerung. Dissertation, HNI-Verlagsschriftenreihe, Paderborn 1996.
[Scho80]
Schomburg, E.:
Entwicklung eines betriebstypologischen Instrumentariums zur systematischen
Ermittlung von Anforderungen an EDV-gestützte Produktionsplanungs- und steuerungssysteme im Maschinenbau. Dissertation, Rheinisch-Westfälische
Technische Hochschule Aachen 1980.
[Scho98]
Schotten, M.:
Produktionsplanung und -steuerung: Grundlagen, Gestaltung und Konzepte.
Springer, Berlin 1998.
[Schr92]
Schrödel, O.:
Flexible Werkstattsteuerung mit objektorientierten Softwarestrukturen. Hanser,
München 1992.
[Schu82]
Schulz, A.:
Methoden des Softwareentwurfs und Strukturierte Programmierung. De Gruyter, Berlin 1982.
[ScWi94]
Schenck, D.; Wilson, P.:
Information Modelling: The EXPRESS Way. Oxford University Press, New
York 1994.
[Seb92]
Sebesta, R. W.:
Concepts of programming languages. Benjamin/Cummings Publishing Company, Inc., New York 1992.
[SIK98]
Schlenoff, C., Ivester, R., Knutilla, A.:
A Robust Ontology for Manufacturing Systems Integration. In: Proceedings of
the 2nd International Conference on Engineering Design and Automation.
Maui, August, 1998.
[SIM93]
SIMPLE++
SIMPLE++ Referenzhandbuch. AESOP GmbH, Stuttgart 1993.
Literaturverzeichnis
219
[SKR96]
Schlenoff, C.; Knutilla, A.; Ray, S.:
Unified Process Specification Language: Requirements for Modeling Process,
NISTIR 5910, National Institute of Standards and Technology, Gaithersburg,
MD 1996.
[SMJ93]
Spur, G.; Mertins, K.; Jochem, R.:
Integrierte Unternehmensmodellierung. In: Entwicklungen zur Normung von
CIM. Hrsg.: Warnecke, H.-J.; Schuster, R. und DIN Deutsches Institut für Normung e.V. Beuth, Berlin 1993.
[Sod74]
Sodeur, W.:
Empirische Verfahren zur Klassifikation. B. G. Teubner, Stuttgart 1974.
[Spu92]
Spur, G.:
Datenbanken für CIM. TÜV Rheinland, Berlin 1992.
[Sta88]
Stanek, W.:
Rechnergestützte Fertigungssteuerung: math. Methoden. VEB Technik, Berlin
1988.
[Swi89]
Switalski, M.:
Hierarchische Produktionsplanung. Physica, Heidelberg 1989.
[Ver93]
Vernadat, F.:
CIMOSA: Enterprise Modelling and Enterprise Integration Using a ProcessBased Approach. In: Information Infrastructure Systems for Manufacturing (B14). Hrsg.: Yoshikawa, H.; Goossenaerts, J. Elsevier Science B.V., North-Holland 1993.
[WaAu96]
Warnecke, G.; Augustin, H.; u.a.:
Aufbau und Anwendungen eines integrierten Prozeßmodells für die Produktion.
Industrie Management, Gito, 5/96, S. 21-25.
[Wat90]
Watt, D. A.:
Programming Language Concepts and Paradigms. Prentice Hall, New York,
1990.
[Wei94]
Weigelt, M.:
Dezentrale Produktionssteuerung mit Agenten-Systemen: Entwicklung neuer
Verfahren und Vergleich mit zentraler Lenkung. Dissertation, Gabler, Wiesbaden 1994.
[Wes98]
Westkämper, E.:
Neue Lösungswege für das Auftragsmanagement in vernetzten Strukturen. In:
3. Stuttgarter PPS-Seminar F31. Stuttgart, Juni 1998, S. 9-25.
[WiBa98]
Wiendahl, H.-H.; Balve, P.:
Organisation und PPS ohne Widersprüche - Treffsichere Auswahl von Planungsmethoden. PPS Management 3 (1998) 3, S. 10-13.
220
Literaturverzeichnis
[Wie98]
Wiendahl, H.-H.:
Auftrags- und Informationsmanagement in Produktionsnetzwerken - Konzepte
und Erfahrungsberichte. In: 3. Stuttgarter PPS-Seminar F31. Stuttgart, Juni
1998.
[Wil93]
Williams, T. J.:
The Purdue Enterprise Reference Architecture. In: Information Infrastructure
Systems for Manufacturing (B-14). Hrsg.: Yoshikawa, H.; Goossenaerts, J.
Elsevier Science B.V., North-Holland, 1993.
[WNS96]
Wiendahl, H.-P.; Nyhuis, P.; Scholtissek, P.; Wahlers, T.: Produktionsplanung
und -steuerung, Ausgewählte Strategien und Verfahren der Produktionsplanung
und -steuerung. In: Betriebshütte. Hrsg.: Akademischer Verein Hütte e.V.; W.
Eversheim; G. Schuh. Springer, Berlin 1996, S. 14-83 bis 14-114.
[Wil84]
Wildemann, H.: Flexible Werkstattsteuerung durch Integration von KanbanPrinzipien, CW-Publikationen, München 1984.
[Wir75]
Wirth, N.:
Algorithmen und Datenstrukturen. B.G. Teuber Studienbücher Informatik,
Stuttgart 1975.
[Zäp82]
Zäpfel, G.:
Produktionswirtschaft: operatives Produktions-Management. De Gruyter, Berlin 1982.
[Zäp94]
Zäpfel, G.: Entwicklungsstand und -tendenzen in PPS-Systemen. In: Handbuch
Produktionsmanagement. Hrsg.: Corsten, H. Gabler, Wiesbaden, 1994, S. 719745.
[Zei91]
Zeis, G.:
Methoden zur Steigerung der Wiederverwendbarkeit von Softwarekomponenten in der Fertigungsautomatisierung. Dissertation, Arbeitsberichte des Instituts
für mathematische Maschinen und Datenverarbeitung, Erlangen 1991.
[ZäMi87]
Zäpfel, G.; Missbauer, H.:
Produktionsplanung und -steuerung für die Fertigungsindustrie - ein Systemvergleich. In: Zeitschrift für Betriebswirtschaft (ZfB), 9/1987, S. 882-900.
[ZäMi88]
Zäpfel, G.; Missbauer, H.:
Neuere Konzepte der Produktionsplanung und -steuerung in der Fertigungsindustrie. In: WiSt, 17.Jg., 1988, S. 127-131.
[ZäPi96]
Zäpfel, G.; Piekarz, B.:
Supply chain Controlling: interaktive und dynamische Regelung der Materialund Warenflüsse. C. Ueberreuter, Wien 1996.
[Zül89]
Zülch, G.:
Der strategische Steuerungsraum - Ein Ansatz zur Systematisierung von Strategien der Fertigungssteuerung, VDI-Zeitschrift, No. 5, 1989.
8 Anhang
8
221
Anhang
Im folgenden soll kurz auf die Nutzung der Spezifikationssprache im Umfeld der Fertigungslenkung eingegangen werden. Aufgrund der begrenzten Möglichkeiten einer exakten Bestimmung von optimalen Abläufen und Verfahren in der Fertigungslenkung werden häufig Simulationen zur Lösung dieser Probleme genutzt. Inwieweit die Spezifikationssprache als
Hilfsmittel für derartige Simulationen dienen kann, wird hier dargestellt. Anschließend wird
die Einbindung der Fertigungslenkung in den Unternehmensworkflow, von dem sie ein Teilbereich ist, untersucht. Dabei werden die Vorteile der Anwendung der Spezifikationssprache für
diesen Problembereich herausgestellt.
8.1 Nutzung der Spezifikationssprache zur Simulation der Fertigungslenkung
Ebenso wie die Spezifikationssprache als Grundlage für die Erstellung eines Fertigungslenkungssystems bzw. eines ausführbaren Programms für die Fertigungslenkung dienen kann, ist
es auch möglich, auf ihr basierend eine Simulation der Fertigungslenkung vorzunehmen. Mit
Hilfe dieser Simulation kann über die Verwendung spezieller Abläufe und Funktionen respektive Verfahren entschieden und ein möglichst optimales Fertigungslenkungssystem entwickelt
werden. Simulationen werden heute bereits in vielen PPS-Systemen zur Entscheidungsunterstützung genutzt und zwar vor allem in Fertigungsleitständen zur Bestimmung der Reihenfolge
einzulastender Produktionsaufträge auf den Fertigungsmitteln und zur Terminierung dieser
Aufträge. Weitere Aufgabengebiete sind die Optimierung von Kapazitätsbelastungen und die
Materialverfügbarkeit.1 Im Gegensatz zu einer Simulation mit Hilfe der Spezifikationssprache
bieten derzeitige Simulationssysteme nur eine Anpassung der zugrunde liegenden Modelldaten
und sind dabei entscheidend von den jeweiligen Modellprämissen abhängig. Auf die Abläufe
und Funktionen der Fertigungslenkung üben sie keinen direkten Einfluß aus.
Einer Simulation auf Basis der Spezifikationssprache liegt das Modell der Fertigung als Struktur- und Datenbasis zugrunde. Daneben muß ein Zielsystem für die Fertigungslenkung erstellt
werden, das sich in Teilziele bezüglich der betrachteten Partialmodelle untergliedern läßt. Auf
dem Gesamtmodell oder auch den Teilmodellen erfolgt dann eine Simulation alternativer Fertigungslenkungsabläufe und Funktionen. Die Ergebnisse werden anschließend anhand der festgelegten Zielvorstellungen validiert und es wird eine Entscheidung bezüglich der vorteilhaftesten Alternative gefällt. Auf der Grundlage dieser Auswahl wird anschließend ein
1. Vgl. [FFG97]
222
8 Anhang
Fertigungslenkungssystem erstellt, das den Zielvorstellungen genau entspricht. Der Vorteil der
Nutzung der Spezifikationssprache im Rahmen dieser Anwendung liegt darin begründet, daß
sie die Abläufe und Funktionen der Fertigungslenkung, auf denen die Simulation aufbaut,
genau spezifiziert, und somit den Prozeß der Erstellung des Simulationsmodells und der
Durchführung der Simulationsläufe bedeutend vereinfacht und beschleunigt. Darüber hinaus
ermöglicht sie neben der Anpassung der Daten auch eine effiziente Adaption der Abläufe und
Funktionen.
Spezifikationssprache
Modell
Alternativen
Alternativen
Simulationsläufe
Simulation
Auswertungen
Fertigungslenkungssystem
Abbildung 7-1:Simulation der Fertigungslenkung
8.2 Einbindung der Fertigungslenkung in den Unternehmensworkflow
Die Fertigungslenkung kann als ein Teilbereich des Workflows2 Auftragsbearbeitung gesehen
werden, der wiederum ein Teilaspekt des gesamten Unternehmensworkflows3 ist. Sie ist dabei
abgesehen von der Produktion eingebunden in verschiedene andere Unternehmensbereiche,
wie z.B. die Beschaffung (Einkauf), den Versand (Vertrieb) u.a. Mit diesen Bereichen bestehen vielfältige Austauschbeziehungen bezüglich Informationen (Daten) und Gütern (Fertigungselementen), die direkte Einwirkungen auf die Abläufe und Funktionen der Fertigungslenkung haben. Diese Beziehungen erfordern klar definierte Schnittstellen zwischen den
Unternehmensbereichen und eine gemeinsame Datenbank, auf die alle Workflows gleichermaßen zugreifen können.4
2. Ein Workflow ist eine partielle oder vollständig geordnete Menge von Tasks. Tasks wiederum bilden
die Basisbauelemente für Workflows.
3. Dieses gilt allerdings nicht für die Unternehmen, deren einzige Auftragsauslösungsart die Produktion
auf Lager ist.
4. Vgl. [DGW99]
8 Anhang
223
Wie die folgende Abbildung zeigt, gibt es normalerweise für die Durchführung eines Fertigungsauftrages drei Vorgehensmöglichkeiten, die abhängig von gewissen äußeren Bedingungen sind. Entweder ist das angeforderte Produkt auf Lager und kann dort direkt entnommen
werden oder das Produkt wird fremdgefertigt und muß beim Hersteller bestellt werden oder es
wird selbst hergestellt. In diesem letzten Fall wird die Fertigungslenkung benötigt, um die
Erstellung des Gutes zu planen und zu steuern. In den beiden anderen Fällen wird die weitere
Auftragsbearbeitung von anderen Bereichen, wie z.B. dem Einkauf oder dem Versand, durchgeführt. Die Fertigungslenkung erhält die für den Auftrag nötigen Daten aus der gemeinsamen
Datenbank.
Einkauf
Fremdfertigung
Kundenauftrag
Fertigung
Produkt
auf Lager
Lieferung
Abbildung 7-2:Workflow vom Auftrag zur Lieferung
Die Eigenfertigung erfolgt in den meisten Fällen nach den in Bild 7-3 angegebenen Schritten.
Diese starre sukzessive Vorgehensstruktur widerspricht jedoch der Flexibilität und dem hierarchischen Aufbau von Workflowsystemen und zeigt auch sonst verschiedene bereits ausführlich
diskutierte Schwächen bezüglich Genauigkeit und Effizienz der Fertigungslenkung.5 Durch
die Nutzung der Spezifikationssprache kann diese Struktur aufgebrochen werden und die einzelnen Abläufe und Funktionen respektive Verfahren der Fertigungslenkung können auf den
verschiedenen Hierarchiestufen des Workflows flexibel eingesetzt und kombiniert werden. Die
Fertigungslenkung ist insoweit nicht mehr als monolithischer Block zu verstehen, sondern
kann in Partialmodelle zerlegt werden, die einzeln durchgeführt werden können. Die sich aus
der partiellen Entkopplung des Fertigungslenkungsproblems ergebende Notwendigkeit der
Abstimmung zwischen den Teilbereichen wird ebenfalls durch die Spezifikationssprache und
das ihr zugrunde liegende Modell der Fertigung geregelt.
Der Workflow muß jedoch nicht auf ein Unternehmen beschränkt sein, sondern kann z.B.
Zulieferer und Abnehmer miteinander verbinden. In diesem Fall spricht man von einer „Lieferkette“ oder „Supply Chain“, also einem Wertschöpfungsverbund verschiedener Partner (Lieferanten, Logistische Dienstleister, Endkunden).6 Um diesen Verbund möglichst wirtschaftlich
5. Vgl. [Swi89], [DaWa97], u.a.
6. Vgl. [ZäPi96]
224
8 Anhang
Stücklistenauflösung
Bedarfsrechnung
Bestandsrechnung
sukzessive
Losgrößenbildung
Losgrößenverfahren
Durchlaufterminierung
vorwärts-/rückwärts
Terminierung
Mengen- und
Terminplanung
Freigabe
Feinplanung
Reihenfolgeverfahren /
Belegungsverfahren
Durchführung
Abbildung 7-3:Sukzessive Mengen- und Terminplanung
und rentabel zu gestalten, sollte die Fertigungslenkung der Verbundpartner verknüpft und ihre
Vorgehensstrategien aufeinander abgestimmt werden. Ein derartiges Vorgehen wird durch die
Nutzung der Spezifikationssprache als gemeinsames, umfassendes und einheitliches Beschreibungsmittel entscheidend unterstützt und vereinfacht.
Herunterladen