CORSO WITNESS BASE - studiozeta.net fileCORSO WITNESS BASE - studiozeta.net

279
© Copyright 2014 Studio Zeta S.r.l. studio zeta Processi e Organizzazione CORSO WITNESS BASE © Copyright 2004-2014 Studio Zeta S.r.l. Tutti i diritti sono riservati La proprietà intellettuale e i diritti di sfruttamento economico di questo corso, appartengono a Studio Zeta S.r.l. Il Materiale didattico è tutelato dalle leggi sui diritti d’autore, dalle leggi sul copyright, e dalle leggi e disposizioni internazionali in materia di proprietà intellettuale. La riproduzione o divulgazione non autorizzata di questo materiale, o di parte di esso, in qualunque forma è vietata. Contact Center V.3.5 Novembre 2014

Transcript of CORSO WITNESS BASE - studiozeta.net fileCORSO WITNESS BASE - studiozeta.net

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

CORSO WITNESS BASE

© Copyright 2004-2014 Studio Zeta S.r.l. – Tutti i diritti sono riservati

La proprietà intellettuale e i diritti di sfruttamento economico di questo corso, appartengono a Studio Zeta S.r.l. Il Materiale didattico è tutelato dalle leggi sui diritti d’autore, dalle leggi sul copyright, e dalle leggi e disposizioni internazionali in materia di proprietà intellettuale. La riproduzione o divulgazione non autorizzata di questo materiale, o di parte di esso, in qualunque forma è vietata.

Contact Center V.3.5 Novembre 2014

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 2

Obiettivo del corso

Introdurre i partecipanti alla modellizzazione dei processi e alle tecniche di simulazione dinamica con Witness:

‒ principi di base della simulazione

‒ nozioni di base per la costruzione di modelli di simulazione dinamica applicati alla realtà dei contact center

‒ metodologia del progetto di simulazione

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 3

Struttura del corso

1. Introduzione alla simulazione dinamica

2. Witness: cenni storici e caratteristiche generali

3. Interfaccia Utente di Witness

4. Costruire un modello

5. Pause e After Call Work

6. Campionamento e distribuzioni di probabilità

7. Risorse

8. Action ed elementi logici

9. Debug

10. Turni

11. Input e output dei dati

12. Elementi grafici

13. Salvataggio di un modello

14. Analisi costi/benefici

15. Metodologia del progetto di simulazione

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 1 - INTRODUZIONE ALLA

SIMULAZIONE DINAMICA

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 5

Cos’è la simulazione?

La simulazione dinamica è

una tecnica della Ricerca Operativa

che consente di osservare e studiare “in-vitro”

il comportamento dinamico dei processi

attraverso un modello a calcolatore

che si comporta come il sistema reale stesso

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 6

Cos’è la simulazione?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 7

A cosa serve

Misurare “in vitro” le prestazioni di un qualunque sistema

Confrontare scenari alternativi in modalità “What-if?”

Identificare i punti critici

Misurare le prestazioni al variare dei carichi di lavoro

Individuare margini di recupero di efficienza

Ricercare le regole gestionali e le logiche di flusso considerate “ottime”

… prima di rendere operativo il processo

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 8

PROGETTAZIONE REALIZZAZIONE

La simulazione dinamica Perché provare «in-vitro» anziché «in-vivo»?

ANALISI DELLE

SOLUZIONI

SCELTA

DELLA SOLUZIONE

PIANO DI

IMPLEMENTAZIONE IMPLEMENTAZIONE

GESTIONE DELLA

SOLUZIONE

Sintesi per

il management

Confronto

di scenari

alternativi

Creazione/Modifica

Scenario

Analisi dei

risultati

WHAT-IF LOOP

Esecuzione

Simulazione

“What-If”

Workshops

NUOVE IDEE

Decisione PILOTA VIRTUALE

STRESS TEST WHAT-IF?

AVVIAMENTO CONDUZIONE

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 9

La simulazione dinamica Perché provare «in-vitro» anziché «in-vivo»?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 10

ROI

Benefici Tangibili ‒ Ottimizzare gli investimenti in capitale (Produrre di più a parità di capitale investito / produrre lo stesso con minori investimenti)

‒ Evitare gli investimenti inutili

‒ Ridurre i tempi di avviamento (Costo avviamento = Margine di contribuzione unitario * mancata produzione giornaliera * giorni di avviamento)

‒ Ridurre i costi nascosti (gestionali e operativi)

‒ Anticipare e contenere i rischi di progetto

Benefici Intangibili ‒ Rendere oggettive le scelte e le decisioni

‒ Aumentare la comprensione del sistema produttivo e del suo comportamento dinamico in chi lo dovrà gestire

‒ Aumentare l’efficienza del processo decisionale

‒ Aumentare la comunicazione (Nel gruppo di lavoro e verso i fornitori)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 11

La simulazione nei Contact Center

Consente di prevedere, prima di realizzare un nuovo contact center o cambiare un’organizzazione esistente, l’evolvere nel tempo degli indici di prestazione per servizio.

Ad esempio:

‒ Livello di servizio e Tasso di abbandono:

o Chiamate risposte entro il target

o Abbandoni

o Dissuasioni

‒ Saturazione degli Agenti (in Front-line, Back-Office e per Skill)

‒ Impegno delle linee e delle infrastutture

‒ Costo per chiamata

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 12

La simulazione nei Contact Center

Chiamate Offerte

0

50

100

150

200

250

300

350

400

450

500

0.00

1.00

2.00

3.00

4.00

5.00

6.00

7.00

8.00

9.00

10.0

0

11.0

0

12.0

0

13.0

0

14.0

0

15.0

0

16.0

0

17.0

0

18.0

0

19.0

0

20.0

0

21.0

0

22.0

0

23.0

0

Intervalli

Ch

iam

ate

Totale chiamate offerte

Servizio 1

Servizio 2

Servizio 3

Servizio 4

Dati di input

– Profilo giornaliero delle chiamate offerte

– Numero di Operatori

Operatori

0

10

20

30

40

50

60

7.00 8.00 9.00 10.00 11.00 12.00 13.00 14.00 15.00 16.00 17.00 18.00 19.00

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 13

La simulazione nei Contact Center

0

2

4

6

8

10

Servizi

TEMPI MEDI DI CONVERSAZIONE

TMC1

TMC2

TMC3

TMC4

TEMPO MEDIO DI CONVERSAZIONE

Dati di input

– Tempi medi di conversazione

– Tempi medi di abbandono

•0

•20

•40

•60

•80

•100

•120

•Origine della Chiamata

•TEMPI MEDI DI ABBANDONO

•Nord Ovest

•Nord Est

•Centro

•Sud

•TEMPO MEDIO DI ABBANDONO

•0

•20

•40

•60

•80

•100

•120

•Origine della Chiamata

•TEMPI MEDI DI ABBANDONO

•Nord Ovest

•Nord Est

•Centro

•Sud

•TEMPO MEDIO DI ABBANDONO

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 14

La simulazione nei Contact Center

Dati di input

– Instradamenti e Accodamenti agli Skill

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 15

La simulazione nei Contact Center

Abbandonate, tempo medio di attesa e tempo massimo di attesa

su Call Center

0

100

200

300

400

500

600

0.0

0

1.0

0

2.0

0

3.0

0

4.0

0

5.0

0

6.0

0

7.0

0

8.0

0

9.0

0

10.0

0

11.0

0

12.0

0

13.0

0

14.0

0

15.0

0

16.0

0

17.0

0

18.0

0

19.0

0

20.0

0

21.0

0

22.0

0

23.0

0

T A

tte

sa

0

5

10

15

20

25

30

ab

ba

nd

on

i

T medio attesa

T max attesa

Abbandoni

Abbandonate, tempo medio di attesa e tempo massimo di attesa

su Call Center

0

100

200

300

400

500

600

0.0

0

1.0

0

2.0

0

3.0

0

4.0

0

5.0

0

6.0

0

7.0

0

8.0

0

9.0

0

10.0

0

11.0

0

12.0

0

13.0

0

14.0

0

15.0

0

16.0

0

17.0

0

18.0

0

19.0

0

20.0

0

21.0

0

22.0

0

23.0

0

T A

tte

sa

0

5

10

15

20

25

30

ab

ba

nd

on

i

T medio attesa

T max attesa

Abbandoni

Risultati (Livello di servizio) – L’evolvere nel tempo delle chiamate risposte e abbandonate

– Distribuzione dei tempi di risposta

Distribuzione tempi di risposta (sec)

0

1000

2000

3000

4000

5000

6000

7000

8000

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 >

90

N° chiamate

Distribuzione tempi di risposta (sec)

0

1000

2000

3000

4000

5000

6000

7000

8000

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 >

90

N° chiamate

Distribuzione tempi di risposta (sec)

0

1000

2000

3000

4000

5000

6000

7000

8000

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 >

90

N° chiamate

Distribuzione tempi di risposta (sec)

0

1000

2000

3000

4000

5000

6000

7000

8000

5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 >

90

N° chiamate

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 16

La simulazione nei Contact Center

Risultati (Operatori)

– L’evolvere nel tempo della Saturazione degli operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 17

La simulazione ad eventi discreti

La simulazione ad eventi discreti progredisce nel tempo passando da un evento al successivo

Un evento è un mutamento di stato all’interno del modello

Esempio: ‒ Due tipologie di servizi A e B arrivano

su un IVR che smista le chiamate su due operatori.

‒ Tempo dell’IVR 3 min.

‒ Le chiamate A vengono servite da un operatore A1.

Tempo medio di conversazione: 7 min.

‒ Le chiamate B vengono servite da un operatore B1.

Tempo medio di conversazione: 4 min.

‒ Le chiamate vengono poi passate ad un operatore 2°Liv

Tempo medio di conversazione: 4 min.

‒ Il profilo di arrivo delle chiamate A e B è totalmente casuale

IVR

3 min. A A B B

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

INPUT

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 18

La simulazione ad eventi discreti

Tempo T=0 ‒ Arriva la chiamata del servizio A

‒ L’IVR inizia a lavorare

‒ Nessun altro cambiamento di stato è possibile, il tempo avanza fino al prossimo evento (T=3)

A B B

INPUT

Scheduling • T=3 –> Fine Ciclo IVR

A

IVR

3 min.

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 19

La simulazione ad eventi discreti

Tempo T=3 ‒ L’IVR finisce il ciclo

‒ La chiamata A va all’operatore Op_A

‒ L’operatore Op_A inizia a lavorare

‒ L’IVR è libero

‒ Arriva la chiamata B

‒ L’IVR inizia a lavorare

‒ Nessun altro cambiamento di stato è possibile, il tempo avanza fino al prossimo evento (T=6)

A

A B B

INPUT

Scheduling • T=6 –> Fine Ciclo IVR

• T=10 –> Fine Ciclo Op_A

IVR

3 min.

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 20

La simulazione ad eventi discreti

Tempo T=6 ‒ L’IVR finisce il ciclo

‒ La chiamata B va all’operatore Op_B

‒ L’operatore Op_B inizia a lavorare

‒ L’IVR è libero

‒ Arriva una nuova chiamata A

‒ L’IVR inizia a lavorare

‒ Nessun altro cambiamento di stato è possibile, il tempo avanza fino al prossimo evento (T=9)

A

B

INPUT

Scheduling

• T=9 –> Fine Ciclo IVR

• T=10 –> Fine Ciclo Op_A

• T=10 –> Fine Ciclo Op_B

B

A

IVR

3 min.

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 21

La simulazione ad eventi discreti

Tempo T=9 ‒ L’IVR finisce il ciclo

‒ L’operatore Op_A sta ancora lavorando

‒ L’IVR non può passare la chiamata A e rimane bloccato fino a quando l’operatore Op_A non finisce il ciclo

‒ Nessun altro cambiamento di stato è possibile, il tempo avanza fino al prossimo evento

A

A

B

B

INPUT

Scheduling • T=10 –> Fine Ciclo Op_A

• T=10 –> Fine Ciclo Op_B

IVR

3 min.

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 22

La simulazione ad eventi discreti

Tempo T=10 ‒ L’operatore Op_A finisce il ciclo

‒ L’operatore Op_B finisce il ciclo

‒ L’operatore Op_A ha la precedenza e la chiamata A viene passata all’operatore Op_2°Liv

‒ L’operatore Op_B non può passare la chiamata B e rimane bloccato fino a quando l’operatore Op_2°Liv non finisce il ciclo

‒ L’IVR può passare la chiamata A all’operatore Op_A

‒ L’IVR è libero e prende la nuova chiamata B

‒ Nessun altro cambiamento di stato è possibile, il tempo avanza fino al prossimo evento (T=130)

B

INPUT

A

A

B

IVR

3 min.

Op_A

7 min.

Op_B

4 min.

Op_2°Liv

4 min

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 2 – WITNESS: CENNI

STORICI E

CARATTERISTICHE

GENERALI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 24

Cenni storici (1/2)

1978 British Leyland Systems sviluppa SEE-WHY, il primo software di

simulazione con grafica animata in commercio

1980 SEE WHY vince a Londra il “British Computer Society Application

Software Award”

1984 British Leyland Systems rinomina se stessa ISTEL

1986 Nasce WITNESS: è il primo software di simulazione con struttura a

menu che permette la costruzione interattiva di modelli

1989 ISTEL viene acquisita da AT&T e diventa AT&T Istel

1989 WITNESS è disponibile in ambiente windows e permette la

creazione di modelli senza limitazione nel numero di elementi.

1989 Viene venduta la 1000-esima licenza

1992 WITNESS viene distribuito negli Stati Uniti e in Europa da AT&T Istel

1996 STUDIO ZETA diviene distributore unico per l’Italia e costituisce il primo gruppo di competenza sulla simulazione

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 25

Cenni storici (2/2)

1996 La divisione che ha progettato WITNESS si stacca dalla AT&T e costituisce la LANNER Group Ltd, finanziata da 3i

2000 WITNESS fornisce il supporto per la modellizzazione 3D

2002 Viene lanciata la versione di WITNESS per il settore Servizi

2007 WITNESS vince l’ICT award per il prodotto software più innovativo

2009 LANNER Group Ltd. stabilisce la sua presenza in Cina

2012 La tecnologia della simulazione viene resa disponibile su Cloud

2014 Con uffici in Europa, negli Stati Uniti e in Asia, LANNER lavora per

aziende leader e organizzazioni governative nel mondo, attraverso

una rete globale di esperti e partner che forniscono la stessa agilità

di risposta in tutto il mondo.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 26

Caratteristiche generali

Witness è un software di simulazione dinamica ad eventi discreti

Combina una grafica animata a colori con l’interazione dell’utente

Non è un linguaggio di programmazione

Non viene compilato

E’ adatto anche a chi non è esperto di programmazione

E’ facile da usare (Easy of Use)

E’ perfettamente integrato con il mondo Microsoft ( ad esempio:

Visual Basic o EXCEL per l’input/output dei dati)

E’ generico (permette di modellizzare qualsiasi processo)

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 3 – INTERFACCIA

UTENTE DI WITNESS

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 28

Witness a prima vista

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 29

Interfaccia Utente

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 30

Selettore degli elementi - Model

Simulation: elenco degli elementi presenti nel

modello corrente

Designer: elenco degli elementi presenti nella

pagina selezionata del Designer Element

System: variabili/oggetti di sistema

Type: elenco di tutte le tipologie di elementi

presenti in Witness

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 31

Selettore degli elementi - Assistant

Permette l’inserimento guidato nel modello di funzioni,

regole di ingresso/uscita, azioni, distribuzioni ed

elementi di sistema (varibili, attributi etc)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 32

Barre degli strumenti - RUN

• Begin: Riporta il modello all’istante iniziale

• Step back: Riporta la simulazione allo step precedentemente salvato

• Stop

• Salvataggio automatico di step intermedi

• Step: Avanzamento passo passo

• Run: Avanzamento a velocità “normale”

• Step forward: Avanzamento allo step successivo precedentemente salvato

• Batch: Avanzamento “veloce” senza grafica

• Selezione della durata della simulazione

• Durata della simulazione (in unità di tempo simulato)

• Selezione della velocità di movimento delle icone in modalità run

• Trace: registra ogni evento che avviene durante la simulazione in un file

• Meteor trail: registra i flussi di entità

• Abilita la funzione di Watch

• Tempo corrente nella simulazione

• Selezione della velocità di avanzamento del tempo in modalità run

• Valore del warmup (i.e. istante dopo il quale il sistema registra le statistiche)

studio zeta Processi e Organizzazione Barre degli strumenti - Element

Visualizza/Nasconde l’albero degli elementi

Visualizza/Nasconde l’assistente

Seleziona un gruppo di oggetti (e.g. per le statistiche)

Crea un nuovo gruppo di oggetti

Elemento correntemente selezionato

Regole di input/output grafiche

Modalità rapida di creazione delle regole di Input/Output

Definizione di un nuovo elemento (Define)

Dettaglio dell’elemento selezionato (Detail)

Grafica dell’elemento selezionato (Display)

Modifica della grafica (Update)

Eliminazione dell’elemento selezionato (se possibile)

Eliminazione della parte grafica dell’elemento selezionato

Clone dell’elemento selezionato

Copia del dettaglio

Copia del display

Incolla dettaglio/display

Crea di un elemento nel Designer Element

Crea un modulo

Guasto forzato dall’utente

Riparazione di un guasto forzato

Opzioni di raggruppamento della parte grafica

Page 33 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 34

Finestre di dialogo e Editor

studio zeta Processi e Organizzazione Windows e Layers

Dal menu: Window -> Control

Tasto “*” sulla finestra

Page 35 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Interact Box

Dal menu : View -> Interact Box

Page 36 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Gli orologi

Analogico : View -> Clock

Digitale : View -> Time

Page 37 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Gli orologi

Page 38 © Copyright 2014 Studio Zeta S.r.l.

• Model -> Clock per configurare l’orologio digitale e il calendario

Configura l’unità di tempo

Imposta l’ora iniziale

Determina come verrà

visualizzato il trascorrere del

tempo

Imposta la data iniziale

Per dettagliare un periodo di lavoro e delle

vacanze

Nella Toolbar

Finestra TIME

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 39

Help File

“F1” oppure il menu <Help>

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 4 - COSTRUIRE UN

MODELLO

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 41

Costruire un modello

PASSI DA SEGUIRE

DEFINE

DISPLAY DETAIL

Combinati

(Designer

Elements)

oppure

Uno alla volta

studio zeta Processi e Organizzazione Designer Element

Selezionare un elemento dalla finestra “designer element”

Trascinare con il mouse nella finestra principale, dove si intende collocare l’elemento

Page 42 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Definire un elemento

Menu Elements -> Define

Tasto destro del mouse -> Define

Page 43 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Visualizzare un elemento

Menu Elements -> Display

Tasto destro del mouse -> Display

Page 44 © Copyright 2014 Studio Zeta S.r.l.

• Prima lista (combo): Azione

• Seconda lista (combo): caratteristica da rappresentare

• Tastini: Strumenti

studio zeta Processi e Organizzazione Visualizzare un elemento

Page 45 © Copyright 2014 Studio Zeta S.r.l.

• Disegnare o modificare un elemento

• Cancellare un elemento

• Organizzare i Layers

• Legare tutti gli elementi grafici dell’elemento

• Griglia ON/OFF

• HELP

• Salvataggio

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 46

Risultato visualizzazione

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 47

Dettagliare un elemento

Menu Elements -> Detail

Tasto destro del mouse sull’elemento selezionato -> Detail

Doppio click con il tasto sinistro del mouse sull’elemento

studio zeta Processi e Organizzazione

Versione Service

Versione Manufacturing

Entity Part

Queue Buffer

Activity Machine

Page 48 © Copyright 2014 Studio Zeta S.r.l.

Gli Elementi di base

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 49

Le Entità

Sono utilizzate per rappresentare elementi discreti che si muovono nel modello (chiamate telefoniche, pazienti di un ospedale, motori, componenti elettronici..)

Possono essere trattate singolarmente, assemblate, separate o “lottizzate”

Durante la simulazione possono trasformarsi in altre entità

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 50

Dettagliare un’Entità

studio zeta Processi e Organizzazione Profilo di arrivo delle Entità

“Import…” per importare il profilo di arrivo da un file di testo (*.txt)

Page 51 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 52

Le Code

Sono utilizzate per immagazzinare entità (coda di telefonate ad un Contact Center, area di una fabbrica dove le entità vengono depositate in attesa di una successiva operazione, reception di un Pronto Soccorso, ecc.)

Sono elementi generalmente “passivi”: non prelevano attivamente entità né le spingono verso un altro elemento

È possibile definire dei tempi massimi (ad esempio Time-Out o tempi di abbandono) e minimi (ad esempio stagionatura o cottura) che le entità devono trascorrere nella coda

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 53

Dettagliare una Coda

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 54

Le Attività

• Sono elementi che operano sulle entità per un certo periodo di tempo -“Durata”- (operatore di un Contact Center, pressa, tornio, robot, Pronto Soccorso, ecc.)

• Sono elementi normalmente “attivi”: possono prelevare attivamente entità e spingerle verso un altro elemento

• Possono processare una sola entità alla volta oppure un intero lotto; possono assemblare o disassemblare entità

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 55

Dettagliare una Attività

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 56

Tipi di Attività

Single Activity

Batch Activity

IN OUT

IN OUT

studio zeta Processi e Organizzazione Tipi di Attività

Join Activity

Split Activity

Page 57 © Copyright 2014 Studio Zeta S.r.l.

IN OUT Join quantity= 3

IN OUT

X

X Y Y Y

Split quantity = 3

Entity Type = Y

studio zeta Processi e Organizzazione Tipi di Attività

General Activity

Multiple Task Activity

Multiple Station Activity

Page 58 © Copyright 2014 Studio Zeta S.r.l.

IN OUT

Task 1 Entity IN = 2 Entity OUT=0

Any Number IN Any Number OUT

IN OUT Station = 6 Entity = 2

Task 2 Entity IN = 1 Entity OUT=1

Task 3 Entity IN = 0 Entity OUT=2

studio zeta Processi e Organizzazione Tipi di Attività – Multiple Task Activity

Esempio : – L’operatore riceve una chiamata – La processa per 3 minuti (Prima fase) – Preleva una pratica da compilare con il Cliente – Ci mette 1 minuto a compilarla (Seconda fase) – Evade la chiamata e archivia la pratica

Page 59 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Tipi di Attività – Multiple Task Activity

Page 60 © Copyright 2014 Studio Zeta S.r.l.

Task 1 Task 2 Task 3

A

B

C

D

E

F

G

Task 1

Input qty: 2

Finish qty: 1

Output qty: 0

Task 2

Input qty: 0

Finish qty: 2

Output qty: 1

Task 3

Input qty: 1

Finish qty: 1

Multiple Task Activity

studio zeta Processi e Organizzazione Muovere le entità nel modello

Regole di ingresso (INPUT RULE) – Barra degli strumenti

Regole di uscita (OUTPUT RULE) – Barra degli strumenti

Per visualizzare il flusso: Element Flow – Menu : View -> Element Flow

Page 61 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 62

WAIT

L’elemento non ha una regola di ingresso, attende fino a quando un’entità non arrivi attivamente sull’elemento oppure non gli venga passata da un altro elemento

PULL (PUSH)

Richiama le entità da una lista di elementi nell’ordine previsto.

Es.: PULL A FROM B1,B2

L’elemento cerca un’entità A prima nella coda B1 e se non la trova la cerca nella coda B2

MOST ENTITIES / (MOST FREE)

Richiama le entità dall'elemento con il maggior numero di entità o da quello con il maggior spazio libero. Es.: MOST ENTITIES B1,B2

LEAST ENTITIES / (LEAST FREE)

Richiama le entità dall'elemento con il minor numero di entità o da quello con il minor spazio libero. Es.: LEAST FREE B1, B2

Riepilogo Regole di Input (Output)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 63

Riepilogo Regole di Input (Output)

PERCENT

Richiama un’entità da un'origine scelta eseguendo un campionamento "random" su una lista di possibili origini. Es.: PERCENT / 1 B1 70.0, B2 30.0

L’elemento preleva le entità in modo “random” il 70% da una coda B1, il 30% da una coda B2

SEQUENCE

Richiama le entità da una lista di elementi rispettando una determinata sequenza (Failure Rule).

Es.: SEQUENCE / WAIT B1 # (1), B2 # (1), B3 # (1)

Prende 1 entità da B1 quindi 1 da B2, quindi 1 da B3; se non vi sono entità disponibili aspetta fino a che ve ne sia una.

Es.: SEQUENCE / NEXT B1#(1), B2#(2), B3#(1)

come sopra ma se un’entità non è disponibile continua provando quella successiva nella sequenza.

Es.: SEQUENCE / RESET B1#(1), B2#(2), B3#(1)

come sopra, ma se un’entità non è disponibile riprende la sequenza dall'inizio.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 64

Riepilogo Regole di Input (Output)

SELECT

Richiama le entità a seconda del risultato di una espressione.

Es.: SELECT on X Q1, Q2

Se X = 1 l’elemento prende un’entità da una coda Q1 altrimenti se X = 2 prende un’entità da Q2.

IF

Esecuzione in base alla condizione:

Es. IF NENTS (B1) >5

PULL from B1

ELSE

PULL from B2

ENDIF

Se ci sono più di 5 entità nella coda B1 prende un’entità da B1, altrimenti prende un’entità da B2.

Non è una regola di input/output, ma piuttosto un metodo per combinare insieme diverse regole.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 65

Riepilogo Regole di Input (Output)

QUEUE

Regola valida solo per le attività. Consente di creare una coda di Input dedicata

Es.: QUEUE (5)

L’attività ha una coda in input con capacità di 5 entità da cui preleva

MATCH

Consente all’elemento di scegliere selettivamente le entità. La regola Match può essere eseguita con tre differenti opzioni.

Es.: MATCH / ANY (B1#1 AND B2#2)

L’elemento selezionerà un’entità da B1 e due entità da B2.

Es.: MATCH / ATTRIBUTE COLOUR CHASSIS#1 AND DOORBUFF#4

L’elemento selezionerà entità con lo stesso valore di uno specificato attributo. Nell’esempio verrà richiamata una entità dall’elemento Chassis e 4 entità dal DOORBUFF tutte dello stesso colore.

Es.: MATCH / CONDITION (ATT2=5 AND ATT3=1) B1#1 AND B2#1 OR B3#2

L’elemento selezionerà entità con certe condizioni. Nell’esempio riportato verrà prelevata un’entità da una coda B1 e una da una coda B2 o entrambe da una coda B3. La condizione della selezione è quella per cui l’attributo ATT2 è uguale a 5 e ATT3 è uguale a 1.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 66

Origini e destinazioni delle entità

Le entità in ingresso al modello vengono prelevate da un’origine a capacità infinita

Le entità in uscita dal modello vengono inviate a destinazioni a capacità infinita

World

Lost

Served

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 67

Esercizi – Premessa

Gli esercizi di questo corso sono finalizzati a fare apprendere ai partecipanti l’uso applicato delle funzionalità offerte da Witness per la costruzione dei modelli.

Sono volutamente semplici per dare la possibilità ai partecipanti di focalizzare la propria attenzione sull’apprendimento delle funzionalità utilizzate e non sulla bontà del risultato numerico.

Si parte da un modello base che, con un approccio incrementale, viene via via arricchito di nuove funzionalità a mano a mano che queste vengono spiegate in teoria

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 68

Esercizio 4.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 69

Esercizio 4.1 – Costruire un modello

Obiettivo dell’esercizio

Costruzione di un modello base utilizzando entità, attività e code

Sperimentazione What-if

Descrizione

Un contact center è dimensionato per rispondere alle chiamate di tre diverse tipologie di servizi.

Le chiamate relative ai tre servizi (A, B e C) entrano rispettivamente su tre code dedicate Q1, Q2 e Q3. Un Risponditore automatico (ACT10) preleva una singola chiamata da una delle code, la processa e la inserisce nella coda degli operatori (Q4).

Un operatore preleva la chiamata dalla coda, la processa e la evade. Quest'ultima attività viene eseguita da due Operatori con le medesime caratteristiche (ACT20).

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 70

Esercizio 4.1 – Costruire un modello

Layout

ACT10

Q1

Q2

Q3

Q4 ACT20 ACT20

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 71

Esercizio 4.1 – Costruire un modello

Dati

Frequenza di arrivo delle chiamate:

‒ A: 1 ogni 2.5 minuti

‒ B: 1 ogni 5 minuti

‒ C: 1 ogni 7.5 minuti

Capacità delle code:

‒ Q1, Q2, Q3: 10 chiamate

‒ Q4: 50

Tempi medi di gestione per chiamata:

‒ ACT10 0.3 minuti

‒ ACT20 4.0 minuti

Icone da utilizzare

‒ Risponditore automatico: ICON = 288

‒ Operatori: ICON = 164

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 72

Esercizio 4.1 – Costruire un modello

Risultati attesi analizzando un periodo di 24 ore

Tempi medi di attesa in coda

Numero massimo di chiamate nella coda operatori

Saturazione degli operatori

Saturazione del risponditore automatico

What-if analysis

Effettuare alcuni esperimenti provando a variare:

‒ La regola di prelievo dalle code del risponditore ACT10

‒ Il numero di operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 73

Risultati Esercizio 4.1

2 Operatori

3 Operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 74

Risultati Esercizio 4.1

2 Operatori

3 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnato

--- Attesa chiamata

Operatori Chiamate

Operatori Chiamate

studio zeta Processi e Organizzazione Statistiche

Informazioni in tempo reale (durante il run di simulazione)

Page 75 © Copyright 2003-2007 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Statistiche

A simulazione ferma Tasto destro del mouse -> Statistics…

Tasto Statistics Report dalla barra degli strumenti

Page 76 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Statistiche

Formato numerico

Si può selezionare, copiare ed incollare su Excel

Page 77 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Statistiche

Formato grafico

Page 78 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 79

Statistical Report

Summary Report

Explode

Used (Dove viene richiamato l’elemento)

Barra degli strumenti - Reporting

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 80

Esercizio 4.2

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 81

Esercizio 4.2

Obiettivo dell’esercizio

Introduzione di un tempo massimo di attesa in coda

Sperimentazione What-if

Descrizione

Si è notato che l’utente che ha effettuato la chiamata, dopo essere stato messo in attesa sulla coda operatori in genere riattacca dopo 2 minuti di attesa.

Dati

Tempo medio di abbandono: 2 minuti

Scegliere come regola di prelievo per ACT10 una Sequence/Next

2 Operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 82

Esercizio 4.2

Risultati attesi

Numero di abbandoni

Saturazione operatori e risponditore automatico

What-if analysis

Quanti operatori sarebbero necessari per ridurre a zero il numero di abbandoni?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 83

Esercizio 4.2

2 Operatori

3 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnato

--- Attesa chiamata

Operatori

Chiamate

Chiamate

Operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 84

Esercizio 4.3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 85

Esercizio 4.3

Obiettivo dell’esercizio

Introduzione di un profilo di arrivo delle entità

Sperimentazione What-if

Descrizione

Il gruppo di lavoro ha rilevato che le chiamate arrivano sulla base del seguente profilo orario:

Dati

Operatori ACT20: 2

A B C

10 4 2

12 3 3

11 6 4

14 8 6

15 7 3

18 10 7

23 12 8

28 15 9

33 17 11

38 19 13

40 23 16

34 21 13

24 17 11

23 10 6

27 11 9

35 16 10

33 17 12

31 15 9

34 16 10

26 13 9

22 11 8

18 8 6

15 4 3

12 5 4

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 86

Esercizio 4.3

Risultati Attesi

Tempi medi di attesa in coda

Numero massimo di chiamate nella coda operatori

Numero di abbandoni

Saturazione operatori e risponditore automatico

What-if analysis

Quanti operatori sarebbero necessari per ridurre a zero il numero di abbandoni?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 87

Risultati Esercizio 4.3

2 Operatori

3 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnato

--- Attesa chiamata

Operatori

Operatori

Chiamate

Chiamate

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 88

Risultati Esercizio 4.3

6 Operatori

7 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnato

--- Attesa chiamata

Operatori

Operatori

Chiamate

Chiamate

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 5 – PAUSE E AFTER

CALL WORK

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione Pause / Fermate

I guasti o fermate non programmate possono essere assegnate:

– Available time – sul tempo disponibile

– Busy time – sul tempo lavorato

– Tasks – sul numero di operazioni effettuate

Page 90 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Pause / Fermate interattive

Per “bloccare” una attività 1. Fermare la simulazione

2. Selezionare l’attività interessata facendo click sullo schermo.(Il nome appare nel box di selezione)

3. Premere il tasto con l’icona riportata qui di fianco.

L’ATTIVITA’ SI FERMA IMMEDIATAMENTE.

Per “riavviare” l’attività 1. Fermare la simulazione

2. Selezionare l’attività interessata facendo click sullo schermo. (Il nome appare nel box di selezione)

3. Premere il tasto con l’icona riportata qui di fianco.

L’ATTIVITA’ VIENE RIAVVIATA IMMEDIATAMENTE.

Page 91 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione After Call Work / Setup

I setup o riattrezzaggi (attività produttive che occupano l’attività non direttamente sull’entità da lavorare) possono essere assegnati:

– Number Of Tasks – sul numero di operazioni

– Entity change – al cambiamento delle tipologia di entità lavorata

– Value Change – quando cambia un certo valore Page 92 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 93

Esercizio 5.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 94

Esercizio 5.1 – Pause e After Call Work

Obiettivo dell’esercizio

Introduzione delle pause e dell’After Call Work nelle attività

Sperimentazione What-if

Descrizione

Il contratto degli operatori ACT20 prevede che ogni due ore gli operatori si assentino dalla loro postazione per una pausa di 15 minuti.

Inoltre ogni 20 chiamate risposte, gli operatori devono compilare dei moduli di feedback. Tale operazione richiede 1.5 minuti.

Dati

Operatori ACT20: 3

studio zeta Processi e Organizzazione Esercizio 5.1 – Pause e After Call Work

Risultati Attesi

Tempi medi di attesa in coda

Numero massimo di chiamate nella coda operatori

Numero di abbandoni

Saturazione operatori e risponditore automatico

What-if analysis

Quanti operatori sarebbero necessari affinché gli abbandoni non superino il 15% delle chiamate offerte?

Page 95 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Risultati Esercizio 5.1

Page 96 © Copyright 2014 Studio Zeta S.r.l.

3 Operatori

6 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

Operatori

Operatori

Chiamate

Chiamate

studio zeta Processi e Organizzazione Risultati Esercizio 5.1

Page 97 © Copyright 2014 Studio Zeta S.r.l.

6 Operatori

Senza pause

6 Operatori

Con pause

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

Operatori

Operatori

Chiamate

Chiamate

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 6 - CAMPIONAMENTO E

DISTRIBUZIONI DI

PROBABILITA’

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

Numeri casuali – (PRN) Pseudo random

numbers

Disconnesse

Riproducibili

Page 99 © Copyright 2014 Studio Zeta S.r.l.

WITNESS

Stringa #1 Stringa #2 …con’t.. Stringa #3 Stringa #1000

.7432

.1122

.4383

.5437

.1001

.2645

.6456

.8901

.4412

.9971

.8712

.4378

.3988

.3312

.7213

.2213

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 100

Stringhe e sottostringhe

Witness mette a disposizione 4 miliardi di stringhe

diverse di numeri pseudo-casuali.

Ciascuna stringa contiene 10,000 sottostringhe.

Le sottostringhe vengono utilizzate quando gli elementi

hanno quantità maggiore di 1: ciascuna istanza

dell'elemento utilizzerà una sottostringa diversa della

stessa stringa principale

0.4714 0.5146 0.1139 0.9526 0.3865 0.8601 … … … 0.9526 0.3865 0.8601 …

Stringa 1

Sottostringa 1 Sottostringa 2 Sottostringa 10.000

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 101

Assegnazione stringhe e sottostringhe

Sono possibili due metodi di assegnazione delle stringhe di numeri pseudo-casuali:

‒ Assegnazione automatica: Witness assegna automaticamente e in modo univoco la stringa e la sottostringa da utilizzare nella distribuzione corrente.

Uniform (10,20): viene assegnata automaticamente alla distribuzione la stringa e la sottostringa di numeri pseudo-casuali

‒ Assegnazione manuale: l’utente sceglie la stringa da cui estrarre i numeri per la distribuzione corrente.

Uniform (10,20,3): viene assegnata alla distribuzione la stringa numero 3

Le stringhe da 1 a 1000 sono riservate all’assegnazione manuale

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 102

Assegnazione stringhe e sottostringhe

Esempi di assegnazione manuale delle stringhe:

‒ Normal(10,20,43): verrà utilizzata la stringa “43”

‒ Normal(10,20,43,10): verrà utilizzata la sottostringa "10"

della stringa "43"

‒ Normal(10,20,43,N): se la distribuzione è utilizzata ad

esempio nella durata di una attività di quantità 5 verrà

utilizzata:

o la prima sottostringa della stringa “43” nella prima attività

o la seconda sottostringa della stringa “43” nella seconda

attività

o ...

studio zeta Processi e Organizzazione Distribuzioni predefinite

Page 103 © Copyright 2014 Studio Zeta S.r.l.

BINOMIAL (PROB, N° Prove, PRNS)

PROB=0.1, N° Prove =5 PROB=0.1, N° Prove =10

PROB=0.5, N° Prove =5 PROB=0.5, N° Prove =10

PARAMETRI: Probabilità di successo: Reale

Numero di prove: Intero

• Intere (Es. 1)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 104

Distribuzioni predefinite

• Intere (Es. 2)

IUNIFORM (MIN, MAX, PRNS)

PARAMETRI: Valore minimo: Intero

Valore massimo: Intero

Min= 0 Max= 10

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 105

Distribuzioni predefinite

• Reali (Es. 1)

ERLANG (VALORE MEDIO, K, PRNS)

PARAMETRI: Valore Medio: Reale

Parametro K: Intero

Media= 1.0, K=1 Media= 1.0, K=3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 106

Distribuzioni predefinite

• Reali (Es. 2)

NEGEXP (VALORE MEDIO, PRNS)

PARAMETRI: Valore Medio: Reale

Valore Medio = 1.0

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 107

Distribuzioni predefinite

• Reali (Es. 3)

TRIANGLE (MIN, MODA, MAX, PRNS)

PARAMETRI: Valore Minimo: Reale

Moda (Valore più probabile): Reale

Valore Massimo: Reale

Min Mode Max

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 108

Esempio di distribuzione

UNIFORM (MIN, MAX, PRNS)

UNIFORM (2.0, 6.0, 582)

0 1 2 3 4 5 6 7 8

2(0) 6(1)

0.658

0.3

0.51

((6-2)*0.658)+2 = 4.632

((6-2)*0.3)+2 = 3.2

((6-2)*0.51)+2 = 4.04

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 109

Esercizio 6.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 110

Esercizio 6.1 - Distribuzioni

Obiettivo dell’esercizio Utilizzo delle distribuzioni statistiche

Sperimentazione What-if

Descrizione Da una più attenta osservazione degli operatori si è notato che la

pausa può iniziare in un intervallo che va dai 10 minuti precedenti fino ai 15 minuti successivi rispetto alle due ore previste dal contratto. In aggiunta, la durata delle pause che è mediamente di 15 minuti può variare da un minimo di 12 minuti ad un massimo di 18 minuti.

Le chiamate hanno spesso durata variabile. Il gruppo di lavoro ha raccolto dati sui tempi di conversazione e si presume che questi ultimi seguano una distribuzione ERLANG con una media di 4 minuti ed un valore di K pari a 3.

La compilazione dei moduli riassuntivi richiede da un minimo di 1 minuto ad un massimo di 2, con valore medio pari a 1.5 minuti.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 111

Esercizio 6.1 - Distribuzioni

Risultati Attesi

Tempi medi di attesa in coda

Numero massimo di chiamate nella coda operatori

Numero di abbandoni

Saturazione operatori e risponditore automatico

What-if analysis

Quanti operatori sarebbero necessari affinché gli abbandoni non superino il 15% delle chiamate offerte?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 112

Risultati Esercizio 6.1

3 Operatori

5 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

Operatori

Operatori

Chiamate

Chiamate

studio zeta Processi e Organizzazione Distribuzioni definite dall’utente

Le distribuzioni definite dall’utente possono essere:

– Integer, nel caso il valore fornito sia un numero intero

– Real, nel caso il valore fornito sia un numero reale

– Name, nel caso il valore fornito sia un nome di un elemento di Witness

– Discrete, se i valori saranno campionati da un insieme discreto

– Continue, se i valori saranno campionati uniformemente tra i valori forniti alle celle al fine di determinare il valore da campionare.

Page 113 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Distribuzioni definite dall’utente

Per modellizzare i tempi (Durate, MTBF, ecc.) è opportuno utilizzare distribuzioni reali

Cominciare sempre una distribuzione con un record che abbia peso 0 per evidenziare il valore minimo

Gli step tra i valori NON devono essere per forza uniformi

Page 114 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 115

Esercizio 6.2

studio zeta Processi e Organizzazione Esercizio 6.2 - Distribuzioni

Obiettivo dell’esercizio: Utilizzo delle distribuzioni costruite dall’utente Sperimentazione What-if

Descrizione Sono stati raccolti dati sui tempi di abbandono. L’andamento dei tempi di

abbandono segue la seguente distribuzione:

Page 116 © Copyright 2014 Studio Zeta S.r.l.

0

10

20

30

40

50

60

0.5 1 1.5 2 2.5 3

studio zeta Processi e Organizzazione Esercizio 6.2 - Distribuzioni

Dati:

3 Operatori

Risultati Attesi

Tempi medi di attesa in coda

Numero di abbandoni

Saturazione operatori e risponditore automatico

What-if analysis

Quanti operatori sarebbero necessari affinché gli abbandoni non superino il 15% delle chiamate offerte?

Page 117 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Risultati Esercizio 6.2

© Copyright 2014 Studio Zeta S.r.l. Page 118

3 Operatori

5 Operatori

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Operatori

Operatori

Chiamate

Chiamate Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

studio zeta Processi e Organizzazione Leggere le distribuzioni da un file

“Import…” dalla finestra di Detail della distribuzione

Funzione READDIST(Distribution,Filename)

Il file deve avere estensione *.DST

Page 119 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Leggere le distribuzioni da Excel

“Import…” dalla finestra di Detail della distribuzione

Selezione del file Excel

Selezione delle celle

Page 120 © Copyright 2014 Studio Zeta S.r.l.

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 7 – RISORSE

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 122

Aggiunta di Risorse nel modello

Gli elementi Risorse vengono utilizzati quando: ‒ una certa attività necessita di una risorsa umana (e.g. supervisore) o

di uno strumento (e.g. Fax) per avere luogo

‒ le risorse sono condivise fra più attività, pertanto può capitare che le singole attività ritardino a causa della loro indisponibilità

Le Risorse possono essere necessarie: ‒ Per l’intera durata dell’attività (e.g. il Supervisore che aiuta l’operatore

a rispondere a un certo tipo di chiamata)

‒ per eseguire le operazioni di ACW o di riavvio (e.g fax necessario all’operatore per operazioni post-chiamata)

Vengono assegnate nelle Resource RULE dell’elemento che le richiede

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 123

Aggiunta di Risorse nel modello

SUPERVISORE

OPERATORE#2

JANE and WENDY

FRED OR JOE

IF TYPE = A

SUPERVISORE

ELSE

NONE

ENDIF

Si richiede una Resource SUPERVISORE

si richiedono 2 Resource OPERATORE

si richiedono 2 diverse Resource

si richiede o una Resource o l'altra

se l’entità gestita è di tipo A si richiede la Resource SUPERVISORE, altrimenti non si richiede nessuna Resource (NONE)

• Alcuni esempi di regole di chiamata:

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 124

Dettagliare un Risorsa

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 125

Esercizio 7.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 126

Esercizio 7.1 - Risorse

Obiettivo dell’esercizio:

Utilizzo delle Risorse

Sperimentazione What-if

Descrizione

Il servizio C è appena stato modificato e richiede uno skill particolare che gli operatori non hanno ancora acquisito. Pertanto, tutte le volte che gli operatori ricevono una chiamata di tipo C richiedono l’assistenza di un supervisore. Se il supervisore non è disponibile l’operatore aspetta con la chiamata in linea.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 127

Esercizio 7.1 - Risorse

Dati:

3 Operatori

Risultati Attesi

Tempi medi di attesa in coda

Numero di abbandoni

Saturazione operatori e tempi di attesa del supervisore

Saturazione del supervisore

What-if analysis

Effettuare alcuni esperimenti provando a variare: ‒ Il numero di supervisori

‒ Il numero di operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 128

Risultati Esercizio 7.1

3 Operatori

1 Supervisore

Saturazione

Supervisore

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

--- Attesa Supervisore Legenda supervisore:

--- Impegnato

--- Attesa chiamata

Operatori Chiamate

Supervisore

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 129

PRE-EMPTION

Priorità delle operazioni (senza interruzioni di lavoro)

‒ Specificare la priorità delle operazioni ( 1 > 2 > 3 ….)

‒ A parità di istante di chiamata la Risorsa andrà a servire per prima l’operazione con priorità più alta

Interruzione del lavoro delle Risorse

‒ Per permettere ad un’operazione di richiamare una Risorsa che è attualmente impegnata in un’altra mansione è necessario abilitare il “Pre-empt Resource” dell’operazione stessa.

‒ E’ necessario specificare il pre-empt level che seguirà la seguente formula :

Priorità dell’Elemento

su cui la Risorsa è

impegnata

Priorità

dell’Elemento che

richiede la Risorsa

Pre-empt level

dell’Elemento che

richiede la Risorsa

≥ −

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 130

PRE-EMPTION

Ciò può essere illustrato mediante un esempio: ‒ La Risorsa sarà spostata dal Task3 al Task1 in quanto la differenza di priorità è

2 ed il pre-empt level è 2.

‒ La Risorsa sarà anche spostata dal Task3 al Task2.

‒ Non sarà spostata però dal Task2 al Task1 perché c'è una differenza di priorità di 1 ma un pre-empt level di 2.

Task1

1

2

Operator to

restart

Task2

2

1

Operator to

cycle

Task3

3

N/A

Operator to

cycle

Priority

Resource

Pre-empt Level

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 131

PRE-EMPTION

Allowance

Possibilità di portare a termine l’operazione che attualmente una Risorsa sta svolgendo (senza provocare la sua interruzione immediata)

N.B. Va specificata sull’operazione che chiama la Risorsa

Time penalty

In aggiunta, se l’operazione che la Risorsa sta svolgendo è comunque interrotta è possibile specificare una penalità (in tempo) che rappresenta il tempo necessario per ripristinare le condizioni nelle quali si era abbandonata l’attività al momento dell'interruzione

N.B. Viene specificata sull’operazione che chiama la Risorsa

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 132

PRE-EMPTION

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 8 - ACTION ED ELEMENTI

LOGICI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 134

Action

Possono essere utilizzate per:

‒ modificare variabili e attributi

‒ leggere informazioni contenute sulle entità (e.g tipologia di entità, tempo ciclo su una certa attività)

‒ leggere dati da file esterni

‒ memorizzare statistiche

‒ creare finestre di interfaccia tra il modello e l’utente

‒ cambiare la tipologia di entità (CHANGE)

‒ registrare un valore in un Istogramma (RECORD)

‒ leggere le caratteristiche dei turni da file

‒ Settare dei flag per controllare gli elementi nel modello (Es. mettere ON/OFF un’attività)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 135

Action

Le action vengono eseguite quando cambia lo stato di un elemento. Esempi di Action sono: ‒ sugli operatori / attività: o ACTIONS ON INPUT

o ACTIONS ON START

o ACTIONS ON FINISH

o ACTIONS ON OUTPUT

‒ sulle code: o ACTIONS ON INPUT

o ACTIONS ON OUTPUT

‒ sulle chiamate / entità: o ACTIONS ON CREATE

o ACTIONS ON LEAVE

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 136

Action

Altre Action sono: ‒ sugli operatori / attività:

o ACTIONS ON STOP

o ACTIONS ON RESUME

o ACTIONS ON START SETUP

o ACTIONS ON FINISH SETUP

‒ sui turni:

o START WORK

o END WORK

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 137

Action

Ci sono delle Action che vengono eseguite all’istante di inizio della simulazione o in instanti decisi dall’utente:

‒ sul modello:

o Initialize Actions

o Action on Import

o User Actions

o Immediate Actions

‒ su ciascun elemento:

o Initialize Actions

o User Actions

o Properties Actions

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 138

Initialize Action

Menu: Model -> Initialize Actions

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 139

Action

Esempi di istruzioni da utilizzare nelle Action sono:

CHANGE ‒ cambia la tipologia di entità

SET ICON ‒ modifica l’icona di un elemento (non di una entità)

SET ICON OP10 TO 100

SET QUANTITY ‒ modifica la quantità di un elemento

SET QUANTITY OF OP20 TO 3

SET QUANTITY Resource ‒ modifica il numero di risorse su un turno

SET QUANTITY Resource OF Operatore ON Turno1 TO 4

SET CAPACITY ‒ modifica la capacità di una coda

SET CAPACITY OF B4 TO 100

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 140

Commenti alle Action

Spesso avendo scritto un complesso set di Actions è facile dimenticare il loro scopo e significato (ad esempio quando si riprende il modello dopo molto tempo dalla sua prima stesura). È quindi importante documentare le Actions. Il simbolo "!" viene usato all'inizio di una riga per creare linee di commento. Il resto della riga potrà contenere qualsiasi testo richiesto dall’utente. WITNESS ignorerà questa riga quando la incontrerà durante l’esecuzione del modello.

Nota: I commenti possono essere posti in qualsiasi editor, per esempio nelle input/output rule e nelle Resource rule.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 141

Esercizio 8.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 142

Esercizio 8.1 - Action

Obiettivo dell’esercizio:

Utilizzo delle Action

Descrizione

Utilizzare l’istruzione SET QUANTITY per dimensionare gli operatori ACT20

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 143

Attributi

Sono valori legati ad una specifica chiamata/entità, e possono essere usati per descrivere una caratteristica dell’entità stessa. Alcuni esempi di attributi sono: ‒ tipologia di servizio/chiamata

‒ tempo di ingresso nel sistema

‒ durata

‒ priorità chiamata (e.g. tipologia cliente)

‒ costo o valore

Tipi di attributo:

‒ Integer (Interi)

‒ Real (Reali)

‒ String (Stringhe)

‒ Name (Nome di un elemento del modello Witness)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 144

Attributi universali

Vi sono 8 attributi che tutte le entità hanno predefiniti. Essi sono:

TYPE

Contiene il NOME dell’entità

DESC

Rappresenta una descrizione di 4 caratteri dell’entità (di default sono le prime 4 lettere del nome)

ICON

Contiene l’informazione del numero di icona associata all’entità

PEN

Se si è scelta un’icona di tipo “monocromatica”, identifica il colore con cui l’entità sarà rappresentata sullo schermo (secondo una codifica standard di Witness)

STAGE

Se le entità si muovono nel modello in base ad un proprio percorso definito nella pagina Route dell’entità stessa (“Entity Route”), contiene l’informazione del punto del percorso in cui l’entità si trova

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 145

Attributi universali

LENGTH

Lunghezza dell’entità

WIDTH

Larghezza dell’entità

HEIGHT

Altezza dell’entità

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 146

Caratteristiche Attributi

MODIFICATORI DEGLI ATTRIBUTI

Permettono di modificare le caratteristiche di un’entità che si trova in un punto qualunque del modello. La sintassi da utilizzare è la seguente:

elemento {AT posizione}: attributo

‒ Esempio: OP10(2) : PEN=1

Questa istruzione assegna all'Attributo universale PEN (colore) dell’entità che si trova nella seconda istanza dell’elemento Attività di nome OP10 il valore 1 (rosso).

‒ Esempio: BUFF AT 2:DESC="2a"

Questa istruzione assegna all'attributo universale DESC dell’entità che si trova in seconda posizione nella coda di nome BUFF la descrizione "2a".

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 147

Come usare gli Attributi

1. Definizione degli attributi ‒ Selezionare il tipo corretto (Integer, Real, String o Name) per

la caratteristica. ‒ Definire la quantità (N.B. Ricordare che la quantità si riferisce

al numero di caratteristiche non al numero di valori possibili per quella caratteristica).

2. Assegnazione degli attributi ‒ Scegliere il set di azioni appropriato dove assegnare il valore

alla caratteristica (spesso Actions ON Create dell’entità). ‒ L’espressione da utilizzare nell’Action è la seguente: Attributo = Espressione (esempio: TCiclo = 35)

3. Lettura degli attributi ‒ Selezionare il Detail dell'elemento che necessita di leggere

l'attributo. ‒ Digitare il nome dell'attributo nell'espressione, regola o azione

appropriata (e.g. in una funzione che calcola la durata)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 148

Esercizio 8.2

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 149

Esercizio 8.2 - Attributi

Obiettivo dell’esercizio:

Utilizzo degli attributi delle entità

Descrizione

Da un’analisi più attenta sulla durata delle chiamate è emerso che i diversi servizi hanno tempi medi di conversazione diversi.

Dati

Tempi medi di conversazione: ‒ Servizio A: 3 minuti

‒ Servizio B: 4 minuti

‒ Servizio C: 4.5 minuti

Si suppone che le durate seguano sempre con buona approssimazione una distribuzione ERLANG con parametro K=3.

Operatori: 3

Supervisore: 1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 150

Esercizio 8.2 - Attributi

Risultati Attesi

Tempi medi di attesa in coda

Numero di abbandoni

Saturazione operatori e tempi di attesa del supervisore

Saturazione del supervisore

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 151

Risultati Esercizio 8.2

3 Operatori,

tempi di

conversazione

diversi in base

al servizio

3 Operatori,

tempi di

conversazione

uguali per tutti i

servizi (ES 7.1)

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Operatori

Operatori

Chiamate

Chiamate

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 152

Risultati Esercizio 8.2

3 Operatori,

tempi di

conversazione

diversi in base

al servizio

Saturazione

Supervisore

3 Operatori,

tempi di

conversazione

uguali per tutti i

servizi (ES 7.1)

Legenda supervisore:

--- Occupato

--- Attesa chiamata

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 153

Esercizio 8.3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 154

Esercizio 8.3 - Attributi

Obiettivo dell’esercizio:

Accodamento delle entità in base al valore assunto dagli attributi

Sperimentazione What-if

Descrizione

La direzione ha decretato che, poiché il servizio C è a più alto valore, sarebbe opportuno privilegiarlo rispetto a tutti gli altri. Si sta valutando quindi la possibilità di modificare il metodo di accodamento nella coda operatori in modo che le chiamate di tipo C abbiano la precedenza sulle altre.

Dati

Priorità di risposta ai diversi servizi ‒ Servizio A: 2

‒ Servizio B: 2

‒ Servizio C: 1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 155

Esercizio 8.3 - Attributi

Risultati Attesi

Tempi medi di attesa in coda

Numero di abbandoni totali e delle chiamate di tipo C

Saturazione operatori e tempi di attesa del supervisore

Saturazione del supervisore

What-if analysis

Effettuare alcuni esperimenti provando a variare:

‒ Il numero di operatori

‒ Il numero di supervisori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 156

Risultati Esercizio 8.3

3 Operatori Senza priorità

su chiamate C

3 Operatori Con priorità su

chiamate C

Legenda chiamate:

--- Entrate

--- Evase

--- Rifiutate

--- Abbandonate

Operatori

Operatori

Chiamate

Chiamate Legenda operatori:

--- Impegnati

--- Attesa chiamata

--- Pausa

--- After Call Work

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 157

Variabili

TIPI DI VARIABILI :

Integer (Intere)

Real (Reali)

String (Stringhe)

Name (Nome di un elemento del modello Witness)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 158

Variabili numeriche intere

Variabili Intere (“Integer”)

‒ Vengono inizializzate automaticamente al valore 0.

Vengono utilizzate ad esempio per :

‒ Registrare il numero di chiamate in ingresso, numero di abbandonate…

‒ Registrare il numero di linee occupate

‒ Rappresentare Flag logici (Es. ON/OFF , VERO/FALSO, RUN/STOP …)

‒ Registrare Ore o minuti...

‒ Incrementare o decrementare contatori in un ciclo.

‒ Accogliere il risultato di funzioni intere.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 159

Variabili numeriche reali

Variabili Reali (“Real”)

‒ Vengono inizializzate automaticamente al valore 0.0.

Vengono utilizzate ad esempio per :

‒ Registrare i tempi di attesa, livello di servizio…

‒ Rappresentare frazioni

‒ Registrare il TIME (variabile reale di sistema che indica il tempo corrente)

‒ Accogliere il risultato di funzioni reali

‒ Accogliere il risultato di operazioni con la virgola

‒ Accogliere i valori prodotti da una distribuzione reale

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 160

Variabili di tipo stringa

Variabili Stringa (“String”)

‒ Vengono inizializzate automaticamente al valore “” (stringa vuota).

Vengono utilizzate ad esempio per :

‒ Visualizzare informazioni sullo schermo

‒ Leggere delle stringhe di testo da file

‒ Registrare il nome di un servizio o di un gruppo di operatori

‒ Registrare una data, un mese, un giorno della settimana

‒ Registrare un colore

‒ Registrare un codice alfanumerico ( E.s. A456-2#9TG )

‒ Accogliere indirizzi, città, stati ...

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 161

Variabili di tipo nome

Variabili Nome (“Name”)

‒ Contengono il nome di un elemento definito in Witness, esempio ACT001.

‒ Vengono inizializzate automaticamente al valore NONE.

E’ differente da una variabile di tipo stringa :

‒ String => “ACT001” può anche non esistere, è solo una stringa di testo

‒ Name => ACT001 elemento definito dall’utente in Witness.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 162

Variabili multi-dimensione

Variabile

Quantità

Tipo

Esempio

Variabile

Quantità

Tipo

Esempio

X

1

Integer

X= 39

X

3

Real

X(3)= 56.4

1 1 2 3

X

3,2

String

X(3,1)= “Linea1”

X

3,3,2

Name

X(3,2,1)= Q1

1 2 3

1

2

1 2 3

1

2

3 1

2

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 163

Variabili di sistema

N

è una variabile Integer che contiene l’indice dell'elemento "corrente"

Esempio:

Define Variable:

TempoConv, Real, Quantity: 2

Initialize Action:

TempoConv(1) = 2.0

TempoConv(2) = 3.0

Detail OP10:

Cycle Time: TempoConv(N)

studio zeta Processi e Organizzazione Variabili di sistema

Output Rule dell’attività ACT: IF N=1

PUSH to B1

ELSE

PUSH TO B2

ENDIF

Input Rule per attività ACT: Output Rule per attività ACT: IF N=1 IF N<>3

PULL A FROM WORLD PUSH TO BUFF(N)

ELSE ELSE

PULL FROM BUFF(N-1) PUSH TO SERVED

ENDIF ENDIF

Page 164 © Copyright 2014 Studio Zeta S.r.l.

ACT B1

B2

ACT(1) BUFF(1) BUFF(2) ACT(2) ACT(3)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 165

Variabili di sistema

M (per le entità)

‒ variabile intera che indica il numero di un singolo componente di un lotto.

M (per le timeseries)

‒ numero progessivo dei plottaggi in una serie temporale (max 7 disponibili)

TIME

‒ variabile reale che contiene il tempo corrente della simulazione (e.g. 1234.34 )

WARMUP

‒ variabile reale che contiene il tempo di Warmup

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 166

Utilizzo delle variabili

Statistiche

se WITNESS non fornisce le statistiche necessarie, le variabili possono essere utilizzate per la creazione dei Reports (e.g. tempo di attesa in coda, efficienza, saturazione..)

Memorizzazione di dati

le variabili possono essere utilizzate per tenere in memoria dei dati (e.g. il tempo medio di un’operazione o di un guasto). Questo può essere particolarmente utile quando i dati devono essere letti da un file

Logiche di gestione

per il controllo del flusso delle entità, schedulazione di un lotto...

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 167

Esercizio 8.4

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 168

Esercizio 8.4 - Variabili

Obiettivo dell’esercizio:

Utilizzo delle variabili per immagazzinare statistiche

Descrizione

Nell’analisi delle telefonate abbandonate, si è deciso di considerare due gruppi di clienti: quelli che abbandonano dopo attese inferiori a 30 secondi e quelli che abbandonano dopo attese superiori.

Conteggiare e visualizzare il numero di chiamate abbandonate, totale e per ciascuno dei due gruppi.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 169

Risultati Esercizio 8.4

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 170

Esercizio 8.5

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 171

Esercizio 8.5 - Variabili

Obiettivo dell’esercizio:

Utilizzo delle variabili per immagazzinare statistiche

Sperimentazione What-if

Descrizione

La direzione ha fissato come target la risposta entro 30 secondi. Conteggiare e visualizzare il livello di servizio per quel target.

% di chiamate risposte entro il target

totale chiamate risposte dagli operatori

Livello di Servizio =

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 172

Esercizio 8.5 - Variabili

What-if analysis

Valutare la variazione del livello di servizio al variare del numero di operatori

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 173

Risultati Esercizio 8.5

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 174

Variabili Locali

Una variabile locale è una variabile creata all’interno di specifica Action o funzione e che può essere utilizzata esclusivamente all’interno di questa.

Per creare una variabile locale:

Dim <Nome variabile> As <Tipo variabile>

e.g. Dim Contatore as Integer - crea una variabile Contatore di tipo intero

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 175

Variabili Locali

L’utilizzo delle variabili locali rispetto a quelle globali comporta: ‒ Benefici

o Sicurezza: poiché esistono solo nell’istruzione dove sono state create si esclude la possibilità di utilizzarle o sovrascriverle accidentalmente in altre istruzioni

o Velocità: la velocità di esecuzione delle istruzioni contenenti variabili locali è maggiore

o Convenienza: vengono create solo quando e dove servono, senza necessità di definirle in anticipo

‒ Limiti o Non vengono generati report

o Non è possibile rappresentarle graficamente nel modello

o Non possono avere quantità maggiore di 1

o E’ possibile accedervi solo dalla Action o funzione in cui sono state create

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 176

Funzioni

Una funzione è una lista di istruzioni che prende in input alcuni valori (parametri), effettua dei calcoli e restituisce una risposta al “chiamante” (l’oggetto che ha richiamato la funzione)

Permette al programmatore di incapsulare una serie di comandi per riutilizzarli in qualunque momento

Sinonimi in altri linguaggi:

‒ C, VB Functions

‒ PASCAL Procedures

‒ FORTRAN, COBOL Subroutines

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 177

Funzioni predefinite

Funzioni di reporting e di stato (accedono ai valori dei reports)

‒ ISTATE Un numero che indica lo stato di uno specifico elemento

‒ NCREATE

Numero di entità di uno specifico tipo che sono state create

‒ NFREE

Ammontare di spazio libero in uno specifico elemento

‒ NENTS Numero di entità in uno specifico elemento

‒ PUTIL

Percentuale di tempo speso da uno specifico elemento in un determinato stato

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 178

Funzioni predefinite

Funzioni Aritmetiche (realizzano operazioni aritmetiche)

‒ FLOAT

Specifica un intero come un numero reale

‒ IFIX

Restituisce la parte intera di un numero reale

‒ MAX

Restituisce il valore massimo di una lista di valori interi fornita

‒ MIN

Restituisce il valore minimo di una lista di valori interi fornita

‒ MOD

Restituisce il resto di una divisione tra due interi

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 179

Funzioni predefinite

Funzioni che permettono la lettura e scrittura di dati in Excel:

‒ XLReadArray

Permette di immagazzinare il dato letto in una cella di un foglio Excel in una variabile Witness

XLReadArray("Dati input.xls","Dati","$B$9",TCicloOP10)

‒ XLWriteArray

Permette di scrivere il valore assunto da una variabile Witness in una cella di un foglio Excel

XLWriteArray(“Risultati.xls",“Risultati","$B$9",SaturazioneOP10)

‒ Funzioni che restituiscono il valore contenuto in una cella di un foglio Excel (XLCellToReal, XLCellToInteger, XLCellToName, XLCellToString)

‒ Funzioni che scrivono su una cella di un foglio excel (XLRealToCell, XLIntegerToCell, …, XLRangeToReal, XLRangeToInteger, …, XLRealToRange, XLIntegerToRange…, XLExtractBook etc)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 180

Esempi

NENTS

ISTATE

MAX

IF NENTS (B1) > 5

PULL A out of WORLD

ENDIF

IF ISTATE(Pressa(2))=1

PULL A out of WORLD

ENDIF

X = MAX (X1,X2,X3)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 181

Funzioni definite dall’utente

Le funzioni sono utili quando si ha la necessità di fare calcoli, per esempio per la durata di un’operazione (e.g. un tempo ciclo) che non permette la scrittura di tutta l'espressione (di calcolo) nella linea-formato prevista nel Detail Form. Possono essere anche usate per salvare set di istruzioni logiche da ripetersi identicamente in differenti punti del modello.

Alla funzione possono essere passati dei parametri, come ad esempio nomi di attività o il valore di una variabile, da utilizzare dentro la "sua" logica per determinare il valore della funzione stessa. Una volta calcolato questo valore da parte della funzione, esso viene restituito e usato laddove la funzione era stata richiamata.

Si usa una funzione Void ogni qualvolta la funzione esegue una serie di azioni senza produrre alcun valore

Per richiamare una funzione: Nome funzione( )

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 182

Dettagliare una funzione

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 183

Esempio di funzione

Il durata di una attività (DRILL) dipende dallo stato di usura dello strumento:

1. Define Function: Name:DRILLCYC

Type: Real

2. Detail DRILLCYC

Actions: IF LIFE(DRILL,1)>100

RETURN 2.0

ELSE

RETURN 2.5

ENDIF

3. Detail DRILL Duration: DRILLCYC ()

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 184

Funzioni definite dall’utente

Lo statement RETURN è utilizzato per restituire un valore una volta eseguita la funzione.

L’istruzione RETURN non viene utilizzata in una funzione di tipo VOID

Fare attenzione alle parentesi dopo il nome della funzione:

- Se la funzione non ha parametri non deve essere posto alcun valore fra le due parentesi (e.g. DRILLCYC())

- Se la funzione ha dei parametri il loro valore deve essere inserito fra le parentesi. L’ordine con cui vengono inseriti i valori deve essere lo stesso con cui i parametri compaiono nell’elenco parametri della funzione

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 185

Esercizio 8.6

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 186

Esercizio 8.6 - Funzioni

Obiettivo dell’esercizio:

Utilizzo delle funzioni definite dall’utente

Descrizione

Dei tre operatori che compongono il gruppo ACT20 il primo è un neo assunto pertanto i suoi tempi di conversazione sono più lunghi di circa un 10% rispetto a quelli degli altri operatori.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 187

Risultati Esercizio 8.6

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 9 - DEBUG

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione 9. Debug

• Witness consente di analizzare il codice “step by step” e

osservare il cambiamento di valori ed espressioni, proprio

come in un ambiente di programmazione

• È possibile analizzare il codice scritto in qualunque finestra

di editing

• Le operazioni di debugging vengono salvate nei “.sim” ma

non nei “.mod”

Page 189 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 190

9. Debug

• Dalla finestra di edit abilitare il Flag di debug

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 191

9. Debugger

• Durante il run del modello, ogni volta che si accede a quella parte di

codice, viene bloccata la simulazione e aperta la finestra di debug:

Automaticamente viene

attivato un breakpoint

all’inizio della funzione

È possibile aggiungere

altri breakpoint con il

pulsante “Toggle

breakpoint”

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 192

9. Debugger

• È possibile sia mandare avanti l’esecuzione step by step (viene

eseguita una linea di codice per volta), sia mandarla avanti

velocemente fino al prossimo breakpoint (go)

Se si incontra un richiamo

ad una funzione, si entra

in debugging nella

funzione richiamata

Se si incontra un richiamo

ad una funzione, questa

viene eseguita

velocemente e si passa

alla linea di codice

successiva

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 193

9. Debugger

• I valori delle variabili locali vengono visualizzati di default; qualunque

altra variabile che si intende monitorare va aggiunta con “add watch”

In “expression” è possibile

inserire il nome della

variabile da monitorare

(funziona anche il

copia/incolla)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 194

9. Debugger

• Nome e valore delle variabili aggiunte vengono visualizzati nella

finestra “Watch expression”

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 10 - TURNI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 196

Turni di lavoro (Shifts)

Sono utili ad esempio per definire:

‒ intervalli per prendere il caffè

‒ pausa pranzo

‒ lavoro straordinario

E si usano quando:

‒ gruppi diversi di operatori lavorano su turni differenti (Full Time, Part Time)

‒ in alcune ore della giornata la copertura del fabbisogno di operatori avviene con part time

‒ variano le quantità di risorse nei differenti turni

‒ variano i turni a seconda del giorno della settimana

‒ alcune operazioni continuano oltre la fine di un turno

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 197

Caratteristiche dei turni

Uno schema di turni comprende un numero di periodi, ciascuno dei quali ha le seguenti caratteristiche:

‒ Working Time

Tempo di effettivo lavoro nel periodo considerato (on-shift).

‒ Rest Time

Tempo di NON lavoro (off-shift) nel periodo considerato.

‒ Overtime

Tempo di straordinario che sarà lavorato, immediatamente dopo il tempo di lavoro "working time" nel periodo considerato del turno. Questo in effetti riduce il "Rest Time" alla fine del periodo. Perciò l'Overtime non potrà essere più grande del Rest Time del periodo.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 198

Sotto-Turni (Sub-Shifts)

I turni possono essere dettagliati sia come "Main" (principali) che come "Sub-Shift" (sotto-turni).

Un Main Shift può comprendere un certo numero di Sub-Shifts. (e.g. un Main-Shifts "settimana" potrebbe comprendere 5 Sub-Shifts "giorno")

Solo i Main-Shifts possono essere applicati agli elementi del modello.

WT RT WT RT

Periodo 1 Periodo 2

Sub-Shift 1

WT RT WT RT

Periodo 1 Periodo 2

Sub-Shift 2

Shift

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 199

Dettagliare un turno

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 200

Applicazione dei turni

Chiamate/Entità - Non arriveranno entità "attive" durante il Rest-Time (periodo di riposo).

Code - Se è stato definito un Delay Time per la coda, in questo caso può essere applicato un turno.

Operatori/Attività – le operazioni non verranno svolte durante i periodi di riposo. Sono specificabili le opzioni di:

‒ disponibilità a finire l’operazione corrente alla fine del turno (allowance)

‒ penalità in tempo (time penalty) nel caso l’operazione corrente sia interrotta dalla fine del turno.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 201

Applicazione dei turni

Risorse - Viene dettagliata la quantità di risorse disponibili nel turno. Alla stessa risorsa possono essere applicati un certo numero di turni. Si può specificare:

‒ la disponibilità a finire l’operazione corrente alla fine di un turno

‒ penalità in tempo per l’interruzione di un’operazione a fine turno

Link File - Se l'opzione Time del Link File è "Relative" si può applicargli un turno. Le entità non arriveranno durante i periodi di Rest Time

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 202

Esercizio 10.1

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 203

Esercizio 10.1 - Turni

Obiettivo dell’esercizio:

Introduzione dei turni degli operatori

Descrizione

Gli operatori sono stati suddivisi in 4 team:

Per ciascun turno è previsto un supervisore

A fine turno gli operatori così come i supervisori devono finire la chiamata corrente. Danno pertanto una disponibilità di 15 minuti alla fine di ogni turno.

Suggerimento: Utilizzare la funzionalità CLONE per creare i 4 team di operatori

Team1 Team2 Team3 Team4

Turno 0:00-6:00 6:00-12:00 12:00-18:00 18:00-24:00

N° Operatori 3 4 4 3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 204

Risultati Esercizio 10.1

studio zeta Processi e Organizzazione Leggere i turni da un file

“Import from file…” dalla finestra di Detail del turno.

Funzione READSHFT(Shift,Filename)

Il file deve avere estensione *.SFT

Page 205 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 206

Esercizio 10.2

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 207

Esercizio 10.2 - Turni

Obiettivo dell’esercizio:

Lettura dei turni degli operatori da un file di testo

Descrizione

Leggere i turni da un file

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 11 – INPUT E OUTPUT DEI

DATI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione Modalità di interfacciamento

Page 209 © Copyright 2014 Studio Zeta S.r.l.

• 3 modalità:

– File di testo

– Funzioni di Witness

– COM

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 210

I File

Lettura Scrittura

Link File Link File Read Link File Write

File File Read File Write

studio zeta Processi e Organizzazione Link File

E’ un file che contiene una lista di entità, a ciascuna delle quali è associato l’istante di ingresso nel modello e il valore assunto dagli attributi che la caratterizzano

E’ possibile immagazzinare su un Link File le entità in uscita da un modello

Crea un’interfaccia fra Witness e un file esterno

Page 211 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 212

Link File

Witness filename - Nome dell’ elemento Link File in Witness

Actual Filename - Nome del file di testo a cui il Link File è collegato NB il nome del file può non coincidere con il nome del Link File in Witness

Time - Specifica il formato in cui viene espresso il tempo ‒ Absolute – Il tempo è espresso come tempo reale (assoluto) di arrivo

delle entità (ore 8:00, ore 15:00…)

‒ Relative – Il tempo viene espresso come intervallo fra due arrivi successivi (10 minuti dopo la precedente…)

Start Offset - Ritardo nell’istante di arrivo della prima entità (rispetto all’istante 0)

Delay - Ritardo nella successiva lettura del file

Output Rule - Specifica dove vengono indirizzate le entità che entrano nel modello

N.B.: Deve essere specificata altrimenti le entità vengono respinte.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 213

Link File Tipo READ

Viene utilizzato per schedulare l’arrivo delle entità

Il file da leggere deve essere un file di testo con estensione “*.PAR”

E’ meglio utilizzare programmi come “blocco note” per scrivere i file di testo, evitando programmi come Ms-Word

E’ sempre opportuno salvare il file nella medesima cartella del modello

studio zeta Processi e Organizzazione Link File Tipo READ

Esempio: Gli aerei arrivano all’Aeroporto Internazionale di Redditch secondo un ben definito orario. In particolare atterra una aereo alle ore 8:00, uno alle 10:00, uno alle 14:00, uno alle 15:30, uno alle 18:00 e uno alle 21:00

Page 214 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 215

Link File Tipo WRITE

Viene utilizzato per registrare l’istante di uscita dal modello di ciascuna entità e il valore assunto dagli attributi che la caratterizzano al momento dell’uscita

E’ possibile produrre un Link File come output di un modello e utilizzarlo come ingresso di un altro modello

Per immagazzinare i dati su un Link File di tipo WRITE:

‒ Definire un Link File tipo WRITE (ad Esempio OUT)

‒ Sostituire la regola di uscita “PUSH TO SERVED” con “PUSH TO OUT”

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 216

Files

Witness consente l’uso di file di dati nel modello

Utilizzando i file è possibile:

‒ importare dati dall’esterno (READ File) ad esempio numero di operatori per turno, tempi per operazioni di After Call Work…

‒ esportare dati all’esterno (WRITE File) ad esempio produrre delle statistiche personalizzate

I file che è possibile leggere sono file di testo (con estensione “.Dat” o “.txt”)

E’ sempre opportuno salvare il file nella medesima cartella del modello

studio zeta Processi e Organizzazione Files

Witness Filename: Nome dell’elemento in Witness

Actual Filename: nome del file di testo

Page 217 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 218

Lettura da File

Per leggere i dati da un file si utilizza il comando READ

Tale comando può essere utilizzato nelle Actions, ad esempio Initialize Actions, Actions on start di un’attività

I singoli dati nei file devono essere separati utilizzando:

‒ Un numero qualunque di spazi

‒ Una virgola “,”

‒ Un punto e virgola “;”

‒ Un dato per riga

Tutte le volte che Witness incontra un comando READ legge una riga successiva del file

I valori letti possono essere immagazzinati in variabili o attributi del tipo corrispondente

Witness riconosce come separatore decimale solo il “.”

studio zeta Processi e Organizzazione Lettura da File

READ <Filename> <lista delle variabili/attributi>

READ DatiCiclo OP10, OP20(1), OP20(2)

Dove

– DatiCiclo è un file di tipo READ

– OP10 è una variabile reale di quantità 1

– OP20 è una variabile reale di quantità 2 Page 219 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 220

Esercizio 11.1

studio zeta Processi e Organizzazione Esercizio 11.1 - File

Obiettivo dell’esercizio:

Lettura dei dati da un file di testo

Descrizione

Si stanno valutando le seguenti configurazioni in termini di numero di operatori:

Leggere da un file di dati il numero di operatori da impiegare nei diversi turni

Page 221 © Copyright 2014 Studio Zeta S.r.l.

Team 1 Team 2 Team 3 Team 4

Operatori 4 4 4 4

Operatori 4 5 5 5

studio zeta Processi e Organizzazione Risultati Esercizio 11.1

Page 222 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 223

Scrittura su File

Per scrivere dati su un file si utilizza il comando WRITE

Tale comando può essere utilizzato nelle Actions (e.g. Action on Finish di un’attività)

Tutte le volte che Witness incontra un comando WRITE genera una nuova riga in un file

Se si vuole salvare il file in una cartella diversa da quella in cui è contenuto il modello nell’Actual Filename è necessario scrivere il percorso completo della cartella:

C:\Modello\File01.dat

studio zeta Processi e Organizzazione Scrittura su File

WRITE <filename> <lista di valori/attributi>

WRITE NumeroAbbandoni “!Numero abbandoni per servizio”

WRITE NumeroAbbandoni “!Servizio A Servizio B”

WRITE NumeroAbbandoni NumAbb_A, NumAbb_B

Dove: – NumeroAbbandoni è un file di tipo WRITE

– NumAbb_A, NumAbb_B sono varibili intere

Page 224 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Scrittura su File

Caratteri da utilizzare per migliorare la formattazione di un file:

– WRITE FILE1 “\n”

Per introdurre una nuova riga

– WRITE FILE1 “\t”

Per introdurre una tabulazione

Page 225 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Scrittura su File

Per poter accedere al file che Witness sta scrivendo è necessario:

– Fermare il modello di simulazione (STOP) e riportarlo all’istante zero (BEGIN)

– In alternativa chiudere il file utilizzando l’istruzione CLOSE(Filename). Tale istruzione può essere scritta nelle Actions (ad esempio User Actions, User Commands)

Page 226 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 227

Funzioni di lettura/scrittura su Excel

Funzioni che permettono la lettura e scrittura di dati in Excel:

‒ XLReadArray

Permette di immagazzinare il dato letto in una cella di un foglio Excel in una variabile Witness

XLReadArray("Dati input.xls","Dati","$B$9",TCicloOP10)

‒ XLWriteArray

Permette di scrivere il valore assunto da una variabile Witness in una cella di un foglio Excel

XLWriteArray(“Risultati.xls",“Risultati","$B$9",SaturazioneOP10)

Sintassi:

XLReadArray (WorkbookName, WorksheetName, Range, Array)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 228

Esercizio 11.2

studio zeta Processi e Organizzazione Esercizio 11.2 – Leggere dati da Excel

Obiettivo dell’esercizio:

Lettura dei dati da Excel

Descrizione

Si stanno valutando le seguenti configurazioni in termini di numero di operatori:

Leggere da Excel il numero di operatori da impiegare nei diversi turni

Page 229 © Copyright 2014 Studio Zeta S.r.l.

Team 1 Team 2 Team 3 Team 4

Operatori 4 4 4 4

Operatori 4 5 5 5

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 230

COM

Component Object Model

È una piattaforma di Microsoft per componenti software introdotta nel 1993

Permette la comunicazione tra processi e la creazione dinamica di oggetti con qualsiasi linguaggio di programmazione che supporta questa tecnologia

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 231

COM

Controllare Witness da Visual Basic:

‒ Definire Witness come oggetto:

Dim WitObj As Object

set WitObj = GetObject(,"WITNESS.WCL")

‒ Esempi di comandi:

WitObj.Run

WitObj.Stop

WitObj.Action ("SET QUANTITY ASSEMBLY 2")

WitObj.variable ("Cadenza") = 3

NCicli = WitObj.Function ("NOPS", "M1")

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 12 – ELEMENTI GRAFICI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione Serie Temporali (Timeseries)

Consente di ottenere una rappresentazione grafica dei risultati sullo schermo attraverso una grafico che evolve nel tempo (e.g. pezzi prodotti per ora)

A intervalli definiti (Recording Interval) viene fatta una lettura dei dati nel modello e un “plot” di questi sul grafico

E’ possibile rappresentare fino a 7 valori sul medesimo grafico

Page 233 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 234

Serie Temporali (Timeseries)

Maschera di Detail di una Timeseries

studio zeta Processi e Organizzazione Serie Temporali (Timeseries)

Maschera di Display di una Timeseries

Page 235 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 236

Esercizio 12.1

studio zeta Processi e Organizzazione Esercizio 12.1 - Timeseries

Obiettivo dell’esercizio:

Utilizzo delle serie temporali per graficare l’andamento nel tempo delle grandezze

Descrizione

Visualizzare l’andamento orario delle chiamate abbandonate e delle chiamate evase

Page 237 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Risultati Esercizio 12.1

Page 238 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Istogramma

Grafico a barre che permettere di rappresentare sullo schermo il range (intervallo di variabilità) di uno specifico parametro (E.g. tempo di attesa in una coda)

Page 239 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Istogramma

Maschera di Detail di un istogramma

Page 240 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Istogramma

Maschera di Display di un Istogramma

Page 241 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 242

Istogramma

Per registrare i valori su un istogramma è necessario utilizzare i comandi: RECORD, ADDBAR o DRAWBAR

Tali comandi possono essere utilizzati nelle Actions (e.g. Actions on Output di una coda per registrare il tempo di permanenza nella coda)

RECORD - registra un valore su un istogramma

RECORD Valore in Istogramma

Es. RECORD NumInSys(A) in Hist

‒ Dove Hist è un elemento Istogramma

‒ Registra il numero di entità A presenti nel modello in un certo istante

studio zeta Processi e Organizzazione Istogramma

DRAWBAR - disegna una barra di una specificata altezza su un istogramma

DRAWBAR Istogramma Valore, Altezza, Colore Es. DRAWBAR Hist 5,Var1,3

– Dove Hist è un elemento Istogramma e Var1 è una variabile (ad es. Var1=10)

– Disegna una barra di colore verde e di altezza 10 in corrispondenza dell’intervallo 5 sulle ascisse

Page 243 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Istogramma

ADDBAR - incrementa di un valore dato l’altezza di una barra di un istogramma

ADDBAR Istogramma Valore, Incremento, Colore Es. ADDBAR Hist 5, 3, 2

Dove Hist è un elemento Istogramma

– Incrementa di 3 unità la barra che si trova nell’intervallo 5 delle ascisse (incremento rosso)

Page 244 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 245

Istogramma

Codifica dei colori per le istruzioni ADDBAR/DRAWBAR

Codifica Colore Codifica Colore

0 Nero 8 Grigio

1 Bianco 9 Grigio Scuro

2 Rosso 10 Rosso Scuro

3 Verde 11 Verde Scuro

4 Blue 12 Blue Scuro

5 Azzurro 13 Azzurro Scuro

6 Giallo 14 Giallo Scuro

7 Magenta 15 Magenta Scuro

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 246

Esercizio 12.2

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 247

Esercizio 12.2 - Histograms

Obiettivo dell’esercizio:

Utilizzo degli istogrammi per visualizzare i tempi di attesa in coda

Descrizione

Visualizzare su un istogramma la distribuzione dei tempi di attesa nella coda operatori

Visualizzare su un istogramma la distribuzione dei tempi di abbandono

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 248

Risultati Esercizio 12.2

studio zeta Processi e Organizzazione Diagrammi a torta (Pie Chart)

Grafico a torta molto utile se si vogliono rappresentare ad esempio delle percentuali

A intervalli definiti (Refresh Interval) viene fatta una lettura dei dati nel modello e viene aggiornato il grafico

Page 249 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Diagrammi a torta (Pie Chart)

Maschera di Detail di una Pie Chart Page 250 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Diagrammi a torta (Pie Chart)

Display

– Sectors (colori)

– Tilt (Inclinazione)

– Depth (spessore)

– Start Angle

– Key (legenda)

Maschera di Display di una Pie Chart

Page 251 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 252

Esercizio 12.3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 253

Esercizio 12.3 – Pie Charts

Obiettivo dell’esercizio:

Utilizzo dei diagrammi a torta per visualizzare le saturazioni

Descrizione

Visualizzare la saturazione degli operatori con un grafico a torta

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 254

Risultati Esercizio 12.3

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 255

Icone

Un’icona è una figura o un simbolo compreso in un reticolo rettangolare di “Pixel”

Ogni pixel è un singolo punto di colore

Si possono utilizzare le icone per rappresentare visivamente diversi elementi di Witness

Le icone in Witness possono essere:

‒ Monocromatiche – sono le icone che cambiano colore con lo stato dell’elemento

‒ Colorate

Le Icone possono essere disegnate utilizzando un editor oppure importate da file di immagine

Le icone sono contenute nel Picture Gallery (View->Picture Gallery)

studio zeta Processi e Organizzazione Icone

Picture Gallery

Page 256 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Icone

Icon editor

Page 257 © Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione Importazione di un layout come icona

E’ possibile importare come icona anche un file *.dxf (file autocad)

Per inserirlo come sfondo al

modello si può utilizzare View -

> Screen Editor

Con il Display Edit si può poi

posizionare il disegno in un

layer diverso dal “Simulation

Layer” ed impostare le opzioni

desiderate (Movable, Visible)

del layer scelto usando View ->

Layers

Page 258 © Copyright 2014 Studio Zeta S.r.l.

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 13 – SALVATAGGIO DI UN

MODELLO

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 260

Salvataggio di un modello

Un modello Witness può essere salvato (File\Save as) nei seguenti modi: ‒ Model Files (*.mod) – viene salvato il modello con le proprie icone e il

file di Designer Element

‒ Model & Status Files (*.sim) – Viene salvato il modello e lo stato attuale della simulazione (con tutti i report). Tale file può essere aperto solo con la medesima versione di Witness che l’ha generato

‒ Model Library Files (*.lst) – viene salvato il listato del modello. Il file creato è editabile con word. Nel file di listato non vengono salvate le icone. In automatico, insieme al file .lst, viene salvato anche il file .icn

‒ Icons Only files (*.icn) – vengono salvate solo le icone (per riutilizzare in altri modelli la parte grafica)

‒ Designer Element Files (*.des) – viene salvata la finestra dei Designer Elements

‒ Module Files (*.mdl) – il modello viene salvato come modulo per poter essere importato in altri modelli

‒ Backup Files (*.bck) – tutte le volte che viene effettuato un salvataggio, in automatico il sistema salva la precedente versione

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 14 – ANALISI COSTI /

BENEFICI

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 262

Analisi costi/benefici

Si tratta di un’analisi economica effettuata tramite assegnazione di costi e ricavi che viene sintetizzata, al termine della simulazione, in un “balance sheet”

È possibile definire ad esempio: ricavi per chiamata gestita, costi per operazione effettuata, costi per attesa delle chiamate in coda, ecc.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 263

Analisi costi/benefici

Costi:

‒ Costi Fissi: sono calcolati sulla durata della simulazione (se è stato definita una unità di tempo, è possibile scegliere tra secondi, minuti, ore, ecc.)

‒ Costi Variabili: sono calcolati sull’utilizzo o sulla produttività (costi sull’Idle Time, sul Busy Time, per Operations, per Entity Created, ecc.)

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 264

Analisi costi/benefici

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 265

Analisi costi/benefici

studio zeta Processi e Organizzazione Analisi costi/benefici

Al termine della simulazione, per accedere al foglio di sintesi, “Cost and Revenue Report”

Page 266 © Copyright 2014 Studio Zeta S.r.l.

© Copyright 2014 Studio Zeta S.r.l.

studio zeta Processi e Organizzazione 15 - METODOLOGIA DEL

PROGETTO DI

SIMULAZIONE

CORSO WITNESS BASE PER CONTACT CENTER

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 268

Metodologia del progetto di simulazione

Specs

Criteri e esperimenti di

validazione del modello

Certificazione dei dati e

data-cleaning

Specs

Descrizione dettagliata di:

• Processi e Organizzazione

• Servizi e Flussi

• Parametri, Formule e logiche di

sistema

Risultati

degli

esperimenti

What-if?

Specs

• Campagne di Verifica del Progetto • (A normale carico di lavoro)

• Campagne di Verifica di Capacità • (Prove da sforzo al crescere dei carichi)

• Campagne di Sensitività (E.g. Al variare del mix di dei prodotti)

Sintesi dei Risultati

MANAGEMENT

SUMMARY

DEFINIZIONE SVILUPPO VALIDAZIONE SPERIMENTAZIONE

CONFRONTO

SCENARI

ALTERNATIVI

OBIETTIVI

DI

BUSINESS

SCELTA

Lora

n

Modello Un modello a calcolatore che riproduce i

processi e l’organizzazione reale

comportandosi dinamicamente in modo

coerente con il sistema stesso.

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 269

Obiettivi di business

La simulazione offre risposte QUANTITATIVE alle domande di business come, ad esempio:

a) A parità di operatori Italia, quanto migliora il TA se ottimizzo la distribuzione degli skill e dei livelli di skill tra gli operatori?

b) A parità di SLA Italia, quanti operatori posso risparmiare se ottimizzo la distribuzione degli skill e dei livelli di skill tra gli operatori?

c) Quante chiamate in più posso prendere se ottimizzo la distribuzione dei livelli di skill tra gli operatori mantenendo il TA target?

Devono essere chiaramente definiti e condivisi con modeller

Non possono essere obiettivi estemporanei

Non possono limitarsi alla sola costruzione di un modello di

simulazione

studio zeta Processi e Organizzazione Fasi di un Progetto di Simulazione

Page 270 © Copyright 2014 Studio Zeta S.r.l.

• IL RISULTATO TANGIBILE – La mappa dei processi, i flussi, i dati normalizzati e i parametri – Gli indici di prestazione ed economici da valutare – Gli scenari alternativi da confrontare

• IL RISULTATO INTANGIBILE – La conoscenza/visione comune del processo – La normalizzazione delle aspettative

DEFINIZIONE

OBIETTIVI

LIVELLO DI

DETTAGLIO

REPERIMENTO

DATI

• Definizione del problema • Definizione degli obiettivi della simulazione • Definizione delle logiche di flusso • Definizione degli scenari alternativi • Selezione dei dati in input e dei risultati in output

• Definizione del grado di dettaglio • Definizione del grado di parametrizzazione

OUTPUT

• Identificazione dei parametri e delle distribuzioni statistiche • Verifica della disponibilità dei dati • Verifica di coerenza dei dati con gli obiettivi

DEFINIZIONE SVILUPPO VALIDAZIONE SPERIMENTAZIONE

CONFRONTO

SCENARI

ALTERNATIVI

SCELTA

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 271

Progettazione del modello

Prima di costruire il modello, è utile schematizzare il

processo su carta

“Un giorno sulla carta salva un mese sul computer”

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 272

Livello di dettaglio

Ciò che dovrebbe essere incluso nel modello: dove

inizia e dove finisce il progetto?

Modellizzare il numero minimo di dettagli che permette il

raggiungimento degli obiettivi

Obiettivi e livello di dettaglio non devono essere

modificati in corso d’opera

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 273

Reperimento dati

I dati possono essere suddivisi in 3 categorie:

‒ Disponibili

‒ Non disponibili, ma rintracciabili

‒ Non disponibili e non rintracciabili

– Esperienza delle persone

– Analisi di sensitività

studio zeta Processi e Organizzazione Fasi di un Progetto di Simulazione

Page 274 © Copyright 2014 Studio Zeta S.r.l.

PROGETTAZIONE

MODELLO

VERIFICA

OUTPUT

COSTRUZIONE

MODELLO

VALIDAZIONE

• IL MODELLO E UN’INTERFACCIA UTENTE FUNZIONANTI

• Definizione dell’architettura del modello • Definizione dell’interfaccia per l’introduzione dei parametri • Specifiche del modello e dell’interfaccia

• Sviluppo del modello • Sviluppo dell’interfaccia utente

• Test funzionale del modello e dell’interfaccia utente • Verifica di coerenza

• Definizione dei dati per gli esperimenti di validazione • Definizione dei risultati attesi • Lancio degli esperimenti di validazione • Verifica dei risultati rispetto ai risultati attesi • Eventuale modifica del modello e revisione delle specifiche del processo

DEFINIZIONE SVILUPPO VALIDAZIONE SPERIMENTAZIONE

CONFRONTO

SCENARI

ALTERNATIVI

SCELTA

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 275

Costruzione del modello

Procedere a piccoli passi

Prima di procedere al passo successivo, è meglio

essere sicuri che lo step completato funzioni

correttamente

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 276

Verifica

Controllare il codice, testare il modello, analizzare i

report

Il modello rispecchia fedelmente la realtà?

L’output generato dal modello soddisfa gli obiettivi?

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 277

Validazione

La validazione è la verifica che il modello si comporta

coerentemente con la realtà che deve rappresentare

Si attua attraverso un serie di esperimenti condotti con dati

appositamente predisposti

La validazione conferisce credibilità al modello

L’output della simulazione può essere confrontato con

l’output reale per vedere se il modello si comporta

coerentemente

È difficile validare modelli di sistemi ipotetici, ma esperti del

sistema possono dare una propria valutazione della

ragionevolezza dei risultati

studio zeta Processi e Organizzazione Fasi di un Progetto di Simulazione

Page 278 © Copyright 2014 Studio Zeta S.r.l.

PROGETTAZIONE

PIANO

ESPERIMENTI

SINTESI

OUTPUT

CONFRONTO

DI SCENARI

ALTERNATIVI

PRESENTAZIONE

DEI RISULTATI

• Definizione del Piano degli Esperimenti • Lancio degli esperimenti • Analisi dei risultati • Verifica dell’aderenza con gli obiettivi della simulazione

• Definizione dei parametri di valutazione • Definizione dei “Pesi” relativi • Confronto delle soluzioni

• Identificazione delle raccomandazioni • Stesura della relazione per il management

• Presentazione dei Risultati al Management

• IL RISULTATO TANGIBILE – Valutazione quantitativa della capacità del sistema – Identificazione e quantificazione dei punti di inefficienza – Analisi quantitativa degli scenari alternativi

• IL RISULTATO INTANGIBILE – Metodo per: analisi quantitativa, ricerca degli “ottimi” e valutazione

delle soluzioni

DEFINIZIONE SVILUPPO VALIDAZIONE SPERIMENTAZIONE

CONFRONTO

SCENARI

ALTERNATIVI

SCELTA

studio zeta Processi e Organizzazione

© Copyright 2014 Studio Zeta S.r.l. Page 279

Sperimentazione

Warm-Up Period

‒ Tempo dopo il quale il sistema comincia a collezionare le statistiche

Lunghezza della simulazione

‒ Trovare l’evento casuale meno frequente e fare in modo che la

simulazione duri un tempo sufficiente da far accadere un numero di

estrazioni tra 10 e 20

‒ Almeno una volta, lanciare la simulazione per un tempo molto lungo

Numero di repliche

‒ Almeno da 4 a 6 repliche per ogni esperimento

‒ Non necessarie se si effettuano analisi di What-if