âEin Tag im Leben eines Eichhörnchensâ oder von der Modellierung von Prozessen zur Projektierung eines automatisierten Systems zur Erfassung von materiellen Werten âEichhörnchen-1.0â (Teil 1)

Was hat die âEichhörnchenâ damit zu tun?
Lassen Sie mich sofort erklĂ€ren, was die âEichhörnchenâ damit zu tun hat. Ich stieĂ im Internet auf amĂŒsante Projekte zur UML-Studie, die sich auf die Themen aus MĂ€rchen stĂŒtzen (zum Beispiel, [1]), und ich beschloss, meinen Studenten ein Ă€hnliches Beispiel vorzubereiten, damit sie zunĂ€chst drei Arten von Diagrammen studieren können: AktivitĂ€tsdiagramm, Anwendungsfalldiagramm und Klassendiagramm. Ich ĂŒbersetze die Namen der Diagramme absichtlich nicht ins Russische, um Streitigkeiten ĂŒber die âĂbersetzungsschwierigkeitenâ zu vermeiden. WofĂŒr was ist â ich werde das spĂ€ter etwas erlĂ€utern. In diesem Beispiel benutze ich die Umgebung Enterprise Architect von der australischen Firma [2] â ein gutes Werkzeug zu einem angemessenen Preis. Im Rahmen des Unterrichts verwende ich [3], ein ordentliches kostenloses Werkzeug fĂŒr objektorientiertes Design, das die UML2.0- und BPMN-Standards unterstĂŒtzt, ohne ĂŒbermĂ€Ăige grafische Möglichkeiten, aber völlig ausreichend, um die Grundlagen der Sprache zu lernen.
Wir planen, die AktivitÀten zur Erfassung materieller Werte zu automatisieren, die in diesen Prozessen auftreten.
âŠ
Die Insel liegt im Meer, (E1, E2)
Die Stadt auf der Insel steht (E3, E1)
Mit goldenen Kuppeln, (E4)
Mit TĂŒrmen und GĂ€rten; (E5, E6)
Eine Fichte wÀchst vor dem Palast, (E7, E8)
Und unter ihr ein kristallines Haus; (E9)
Dort lebt ein zahmes Eichhörnchen, (A1)
Und was fĂŒr ein Scherzkeks! (A1)
Das Eichhörnchen singt Lieder, (P1, A1)
Und nagt immer an NĂŒssen, (P2)
Und die NĂŒsse sind nicht einfach, (C1)
Alle Schalen sind golden, (C2)
Die Kerne sind reine Smaragde; (C3)
Die Diener bewachen das Eichhörnchen, (P3, A2)
Sie dienen ihm mit allerlei Diensten (P4)
Und der strenge Prokurator ist bereit (A3)
Genau Buch ĂŒber die NĂŒsse; (P5, C1)
Ehre gebĂŒhrt dem Heer; (P6, A4)
Aus den Schalen gieĂen sie MĂŒnzen, (P7, C2, C4)
Und lassen sie in der Welt verwenden; (P8)
Die MĂ€dchen streuen Smaragde (P9, A5, C3)
In die Schatzkammern, und unter den Haufen; (E10, E11)
âŠ
(A.S. Puschkins âDie Geschichte vom Zaren Saltan, ĂŒber seinen ruhmvollen und mĂ€chtigen Helden FĂŒrsten Guidon Saltanowitsch und ĂŒber die schöne Prinzessin Schwanâ, â 10 Jahre vom Konzept zur Veröffentlichung, ĂŒbrigens!)
Ein wenig ĂŒber die Codes, die rechts von den Zeilen geschrieben sind. "A" (von "Actor") bedeutet, dass in der Zeile Informationen ĂŒber einen Teilnehmer des Prozesses enthalten sind. "C" (von "Class") â Informationen ĂŒber Objekte von Klassen, die im Verlauf der Prozesse bearbeitet werden. "E" (von "Environment") â Informationen ĂŒber Objekte von Klassen, die die Umgebung der Prozesse charakterisieren. "P" (von "Process") â Informationen ĂŒber die Prozesse selbst.
Ăbrigens, die genaue Definition eines Prozesses beansprucht auch, der Grund fĂŒr methodologische Streitigkeiten zu sein, zumindest weil es verschiedene Arten von Prozessen gibt: GeschĂ€fts-, Produktions-, technische usw. (ein Beispiel dafĂŒr könnte sein, [4] und [5]). Um eine Kontroversen zu vermeiden, vereinbaren wir, dass der Prozess uns aus der Sicht seiner Wiederholbarkeit ĂŒber die Zeit und der Notwendigkeit zur Automatisierung interessiert, d.h. die DurchfĂŒhrung eines Teils der Prozessoperationen auf ein automatisiertes System zu ĂŒbertragen.
Notizen zur Anwendung des AktivitÀtsdiagramms
Lassen Sie uns mit der Modellierung unseres Prozesses beginnen und dafĂŒr das AktivitĂ€tsdiagramm verwenden. Zuerst erklĂ€re ich, wie die oben genannten Codes in das Modell integriert werden. Es ist einfacher, dies anhand eines grafischen Beispiels zu erlĂ€utern, und nebenbei schauen wir uns einige (fast alle, die wir benötigen) Elemente des AktivitĂ€tsdiagramms an.
Analysieren wir den folgenden Abschnitt:
âŠ
Das Eichhörnchen singt Lieder, (P1, A1)
Und nagt immer an NĂŒssen, (P2)
Und die NĂŒsse sind nicht einfach, (C1)
Alle Schalen sind golden, (C2)
Die Kerne sind reine Smaragde; (C3)
âŠ
Wir haben zwei Schritte des Prozesses P1 und P2, Teilnehmer A1 und Objekte von drei verschiedenen Klassen: ein Objekt der Klasse C1 tritt in den Schritt ein, die Objekte der Klassen C2 und C3 entstehen am Ausgang, als Ergebnis der TĂ€tigkeit dieses Schrittes P2 unseres Prozesses. FĂŒr das Diagramm verwenden wir die folgenden modellierenden Elemente.

Der Abschnitt unseres Prozesses kann etwa so dargestellt werden (Abbildung 1).

Abbildung 1. Abschnitt des AktivitÀtsdiagramms
Um den Raum zu organisieren und das AktivitĂ€tsdiagramm zu strukturieren, werden wir einen nicht ganz standardmĂ€Ăigen Ansatz anwenden, aus Sicht der klassischen Verwendung der UML-Notation. Aber dafĂŒr gibt es mehrere GrĂŒnde. Erstens, einfach bevor wir mit der Modellierung beginnen, erstellen wir sozusagen eine Modellierungsvereinbarung, in dem wir alle Besonderheiten der Verwendung der Notation festhalten. Zweitens wurde dieser Ansatz mehrfach erfolgreich in der Phase der GeschĂ€ftsmodellentwicklung in realen Projekten zur Erstellung von Softwaresystemen angewendet, die Ergebnisse wurden von unserem kleinen Autorenteam im entsprechenden Urheberrechtsobjekt [6] festgehalten und auch in einem Lehrbuch [7] verwendet. FĂŒr das AktivitĂ€tsdiagramm definieren wir, dass das Diagrammfeld mit âSchwimmbahnenâ strukturiert wird â Swim lanes. Der Name der Bahn entspricht dem Typ der Diagrammelemente, die auf dieser Bahn platziert werden.
âEingangs- und Ausgangsartefakteâ: auf dieser Bahn werden die Elemente Objects â Objekte, die verwendet werden oder das Ergebnis der DurchfĂŒhrung eines bestimmten Prozessschrittes sind, platziert.
âProzessschritteâ: hier platzieren wir die Elemente Activity â die Handlungen der Prozessbeteiligten.
âBeteiligteâ: eine Bahn fĂŒr die Elemente, die die Rollen der Akteure in unserer ProzessausfĂŒhrung kennzeichnen, fĂŒr sie verwenden wir dasselbe Modellierungselement Object â Objekt, fĂŒgen aber den Stereotyp âActorâ hinzu.
Die nĂ€chste Bahn heiĂt âGeschĂ€ftsregelnâ und auf dieser Bahn platzieren wir die Regeln zur AusfĂŒhrung der Prozessschritte in Textform, dafĂŒr verwenden wir das Modellierungselement Note â Anmerkung.
Hier werden wir pausieren, obwohl zusĂ€tzlich auch eine Bahn âWerkzeugeâ nĂŒtzlich sein könnte, um Informationen ĂŒber den Automatisierungsgrad des Prozesses zu sammeln. Eine weitere Bahn könnte hilfreich sein âPositionen und Abteilungen der Beteiligtenâ, die verwendet werden kann, um Rollen mit Positionen und Abteilungen der Prozessbeteiligten zu verknĂŒpfen.
Alles, was ich gerade beschrieben habe, ist ein Fragment der Vereinbarung zur Modellierung, dieser Teil der Vereinbarung bezieht sich auf die Regeln fĂŒr die Organisation eines Diagramms und entsprechend auf die Regeln fĂŒr dessen Erstellung und Lesung.
âRezeptâ
Nun betrachten wir die Modellierungsoption des Systems aus der Perspektive des AktivitĂ€tsdiagramms. Dies ist nur eine von vielen Optionen, ich möchte darauf hinweisen, dass dies natĂŒrlich nicht die einzige ist. Das AktivitĂ€tsdiagramm wird uns aus der Perspektive seiner Rolle beim Ăbergang vom Prozessmodell zur Entwicklung eines automatisierten Systems interessieren. Dazu werden wir uns an methodische Empfehlungen halten â eine Art Rezept, das aus nur fĂŒnf Phasen besteht und die Entwicklung von drei Arten von Diagrammen vorsieht. Die Anwendung dieses Rezepts hilft dabei, eine formalisierten Beschreibung des Prozesses zu erhalten, den wir automatisieren möchten, und Daten fĂŒr die Systementwicklung zu sammeln. FĂŒr Studenten, die UML zu Beginn ihres Studiums lernen, dient dies als eine Art Rettungsring, der verhindert, dass man im ganzen Spektrum der Darstellungsformen und -techniken, die in UML und modernen Modellierungsmitteln verfĂŒgbar sind, untergeht.
Hier ist also das Rezept selbst, und es folgen Diagramme, die fĂŒr unseren "mĂ€rchenhaften" Themenbereich erstellt wurden.
Schritt 1. Beschreiben Sie den Prozess in Form eines AktivitĂ€tsdiagramms. FĂŒr Prozesse mit mehr als 10 Schritten ist es sinnvoll, das Prinzip der Dekomposition der Schritte anzuwenden, um die Lesbarkeit des Diagramms zu erhöhen.
Schritt 2. Identifizieren Sie, was automatisiert werden kann. (Die Schritte können beispielsweise im Diagramm hervorgehoben werden).
Schritt 3. Dem automatisierbaren Schritt muss eine oder mehrere Systemfunktionen zugeordnet werden. (Die Beziehung kann viele-zu-viele sein), zeichnen Sie das Anwendungsfalldiagramm. Dies sind die Funktionen unseres Systems.
Schritt 4. Beschreiben Sie die interne Organisation des AS mithilfe eines Klassendiagramms. â Klasse. Der Schwimmstreifen "Eingangs- und Ausgangsobjekte (Dokumente)" im AktivitĂ€tsdiagramm ist die Grundlage fĂŒr den Aufbau eines objektorientierten Modells und eines EntitĂ€ten-Beziehungs-Modells.
Schritt 5. Analysieren Sie die Notizen auf der Bahn "GeschĂ€ftsregeln"., sie geben verschiedene Arten von EinschrĂ€nkungen und Bedingungen an, die allmĂ€hlich in nicht-funktionale Anforderungen ĂŒberfĂŒhrt werden.
Die erhaltene Gesamtheit von Diagrammen (AktivitÀt, Anwendungsfall, Klasse) liefert uns eine formalisierten Beschreibung in einer ausreichend strengen Notation, d.h. sie hat eine eindeutige Lesart. Jetzt kann das technische Lastenheft entwickelt, die Spezifikation der Anforderungen prÀzisiert usw. werden.
Lassen Sie uns mit der Modellierung beginnen.
Schritt 1. Beschreiben Sie den Prozess in Form eines AktivitÀtsdiagramms.
Ich erinnere daran, dass wir das Diagrammfeld mithilfe von «schwimmenden» Bahnen strukturiert haben, auf jeder Bahn befinden sich Elemente desselben Typs (Abbildung 2). Neben den oben beschriebenen Elementen des Diagramms werden wir zusÀtzliche Elemente verwenden, lassen Sie uns diese beschreiben.

Die Entscheidung (Decision) bezeichnet im Diagramm den Verzweigungspunkt unseres Prozesses, wĂ€hrend der ZusammenfĂŒhrungspunkt (Merge) den Punkt ihrer Wiedervereinigung darstellt. In den eckigen Klammern an den ĂbergĂ€ngen sind die Ăbergangsbedingungen festgehalten.
Zwischen zwei Synchronisatoren (Fork) zeigen wir parallele Prozesse.
Unser Prozess kann nur einen Anfang haben â einen Einstiegspunkt (Initial). Es kann hingegen mehrere AbschlĂŒsse (Final) geben, aber nicht fĂŒr unser konkretes Diagramm.
Es gibt eine erhebliche Anzahl von Pfeilen, bei vielen Elementen und Verbindungen kann man zunĂ€chst die Phasen des Prozesses identifizieren und dann diese Phasen weiter untergliedern. Aber ich möchte unseren «mĂ€rchenhaften» Prozess zur Veranschaulichung vollstĂ€ndig auf einem Diagramm zeigen, wobei natĂŒrlich darauf geachtet werden muss, dass sich die Pfeile «nicht berĂŒhren», sodass man genau verfolgen kann, was mit was verbunden ist.

Abbildung 2. AktivitĂ€tsdiagramm â allgemeiner Ăberblick ĂŒber den Prozess.
Da in den poetischen Zeilen einige Details des Prozesses weggelassen wurden, mussten sie wiederhergestellt werden; sie sind durch Elemente mit weiĂem Hintergrund dargestellt. Diese Details umfassen den Schritt «Ăbertragung/Eingang zur Lagerung und Verarbeitung» sowie mehrere Eingangs- und Ausgangsartefakte. Es ist erwĂ€hnenswert, dass dieser Schritt den Prozess auch nicht vollstĂ€ndig aufdeckt, da wir den Schritt der Ăbertragung und den Schritt des Empfangs separat kennzeichnen mĂŒssten, und fĂŒr die Schalen mĂŒsste man einen separaten Schritt hinzufĂŒgen, zudem mĂŒsste man auch bedenken, dass all diese materiellen Werte irgendwo vorĂŒbergehend gelagert werden mĂŒssen usw.
AuĂerdem beachten wir, dass die Frage nach dem Herkunftsort der NĂŒsse â woher sie kommen und wie sie zum Eichhörnchen gelangen â bisher unbeantwortet bleibt. Diese Frage (hervorgehoben in roter Schrift im Hinweis â Element Note) erfordert eine gesonderte Bearbeitung! So arbeitet ein Analyst â StĂŒck fĂŒr StĂŒck Informationen sammeln, Annahmen formulieren und von Fachexperten â sehr wichtigen und unersetzlichen Personen in der Phase des GeschĂ€ftsmodellierens bei der Erstellung von Systemen â âOkayâ oder âNicht okayâ bekommen.
Beachten wir auch, dass der Schritt des Prozesses P5 aus zwei Teilen besteht.

Und wir zerlegen jeden Teil und betrachten ihn genauer (Abbildung 3, Abbildung 4), da die AktivitĂ€ten, die in diesen Schritten durchgefĂŒhrt werden, automatisiert werden.

Abbildung 3. AktivitĂ€tsdiagramm â Detailierung (Teil 1)

Abbildung 4. AktivitĂ€tsdiagramm â Detailierung (Teil 2)
Schritt 2. Identifizieren Sie, was automatisiert werden kann.
Die Schritte, die automatisiert werden sollen, sind in den Diagrammen farblich hervorgehoben (siehe Abbildung 3, Abbildung 4).

Alle TĂ€tigkeiten werden von einem Prozessbeteiligten â dem Auftragsdiakon â ausgefĂŒhrt:
- Er trĂ€gt die Informationen ĂŒber das Gewicht des Nuss in die Liste ein;
- Er trĂ€gt die Informationen ĂŒber die Ăbergabe des Nuss in die Liste ein;
- Er dokumentiert den Fakt, dass der Nuss in Schalen und Kerne umgewandelt wurde;
- Er trĂ€gt die Informationen ĂŒber den Kern des Nuss in die Liste ein;
- Er trĂ€gt die Informationen ĂŒber die Schalen des Nuss in die Liste ein.
Analyse der geleisteten Arbeit. Was kommt als NĂ€chstes?
Also, wir haben eine umfassende Vorarbeit geleistet: Wir haben Informationen ĂŒber den Prozess gesammelt, den wir automatisieren wollen; wir haben begonnen, eine Vereinbarung zur Modellierung zu erstellen (bislang nur in Bezug auf die Verwendung des AktivitĂ€tsdiagramms); wir haben den Prozess modelliert und sogar mehrere seiner Schritte zerlegt; wir haben die Schritte des Prozesses identifiziert, die wir automatisieren werden. Jetzt sind wir bereit, zu den nĂ€chsten Phasen ĂŒberzugehen und mit dem Design der Funktionen des Systems und seiner inneren Organisation zu beginnen.
Wie bekannt ist, ist Theorie ohne Praxis nichts. Man muss unbedingt "Modellierung" mit eigenen HĂ€nden ausprobieren, das ist nĂŒtzlich, um den vorgeschlagenen Ansatz zu verstehen. Zum Beispiel kann man in einer Modellierungsumgebung arbeiten [3]. Wir haben nur einen Teil der Schritte des allgemeinen Prozessdiagramms zerlegt (siehe Abbildung 2). Als praktische Aufgabe kann vorgeschlagen werden, alle Diagramme in der Modelio-Umgebung zu wiederholen und die Zerlegung des Schrittes âĂbergabe/Empfang zur Lagerung und Verarbeitungâ durchzufĂŒhren. Die Arbeit in spezifischen Modellierungsumgebungen betrachten wir vorerst nicht, aber das könnte Gegenstand eigenstĂ€ndiger Artikel und Ăberblicke werden.
Im zweiten Teil des Artikels werden wir die Techniken der Modellierung und des Designs behandeln, die in den Phasen 3-5 erforderlich sind, wobei wir UML-Diagramme wie Use Case und Klassendiagramm verwenden werden. Fortsetzung folgt.
Website «UML2.ru». Forum der Gemeinschaft der Analysten. Allgemeiner Abschnitt. Beispiele. Beispiele von MÀrchen, die in Form von UML-Diagrammen gestaltet sind. [Elektronische Ressource] Zugangsmodus: Internet:
Literaturverzeichnis
- Website Modelio. [Elektronische Ressource] Zugangsmodus: Internet:
- Website von Sparx Systems. [Elektronische Ressource] Zugangsmodus: Internet:
- Website Modelio. [Elektronische Ressource] Zugangsmodus: Internet:
- GroĂes EnzyklopĂ€disches Wörterbuch. Prozess (Interpretation). [Elektronische Ressource] Zugangsmodus: Internet:
- Website âOrganisation fĂŒr effektives Managementâ. Blog. Rubrik âManagement von GeschĂ€ftsprozessenâ. Definition eines GeschĂ€ftsprozesses. [Elektronische Ressource] Zugangsmodus: Internet:
- Zertifikat Nr. 18249 ĂŒber die Registrierung und Hinterlegung eines Werkes des geistigen Eigentums. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Manuskript des Lehr- und Methodikhandbuchs mit dem Titel âModellierung des Themenbereichs unter Verwendung von Enterprise Architectâ // 2011.
- Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Modellierung von GeschĂ€ftsprozessen. â M.: KURS, NIĐŠ INFRAM, EBS Znanium.com. â 2017.
Quelle: habr.com
