Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

“Un giorno nella vita di uno scoiattolo” o dalla modellazione dei processi alla progettazione di un sistema di contabilità patrimoniale automatizzato “Belka-1.0” (Parte 1)

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)
Un'illustrazione è stata utilizzata per "La storia dello zar Saltan" di A.S. Pushkin, pubblicata da Children's Literature, Mosca, 1949, Leningrado, disegni di K. Kuznetsov

Cosa c'entra lo "scoiattolo"?

Ti spiego subito cosa c’entra lo “scoiattolo”. Avendo trovato su Internet progetti divertenti per l'apprendimento dell'UML basati su un argomento preso in prestito dalle fiabe (ad esempio, qui [1]), ho anche deciso di preparare un esempio simile per i miei studenti in modo che potessero studiare solo tre tipi di diagrammi per cominciare: diagramma di attività, diagramma di caso d'uso e diagramma di classe. Non traduco deliberatamente i nomi dei diagrammi in russo per evitare controversie sulle “difficoltà di traduzione”. Spiegherò a cosa serve un po' più tardi. In questo esempio sto utilizzando il framework Enterprise Architect di un'azienda australiana Sistemi Sparx [2] – un buon strumento a un prezzo ragionevole. E come parte delle mie sessioni di allenamento utilizzo Modellio [3], un buon strumento di progettazione orientato agli oggetti gratuito che supporta gli standard UML2.0 e BPMN, senza inutili fronzoli in termini di capacità visive, ma abbastanza sufficiente per apprendere le basi del linguaggio.

Automatizzeremo l'attività di contabilità dei beni materiali, che nasce in questi processi.

...
Un'isola si trova sul mare, (E1, E2)
C'è grandine sull'isola (E3, E1)
Con chiese dalle cupole dorate, (E4)
Con torri e giardini; (E5, E6)
Davanti al palazzo cresce un abete rosso (E7, E8)
E sotto c'è una casa di cristallo; (E9)
Lì vive uno scoiattolo addomesticato, (A1)
Sì, che avventura! (A1)
Lo scoiattolo canta canzoni, (P1, A1)
Sì, continua a sgranocchiare noci, (P2)
Ma le noci non sono semplici, (C1)
Tutte le conchiglie sono dorate, (C2)
Il nucleo è puro smeraldo; (C3)
I servitori sorvegliano lo scoiattolo, (P3, A2)
La servono come servi vari (P4)
E fu assegnato un impiegato (A3)
La novità è un resoconto rigoroso delle noci; (P5, C1)
L'esercito la saluta; (P6, A4)
Dalle conchiglie viene versata una moneta (P7, C2, C4)
Lasciali andare in giro per il mondo; (P8)
Ragazze versano smeraldi (P9, A5, C3)
Nei magazzini e al coperto; (E10, E11)
...
(A.S. Pushkin “La storia dello zar Saltan, del suo glorioso e potente eroe, il principe Guidon Saltanovich e della bellissima principessa Swan”, i lavori sulla fiaba iniziarono presumibilmente nel 1822; la fiaba fu pubblicata per la prima volta da Pushkin nella raccolta "Poesie di A. Pushkin" (Parte III, 1832, pp. 130-181) — A proposito, 10 anni dall'ideazione alla pubblicazione!)

Un po 'sui codici scritti a destra delle righe. "A" (da "Attore") significa che la riga contiene informazioni su un partecipante al processo. “C” (da “Classe”) – informazioni sugli oggetti di classe che vengono elaborati durante l'esecuzione dei processi. “E” (da “Ambiente”) – informazioni sugli oggetti di classe che caratterizzano l'ambiente per l'esecuzione dei processi. “P” (da “Processo”) – informazioni sui processi stessi.

Del resto, la definizione esatta di un processo pretende anche di essere causa di controversie metodologiche, se non altro per il fatto che esistono diversi processi: commerciale, produttivo, tecnologico, ecc. e così via. (puoi scoprire, ad esempio, qui [4] i qui [5]). Per evitare polemiche, mettiamolo d'accordo A noi interessa il processo dal punto di vista della sua ripetibilità nel tempo e della necessità di automazione, cioè. trasferendo l’esecuzione di qualsiasi parte delle operazioni del processo ad un sistema automatizzato.

Note sull'utilizzo del diagramma di attività

Iniziamo a modellare il nostro processo e utilizziamo il diagramma di attività per questo. Innanzitutto, lasciami spiegare come verranno utilizzati i codici sopra riportati nel modello. È più semplice spiegarlo con un esempio grafico, ma allo stesso tempo analizzeremo alcuni (quasi tutti quelli che ci servono) elementi del diagramma di Attività.
Analizziamo il seguente frammento:

...
Lo scoiattolo canta canzoni, (P1, A1)
Sì, continua a sgranocchiare noci, (P2)
Ma le noci non sono semplici, (C1)
Tutte le conchiglie sono dorate, (C2)
Il nucleo è puro smeraldo; (C3)
...

Abbiamo due fasi del processo P1 e P2, partecipante A1 e oggetti di tre classi diverse: un oggetto della classe C1 viene immesso nella fase, oggetti delle classi C2 e C3 vengono emessi come risultato dell'attività di questa fase P2 del nostro processi. Per il diagramma utilizziamo i seguenti elementi di modellazione.

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Un frammento del nostro processo può essere rappresentato in questo modo (Figura 1).

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Figura 1. Frammento del diagramma di attività

Per organizzare lo spazio e strutturare il diagramma di attività utilizzeremo un approccio non standard, dal punto di vista dell'uso classico della notazione UML. Ma ci sono diverse ragioni per questo. Innanzitutto, subito prima di iniziare la modellazione compileremo il cosiddetto accordo di modellazione, in cui registriamo tutte le caratteristiche dell'uso della notazione. In secondo luogo, questo approccio è stato applicato più volte con successo nella fase di modellazione aziendale in progetti reali per la creazione di sistemi software; i risultati sono stati registrati dal nostro piccolo team di autori nel corrispondente oggetto protetto da copyright [6] e sono stati utilizzati anche in un manuale di formazione [ 7]. Per il diagramma di attività, definiamo che il campo del diagramma è strutturato utilizzando “corsie di nuoto”. Il nome della traccia corrisponderà al tipo di elementi della classifica che verranno posizionati su quella traccia.

"Artefatti di input e output": Questa traccia conterrà elementi Oggetti: oggetti che vengono utilizzati o sono il risultato dell'esecuzione di alcune fasi del processo.
"Fasi del processo": Qui posizioneremo gli elementi dell'attività: le azioni dei partecipanti al processo.
"Partecipanti": un percorso per elementi che denoteranno i ruoli degli attori dell'azione nel nostro processo; per loro utilizzeremo lo stesso elemento di modellazione Oggetto - un oggetto, ma gli aggiungeremo lo stereotipo "Attore".
Viene chiamata la traccia successiva "Regole di business" e su questa traccia inseriremo in forma testuale le regole per l'esecuzione delle fasi del processo, e per questo utilizzeremo l'elemento di modellazione Nota - una nota.
Ci fermeremo qui, anche se potremmo utilizzare anche il sentiero "Utensili" raccogliere informazioni sul livello di automazione dei processi. Potrebbe tornare utile anche un percorso "Posizioni e divisioni dei partecipanti", può essere utilizzato per collegare i ruoli alle posizioni e ai dipartimenti dei partecipanti al processo.

Tutto quello che ho appena descritto è un frammento convenzioni di modellazione, questa parte dell'accordo riguarda le regole per organizzare un diagramma e, di conseguenza, le regole per scriverlo e leggerlo.

"Ricetta"

Consideriamo ora la possibilità di modellare il sistema in modo specifico dal diagramma di attività. Questa è solo una delle opzioni, noto che ovviamente non è l'unica. Il diagramma di attività ci interesserà dal punto di vista del suo ruolo nella transizione dalla modellazione dei processi alla progettazione di un sistema automatizzato. Per fare ciò, aderiremo alle raccomandazioni metodologiche: una sorta di ricetta composta da sole cinque fasi e che prevede lo sviluppo di soli tre tipi di diagrammi. L'utilizzo di questa ricetta ci aiuterà a ottenere una descrizione formalizzata del processo che vogliamo automatizzare e a raccogliere dati per la progettazione del sistema. E per gli studenti che iniziano a studiare UML, questa è una sorta di ancora di salvezza che non permetterà loro di annegare in tutta la varietà di mezzi e tecniche visive disponibili in UML e nei moderni strumenti di modellazione.

Ecco, infatti, la ricetta vera e propria, e poi seguite gli schemi realizzati per la nostra area tematica “fiabesca”.

Fase 1. Descriviamo il processo sotto forma di diagramma di attività. Per un processo con più di 10 fasi, ha senso applicare il principio di scomposizione delle fasi del processo per migliorare la leggibilità del diagramma.

Fase 2. Seleziona cosa può essere automatizzato (i passaggi possono essere evidenziati su un diagramma, ad esempio).

Fase 3. Il passaggio automatizzato deve essere associato ad una o più funzioni del sistema (la relazione può essere molti-a-molti), disegna un diagramma del caso d'uso. Queste sono le funzioni del nostro sistema.

Fase 4. Descriviamo l'organizzazione interna dell'AS utilizzando un diagramma di classe - Classe. La passerella "Oggetti di input e output (documenti)" nel diagramma di attività costituisce la base per la creazione di un modello a oggetti e di un modello di relazione entità.

Fase 5. Analizziamo le note sul percorso “Business Rules”., prevedono vincoli e condizioni di varia natura, che si trasformano progressivamente in requisiti non funzionali.
L'insieme di diagrammi risultante (Attività, Caso d'uso, Classe) ci fornisce una descrizione formalizzata in una notazione abbastanza rigorosa, vale a dire ha una lettura inequivocabile. Ora puoi sviluppare specifiche tecniche, chiarire le specifiche dei requisiti, ecc.

Iniziamo a modellare.

Fase 1. Descrivere il processo sotto forma di diagramma di attività

Ti ricordo che abbiamo strutturato il campo del diagramma utilizzando corsie di “nuoto”; ciascuna corsia contiene elementi dello stesso tipo (Figura 2). Oltre agli elementi del diagramma sopra descritti, utilizzeremo elementi aggiuntivi, descriviamoli.

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Decisione (Decision) indica il punto di diramazione del nostro processo nel diagramma e l'unione dei thread (Merge) – il punto della loro riunificazione. Le condizioni di transizione sono scritte tra parentesi quadre sulle transizioni.

Tra due sincronizzatori (Fork) mostreremo rami di processo paralleli.
Il nostro processo può avere un solo inizio: un punto di ingresso (Iniziale). Ma potrebbero esserci diversi completamenti (Finale), ma non per il nostro diagramma specifico.

Ci sono molte frecce; con un gran numero di elementi e connessioni, puoi prima identificare le fasi del processo e quindi eseguire una scomposizione di queste fasi. Ma per chiarezza, vorrei mostrare il nostro processo “fiabesco” interamente su un diagramma, mentre, ovviamente, dobbiamo assicurarci che le frecce “non si attacchino”, sarebbe possibile tracciare con precisione ciò che è collegato a cosa.

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Figura 2. Diagramma delle attività: vista generale del processo

Perché nei versi poetici alcuni dettagli del processo sono omessi, dovevano essere restaurati, sono evidenziati da elementi a fondo bianco. Questi dettagli includono la fase di trasferimento/ricezione per l'archiviazione e l'elaborazione e diversi artefatti di input e output. Vale la pena notare che anche questo passaggio non rivela completamente il processo, perché dovremmo designare separatamente la fase di trasmissione e la fase di ricezione, e persino aggiungere una fase separata per le conchiglie, e anche pensare che prima tutti questi valori materiali dovrebbero essere temporaneamente archiviati da qualche parte, ecc. e così via.
Notiamo anche che la questione dell'origine delle noci rimane senza risposta: da dove vengono e come arrivano allo scoiattolo? E questa domanda (è evidenziata in rosso nella nota - l'elemento Nota) richiede uno studio separato! Ecco come lavora un analista: raccogliendo informazioni poco a poco, facendo ipotesi e ricevendo "ok" o "no-ok" da esperti in materia - persone molto importanti e semplicemente insostituibili nella fase di modellazione del business durante la creazione di sistemi.

Si noti inoltre che la fase del processo P5 è composta da due parti.

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

E scomporremo ogni parte e la considereremo in modo più dettagliato (Figura 3, Figura 4), perché le attività eseguite all'interno di questi particolari passaggi saranno automatizzate.

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Figura 3. Diagramma delle attività - dettagli (parte 1)

Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Figura 4. Diagramma delle attività - dettagli (parte 2)

Fase 2. Seleziona cosa può essere automatizzato

I passaggi da automatizzare sono evidenziati a colori sui diagrammi (vedi Figura 3, Figura 4).
Dalla modellazione dei processi alla progettazione di sistemi automatizzati (Parte 1)

Tutti vengono eseguiti da un partecipante al processo: l'impiegato:

  • Inserisce nell'estratto conto le informazioni sul peso della noce;
  • Inserisce le informazioni sul trasferimento del dado nella dichiarazione;
  • Registra il fatto della trasformazione di una noce in un guscio e un nocciolo;
  • Inserisce le informazioni sul nocciolo nella dichiarazione;
  • Inserisce nell'elenco le informazioni sui gusci delle noci.

Analisi del lavoro svolto. Qual è il prossimo?

Quindi, abbiamo svolto molto lavoro preparatorio: abbiamo raccolto informazioni sul processo che automatizzeremo; ha iniziato a stipulare un accordo sulla modellazione (finora solo in termini di utilizzo del diagramma di attività); ha eseguito una simulazione del processo e ha persino scomposto molte delle sue fasi; Abbiamo identificato le fasi del processo che automatizzeremo. Siamo ora pronti per passare ai passi successivi e iniziare a progettare la funzionalità e l'organizzazione interna del sistema.

Come sai, la teoria senza la pratica non è nulla. Dovresti assolutamente provare a “modellare” con le tue mani, questo è utile anche per comprendere l'approccio proposto. Ad esempio, puoi lavorare in un ambiente di modellazione Modellio [3]. Abbiamo scomposto solo una parte delle fasi del diagramma di processo complessivo (vedere Figura 2). Come compito pratico, ti potrebbe essere chiesto di ripetere tutti i diagrammi nell'ambiente Modelio ed eseguire una scomposizione della fase "Trasferimento/Ricezione per archiviazione ed elaborazione".
Non stiamo ancora considerando di lavorare in ambienti di modellazione specifici, ma questo potrebbe diventare oggetto di articoli e recensioni indipendenti.

Nella seconda parte dell'articolo analizzeremo le tecniche di modellazione e progettazione necessarie nelle fasi 3-5; utilizzeremo i diagrammi di casi d'uso e di classe UML. Continua.

Elenco delle fonti

  1. Sito web "UML2.ru". Forum della comunità di analisti. Sezione generale. Esempi. Esempi di fiabe formattate come diagrammi UML. [Risorsa elettronica] Modalità di accesso: Internet: http://www.uml2.ru/forum/index.php?topic=486.0
  2. Sito web dei sistemi Sparx. [Risorsa elettronica] Modalità di accesso: Internet: https://sparxsystems.com
  3. Sito web Modelio. [Risorsa elettronica] Modalità di accesso: Internet: https://www.modelio.org
  4. Grande dizionario enciclopedico. Processo (interpretazione). [Risorsa elettronica] Modalità di accesso: Internet: https://dic.academic.ru/dic.nsf/enc3p/246322
  5. Sito web "Organizzazione della gestione efficace". Blog. Categoria "Gestione dei processi aziendali". Definizione di un processo aziendale. [Risorsa elettronica] Modalità di accesso: Internet: https://rzbpm.ru/knowledge/pochemu-processy-stali-s-pristavkoj-biznes.html
  6. Certificato n. 18249 sulla registrazione e deposito di un'opera di attività intellettuale. Alfimov R.V., Zolotukhina E.B., Krasnikova S.A. Manoscritto di un sussidio didattico dal titolo “Modellare un'area disciplinare utilizzando Enterprise Architect” // 2011.
  7. Zolotukhina E.B., Vishnya A.S., Krasnikova S.A. Modellazione dei processi aziendali. — M.: CORSO, SIC INFRA-M, EBS Znanium.com. — 2017.

Fonte: habr.com

Aggiungi un commento