I
UNIVERSITÀ DEGLI STUDI DI PISA
Facoltà di Ingegneria
Corso di laurea specialistica in Ingegneria Informatica per la gestione d’azienda
Tesi di Laurea Specialistica
Progettazione ed Implementazione di un’Applicazione di Business
Activity Monitoring basata su tecnologia Sun eBAM Studio® per un
Portale di scommesse on line
Relatori interni:
Prof. Enzo Mingozzi
Prof. Francesco Marcelloni
Relatore esterno:
Ing. Gianluca Sabatini
Candidato:
Giuseppe Pace
II
Abstract
La tesi tratta della realizzazione di una Applicazione di Business Activity Monitoring
sviluppata tramite il tool di sviluppo Sun eBAM Studio. Il progetto realizzato permette il
monitoraggio real-time dei Key Performance Indicator (KPI) caratterizzanti i processi
informatici in esecuzione sulla piattaforma che gestisce le scommesse on-line del brand
Better.
La strategia di intervento consiste nell’utilizzo di opportune sonde (realizzate tramite Web
Service) poste all’interno delle diverse fasi di un Business Process. Le sonde si occupano
di aggiornare le informazioni del DDN (Data Definition Name) dell’eBAM Application.
E’ poi l’applicazione eBAM, opportunamente configurata, ad effettuare le query che
alimentano i grafici che mostrano l’andamento dei KPI.
Il monitoraggio dei (KPI) presenta due scopi principali:
- Garantire una maggiore availability dei servizi offerti
- Eliminare la messa in atto di frodi da parte di utenti malintenzionati
Il monitoraggio del corretto funzionamento del sistema avviente tramite KPI che indicano
la lunghezza della coda di transazioni in attesa in ogni diversa fase del processo e l’esito
finale (OK/NOT OK) delle transazioni. In tal modo sarà garantita la segnalazione
tempestiva di eventuali crash o blocchi di sistema.
Il rilevamento di possibili frodi viene realizzato monitorando dei KPI che mostrano una
visione d’insieme delle diverse transazioni in atto, quali ad esempio il numero di
Transazioni di un certo Conto Gioco o le Transazioni con importo maggiore di X euro.
III
Ogni transazione che prevede movimentazione di denaro sarà inoltre caratterizzata da un
attributo “pericolosità”, calcolato in base ad alcune caratteristiche associabili a transazioni
sospette, quali l’ora dell’operazione, il canale da cui avviene la transazione e l’importo del
prelievo. Transazioni caratterizzate da un valore di “pericolosità” oltre una certa soglia
saranno catalogate come potenzialmente sospette e segnalate dall’applicazione.
Attraverso un’interfaccia di front-end dell’applicazione BAM, realizzata attraverso una
web application, il personale addetto al monitoraggio potrà visionare ed interagire con un
insieme di cruscotti elettronici che mostrano in modo intuitivo e immediato i KPI
monitorati.
IV
Indice
Abstract ... II Indice ... IV Introduzione ... VIII
Capitolo 1 Pianificazione e raccolta dei requisiti ... 10
1.1. Project definition... 10
1.2. Piano di progetto... 10
1.2.1 WBS del Progetto ... 11
1.2.2 Diagramma di Gantt (Luglio 2008 – Dicembre 2008)... 13
1.3. La realtà aziendale e analisi dei requisiti ... 15
1.3.1 Organigramma aziendale ... 15
1.4. Individuazione dei KPI da monitorare ... 16
1.4.1 Il metodo dei Key Performance Indicator ... 17
1.4.2 Scelta dei KPI ... 18
1.4.2.1 Scelta del processo da monitorare ... 18
1.4.2.2 Identificazione dei KPI ... 19
1.4.2.3 Profilatura degli indicatori ... 19
1.4.2.4 Analisi dimensionale dei KPI ... 20
1.4.2.5 Documentazione dei requisiti e responsabilità del monitoraggio ... 21
Capitolo 2 SOA, Web Service e BPEL ... 23
2.1. Introduzione ... 23
2.2. Dal Client/Server a SOA ... 24
2.3. SOA e Business ... 27
2.4. Vantaggi e benefici di una SOA ... 29
2.5. Caratteristiche della SOA ... 32
2.6. Come funziona una SOA ... 34
2.7. Da SOA ai Web Service ... 35
5
2.7.1 WSDL ... 37
2.7.2 SOAP ... 39
2.7.3 UDDI ... 39
2.8. La composizione dei servizi ... 41
2.9. Il modello di composizione dei WS ... 44
2.9.1 Component Model ... 44
2.9.2 Orchestration Model ... 45
2.9.3 Data transfer model ... 45
2.9.4 Service selection ... 47 2.9.5 Transaction ... 48 2.9.6 Exception handling ... 48 2.9.7 Il linguaggio BPEL ... 50 2.9.7.1 Component Model ... 51 2.9.7.2 Orchestration Model ... 52
2.9.7.3 Data type e data transfer ... 53
2.9.7.4 Service selection ... 54
2.9.7.5 Eccezioni e Transazioni... 54
2.9.8 La differenza tra BPMN e BPEL ... 55
Capitolo 3 Infrastruttura tecnologia e processi AS-IS ... 57
3.1. Architettura e Piattaforma applicativa ... 57
3.1.1 Architettura di rete ... 60
3.2. Analisi funzionale dei processi AS-IS ... 62
3.2.1 Processo di scommessa ... 63
3.2.1.1 Studio dal punto di vista funzionale ... 63
3.2.1.2 Studio dal punto di vista informatico ... 67
3.2.1.2.1 La Betting Core Platform ... 67
3.2.1.2.2 I componenti della piattaforma JCAPS ... 69
3.2.1.2.3 Processo di Scommessa da portale better.it ... 70
3.2.1.2.4 Gestione risultati/vincite ... 73
3.2.1.2.5 Accredito vincite ... 74
3.2.2 Processo di prelievo ... 75
3.2.2.1 Studio dal punto di vista funzionale ... 75
3.2.2.1.1 Prelievo da Lottomaticard ... 77
6
3.2.2.2 Studio dal punto di vista informatico ... 78
3.2.2.2.1 Mapping funzionalità e Web Service ... 78
3.2.2.2.2 Prelievo da Conto Gioco a Lottomaticard ... 79
3.2.2.2.2.1 Il processo prelievoCGVsLottomaticardReserve ... 80
3.2.2.2.2.2 Il servizio prelievoCGVsLottomaticardConfirm ... 82
3.2.2.2.2.3 Il servizio prelievoCGVsLottomaticardCancel ... 83
3.3. Conclusioni ... 84
Capitolo 4 Java CAPS ed eBAM Studio ... 85
4.1. Introduzione ... 85
4.2. Architettura del Sistema ... 86
4.2.1 eGate Integrator ... 88
4.2.1.1 Componenti dello strato di eGate Integrator ... 89
4.2.1.1.1 Repository ... 90
4.2.1.1.2 Java System Application Server ... 91
4.2.1.1.3 Java Messaging Server ... 91
4.2.1.1.3.1 Paradigmi di comunicazione ... 93
4.2.1.1.3.2 Trasformazione dei dati e mediazione dei servizi ... 94
4.2.2 Enterprise Designer ... 95
4.2.3 Enterprise Manager ... 97
4.2.4 eInsight Business Process Manager ... 97
4.2.4.1 eInsight e Java CAPS ... 98
4.2.4.2 Business Process Management in eInsigth ... 101
4.2.4.2.1 La fase di design ... 101
4.2.4.2.1.1 Sviluppo di Business Process ... 101
4.2.4.2.2 La fase di Runtime ... 104
4.2.5 Business Activity Monitoring e eBAM Studio ... 105
4.2.5.1 Introduzione al Business Activity Monitoring ... 105
4.2.5.2 eBAM Studio ... 107
4.2.5.2.1 Componenti di un’applicazione eBAM ... 109
4.2.5.2.2 Flusso di dati in un’applicazione eBAM... 110
Capitolo 5 L’Applicazione di Business Activity Monitoring ... 113
5.1. La strategia di intervento ... 113
5.2. L’eBAM Application ... 116
7
Abstract ... II Indice ... IV Introduzione ... VIII
Capitolo 1 Pianificazione e raccolta dei requisiti ... 10
1.1. Project definition... 10
1.2. Piano di progetto... 10
1.2.1 WBS del Progetto ... 11
1.2.2 Diagramma di Gantt (Luglio 2008 – Dicembre 2008)... 13
1.3. La realtà aziendale e analisi dei requisiti ... 15
1.3.1 Organigramma aziendale ... 15
1.4. Individuazione dei KPI da monitorare ... 16
1.4.1 Il metodo dei Key Performance Indicator ... 17
1.4.2 Scelta dei KPI ... 18
1.4.2.1 Scelta del processo da monitorare ... 18
1.4.2.2 Identificazione dei KPI ... 19
1.4.2.3 Profilatura degli indicatori ... 19
1.4.2.4 Analisi dimensionale dei KPI ... 20
1.4.2.5 Documentazione dei requisiti e responsabilità del monitoraggio ... 21
Capitolo 2 SOA, Web Service e BPEL ... 23
2.1. Introduzione ... 23
2.2. Dal Client/Server a SOA ... 24
2.3. SOA e Business ... 27
2.4. Vantaggi e benefici di una SOA ... 29
2.5. Caratteristiche della SOA ... 32
2.6. Come funziona una SOA ... 34
2.7. Da SOA ai Web Service ... 35
2.7.1 WSDL ... 37
2.7.2 SOAP ... 39
2.7.3 UDDI ... 39
2.8. La composizione dei servizi ... 41
2.9. Il modello di composizione dei WS ... 44
2.9.1 Component Model ... 44
2.9.2 Orchestration Model ... 45
2.9.3 Data transfer model ... 45