Von der Prozessmodellierung bis zum Entwurf eines automatisierten Systems (Teil 1)

"Ein Tag im Leben eines Eichhörnchens" oder von Modellierungsprozessen bis zum Entwurf eines automatisierten Systems zur Berücksichtigung von Materialwerten "Eichhörnchen-1.0" (Teil 1)



Die Illustration für A. S. Puschkins Geschichte von Zar Saltan wurde verwendet, veröffentlicht von Children's Literature, Moskau, 1949, Leningrad, Zeichnungen von K. Kuznetsov


Was hat das "Protein" damit zu tun?


Ich werde gleich erklären, worum es beim "Eichhörnchen" geht. Nachdem ich im Internet über unterhaltsame Projekte zum Erlernen von UML gestolpert war und mich auf einen Themenbereich stützte, der aus Märchenplots entlehnt war (z. B. hier [1]), beschloss ich, ein ähnliches Beispiel für meine Schüler vorzubereiten, damit ich zunächst nur drei Arten von Diagrammen studieren konnte: Aktivität Diagramm, Anwendungsfalldiagramm und Klassendiagramm. Ich übersetze die Namen der Diagramme bewusst nicht ins Russische, um Streitigkeiten über die "Schwierigkeiten der Übersetzung" zu vermeiden. Was für was - ich werde es etwas später erklären. In diesem Beispiel verwende ich die Enterprise Architect-Umgebung der australischen Firma Sparx Systems [2] - ein gutes Tool zu einem vernünftigen Preis. Und im Rahmen des Trainings verwende ich Modelio [3], ein gutes kostenloses Tool für objektorientiertes Design, das UML2.0- und BPMN-Standards unterstützt, ohne unnötigen Aufwand an visuellen Fähigkeiten, aber völlig ausreichend, um die Grundlagen der Sprache zu erlernen.


Wir werden die Bilanzierung von Materialwerten, die in diesen Prozessen entstehen, automatisieren.


...
Die Insel liegt am Meer (E1, E2)
Stadt auf der Insel steht (E3, E1)
Mit Kirchen mit goldenen Kuppeln (E4)
Mit Türmen und Gärten; (E5, E6)
Fichte wächst vor dem Palast (E7, E8)
Und darunter ist ein Kristallhaus; (E9)
Das Eichhörnchen lebt dort manuell (A1)
Was für ein Entertainer! (A1)
Eichhörnchen singt Lieder, (P1, A1)
Ja, Nüsse nagen an allem, (P2)
Und die Nüsse sind nicht einfach, (C1)
Alle Muscheln sind golden, (C2)
Die Kerne sind reiner Smaragd; (C3)
Diener bewachen das Eichhörnchen (P3, A2)
Sie dienen ihr als eine andere Dienerin (P4)
Und der Angestellte wurde bestellt (A3)
Strenge Darstellung von Nüssen; (P5, C1)
Begrüßt ihre Armee; (P6, A4)
Aus einer Muschel eine Münze gießen (P7, C2, C4)
Ja, schwebe um die Welt; (P8)
Mädchen gießen Smaragd (P9, A5, C3)
In den Vorratskammern, aber im Hintergrund; (E10, E11)
...
(A.S. Puschkin "Die Geschichte des Zaren Saltan, seines Sohnes, des glorreichen und mächtigen Helden Prinz Gvidon Saltanovich und der schönen Prinzessin Swans", die Arbeit an der Geschichte begann vermutlich 1822, die erste Geschichte wurde von Puschkin in der Sammlung "Gedichte A. Puschkin “(Teil III, 1832, S. 130-181) - übrigens 10 Jahre vom Entwurf bis zur Veröffentlichung!)

Ein bisschen über die Codes, die rechts von den Zeilen geschrieben sind. "A" (von "Schauspieler") bedeutet, dass die Zeile Informationen über den Teilnehmer am Prozess enthält. "C" (aus "Klasse") - Informationen zu Klassenobjekten, die während der Ausführung von Prozessen verarbeitet werden. "E" (aus "Umgebung") - Informationen zu den Objekten von Klassen, die die Prozessausführungsumgebung charakterisieren. "P" (aus "Prozess") - Informationen über die Prozesse selbst.


Übrigens behauptet eine genaue Definition des Prozesses auch, die Ursache für methodische Streitigkeiten zu werden, schon allein deshalb, weil die Prozesse unterschiedlich sind: Geschäft, Produktion, Technologie usw. usw. (Sie können sich zum Beispiel hier [4] und hier [5] kennenlernen). Um Kontroversen zu vermeiden, sind wir uns einig, dass der Prozess uns hinsichtlich seiner zeitlichen Wiederholbarkeit und der Notwendigkeit einer Automatisierung , d. H. Verlagerung der Ausführung eines Teils der Prozessvorgänge auf ein automatisiertes System.


Anwendungshinweise zum Aktivitätsdiagramm


Beginnen wir mit der Modellierung unseres Prozesses und verwenden wir dazu das Aktivitätsdiagramm. Zunächst werde ich erklären, wie die obigen Codes im Modell verwendet werden. Es ist einfacher, dies anhand eines grafischen Beispiels zu erklären, aber gleichzeitig werden wir einige (fast alle Elemente, die wir benötigen) des Aktivitätsdiagramms analysieren.
Lassen Sie uns das folgende Fragment analysieren:


...
Eichhörnchen singt Lieder, (P1, A1)
Ja, Nüsse nagen an allem, (P2)
Und die Nüsse sind nicht einfach, (C1)
Alle Muscheln sind golden, (C2)
Die Kerne sind reiner Smaragd; (C3)
...

Wir haben zwei Schritte des Prozesses P1 und P2, Teilnehmer A1 und Objekte von drei verschiedenen Klassen: Ein Objekt der Klasse C1 kommt am Eingang des Schritts an, Objekte der Klassen C2 und C3 werden am Ausgang als Ergebnis der Aktivität dieses Schritts P2 unseres Prozesses erhalten. Für das Diagramm verwenden wir die folgenden Modellierungselemente.



Ein Fragment unseres Prozesses kann so dargestellt werden (Abbildung 1).



Abbildung 1. Ein Fragment eines Aktivitätsdiagramms


Um den Raum zu organisieren und das Aktivitätsdiagramm zu strukturieren, verwenden wir einen nicht ganz standardmäßigen Ansatz in Bezug auf die klassische Verwendung der UML-Notation. Dafür gibt es jedoch mehrere Gründe. Zunächst werden wir kurz vor Beginn der Modellierung eine sogenannte Modellierungsvereinbarung erstellen, in der wir alle Merkmale der Verwendung der Notation festlegen. Zweitens wurde dieser Ansatz in der Phase der Geschäftsmodellierung in realen Projekten zur Erstellung von Softwaresystemen wiederholt erfolgreich angewendet. Die Ergebnisse wurden von unserem kleinen Autorenteam im entsprechenden Copyright-Thema [6] aufgezeichnet und auch im Schulungshandbuch [7] verwendet. Für das Aktivitätsdiagramm bestimmen wir, dass die Struktur des Diagrammfelds mithilfe der "Schwimm" -Pfade - Schwimmbahnen strukturiert ist. Der Name der Spur entspricht dem Typ der Diagrammelemente, die auf dieser Spur platziert werden.


„Eingabe- und Ausgabeartefakte“: Objekte - Objekte, die verwendet werden oder das Ergebnis eines Prozessschritts sind, befinden sich auf dieser Spur.
„Prozessschritte“: Hier platzieren wir die Elemente der Aktivität - die Aktionen der Teilnehmer am Prozess.
„Teilnehmer“: Ein Pfad für Elemente, der die Rollen der Ausführenden von Aktionen in unserem Prozess angibt. Für sie verwenden wir dasselbe Modellierungsobjektelement - ein Objekt, fügen jedoch das Stereotyp „Akteur“ hinzu.
Der nächste Track heißt „Geschäftsregeln“ und auf diesem Track werden die Regeln zum Abschließen der Prozessschritte in Textform eingefügt. Dazu verwenden wir das Modellierungselement Note - eine Note.
Wir werden hier aufhören, obwohl wir zusätzlich die Spur „Tools“ verwenden könnten, um Informationen über den Grad der Prozessautomatisierung zu sammeln. Der Titel „Positionen und Einheiten von Teilnehmern“ kann ebenfalls nützlich sein. Er kann verwendet werden, um Rollen mit Positionen und Einheiten von Teilnehmern im Prozess zu verknüpfen.


Alles, was ich gerade beschrieben habe, ist ein Fragment der Modellierungsvereinbarung . Dieser Teil der Vereinbarung betrifft die Regeln für die Organisation eines Diagramms und dementsprechend die Regeln für das Schreiben und Lesen.


"Rezept"


Nun betrachten wir eine Systemmodellierungsoption aus dem Aktivitätsdiagramm. Dies ist nur eine der Optionen, ich stelle fest, dass er natürlich nicht die einzige ist. Das Aktivitätsdiagramm wird uns hinsichtlich seiner Rolle beim Übergang von der Prozessmodellierung zum Entwurf eines automatisierten Systems interessieren. Dazu halten wir uns an die methodischen Empfehlungen - eine Art Rezept, das aus nur fünf Stufen besteht und nur drei Diagrammtypen entwickelt. Die Anwendung dieses Rezepts hilft dabei, eine formalisierte Beschreibung des Prozesses zu erhalten, den wir automatisieren möchten, und Daten für das Systemdesign zu sammeln. Und für Schüler zu Beginn des UML-Lernens ist dies eine Art Lebensboje, mit der Sie nicht in all den verschiedenen visuellen Werkzeugen und Techniken ertrinken können, die in UML und modernen Modellierungswerkzeugen enthalten sind.


Hier folgen tatsächlich das Rezept selbst und dann die Diagramme, die für unseren Themenbereich „Märchen“ erstellt wurden.


Stufe 1. Wir beschreiben den Prozess in Form eines Aktivitätsdiagramms. Für einen Prozess, in dem mehr als 10 Schritte hervorgehoben sind, ist es sinnvoll, das Prinzip der Zerlegung von Prozessschritten anzuwenden, um die Lesbarkeit des Diagramms zu verbessern.


Stufe 2. Wir markieren, was automatisiert werden kann (Schritte können beispielsweise im Diagramm hervorgehoben werden).


Stufe 3. Der automatisierte Schritt muss der Funktion oder den Funktionen des Systems entsprechen (die Beziehung kann viele zu viele sein). Zeichnen Sie ein Anwendungsfalldiagramm. Dies sind die Funktionen unseres Systems.


Stufe 4. Wir beschreiben die interne Organisation des AS anhand des Klassendiagramms - Klasse. Der Schwimmpfad „Eingabe- und Ausgabeobjekte (Dokumente)“ im Aktivitätsdiagramm ist die Grundlage für die Erstellung eines Objektmodells und eines Entitätsbeziehungsmodells.


Stufe 5. Lassen Sie uns die Notizen auf dem Track „Geschäftsregeln“ analysieren. Sie enthalten verschiedene Arten von Einschränkungen und Bedingungen, die sich allmählich in nicht funktionale Anforderungen verwandeln.
Der resultierende Satz von Diagrammen (Aktivität, Anwendungsfall, Klasse) gibt uns eine formalisierte Beschreibung in einer ziemlich strengen Notation, d. H. hat eine eindeutige Lesart. Jetzt ist es möglich, Leistungsbeschreibungen zu entwickeln, die Spezifikation der Anforderungen zu klären usw.


Beginnen wir mit der Modellierung.


Stufe 1. Wir beschreiben den Prozess in Form eines Aktivitätsdiagramms.


Ich möchte Sie daran erinnern, dass wir das Kartenfeld mithilfe von „Schwimmspuren“ strukturiert haben. Auf jeder Spur befinden sich Elemente des gleichen Typs (Abbildung 2). Zusätzlich zu den oben beschriebenen Diagrammelementen werden wir zusätzliche Elemente verwenden, die wir anhand beschreiben.


Bild


Die Entscheidung gibt den Verzweigungspunkt unseres Prozesses im Diagramm und die Zusammenführung von Flüssen (Zusammenführen) an - den Punkt ihrer Wiedervereinigung. In eckigen Klammern bei Übergängen werden die Übergangsbedingungen aufgezeichnet.


Zwischen zwei Synchronisierern (Fork) werden parallele Zweige des Prozesses angezeigt.
Unser Prozess kann nur einen Anfang haben - einen Einstiegspunkt (Initial). Aber das Finale (Finale) kann mehrere sein, aber nicht für unser spezifisches Diagramm.


Es gibt viele Pfeile mit einer großen Anzahl von Elementen und Verknüpfungen. Sie können zuerst die Phasen des Prozesses auswählen und diese Phasen dann zerlegen. Aus Gründen der Klarheit möchte ich unseren „Märchen“ -Prozess in seiner Gesamtheit in einem Diagramm darstellen, während wir natürlich sicherstellen müssen, dass die Pfeile nicht „zusammenkleben“, sondern genau verfolgen können, was mit was verbunden ist.



Abbildung 2. Aktivitätsdiagramm - allgemeine Ansicht des Prozesses


Weil In den poetischen Zeilen werden einige Details des Prozesses weggelassen, ich musste sie wiederherstellen, sie werden durch Elemente mit weißem Hintergrund angezeigt. Zu diesen Details gehören der Schritt „Übertragen / Empfangen für Speicherung und Verarbeitung“ sowie verschiedene Eingabe- und Ausgabeartefakte. Es ist erwähnenswert, dass dieser Schritt den Prozess auch nicht vollständig aufdeckt, weil Wir müssten den Übertragungsschritt und den Empfangsschritt separat angeben und sogar für die Schalen einen separaten Schritt hinzufügen und auch vermuten, dass zuerst alle diese Materialwerte irgendwo irgendwo gespeichert werden sollten usw. usw.
Wir machen auch darauf aufmerksam, dass die Frage nach der Herkunft von Nüssen unbeantwortet bleibt - woher kommen sie und wie gelangen sie zu Eiweiß? Und diese Frage (sie ist in der Schrift in der Notiz rot hervorgehoben - das Notizelement) erfordert eine separate Studie! Und so arbeitet der Analyst - Stück für Stück Informationen sammeln, Annahmen treffen und von Domain-Experten „OK“ oder „Nein-OK“ erhalten - sehr wichtige und einfach unersetzliche Personen in der Phase der Geschäftsmodellierung bei der Erstellung von Systemen.


Beachten Sie auch, dass der Prozessschritt P5 aus zwei Teilen besteht.



Und wir zerlegen jeden Teil und betrachten ihn genauer (Abbildung 3, Abbildung 4), weil Aktivitäten, die im Rahmen dieser Schritte durchgeführt werden, werden automatisiert.



Abbildung 3. Aktivitätsdiagramm - Detail (Teil1)



Abbildung 4. Aktivitätsdiagramm - Detail (Teil2)


Stufe 2. Markieren Sie, was automatisiert werden kann


Die in den Diagrammen zu automatisierenden Schritte sind farblich hervorgehoben (siehe Abbildung 3, Abbildung 4).


Alle von ihnen werden von einem Teilnehmer des Prozesses ausgeführt - dem Sachbearbeiter des Auftrags:


  • Gibt Informationen über das Gewicht der Mutter in die Anweisung ein;
  • Gibt Informationen zur Übertragung der Mutter in die Anweisung ein;
  • Es behebt die Tatsache, dass Nüsse in Schalen und Körner umgewandelt werden.
  • Gibt Informationen über den Kern der Nuss in die Anweisung ein.
  • Gibt Informationen zu Walnussschalen in die Anweisung ein.

Analyse der geleisteten Arbeit. Was weiter?


Wir haben also viele Vorarbeiten geleistet: Wir haben Informationen über den Prozess gesammelt, den wir automatisieren werden. begann eine Modellvereinbarung zu formulieren (bisher nur in Bezug auf die Verwendung des Aktivitätsdiagramms); führte eine Prozesssimulation durch und zerlegte sogar mehrere seiner Schritte; identifizierte die Schritte des Prozesses, die wir automatisieren werden. Jetzt können wir mit den nächsten Schritten fortfahren und mit dem Entwurf der Funktionen des Systems und seiner internen Organisation beginnen.


Wie Sie wissen, ist eine Theorie ohne Praxis nichts. Sie müssen die "Modellierung" auf jeden Fall mit Ihren eigenen Händen versuchen. Dies ist auch nützlich, um den vorgeschlagenen Ansatz zu verstehen. Sie können beispielsweise in der Modellierungsumgebung Modelio [3] arbeiten. Wir haben nur einen Teil der Schritte des Diagramms der allgemeinen Ansicht des Prozesses zerlegt (siehe Abbildung 2). Als praktische Aufgabe kann empfohlen werden, alle Diagramme in der Modelio-Umgebung zu wiederholen und den Schritt „Übertragung / Empfang für Speicherung und Verarbeitung“ zu zerlegen.
Wir betrachten die Arbeit in bestimmten Modellierungsumgebungen noch nicht, dies kann jedoch Gegenstand unabhängiger Artikel und Rezensionen werden.


Im zweiten Teil des Artikels werden wir die in den Stufen 3 bis 5 erforderlichen Modellierungs- und Entwurfstechniken analysieren und die Anwendungsfälle und Klassen der UML-Diagramme verwenden. Fortsetzung folgt .


Liste der Quellen
  1. Website "UML2.ru". Community Analyst Forum. Allgemeiner Abschnitt. Beispiele. Beispiele für Märchen in Form von UML-Diagrammen. [Elektronische Ressource] Zugriffsmodus: Internet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Sparx Systems Website. [Elektronische Ressource] Zugriffsmodus: Internet: https://sparxsystems.com
  3. Website Modelio. [Elektronische Ressource] Zugriffsmodus: Internet: https://www.modelio.org
  4. Großes enzyklopädisches Wörterbuch. Der Prozess (Interpretation). [Elektronische Ressource] Zugriffsmodus: Internet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Site "Organisation eines effektiven Managements." Der Blog. Überschrift "Geschäftsprozessmanagement". Definition eines Geschäftsprozesses. [Elektronische Ressource] Zugriffsmodus: Internet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Zertifikat Nr. 18249 über die Registrierung und Hinterlegung eines Werkes des Ergebnisses geistiger Tätigkeit. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Ein Manuskript eines Lehrmittels mit dem Titel "Modellieren eines Themenbereichs mit Enterprise Architect" // 2011.
  7. Zolotukhina E.B., Cherry A.S., Krasnikova S.A. Geschäftsprozesse modellieren. - M .: KURS, SIC INFRA-M, EBS Znanium.com. - 2017.

Source: https://habr.com/ru/post/de448146/


All Articles