Business Process Model and Notation: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica
FrescoBot (discussione | contributi)
m Bot: numeri di pagina nei template citazione
 
(15 versioni intermedie di 9 utenti non mostrate)
Riga 1:
[[File:BPMN-AProcessWithNormalFlow.svg|thumb|right|upright=2|Esempio di modello BPMN per un processo con un flusso normale]]
Il '''Business Process Model and Notation''' ('''BPMN''') è una [[Visualizzazione dell'informazione|rappresentazione grafica]] usata per specificare i [[Processo aziendale|processi aziendali]] in un [[business process modeling]] (BPM).
 
Originariamente sviluppato dalla Business Process Management Initiative (BPMI)<ref name="bpmn_announce">{{Cita web|url=https://www.omg.org/bpmn/Documents/Press_Release_5-4-04.htm|titolo=BPMI.org Publishes Notation for Business Processes; BPMN 1.0 Targets Business Process Management, BPM|sito=omg.org|lingua=en|data=4 maggio 2003|accesso=16 ottobre 2021}}</ref>, BPMN è stato successivamente gestito dall'[[Object Management Group]] (OMG) dopo che le due organizzazioni si sono fuse nel giugno 2005.<ref name="mokabyte">{{Cita web|url=http://www.mokabyte.it/2015/12/businessprocesschange-3/|titolo=La notazione standard BPMN|autore=Eustachio Nicoletti|sito=mokabyte.it|data=dicembre 2015|accesso=16 ottobre 2021}}</ref> La versione attuale di BPMN è la 2.0.2, pubblicata nel gennaio 2014<ref name="bpmn_2.0.2">{{Cita web|url=https://www.omg.org/spec/BPMN/2.0.2|titolo=Business Process Model and Notation (BPMN)|autore=Object Management Group|sito=www.omg.org|lingua=en|accesso=16 ottobre 2021}}</ref>
 
Sebbene sia una specifica OMG, nel luglio 2013 BPMN è stato codificato come standard [[Organizzazione internazionale per la normazione|ISO]] disciplinato dalla [[norma tecnica]] ISO/IEC 19510<ref name="iso">{{Cita web|url=https://www.iso.org/standard/62652.html|titolo=ISO/IEC 19510:2013
Riga 8:
 
== Descrizione ==
BPMN è uno standard per il business process modeling che fornisce una notazione grafica per specificare i [[Processo aziendale|processi aziendali]] in un ''Business Process Diagram'' (BPD),<ref>{{cita pubblicazione|url=https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20050202022_2005202152.pdf|titolo=An XML Representation for Crew Procedures|autore=Richard C. Simpson|anno=2004|pubblicazione=Final Report NASA Faculty Fellowship Program (Johnson Space Center)|lingua=en}}</ref> basato su una tecnica di [[diagramma di flusso]] molto simile ai [[Diagramma di attività|diagrammi di attività]] [[Unified Modeling Language|UML]].<ref>{{cita web|url=http://www.bpmn.org/Documents/Notations_and_Workflow_Patterns.pdf|titolo=Process Modeling Notations and Workflow Patterns|urlarchivio=https://web.archive.org/web/20100706013817/http://www.bpmn.org/Documents/Notations_and_Workflow_Patterns.pdf|dataarchivio=6 luglio 2010|autore=Stephen A. White|anno=2006}}</ref> BPMN e UML sono due specifiche di modellazione sviluppate dall'OMG che non sono in competizione ma complementari: UML enfatizza l'analisi e la progettazione di un [[Sistema informativo aziendale|sistema informativo]], mentre BPMN si concentra sull'analisi e la progettazione dei processi aziendali che coinvolgono e interagiscono con i sistemi. Possiamo quindi passare da un diagramma di processo che definisce i requisiti di business in BPMN all'uso di diagrammi di casi in UML per documentare i requisiti per i sistemi coinvolti.<ref>{{Cita web|url=http://www.ibm.com/support/knowledgecenter/SS6RBX_11.4.3/com.ibm.sa.bpr.doc/topics/t_ovwmapbp2uml.html|titolo=IBM Knowledge Center|sito=www.ibm.com|lingua=en}}</ref>
 
L'obiettivo di BPMN è quello di supportare il [[business process management]] sia per gli utenti tecnici che per gli utenti aziendali, fornendo una notazione intuitiva per gli utenti aziendali, ma in grado di rappresentare semantiche di processi complessi. La specifica BPMN fornisce anche una mappatura tra la grafica della notazione e i costrutti sottostanti dei linguaggi di esecuzione, in particolare il [[Business Process Execution Language]] (BPEL).<ref name="bpmn_1.0">{{Cita web|url=https://www.omg.org/bpmn/Documents/BPMN_V1-0_May_3_2004.pdf|titolo=Business Process Modeling Notation (BPMN) - Version 1.0|autore=Stephen A. White|sito=www.omg.org|lingua=en}}</ref>
 
BPMN è stato progettato per fornire una notazione standard facilmente comprensibile da tutti gli [[stakeholder]] aziendali, in genere inclusi [[Analista aziendale|analisti aziendali]], [[Sviluppatore di software|sviluppatori tecnici]] e [[Manager|manager aziendali]]. BPMN può quindi essere utilizzato per supportare l'obiettivo generalmente auspicabile da parte di tutti gli stakeholder di un progetto, adottando un linguaggio comune per descrivere i processi ed aiutando ad evitare lacune di comunicazione che possono sorgere tra la progettazione e l'implementazione dei processi aziendali.
 
BPMN è uno dei numerosi linguaggi standard per il business process modeling utilizzati dagli strumenti e dai processi di modellazione. Sebbene l'attuale varietà di linguaggi possa adattarsi a diversi ambienti di modellazione, c'è chi sostiene lo sviluppo o l'emergere di un unico standard completo che combini i punti di forza dei diversi linguaggi esistenti. Si suggerisce che, nel tempo, ciò potrebbe aiutare a unificare l'espressione dei concetti di base dei processi aziendali (ad esempio i processi pubblici e privati e le coreografie), nonché di concetti di processo avanzati (ad esempio la [[gestione delle eccezioni]] e la compensazione delle transazioni).
 
BPMN è vincolato a supportare solo i concetti di modellazione applicabili ai processi aziendali. Altri tipi di modellazione eseguiti dalle organizzazioni per scopi non di processo non rientrano nell'ambito di BPMN. Tra gli esempi di modelli esclusi da BPMN vi sono:
Riga 20:
* le strutture organizzative;
* i guasti funzionali;
* i modelli di dati.<ref>{{Cita web|url=http://www.omg.org/bpmn/Documents/BPMN_Sections_1_and%202CMP.pdf|titolo=BPMN Working Draft|autore=Object Management Group|data=2003|dataaccessoaccesso=16 ottobre 2021|lingua=en|dataarchivio=24 maggio 2018|urlarchivio=https://web.archive.org/web/20180524224103/http://www.omg.org/bpmn/Documents/BPMN_Sections_1_and%202CMP.pdf|urlmorto=sì}}</ref>
 
Inoltre, sebbene BPMN mostri il flusso di dati (messaggi) e l'associazione di artefatti di dati alle attività, esso non è un [[Data Flow Diagram|diagramma di flusso di dati]].
Riga 40:
 
==== Evento ====
[[File:BPMN plain event types.svg|thumb|right|Tipi di evento]]
Un evento è rappresentato da un cerchio e denota qualcosa che ''accade'' (rispetto ad un'attività, che è qualcosa che ''si fa''). Le icone all'interno del cerchio indicano il tipo di evento (ad esempio, una busta che rappresenta un messaggio o un orologio che rappresenta il tempo). Gli eventi sono solitamente classificati su 3 livelli:
 
* '''Evento iniziale''': è quello che attiva il processo ed è indicato da un cerchio con un singolo bordo sottile.
* '''Evento intermedio''': rappresenta qualcosa che accade tra un evento iniziale ed uno finale ed è indicato da un cerchio con un doppio bordo.
* '''Evento finale''': rappresenta il risultato di un processo ed è indicato da un cerchio con un singolo bordo spesso.
 
==== Attività ====
[[File:BPMN Activity Types.jpg|thumb|right|upright=2|Tipi di attività]]
Un'attività è rappresentata da un rettangolo con gli angoli arrotondati e descrive il tipo di lavoro che deve essere svolto. Un'attività è un termine generico per il lavoro svolto da un'azienda e può essere atomica o composta. Le attività si distinguono in:
 
* '''Compito''' (o '''task'''): rappresenta una singola unità di lavoro che non è o non può essere suddivisa in un ulteriore livello di dettaglio del processo aziendale (in questo caso si parla di attività atomica). Il compito è l'attività di livello più basso illustrata su un diagramma di processo BPMN. Un insieme di attività può rappresentare una procedura di alto livello.
* '''Sottoprocesso''': utilizzato per nascondere o rivelare ulteriori livelli di dettaglio dei processi aziendali. Quando è compresso, un sottoprocesso è contrassegnato con il simbolo "+" sulla linea inferiore del rettangolo; quando invece è espanso, il rettangolo arrotondato viene allargato per mostrare tutti gli oggetti di flusso, gli oggetti di collegamento e gli artefatti. Un sottoprocesso è indicato come attività composta ed ha i propri eventi di inizio e fine autonomi; i flussi di sequenza provenienti dal processo "padre" non devono attraversare il confine.
* '''Transazione''': è una forma di sottoprocesso in cui tutte le attività contenute devono essere trattate nel loro insieme, ovvero devono essere completate tutte insieme per raggiungere un obiettivo; se una di esse fallisce, devono essere tutte compensate (cioè annullate). Le transazioni si differenziano dai sottoprocessi poiché vengono disegnate con il doppio bordo.
* '''Chiamata''': è un punto del processo in cui viene riutilizzato un processo o un'attività globale. Un'attività di chiamata è differenziata da altri tipi di attività da un bordo in grassetto attorno all'area dell'attività.
 
==== Gateway ====
[[File:BPMN gateway types.png|thumb|right|Tipi di gateway]]
Un gateway è rappresentato con un rombo ed indica una biforcazione oppure una ricongiunzione di percorsi, a seconda delle condizioni espresse. Un gateway può essere:
* '''Esclusivo''': viene utilizzato per creare flussi alternativi in un processo. È chiamato esclusivo poiché si può percorrere solo una delle scelte possibili.
* '''Basato su eventi''': la condizione che determina il percorso di un processo si basa su un evento valutato.
* '''Parallelo''': viene utilizzato per creare percorsi paralleli senza valutare alcuna condizione.
* '''Inclusivo''': viene utilizzato per creare flussi alternativi in cui vengono valutati tutti i percorsi.
* '''Esclusivo basato su eventi''': indica che è in corso la valutazione di un evento per determinare quale dei percorsi che si escludono a vicenda verrà intrapreso.
* '''Complesso''': viene utilizzato per modellare comportamenti di sincronizzazione complessi.
* '''BasatoParallelo basato su eventi paralleli''': vengono avviati due processi paralleli sulla base di un evento, ma non vi è alcuna valutazione dell'evento.
 
=== Oggetti di collegamento ===
[[File:Different Types of BPMN connections.png|thumb|right|Tipi di oggetti di collegamento]]
Gli oggetti di flusso sono collegati tra loro utilizzando oggetti di collegamento (detti anche connettori), che sono di 3 tipi:
 
* '''Flusso di sequenza''': è rappresentato da una freccia con una linea continua e mostra l'ordine in cui vengono eseguite le attività. Il flusso di sequenza può anche avere un simbolo all'inizio. Un piccolo rombo indica uno dei numerosi flussi condizionali provenienti da un'attività, mentre una barra diagonale indica il flusso predefinito a partire da una decisione o un'attività con flussi condizionali.
* '''Flusso di messaggi''': è rappresentato da una freccia con una linea tratteggiata con tratti lunghi, un cerchio all'inizio ed una punta alla fine. Il flusso di messaggi ci dice quali messaggi fluiscono attraverso i confini dell'organizzazione (ad esempio tra i pool). Un flusso di messaggi non può mai essere utilizzato per connettere attività o eventi all'interno dello stesso pool.
 
* '''Associazione''': è rappresentata da una linea tratteggiata con tratti corti. Viene utilizzata per associare un artefatto o un testo a un oggetto di flusso e può indicare una certa direzionalità utilizzando una freccia con punta aperta (verso l'artefatto per rappresentare un output, dall'artefatto per rappresentare un input, oppure entrambi per indicare che è stato letto e aggiornato). Non viene utilizzata alcuna direzionalità quando l'artefatto o il testo è associato a una sequenza o a un flusso di messaggi, in quanto tale flusso mostra già la direzione.
* '''Flusso di messaggi''': è rappresentato da una freccia con una linea tratteggiata con tratti lunghi, un cerchio all'inizio ed una punta alla fine. Il flusso di messaggi ci dice quali messaggi fluiscono attraverso i confini dell'organizzazione (ad esempio tra i pool). Un flusso di messaggi non può mai essere utilizzato per connettere attività o eventi all'interno dello stesso pool.
 
* '''Associazione''': è rappresentata da una linea tratteggiata con tratti corti. Viene utilizzata per associare un artefatto o un testo a un oggetto di flusso e può indicare una certa direzionalità utilizzando una freccia (verso l'artefatto per rappresentare un output, dall'artefatto per rappresentare un input, oppure entrambi per indicare che è stato letto e aggiornato). Non viene utilizzata alcuna direzionalità quando l'artefatto o il testo è associato a una sequenza o a un flusso di messaggi, in quanto tale flusso mostra già la direzione.
 
=== Swim lane ===
[[File:Swin Lane - BPMN 2.0 Artifact.png|thumb|right|upright=0.5|Swim lane]]
Le [[swim lane]] sono un meccanismo visivo di organizzazione e categorizzazione delle attività, basato su diagrammi di flusso interfunzionali. In BPMN sono costituite da due tipi:
 
* '''Pool''': rappresenta i principali partecipanti a un processo, in genere separando diverse organizzazioni. Un pool contiene una o più lane (così come una piscina contiene una o più corsie). Un pool può essere aperto (cioè, mostrando i dettagli interni) quando è raffigurato come un grande rettangolo che mostra una o più lane, oppure chiusa (cioè, nascondendo i dettagli interni) quando è raffigurata come un rettangolo vuoto che si estende per la larghezza o l'altezza del diagramma.
* '''Lane''': viene utilizzata per organizzare e classificare le attività all'interno di un pool in base alla funzione o al ruolo ed è rappresentata come un rettangolo che si estende per la larghezza o l'altezza del pool. Una lane contiene gli oggetti del flusso, collegando oggetti e artefatti.
 
* '''Lane''': viene utilizzata per organizzare e classificare le attività all'interno di un pool in base alla funzione o al ruolo ed è rappresentata come un rettangolo che si estende per la larghezza o l'altezza del pool. Una lane contiene gli oggetti del flusso, collegando oggetti e artefatti.
 
=== Artefatti ===
<gallery class="center">
File:Data object - BPMN 2.0 Artifacts.png|OggettiOggetto dati
File:Group - BPMN 2.0 Artifacts.png|GruppiGruppo
File:Annotation - BPMN 2.0 Artifacts.png|Annotazione
</gallery>
Gli artefatti consentono agli sviluppatori di portare ulteriori informazioni all'interno del modello o del diagramma, che in questo modo diventa più leggibile. In BPMN esistono 3 artefatti predefiniti:
 
* '''OggettiOggetto dati''': mostranomostra al lettore quali dati sono richiesti o prodotti in un'attività.
* '''Gruppo''': è rappresentato da un rettangolo con angoli arrotondati e linee tratteggiate. Il gruppo viene utilizzato per raggruppare diverse attività ma non influisce sul flusso nel diagramma.
* '''Annotazione''': viene utilizzata per fornire al lettore del modello o del diagramma una descrizione aggiuntiva.
 
=== Esempi di diagrammi BPMN ===
Line 105 ⟶ 102:
 
== Cronologia ==
* Maggio 2004: pubblicazione della prima versione di BPMN da parte di BPMI, inizialmente con la denominazione ''Business Process Modeling Notation''.<ref name="bpmn_1.0"/>
* Febbraio 2006: adozione da parte di OMG della versione 1.0.
* Gennaio 2008: pubblicazione da parte di OMG della versione 1.1.<ref>{{Cita web|url=http://www.omg.org/spec/BPMN/1.1/|titolo=BPMN 1.1|sito=www.omg.org|lingua=en}}</ref>
* Gennaio 2009: pubblicazione da parte di OMG della versione 1.2 .<ref>{{Cita web|url=http://www.omg.org/spec/BPMN/1.2|titolo=BPMN 1.2|sito=www.omg.org|lingua=en}}</ref>
* Gennaio 2011: pubblicazione da parte di OMG della versione 2.0, che integrò grandi cambiamenti, in particolare con l'introduzione dei diagrammi di conversazione e dei diagrammi di coreografia, e una maggiore ricchezza nella specificazione degli eventi. Inoltre introdusse anche formati di scambio di modelli.<ref>{{Cita web|url=http://www.omg.org/spec/BPMN/2.0|titolo=BPMN 2.0|sito=www.omg.org|lingua=en}}</ref>
* Luglio 2013: l'ISO ha adottato la versione 2.02 come standard internazionale ISO/IEC 19510:2013 con il titolo ''Information technology - Object Management Group Business Process Model and Notation''.<ref name="iso"/>
* Gennaio 2014: pubblicazione da parte di OMG della versione 2.0.2, che contiene solo modifiche minori riguardanti i file di scambio del modello XML.<ref name="bpmn_2.0.2"/>
 
== Confronto con altri modelli di processi ==
EPC (Event-driven Process Chain) e BPMN sono due notazioni con espressività simile per quanto riguarda la modellazione dei processi.<ref>{{Cita pubblicazione|url=http://www.ijesmr.com/doc/Archive-2014/September-2014/Katalina%20Grigorova.pdf|titolo=Comparison of business process modeling standards|autoriautore=Katalina Grigorova, Kaloyan Mironov|pubblicazione=International Journal Of Engineering Sciences & Management Research|numero=1(3)|data=settembre 2014|issn=2349-6193|lingua=en}}</ref> Un modello BPMN può essere trasformato in un modello EPC, mentre viceversa un modello EPC può essere trasformato in un modello BPMN con una leggera perdita di informazioni. <ref>{{Cita pubblicazione|autore=Olga Levina|titolo=Assessing Information Loss in EPC to BPMN Business Process Model Transformation|pubblicazione=2012 IEEE 16th International Enterprise Distributed Object Computing Conference Workshops|editore=[[Institute of Electrical and Electronics Engineers|IEEE]]|data=10-14 settembre 2012|doi=10.1109/EDOCW.2012.38|isbn=9781467350051|lingua=en}}</ref> Uno studio ha dimostrato che per lo stesso processo il modello BPMN potrebbe richiedere circa il 40% in meno di elementi rispetto al modello EPC corrispondente, ma con un set di simboli leggermente più grande, e quindi il modello BPMN sarebbe più facile da leggere. La conversione tra le due notazioni può essere automatizzata. <ref>{{Cita pubblicazione|url=https://www.researchgate.net/publication/265401318|titolo=BPMN-EPC-BPMN Converter|periodico=НАУЧНИ ТРУДОВЕ НА РУСЕНСКИЯ УНИВЕРСИТЕТ|data=aprile 2011|lingua=en}}</ref>
 
I diagrammi di attività UML e BPMN sono due notazioni che possono essere utilizzate per modellare gli stessi processi: un sottoinsieme degli elementi del diagramma di attività ha una semantica simile agli elementi BPMN, nonostante l'insieme di simboli sia più piccolo e meno espressivo. <ref>{{Cita pubblicazione|autore=Cristina Geambaşu|anno=2012|tiolotitolo=BPMN vs. UML activity diagram for business process modeling|pubblicazione=Accounting and Management Information Systems|volume=11|nnumero=4|pp=637–651637-651}}</ref> Uno studio ha mostrato che entrambi i tipi di modelli di processo sembrano avere lo stesso livello di leggibilità per utenti inesperti, nonostante i vincoli formali più elevati di un diagramma di attività.
 
Un sottoinsieme di BPMN può essere trasposto direttamente in [[Business Process Execution Language|WS-BPEL]], che è espressione di un processo direttamente eseguibile da un motore di workflow.
 
== Note ==
<references/>
 
== Bibliografia ==
* {{Cita libro|autoriautore=Alexander Grosskopf, Gero Decker, Mathias Weske|titolo=The Process: Business Process Modeling using BPMN|url=http://www.bpmn-book.com|data=28 febbraio 2009|editore=Meghan Kiffer Press|ISBN=978-0-929652-26-9}}
* {{Cita libro|autoriautore=Ryan KL Ko, Stephen SG Lee, Eng Wah Lee|anno=2009|titolo=Business Process Management (BPM) Standards: A Survey|pubblicazione=Business Process Management Journal|editore=Emerald Group Publishing Limited|volume=15|numero=5|issn=1463-7154|url=http://ryanko.files.wordpress.com/2008/03/bpm-journal-koleelee-bpms-survey.pdf|accesso=16 ottobre 2021|dataarchivio=17 settembre 2012|urlarchivio=https://wayback.archive-it.org/all/20120917072604/http://ryanko.files.wordpress.com/2008/03/bpm-journal-koleelee-bpms-survey.pdf|urlmorto=sì}}
* {{Cita libro|autore=Stephen A. White|autore2=Conrad Bock|titolo=BPMN 2.0 Handbook Second Edition: Methods, Concepts, Case Studies and Standards in Business Process Management Notation|anno=2011|editore=Future Strategies Inc.|ISBN=978-0-9849764-0-9}}
 
== NoteAltri progetti ==
{{Interprogetto}}
<references/>
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{cita web|url=http://www.bpmn.org/|titolo=Business Process Model and Notation|editore=Object Management Group|lingua=en}}
* {{cita web|url=http://www.omg.org/spec/BPMN/|titolo=Business Process Model and Notation Specifications|editore=Object Management Group|lingua=en}}
* {{cita web|url=https://www.omg.org/spec/BPMN/ISO/19510/PDF|titolo=ISO/IEC 19510:2013(E)|lingua=en}}
* {{cita web|url=https://bpmnmatrix.github.io/|titolo=BPMN Tool Matrix|lingua=en}}
* {{cita web|url=http://www.bpmb.de/images/BPMN2_0_Poster_IT.pdf|titolo=BPMN 2.0 - Business Process Model and Notation BPMN 2.0 (PDF Poster)|sito=bpmb.de}}
 
{{portale|economia|informatica}}
 
[[Categoria:Diagrammi]]