Tesi di laurea in
Gestione della conoscenza di impresa
Relatore:
Prof. Giovanni Semeraro
Correlatore:
Dott. Gianpiero Bongallino
Candidato:
Michele Filannino
Indice
“ A te nonna …”
9
10
Capitolo 1:
Introduzione
Capitolo 2:
I processi
2.1.1 Workflow
16
2.1.3 BPM
2.2 Standard
2.2.1 BPEL
2.2.2 BPMN
2.2.3 XPDL
Capitolo 3:
Openwork®
3.3 Architettura
Capitolo 4:
Analisi del problema
4.2 Organizzazione
4.4 Espressioni
Il cuore di un gruppo dinamico è la regola formale che esprime le
qualità che ogni singola entità organizzativa deve avere per poter far
parte del gruppo.
L’espressione è una componente estremamente complessa e per
questa ragione risulterebbe estremamente oneroso in termini di
costo e tempo, costruire un expression engine appositamente per
questo scopo.
L’azienda si riserva la possibilit{ di “trattare” le espressioni
utilizzando un framework apposito di terzi. La sua scelta è stata un
punto cruciale di questo lavoro di tesi. Molte erano le alternative che
si profilavano. Nello scegliere il framework migliore si è tenuto conto
dei costi di acquisto, di integrazione, del supporto tecnico, della
generalità e soprattutto delle potenzialità future. Alla fine la scelta è
ricaduta su Spring.NET Framework.
Spring.NET Framework
4.5 Riflessioni
Valutazione dell’espressione
In generale la valutazione dell’espressione di un gruppo dinamico
va fatta in late binding (il più tardi possibile) per evitare che
un’attivit{ venga assegnata ad un insieme di partecipanti attivi che
non soddisfa più le condizioni del gruppo dinamico. Più
45
Capitolo 5:
Analisi dei requisiti
5.1 Requisiti
Di seguito si espongono i diversi requisiti che la futura
applicazione software deve osservare.
Concordemente agli standard aziendali, i requisiti sono stati
classificati in nove diverse categorie:
Requisiti Funzionali: Descrivono le funzionalità ed i servizi
offerti dal prodotto software;
Requisiti Informativi: Descrivono le informazioni che il
prodotto software deve essere in grado di gestire;
Requisiti di Interfaccia: Descrivono le caratteristiche
richieste per la realizzazione delle interfacce utente;
Requisiti di Manutenzione: Descrivono eventuali vincoli di
manutenzione da segnalare immediatamente in fase di
analisi;
Requisiti di Prestazione: Descrivono alcuni vincoli sulla
definizione del sistema software che impattano sulle
prestazioni dello stesso;
Requisiti di Piattaforma: Descrivono eventuali
accorgimenti, evidenziabili già in fase di analisi, derivanti
dall’utilizzo di una particolare piattaforma;
Requisiti di Sicurezza: Descrivono i vincoli relativi alla
sicurezza del futuro sistema software;
Requisiti di Integrazione: Descrivono i vincoli che
dovrebbero poter essere imposti in fase di integrazione
del prodotto software con un sistema software.
Requisiti Tecnici: Descrivono eventuali altri requisiti.
Funzionali [FUN]
Informativi [INF]
Gruppo Dinamico
È la rappresentazione di tutte le informazioni che caratterizzano il
gruppo dinamico.
OWK-INF-0001 STRUTTURA:
- identificativo, nome, descrizione, espressione;
RELAZIONI:
- Attività(1 .. 1)
Attività
È l’insieme delle informazioni che caratterizzano una singola
attività.
OWK-INF-0002 STRUTTURA:
- identificativo, …
RELAZIONI:
- Attività (1 .. )
51
Interfaccia [IFC]
Gruppi Dinamici
OWK-IFC-0001 L’interfaccia per la gestione dei Gruppi Dinamici deve essere
integrata nel Business Flow Designer.
HCI Guidelines
OWK-IFC-0002
L’interfaccia dovr{ essere compatibile con gli standard di HCI.
Binding Attività-Gruppo Dinamico
L’interfaccia utente per l’assegnazione di un’attivit{ ad un gruppo
OWK-IFC-0003
di persone dovrà essere integrata a quella già esistente per non
disorientare l’utente.
Manutenzione [MAN]
Nessuno
Prestazioni [PER]
Nessuno
Piattaforma [PLF]
Sicurezza [SEC]
Nessuno
Integrazione [INT]
52
Tecnici [TEC]
Framework di sviluppo
OWK-TEC-0001 Il sistema dovrà essere realizzato utilizzando Microsoft Framework
2.0
Lista degli attributi
OWK-TEC-0002 La lista degli attributi sarà contenuta in un file XML con relativo
schema.
53
Capitolo 6:
Specifiche dei requisiti
6.1 Classi
6.1.1 Diagrammi
Mapping
Raffinamento
Classi definitive
6.2.1 Diagrammi
Mapping
ACTORS
SCENARIO
Scenario di base
1. L’utente preme il pulsante relativo alla sezione dei Gruppi Dinamici, all’interno della
finestra di assegnazione partecipanti nel Business Flow Designer;
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0004
60
ACTORS
Application Server.
SCENARIO
Scenario di base
1. L’Application Server controlla il verificarsi di un determinato evento;
2. Quando l’evento si scatena, l’Application Server elimina tutte le definizione dei
gruppi dinamici superflui per il corrente modello di processo.
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0002
61
ACTORS
SCENARIO
Scenario di base
1. Il Business Flow Modeler preme il pulsante relativo al collegamento di un’attivit{ con
i Gruppi Dinamici;
2. Il Business Flow Modeler preme il pulsante relativo all’inserimento di un nuovo
Gruppo Dinamico;
3. Il Business Flow Modeler inserisce le informazioni richieste (lista di attributi e valori
relativi);
4. Il Business Flow Modeler preme sul pulsante di conferma inserimento;
5. L’Application Server controlla la correttezza dei dati inseriti;
6. L’Application Server assegna il gruppo dinamico all’attività in esame.
PERCORSI ALTERNATIVI
Scenario alternativo
5. L’Application Server controlla la correttezza dei dati inseriti e notifica gli errori;
6. Il Business Flow Modeler reinserisce i dati in modo corretto;
7. L’Application Server assegna il gruppo dinamico all’attivit{ in esame.
REQUISITI TRACCIATI
OWK-FUN-0001
62
ACTORS
SCENARIO
Scenario di base
1. Il Business Flow Modeler preme il pulsante relativo alla visualizzazione dei Gruppi
Dinamici;
2. Il Business Flow Modeler preme il pulsante relativo alla modifica di un Gruppo
Dinamico visualizzato;
3. Il Business Flow Modeler modifica le informazioni opportune (nome e/o condizioni);
4. Il Business Flow Modeler preme sul pulsante di conferma modifiche;
5. L’Application Server controlla la correttezza dei dati inseriti;
6. L’Application Server assegna il gruppo dinamico all’attivit{ in esame.
PERCORSI ALTERNATIVI
Scenario alternativo
5. L’Application Server controlla la correttezza dei dati inseriti e notifica gli errori;
6. Il Business Flow Modeler reinserisce i dati in modo corretto;
7. L’Application Server controlla la correttezza dei dati inseriti;
8. L’Application Server assegna il gruppo dinamico all’attivit{ in esame.
REQUISITI TRACCIATI
OWK-FUN-0005
63
ACTORS
SCENARIO
Scenario di base
1. Il Business Flow Modeler accede al Business Flow Designer per gestire un modello di
processo;
2. Il Business Flow Modeler seleziona l’attivit{ da sottoporre al gruppo dinamico;
3. Il Business Flow Modeler preme sul pulsante relativo all’indicazione dei partecipanti;
4. Il Business Flow Modeler selezione il gruppo dinamico desiderato;
5. L’Application Server associa l’attivit{ a quel gruppo dinamico.
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0003
64
ACTORS
Application Server.
SCENARIO
Scenario di base
1. L’Application Server controlla la correttezza formale del gruppo dinamico.
2. L’Application Server restituisce l’esito del controllo.
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0006
65
7. Publish Model
ACTORS
SCENARIO
None
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
None
66
8. Request Access
ACTORS
SCENARIO
None
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
None
67
ACTORS
Application Server.
SCENARIO
Scenario di base
1. L’Application Server comunica all’esterno se l’utente richiedente fa o meno parte di
un particolare gruppo dinamico.
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0007
68
ACTORS
Application Server.
SCENARIO
Scenario di base
L’Application Server percepisce l’identificativo del gruppo dinamico.
L’Application Server valuta l’espressione contenuta nella definizione del Gruppo
Dinamico.
L’Application Server restituisce una lista di partecipanti che in quel preciso momento
soddisfa le particolari condizioni presenti nell’espressione del Gruppo Dinamico.
PERCORSI ALTERNATIVI
None
REQUISITI TRACCIATI
OWK-FUN-0007
69
Capitolo 7:
Conclusioni
Appendice
72
A UML
A.1 Storia
A.3 Applicazioni
B XML
Glossario ed Acronimi
Bibliografia