Analisi dei Processi Aziendali
Linguaggi di modellazione dei
Processi
Paolo Falcarin - Sistemi Informativi 2002
1
Processi Aziendali
• Un processo aziendale è caratterizzato da
un insieme di attività, collegate tra loro,
per fornire un certo output a partire da
input definiti.
• Il processo aziendale nella sua esecuzione
può richiedere l’interazione con diverse
fonti di informazioni, anche nel corso della
sua esecuzione.
• Macroprocessi: possono essere scomposti
in altri sottoprocessi e attività.
Paolo Falcarin - Sistemi Informativi 2002
3
Paolo Falcarin - Sistemi Informativi 2002
2
Es.: macroprocessi al Ministero delle
Finanze
• Assistere i cittadini, le imprese e gli intermediari fiscali
nel rispetto degli adempimenti
• Attribuire il codice fiscale
• Riscuotere le imposte
• Ricevere le dichiarazioni e gli atti
• Controllare la correttezza delle imposte versate
• Eseguire i rimborsi
• Accertare l’evasione
• Fornire certificazioni e misure
• Gestire il personale e pianificare le attivita`
Paolo Falcarin - Sistemi Informativi 2002
4
Elementi di un modello
Identificazione dei Processi
Esaminare documentazione per estrarre:
• Eventi: danno inizio o terminano ad un processo; oppure
sono eventi significativi nello svolgimento del processo o
sono situazione anomale.
• Verbi: l’esame dei verbi contenuti nella documentazione
raccolta e` utile per scomporre un processo nelle sue
attività elementari; es: predisporre, approvare, richiedere
il parere .
• Punti di decisione: momenti nello svolgimento di un
processo in cui devono essere prese delle decisioni che
possono portare a diverse strade nell’esecuzione delle
attività successive del processo.
Paolo Falcarin - Sistemi Informativi 2002
• Per progettare un sistema informativo è necessario identificare tutti
i suoi elementi e descriverli in modo preciso, non ambiguo e che
possa essere compreso dagli utenti che partecipano alla
progettazione e utilizzo del sistema.
• Processi : insiemi di attività elementari che vengono svolte per
raggiungere un certo obiettivo nel sistema.
– processi fisici : descrivono attività di elaborazione di oggetti
fisici del sistema;
– processi informativi: funzioni che creano, gestiscono, elaborano
e forniscono informazioni;
– processi aziendali (o business process) : rappresentano funzioni
legate all’attività complessiva dell’organizzazione o
dell’impresa, quale la produzione di un’automobile, la
pubblicazione di un libro, la gestione di una compagnia aerea.
5
• Attività (Task): i processi sono composti da attività da
eseguire fra loro correlate
– Elementari: definizione precisa di specifici compiti;
– Sottoprocessi: costituite da un insieme di attività da
svolgere
• Agenti (Ruoli): sono gli esecutori dei processi (una
persona, una macchina, un programma software):
– identificare chi all’interno di una struttura
organizzativa dovrà eseguire una determinata parte di
un certo processo;
– l’assegnazione delle attività agli esecutori deve essere
effettuato in modo flessibile.
Paolo Falcarin - Sistemi Informativi 2002
6
1
Tipi di modelli
Elementi di un modello
• Dati/oggetti : le attività di un processo saranno
basate su operazioni svolte su oggetti (es: materie
prime in un processo produttivo, i documenti
protocollati in una pratica mministrativa)
• Punti di decisione: definiscono le strade
alternative nell’esecuzione dei passi successivi del
processo.
• Eccezioni: situazioni non previste che potranno
presentarsi durante l’esecuzione del processo,
anche in parti diverse del processo, e definire il
comportamento da tenere in tali situazioni.
Paolo Falcarin - Sistemi Informativi 2002
• Modelli basati sui dati: enfatizzano il flusso di dati
e documenti nell’esecuzione del processo (es: i
diagrammi di flussi di dati o DFD).
• Modelli basati su attività: descrivono le attività da
svolgere e la loro sequenza, in modo più o meno
formale e articolato (es: WIDE).
• Modelli basati su comunicazione: adatti a
rappresentare processi in cui gli elementi di
decisione sono da considerarsi importanti (Action
workflow).
Paolo Falcarin - Sistemi Informativi 2002
7
Data Flow Diagram
Esempio DFD (Descrizione)
• Il sistema viene visto come un insieme di processi collegati tra loro
da flussi di dati, che indicano come i dati prodotti da un processo
vengono utilizzati da altri processi.
• Notazione grafica rende agevole la lettura delle specifiche del
sistema.
• Dizionario dei dati e` necessario per descrivere la struttura dei dati
dei diagrammi in maggior dettaglio.
• Gli elementi che caratterizzano un diagramma DFD sono i seguenti:
– processi, che rappresentano le unità di elaborazione dei dati;
– flussi di dati, che indicano scambi di dati tra i processi;
– archivi (o file): rappresentano informazioni memorizzate in
modo permanente nel sistema;
– sorgenti e pozzi (o destinazioni) di dati, che rappresentano i
fornitori dei dati e i destinatari dei dati esterni al sistema
Paolo Falcarin - Sistemi Informativi 2002
•
•
•
•
•
•
10
Esempio di DFD (Dizionario Dati)
•
•
11
La società è una ditta di consulenza e formazione di medie dimensioni che tiene
corsi pubblici e presso clienti nelle maggiori città europee e a volte altrove.
I partecipanti si iscrivono ai corsi per posta e per telefono. Ogni iscrizione è
seguita da una lettera di conferma e da una fattura inviata al partecipante.
I pagamenti arrivano per posta. Ogni pagamento deve essere associato a una
delle fatture relative ai pagamenti attesi.
Vi è un meccanismo che consente di cancellare l’iscrizione di un partecipante a
un corso.
Una volta che un partecipante ha seguito uno dei corsi della ditta, o espresso
interesse in uno di essi, il suo nome è inserito in una lista di persone utilizzata in
seguito per pubblicizzare i corsi. Questa base di dati contiene informazioni su
circa 10000 persone in numerose organizzazioni diverse.
Oltre ai normali rapporti sulle vendite, si deve poter rispondere a domande
quali:
– Quali persone di una certa organizzazione hanno frequentato il seminario
sui DFD? Come lo hanno valutato?
– Che istruttore insegnerà il corso di Analisi e Progettazione a Londra il
prossimo mese?
Paolo Falcarin - Sistemi Informativi 2002
9
Esempio di DFD (Diagramma)
Paolo Falcarin - Sistemi Informativi 2002
8
Ciascun dato potrà essere dettagliato indicando i suoi componenti elementari
utilizzando la seguente notazione:
= equivalenza
+ composizione di dati
[] scelta di una delle opzioni tra parentesi, separate da una barra verticale |
() indica elemento opzionale
{} indica un elemento di tipo iterativo, ripetibile più volte
Alcuni esempi di descrizioni di archivi nel dizionario dei dati sono i seguenti:
dati-pagamento = nomecliente + indirizzo-cliente + numero-fattura
+ ammontare-pagamento
numero-fattura = codice-provincia +numero-conto-cliente + numero-venditore
+ numero-sequenziale-fattura
persone = {persona}
ordine = buono-ordine + (pagamento)
ammontare-pagato = [ammontare-lire | ammontare-euro]
Paolo Falcarin - Sistemi Informativi 2002
12
2
Cosa è un Workflow?
• “automazione” di un processo aziendale
Sistemi di gestione
di workflow
(business process) con:
• documenti, informazioni e compiti
• partecipanti
• insieme predefinito di regole
• obiettivo comune
Paolo Falcarin - Sistemi Informativi 2002
13
Paolo Falcarin - Sistemi Informativi 2002
Altro esempio di processo
interfunzionale
Esempi di workflow
• gestione prestiti
Unità
periferica
• ordini acquisto
11 10
• fogli orari settimanali
Cittadino
14
9 1
7
2 3
6
Unità
locale
• approvazione richieste
rimborso assicurativo
16
15
5
8
4
Ministero
Unità
centrale
Paolo Falcarin - Sistemi Informativi 2002
15
Sistema organizzativo,
processi sistema informativo,
sistema informatico
Organizzazione
17 12
13
180gg
• valutazione personale
Richieste
14
180gg
Paolo Falcarin - Sistemi Informativi 2002
16
Workflow automation
Tecnologie per il supporto alla gestione
di processi
Groupware
Servizi
supporto alla gestione del lavoro di gruppo
(es.: editing di documenti )
Procedimenti e processi
Workflow Management Systems
(WFMS)
Informazioni e applicazioni
supporto alla gestione di documenti all’interno di un
processo
Workflow Coalition
Tecnologie di elaborazione e comunicazione
Paolo Falcarin - Sistemi Informativi 2002
17
Paolo Falcarin - Sistemi Informativi 2002
18
3
Workflow Management
Systems
Workflow automation
BPR (Business Process Reengineering)
riorganizzazione dei processi da automatizzare
• attività sia manuali che automatiche
strumenti di supporto alla reingegnerizzazione
• interazione con applicazioni e
strumenti IT
Evoluzione e integrazione degli
strumenti
Paolo Falcarin - Sistemi Informativi 2002
• automazione di processi
19
Paolo Falcarin - Sistemi Informativi 2002
20
Workflow Management System
Esempio grafico
• Sistema software per:
– definire processi
– crea, gestisce l’esecuzione di workflow
– uno o più motori di workflow (workflow engine)
– interagire con i partecipanti
– chiamare applicazioni e strumenti software
esterni
General Manager
controls
– Gestire molte istanze di processo (o casi) che
possono essere attive durante l’esecuzione di un
processo, ciascuna con i propri dati e i propri
partecipanti
Paolo Falcarin - Sistemi Informativi 2002
21
Esempio di schermata (client)
Paolo Falcarin - Sistemi Informativi 2002
22
Workflow e BPR
• I Workflow vengono spesso messi in relazione
con la reingegnerizzazione dei processi (Business
Process Re-engineering - BPR), che riguarda la
valutazione, analisi, modellazione, e realizzazione
dei processi aziendali
• La tecnologia WFMS e’ spesso una soluzione
adeguata per separare la logica delle procedura
aziendali dagli strumenti utilizzati per supportarle,
facilitando il cambiamento, anche in successive
modifiche delle regole procedurali adottate in esse
Paolo Falcarin - Sistemi Informativi 2002
23
Paolo Falcarin - Sistemi Informativi 2002
24
4
Evoluzione dei workflow
•
•
•
•
•
•
•
WFMS
Elaborazione di immagini
gestione di documenti
posta elettronica
groupware
software per la gestione dei progetti
BPR e strumenti per la progettazione strutturata
separazione delle funzionalita’ di gestione di WF
Paolo Falcarin - Sistemi Informativi 2002
• Cinque sono le funzioni essenziali di un
prodotto di gestione di WF:
– instradamenti documenti / attivita`
– monitoraggio e controllo
– notifica o code di lavoro
– assegnamento lavoro e automazione
– gestione procedure
25
Workflow Management
Coalition WFMC
27
Build Time
Run Time
Interaction with
Users & Application Tools
Paolo Falcarin - Sistemi Informativi 2002
• Funzioni di controllo run-time: riguardano la gestione
dei processi di workflow in un ambiente operativo,
l’attivazione delle diverse attivita` che devono essere
gestite come parte del processo
• Interazioni run-time interactions con gli utenti e altre
applicazioni nell’esecuzione delle attivita’ del WF
Paolo Falcarin - Sistemi Informativi 2002
28
• E’ la rappresentazione dei processi aziendali
in una forma che consente la loro
simulazione o la loro manipolazione
automatica, come per la loro esecuzione in
un WFMS
• La definizione di un processo consiste in una
rete di attivita’ con relazioni tra attivita’, criteri
per iniziare e terminare il processo e
informazioni sulle singole attivita’, quali i
partecipanti, i documenti e i dati collegati, le
applicazioni sw da utilizzare, ecc.
Business Process Analysis,
Modelling & Definition Tools
Process
Definition
Process changes
Process Instanciation
& Control
• Build-time functions (funzioni di creazione), riguardano
la definizione e la modellazione del processo e delle
attivita’ che lo compongono
Definizione dei processi
WFMS
Process Design
& Definition
26
Aree funzionali dei WFMS
• The Workflow Management Coalition,
fondata nell’agosto 1993, e’
un’organizzazione internazionale che
comprende venditori di tecnologia
WFMS, utenti e analisti
• Obiettivi: favorire l’uso dei WFMS,
definendo una terminologia standard,
standard di interconnessione tra WFMS
e con applicazioni esterne.
Paolo Falcarin - Sistemi Informativi 2002
Paolo Falcarin - Sistemi Informativi 2002
Workflow Enactment Service
Applications
& IT Tools
29
Paolo Falcarin - Sistemi Informativi 2002
30
5
Partecipante di un Workflow
Lista lavori
• E’ una risorsa che esegue il lavoro associato
a una particolare istanza di attivita’. Questo
lavoro e’ normalmente indicato come un
compito assegnato a una partecipante in una
lista dei lavori (worklist).
• Il partecipante puo’ essere una risorsa umana
o una applicazione software, o hardware
specifico in grado di eseguire il compito.
• Una lista dei lavori e’ normalmente
associata a un certo partecipante (o a
un gruppo di partecipanti che
condividono un insieme di compiti da
svolgere). La lista lavori fa parte
dell’interfaccia tra il motore del workflow
e il gestore di liste lavori.
Paolo Falcarin - Sistemi Informativi 2002
31
Paolo Falcarin - Sistemi Informativi 2002
32
Esempio di esecuzione
Process Definition
Process Instance
Worklist
1st Process Instance
Work List 1
Work Item 1
Process Definition A
Work Item 2
Activity B
Activity D
Activity A
2nd Process Instance
Activity C
Work Item 3
Work Item 4
Architettura di WFMS
3rd Process Instance
Work Item N
Work List 2
Process Definition B
1st Process Instance
Work Item 20
Work Item 21
Activity B
Activity A
Activity C
Work Item 22
Activity E
2nd Process Instance
Activity D
Work Item N
Work List 2
Paolo Falcarin - Sistemi Informativi 2002
33
Paolo Falcarin - Sistemi Informativi 2002
Interfaccia
utente
Applicazioni
locali
Passi
Business
Process
Gestione
processi
Funzioni di
distribuzione
Applicazioni
Paolo Falcarin - Sistemi Informativi 2002
Modello di
Process
Definition Tools
Distribuzione e Interfacce
Singola
attività
34
Interface 5
Administr. &
Monitoring
Tools
Workflow API and Interchange Interface 4
formats
Other Workflow
Workflow Enactment Service
Enactment Service(s)
Workflow
Engine (s)
Interface 2
Workflow Client
Applications
Basi di dati
35
Riferimento
Interface 1
Paolo Falcarin - Sistemi Informativi 2002
Workflow
Engine (s)
Interface 3
Invoked
Application
36
6
Servizi di supporto all’esecuzione di
WF
• Servizio software che puo’ essere composto da uno o
piu’ motori di workflow per creare, gestire e eseguire
istanze di WF. Le applicazioni possono interagire con
questo servizio attraverso il workflow application
programming interface (WAPI).
• Un servizio di esecuzione puo’ operare in un
dominio di WF omogeneo, oppure, utilizzando le
funzionalita’ fornite dall’interfaccia WfMC
interoperability interface, l’esecuzione puo’
avvenire su motori di esecuzione di WF diversi
Paolo Falcarin - Sistemi Informativi 2002
37
Interazione con risorse esterne
• client application interface (2), attraverso
cui un gestore di liste di lavoro interagisce
con applicazioni esterne
• invoked application interface (3), consente
a un workflow engine di attivare
direttamente uno strumento specifico per
una particolare attivita’
Paolo Falcarin - Sistemi Informativi 2002
Transizioni di stato per processi e
attivita’
• Il servizio di esecuzione di WF puo’ essere
considerato una macchina a stati finiti, dove
le istanze di processi e attivita’ cambiano
stato in risposta a eventi esterni.
38
Workflow enactment service
Transizioni di stato per
processi e attività
– macchina a stati finiti
– le istanze di processi e attività cambiano
stato in risposta a eventi esterni
Paolo Falcarin - Sistemi Informativi 2002
39
Transizioni di stato per
istanze di processi
Suspended
Restart
Suspend /
resume
Start
Initiate
Initiated
Running
Paolo Falcarin - Sistemi Informativi 2002
40
Transizioni di stato per attività
Terminated
Suspended
Suspend / Resume
Terminate/
Abort
Active
Start
Inactive
Active
Complete
Restart
Complete
Paolo Falcarin - Sistemi Informativi 2002
(1 or more activity
istances)
41
(has Work Item)
Paolo Falcarin - Sistemi Informativi 2002
42
7
Dati in un WFMS
• Workflow Control Data:
Dati interni gestiti dal WFMS
Tipi di dati nei Workflow
• Workflow Relevant Data:
Dati usati dal WFMS per determinare le
transizioni di stato di una istanza di processo
Management Systems
• Workflow Application Data:
Dati delle applicazioni non accessibili
dal sistema di WF
Paolo Falcarin - Sistemi Informativi 2002
Build time
43
Paolo Falcarin - Sistemi Informativi 2002
Process Definition Interchange
(intf. 1)
Business Process Analysis
Modelling & Definition Tools
Process Analysis
Modelling & Definition
Tools
Definizione
processi
Modifiche
ai processi
Run Time
Interchange
Format & APIs
Workflow control data
Process Definition
Workflow Enactment Service
Workflow relevant
data
Run Time
Workflow Enactment Service
Applications &
IT Tools
Workflow
Engine (s)
Application data
Paolo Falcarin - Sistemi Informativi 2002
44
45
Paolo Falcarin - Sistemi Informativi 2002
46
Meta-model per la definizione dei processi
Gestione lista lavori (intf. 2)
Workflow
Type Definition
Role
• parte dell’interfaccia tra il motore del
has
consists
of
associata a partecipante (o gruppo di partecipanti)
may
refer to
may
have
workflow e il gestore di liste lavori
Activity
uses
Workflow
Relevant Data
uses
Invoked
Application
may
refer to
Transition
Conditions
Paolo Falcarin - Sistemi Informativi 2002
47
Paolo Falcarin - Sistemi Informativi 2002
48
8
Invoked Application Interface
Client Application Interface
Workflow Enactment Service
Workflow Enactment Service
Workflow
Engine (s)
Workflow
Engine (s)
Command Set
Connection/Disconnection
Standardised APIs & Interchange
Client
Application
Process and Activity Control
Functions
Invoked
Application
Process Status Functions
Worklist Manipulation
Commands
User Interface
Paolo Falcarin - Sistemi Informativi 2002
Standardised APIs &
Interchange
Application Specific
Interfaces
(Local or Remote)
49
Workflow Interoperability
(intf. 4)
Application
Agent
Workflowenabled
Applications
Invoked
Application
Paolo Falcarin - Sistemi Informativi 2002
50
Workflow interoperability interface
Workflow API and Interchange format
Workflow API and Interchange format
Workflow Enactment Service
Workflow Enactment Service
Definita da Workflow Coalition per
scambiare elementi di lavoro
Workflow
Engine (s)
tra
Workflow
Engine (s)
WFMS diversi
• 4 diversi possibili modelli
di
Activity or sub-process invocation
Process / Activity status / control
Application / Workflow relevant data
transfer Synch-point coordination
Process definition read / write
interoperabilità
Paolo Falcarin - Sistemi Informativi 2002
51
Paolo Falcarin - Sistemi Informativi 2002
52
Modello a sottoprocessi annidati
Modello a servizi concatenati
Process A
Process B
Process A
A4
A1
B3
A5
A2
A3
B4 B5
B1
A4
A1
A5
A2
A3
B1
B2
B2
Domain of Workflow
Service A
Questo modello consente il trasferimento di un singolo
elemento di lavoro (istanza di processo o attivita’) tra due
ambienti WFMS diversi, che operano indipendentemente
dopo lo scambio, senza ulteriori sincronizzazioni
Paolo Falcarin - Sistemi Informativi 2002
Processo B
B3
B4 B5
53
Domain of Workflow
Service A
• attivita’ (A3) di A eseguita come processo
completo (B) sul sistema WF B
• ritorno del controllo ad A
Paolo Falcarin - Sistemi Informativi 2002
54
9
Modello Peer-Peer
C4
C1
C5 C6
C2 C3
Enacted across
Workflow
Engine (s)
A
Workflow
Engine (s)
B
Modello parallelo sincronizzato
• definizione di processo comune
• importata da un processo di
definizione esterno o trasferita runtime
• Richiede che entrambi i servizi di
WF
- supportino una interfaccia
comune per la comunicazione
- siano in grado di interpretare una
definizione di processo comune,
che puo’ essere importata da un
processo di definizione esterno o
trasferita run time durante
l’esecuzione
Processo A
A1
Processo B
A4
A5
A2 A3
Punto di
sincronizzazione
Dominio del WFMS A
B3
B1
B4 B5
B2
Dominio del WFMS B
I due processi operano indipendentemente
punti di sincronizzazione
Shared Domain of Workflow Services A&B
Paolo Falcarin - Sistemi Informativi 2002
55
Paolo Falcarin - Sistemi Informativi 2002
56
Systems Administration & Monitoring Interface
WAPI
Interface 5
Managent
Application
Workflow Enactment Service
Workflow
Engine (s)
A
Workflow Enactment Service
Typical Functional Areas
Workflow
B
User management
Engine (s)
Role management
Audit management
Resource control
Process supervisory functions, etc
Paolo Falcarin - Sistemi Informativi 2002
57
10
Scarica

Sistemi di gestione di Workflow