Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Ein Tag im Leben eines Eichhörnchens oder vom Modellieren von Prozessen zur Planung eines automatisierten Systems zur Verwaltung von materiellen Werten "Eichhörnchen-1.0" (Teil 1)

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)
Verwendete Illustration zu "Das MĂ€rchen vom Zaren Saltan" von A.S. Puschkin, Verlag "Kinderliteratur", Moskau, 1949, Leningrad, Illustrationen von K. Kuznetsov

Was hat es mit dem «Eichhörnchen» auf sich?

Ich werde sofort erklĂ€ren, was es mit dem «Eichhörnchen» auf sich hat. Als ich im Internet auf amĂŒsante Projekte stieß, die UML in Bezug auf Themen aus MĂ€rchen (zum Beispiel, [1]) lehren, wollte ich fĂŒr meine Studenten ebenfalls ein solches Beispiel vorbereiten, um zunĂ€chst drei Diagrammarten zu lernen: AktivitĂ€tsdiagramm, Anwendungsfalldiagramm und Klassendiagramm. Ich ĂŒbersetze die Diagrammnamen absichtlich nicht ins Russische, um Streitigkeiten ĂŒber "Übersetzungsschwierigkeiten" zu vermeiden. Was wofĂŒr gedacht ist, erklĂ€re ich etwas spĂ€ter. In diesem Beispiel verwende ich die Umgebung Enterprise Architect von der australischen Firma hier Sparx Systems [2] – ein gutes Werkzeug zu einem fairen Preis. Und im Rahmen der Unterrichtsstunden wende ich Modelio an Modelio [3], ein gutes kostenloses Werkzeug fĂŒr objektorientierte Modellierung, 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 Automatisierung der Buchhaltung von materiellen Werten, die in diesen Prozessen auftritt.



Eine Insel im Meer liegt, (E1, E2)
Der Grad steht auf der Insel (E3, E1)
Mit den goldkuppligen Kirchen, (E4)
Mit TĂŒrmchen und GĂ€rten; (E5, E6)
Eine Fichte wÀchst vor dem Palast, (E7, E8)
Und darunter ein glÀsernes Haus; (E9)
Ein Eichhörnchen wohnt dort, (A1)
Und was fĂŒr ein Scherzbold! (A1)
Das Eichhörnchen singt Lieder, (P1, A1)
Und knabbert NĂŒsse, (P2)
Doch die NĂŒsse sind nicht einfach, (C1)
Alle Schalen sind golden, (C2)
Die Kerne reiner Smaragd; (C3)
Die Diener bewachen das Eichhörnchen, (P3, A2)
Sie dienen ihm mit verschiedener Hilfe (P4)
Und ein strenger Diakon wird zugeteilt (A3)
Strenge BuchfĂŒhrung ĂŒber die NĂŒsse; (P5, C1)
Das Heer verleiht ihm Ehre; (P6, A4)
Aus den Schalen gießen sie MĂŒnzen, (P7, C2, C4)
Und lassen sie ĂŒberall im Umlauf; (P8)
Die MĂ€dchen streuen Smaragde (P9, A5, C3)
In die Vorratskammern, und unter den Deckel; (E10, E11)


(A.S. Puschkin "Die Sage von Zar Saltan, seinem ruhmreichen und mĂ€chtigen Heldensohn FĂŒrst Guidon Saltanowitsch und der schönen Zarin Schwan") Die Arbeit an dem MĂ€rchen begann vermutlich im Jahr 1822, erstmals wurde das MĂ€rchen von Puschkin in der Sammlung „Gedichte A. Puschkins“ (Bd. III, 1832, S. 130—181) veröffentlicht. — 10 Jahre vom Entwurf bis zur Veröffentlichung, ĂŒbrigens!)

Einige Informationen zu den Codes, die rechts neben den Zeilen stehen. „A“ (von „Actor“) bedeutet, dass in der Zeile Informationen ĂŒber einen Prozessbeteiligten enthalten sind. „C“ (von „Class“) – Informationen ĂŒber die Klassenobjekte, die im Verlauf der Prozesse verarbeitet werden. „E“ (von „Environment“) – Informationen ĂŒber die Klassenobjekte, die die Umgebung der Prozesse charakterisieren. „P“ (von „Process“) – Informationen ĂŒber die Prozesse selbst.

Übrigens beansprucht auch die genaue Definition des Prozesses, ein Ausgangspunkt fĂŒr methodologische Streitigkeiten zu sein, zumindest weil es unterschiedliche Arten von Prozessen gibt: GeschĂ€fts-, Produktions-, Technologieprozesse usw. (man kann sich beispielsweise informieren ĂŒber hier [4] und hier [5]). Um Streitigkeiten zu vermeiden, vereinbaren wir, dass wir den Prozess aus der Perspektive seiner Wiederholbarkeit ĂŒber die Zeit und der Notwendigkeit zur Automatisierung betrachten, d.h. die Übertragung der AusfĂŒhrung eines Teils der Operationen des Prozesses auf ein automatisiertes System.

Hinweise zur Verwendung des AktivitÀtsdiagramms

Lassen Sie uns mit der Modellierung unseres Prozesses beginnen, indem wir das AktivitÀtsdiagramm verwenden. ZunÀchst möchte ich erklÀren, wie die oben genannten Codes in das Modell integriert werden. Es ist einfacher, dies mit einem grafischen Beispiel zu veranschaulichen, und wir werden gleichzeitig einige (fast alle notwendigen) Elemente des AktivitÀtsdiagramms besprechen.
Analysieren wir den folgenden Ausschnitt:



Das Eichhörnchen singt Lieder, (P1, A1)
Und knabbert NĂŒsse, (P2)
Doch die NĂŒsse sind nicht einfach, (C1)
Alle Schalen sind golden, (C2)
Die Kerne reiner Smaragd; (C3)



Wir haben zwei Schritte des Prozesses P1 und P2, einen Teilnehmer A1 und Objekte aus drei verschiedenen Klassen: Ein Objekt der Klasse C1 tritt in Schritt ein, wĂ€hrend die Objekte der Klassen C2 und C3 als Ergebnis der AktivitĂ€ten dieses Schrittes P2 unseres Prozesses ausgegeben werden. FĂŒr das Diagramm verwenden wir die folgenden Modellierungselemente.

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Der Ausschnitt unseres Prozesses kann ungefÀhr so dargestellt werden (Abbildung 1).

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Abbildung 1. Ausschnitt aus dem AktivitÀtsdiagramm

Um den Raum zu organisieren und das AktivitĂ€tsdiagramm zu strukturieren, verwenden wir einen nicht ganz Standardansatz, was die klassische Anwendung der UML-Notation angeht. DafĂŒr gibt es mehrere GrĂŒnde. Erstens erstellen wir vor dem Beginn der Modellierung ein sogenanntes Modeling Agreement., in dem wir alle Besonderheiten der Notation festhalten. Zweitens wurde dieser Ansatz bereits mehrfach erfolgreich in der Phase der GeschĂ€ftsmodellierung bei realen Projekten zur Erstellung von Softwaresystemen angewandt. Die Ergebnisse wurden von unserem kleinen Autorenteam in dem entsprechenden urheberrechtlich geschĂŒtzten Objekt [6] dokumentiert und fanden auch in einem Lehrbuch [7] Anwendung. FĂŒr das AktivitĂ€tsdiagramm definieren wir, dass das Diagrammfeld durch „Schwimmstreifen“ – Swim Lanes strukturiert wird. Der Name des Streifens entspricht dem Typ der Diagrammelemente, die auf diesem Streifen platziert werden.

„Eingangs- und Ausgangsartefakte“: auf diesem Streifen werden die Elemente Objects – Objekte angeordnet, die verwendet werden oder das Ergebnis eines bestimmten Schrittes im Prozess darstellen.
„Prozessschritte“: hier platzieren wir die Elemente Activity – die Aktionen der Prozessbeteiligten.
„Teilnehmer“: ein Streifen fĂŒr die Elemente, die die Rollen der AusfĂŒhrenden in unserem Prozess kennzeichnen werden. FĂŒr sie verwenden wir dasselbe modellierende Element Object – Objekt, fĂŒgen ihm jedoch das Stereotyp „Actor“ hinzu.
Der nĂ€chste Streifen heißt „GeschĂ€ftsregeln“ Auf diesem Abschnitt werden wir die Regeln fĂŒr die DurchfĂŒhrung der Schritte des Prozesses in Textform festhalten, und dafĂŒr werden wir das modellierende Element Note – Anmerkung – verwenden.
Hier halten wir an, obwohl wir zusĂ€tzlich auch den Abschnitt nutzen könnten „Tools“ zur Sammlung von Informationen ĂŒber den Automatisierungsgrad des Prozesses. Ein weiterer Abschnitt könnte hilfreich sein „Positionen und Abteilungen der Teilnehmer“, den man verwenden kann, um Rollen mit Positionen und Abteilungen der Prozessbeteiligten zu verknĂŒpfen.

All das, was ich gerade beschrieben habe, ist ein Teil des Modellierungsabkommens, dieser Teil des Abkommens betrifft die Regeln fĂŒr die Organisation eines Diagramms und entsprechend die Regeln fĂŒr dessen Erstellung und Lesbarkeit.

„Rezept“

Jetzt betrachten wir die Option, ein System speziell aus dem AktivitĂ€tsdiagramm zu modellieren. Dies ist nur eine von vielen Möglichkeiten. Ich möchte darauf hinweisen, dass es natĂŒrlich nicht die einzige ist. Das AktivitĂ€tsdiagramm wird fĂŒr uns von Bedeutung sein, da es den Übergang von der Prozessmodellierung zur Planung eines automatisierten Systems erleichtert. Dazu werden wir uns an methodische Empfehlungen halten – eine Art Rezept, das aus insgesamt fĂŒnf Phasen besteht und die Erstellung 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 relevante Daten fĂŒr den Systementwurf zu sammeln. FĂŒr Studierende, die mit UML beginnen, ist dies eine Art Rettungsring, der verhindert, in der Vielzahl von grafischen Mitteln und Techniken, die in UML und modernen Modellierungstools vorhanden sind, unterzugehen.

Hier ist das Rezept, gefolgt von den Diagrammen, die fĂŒr unser „mĂ€rchenhaftes“ Fachgebiet erstellt wurden.

Schritt 1. Wir beschreiben den Prozess in Form eines AktivitĂ€tsdiagramms. FĂŒr Prozesse, die mehr als 10 Schritte umfassen, ist es sinnvoll, das Prinzip der Dekomposition der Prozessschritte anzuwenden, um die Lesbarkeit des Diagramms zu erhöhen.

Schritt 2. Identifizieren Sie, was automatisiert werden kann (Schritte können beispielsweise in einem Diagramm hervorgehoben werden).

Schritt 3. Dem automatisierbaren Schritt ist eine oder mehrere Funktionen des Systems zuzuordnen (es kann eine viele-zu-viele-Beziehung bestehen), wir zeichnen ein Use-Case-Diagramm. Dies sind die Funktionen unseres Systems.

Schritt 4. Wir beschreiben die interne Organisation des AAS mithilfe eines Klassendiagramms – Klassendiagramm. Der Fluss Pfad „Eingangs- und Ausgangsobjekte (Dokumente)“ im AktivitĂ€tsdiagramm ist die Grundlage fĂŒr den Aufbau des Objektmodells und des EntitĂ€t-Beziehung-Modells.

Schritt 5. Wir analysieren die Notizen auf dem Pfad „GeschĂ€ftsregeln“, sie geben verschiedene Arten von EinschrĂ€nkungen und Bedingungen vor, die schrittweise in nicht-funktionale Anforderungen ĂŒberfĂŒhrt werden.
Die erhaltene Menge an Diagrammen (AktivitÀt, Use-Case, Klasse) bietet uns eine formalisierte Beschreibung in einer ziemlich strengen Notation, d.h. sie hat eine eindeutige Lesbarkeit. Jetzt können wir die technische Spezifikation entwickeln, die Anforderungsspezifikation klÀren usw.

Lassen Sie uns mit der Modellierung beginnen.

Schritt 1. Wir beschreiben den Prozess in Form eines AktivitÀtsdiagramms

Ich erinnere daran, dass wir das Diagrammfeld mit Hilfe von "schwimmenden" Bahnen strukturiert haben, wobei auf jeder Bahn Elemente gleichen Typs angeordnet sind (Abbildung 2). Neben den oben beschriebenen Diagrammelementen werden wir zusÀtzliche Elemente verwenden. Lassen Sie uns diese beschreiben.

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Die Entscheidung (Decision) kennzeichnet im Diagramm den Verzweigungspunkt unseres Prozesses, wĂ€hrend die ZusammenfĂŒhrung (Merge) den Punkt darstellt, an dem sich die Ströme wieder vereinigen. In den eckigen Klammern an den ÜbergĂ€ngen sind die Bedingungen fĂŒr den Übergang angegeben.

Zwischen zwei Synchronisatoren (Fork) werden wir parallele Prozesszweige anzeigen.
Unser Prozess kann nur ein Anfang – einen Eintrittspunkt (Initial) – haben. Ablegungen (Final) können jedoch mehrere sein, aber nicht fĂŒr unser spezifisches Diagramm.

Es gibt eine Vielzahl von Pfeilen; bei einer großen Anzahl von Elementen und Verbindungen kann man zunĂ€chst die Prozessschritte hervorheben und anschließend diese Schritte weiter aufschlĂŒsseln. Aber ich möchte unseren "mĂ€rchenhaften" Prozess zur Veranschaulichung vollstĂ€ndig auf einem Diagramm darstellen, wobei natĂŒrlich darauf geachtet werden muss, dass die Pfeile "nicht kleben", sodass genau nachverfolgt werden kann, was mit was verbunden ist.

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Abbildung 2. AktivitĂ€tsdiagramm – GesamtĂŒbersicht des Prozesses

Da in den poetischen Zeilen einige Prozessdetails weggelassen wurden, mussten sie wiederhergestellt werden, dargestellt mit Elementen auf weißem Hintergrund. Diese Details umfassen den Schritt „Speicherung/Übertragung zur Verarbeitung“ und mehrere Ein- und Ausgangsartefakte. Es ist erwĂ€hnenswert, dass dieser Schritt den Prozess nicht vollstĂ€ndig offenbart, da wir den Übertragungs- und den Empfangsschritt separat kennzeichnen mĂŒssten, und außerdem wĂ€re es notwendig, einen eigenen Schritt fĂŒr die Schalen hinzuzufĂŒgen und zudem zu bedenken, dass all diese materiellen Werte zuerst irgendwo vorĂŒbergehend gelagert werden mĂŒssen, usw. usf.
Lassen Sie uns auch beachten, dass die Frage nach der Herkunft der NĂŒsse bisher ohne Antwort geblieben ist – woher kommen sie und wie gelangen sie zum Eichhörnchen? Diese Frage (die in rot in der Notiz hervorgehoben ist – Element Note) erfordert eine gesonderte Bearbeitung! So arbeitet ein Analyst – StĂŒck fĂŒr StĂŒck Informationen sammeln, Annahmen treffen und von Fachexperten – sehr wichtigen und einfach unverzichtbaren Personen in der Phase des GeschĂ€ftsmodellierens bei der Erstellung von Systemen – ein „Okay“ oder „Nicht-Okay“ erhalten.

Beachten Sie auch, dass der Schritt des Prozesses P5 aus zwei Teilen besteht.

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Jeden Teil werden wir detaillierter aufschlĂŒsseln und nĂ€her betrachten (Abbildung 3, Abbildung 4), da die TĂ€tigkeiten, die speziell in diesen Schritten durchgefĂŒhrt werden, automatisiert werden.

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Abbildung 3. AktivitĂ€tsdiagramm – Detaillierung (Teil 1)

Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Abbildung 4. AktivitĂ€tsdiagramm – Detaillierung (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).
Vom Modellieren von Prozessen zur Entwicklung eines automatisierten Systems (Teil 1)

Alle Aufgaben werden von einem Prozessbeteiligten durchgefĂŒhrt – Diakon der Anordnung:

  • Erfasst die Gewichtsinformationen der NĂŒsse in das Protokoll;
  • Erfasst die InformationsĂŒbertragung der NĂŒsse im Protokoll;
  • Dokumentiert die Umwandlung der NĂŒsse in Schalen und Kerne;
  • Erfasst die Informationen ĂŒber die Kerne der NĂŒsse in das Protokoll;
  • Erfasst die Informationen ĂŒber die Schalen der NĂŒsse in das Protokoll.

Analyse der geleisteten Arbeit. Was kommt als NĂ€chstes?

Wir haben also eine umfangreiche Vorarbeit geleistet: Wir haben Informationen ĂŒber den Prozess gesammelt, den wir automatisieren wollen; wir haben begonnen, ein Modellvereinbarung zu erstellen (bislang nur bezĂŒglich der Nutzung eines AktivitĂ€tsdiagramms); wir haben den Prozess modelliert und sogar einige seiner Schritte dekomponiert; wir haben die Schritte des Prozesses identifiziert, die wir automatisieren möchten. Jetzt sind wir bereit, zu den nĂ€chsten Etappen ĂŒberzugehen und mit dem Entwurf der Systemfunktionen sowie seiner internen Organisation zu beginnen.

Wie bekannt ist, ist Theorie ohne Praxis nichts. Es ist unbedingt erforderlich, das "Modellieren" selbst auszuprobieren, da dies hilfreich ist, um die vorgeschlagene Vorgehensweise zu verstehen. Zum Beispiel könnte man in einer Modellierungsumgebung arbeiten. Modelio [3]. Wir haben nur einen Teil der Schritte des allgemeinen Prozessdiagramms dekomponiert (siehe Abbildung 2). Als praktische Aufgabe könnte angeboten werden, alle Diagramme in der Umgebung Modelio zu wiederholen und den Schritt "Übertragung/Empfang zur Lagerung und Verarbeitung" zu dekomponieren.
Wir betrachten die Arbeit in bestimmten Modellierungsumgebungen derzeit nicht, aber das könnte Gegenstand eigenstĂ€ndiger Artikel und Übersichten werden.

Im zweiten Teil des Artikels werden wir Methoden der Modellierung und Planung untersuchen, die in den Phasen 3-5 notwendig sind. Wir werden UML-Diagramme, insbesondere Anwendungsfall- und Klassendiagramme, verwenden. Fortsetzung folgt.

Quellenverzeichnis

  1. Website «UML2.ru». Forum der Analysten-Community. Allgemeiner Bereich. Beispiele. Beispiele von MÀrchen, die in Form von UML-Diagrammen dargestellt sind. [Elektronische Ressource] Zugriff: Internet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Website von Sparx Systems. [Elektronische Ressource] Zugriff: Internet: https://sparxsystems.com
  3. Website von Modelio. [Elektronische Ressource] Zugriff: Internet: https://www.modelio.org
  4. Großes EnzyklopĂ€disches Wörterbuch. Prozess (Interpretation). [Elektronische Ressource] Zugriff: Internet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Website „Organisation effektives Management“. Blog. Kategorie „Management von GeschĂ€ftsprozessen“. Definition eines GeschĂ€ftsprozesses. [Elektronische Ressource] Zugriff: Internet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Zertifikat Nr. 18249 ĂŒber die Registrierung und Hinterlegung von Ergebnissen geistiger AktivitĂ€t. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Manuskript eines Lehr- und Methodikhandbuchs mit dem Titel „Modellierung von Fachgebieten mit Enterprise Architect“ // 2011.
  7. Zolotuchina E.B., Vishnia A.S., Krasnikova S.A. Modellierung von GeschĂ€ftsprozessen. — M.: KURS, NIZ INFRAM, EBS Znanium.com. — 2017.

Quelle: habr.com

Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster