bpmn abstraction tool · ÷ Η είσοδος της φάσης αυτής εκτός από το...

69
ΠΑΡΟΥΣΙΑΣΗ ΕΡΓΑΛΕΙΟΥ ΑΦΑΙΡΕΣΗΣ ΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ BPMN Abstraction Tool

Upload: others

Post on 05-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

ΠΑΡΟΥΣΙΑΣΗ ΕΡΓΑΛΕΙΟΥ ΑΦΑΙΡΕΣΗΣ

ΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ

BPMN Abstraction Tool

Page 2: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 3: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Περιγραφή

� Εργαλείο για την αφαίρεση των επιχειρησιακών διαδικασιών

� Στοχεύει στη µείωση του µεγέθους και της πολυπλοκότητας των ΒΡΜΝ µοντέλων

� Συνεισφέρει θετικά στη διαχείριση των επιχειρησιακών διαδικασιών

Page 4: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 5: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Abstraction (Αφαίρεση)

� Δύο µέθοδοι αφαίρεσης:¡ Εξάλειψη (Elimination)¡ Συνένωση (Aggregation)

� Για να εφαρµοσθεί η αφαίρεση πρέπει να πληρούνται ορισµένες προϋποθέσεις¡ Κανόνες αφαίρεσης

� Η αφαίρεση εφαρµόζεται στα συστατικά στοιχεία των BPMN µοντέλων¡ Όχι µόνο στα activities, αλλά και στα data, στους

participants, στα artifacts κ.ο.κ

Page 6: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Κανόνες Αφαίρεσης

� Αφαίρεση στα Lanes� Αφαίρεση στα Text Annotations� Αφαίρεση στα Data Objects� Αφαίρεση στα Message Flows� Αφαίρεση στα Paths� Αφαίρεση στα Tasks

*ΟΙ ΚΑΝΟΝΕΣ ΕΦΑΡΜΟΖΟΝΤΑΙ ΜΕ ΤΗΝ ΣΕΙΡΑ ΠΟΥ ΑΝΑΦΕΡΟΝΤΑΙ ΠΑΡΑΠΑΝΩ

Page 7: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Lanes

� Lane: αντιπροσωπεύει κάποιο ρόλο ενός Participant

� ΒΡΜΝ στοιχείο: Lane� Abstraction Object: Role� Συνθήκη: Lanes που αφορούν σε διαφορετικούς ρόλους του ίδιου Participant

� Μέθοδος αφαίρεσης: Συνένωση� Ο κανόνας συνενώνει όλα τα lane sets που υπάρχουν στο διάγραµµα

Page 8: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Lanes

Page 9: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Lanes

Page 10: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Text Annotation

� Κείµενο για σχόλια/επιπλέον πληροφορίες� ΒΡΜΝ στοιχείο: Text Annotation� Abstraction Object: Text Annotation� Συνθήκη: Πάντα� Μέθοδος αφαίρεσης: Εξάλειψη

Page 11: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Text Annotation

Page 12: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1

� ΒΡΜΝ στοιχείο: Sequence� Abstraction Object: Task� Συνθήκη:

¡ Ακολουθίες από Tasks ίδιου τύπου ¡ Χρησιµοποιούν όλα τα ίδια Data Objects ή κανένα δε χρησιµοποιεί κάποιο Data Object

¡ Θέτονται σε ενέργεια από το ίδιο event¡ Εκτελούνται από ίδιο Participant

� Μέθοδος αφαίρεσης: Συνένωση

Page 13: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1:Κατηγορίες Ακολουθιών από Tasks

� Ακολουθίες ενδιάµεσα σε Events

� Ακολουθίες ενδιάµεσα σε Gateways

Page 14: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1:Κατηγορίες Ακολουθιών από Tasks

� Ακολουθίες ενδιάµεσα σε Sub-Processes

Page 15: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1:Κατηγορίες Ακολουθιών από Tasks

� Ακολουθίες που δεν έχουν εισερχόµενο sequence flow ή

� Ακολουθίες που δεν έχουν εξερχόµενο sequence flow

Page 16: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1:Κατηγορίες Ακολουθιών από Tasks

� Ακολουθίες ενδιάµεσα σε συνδυασµό των παραπάνω κατηγοριών

Page 17: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 1

Page 18: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 2

� ΒΡΜΝ στοιχείο: Task� Abstraction Object: Task� Συνθήκη:

¡ Είναι τύπου Business Rule, Manual ή Script¡ Δεν εµπλέκονται σε ανταλλαγή µηνυµάτων¡ Δεν παράγουν data outputs

� Μέθοδος αφαίρεσης: Εξάλειψη

Page 19: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Tasks 2

Page 20: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects 1

� ΒΡΜΝ στοιχείο: Data Object� Abstraction Object: Data� Συνθήκη: Ένα data object συνδέεται σε ένα

µόνο flow element� Μέθοδος αφαίρεσης: Εξάλειψη

Page 21: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects 2

� ΒΡΜΝ στοιχείο: Data Object� Abstraction Object: Data� Συνθήκη: Παραπάνω από ένα data objects ίδιου τύπου συνδέονται στο ίδιο flow element

� Μέθοδος αφαίρεσης: Συνένωση

Page 22: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects 3

� ΒΡΜΝ στοιχείο: Data Object� Abstraction Object: Data� Συνθήκη: Παραπάνω από ένα data objects ίδιου τύπου συνδέονται σε ακολουθία από Tasks

� Μέθοδος αφαίρεσης: Συνένωση

Page 23: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects

Page 24: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects

Page 25: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Data Objects

Page 26: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Message Flows

� ΒΡΜΝ στοιχείο: Message Flow� Abstraction Object: Message� Συνθήκη: Ανταλλάσσονται παραπάνω από ένα

µηνύµατα¡ Ανάµεσα σε δύο συγκεκριµένα µέρη του process (Task ,

event, sequence, pool, loop, expanded sub-process)¡ Κάθε µέρος του process ανήκει σε διαφορετικό

participant¡ Εισερχόµενα προς το ένα και εξερχόµενα προς το άλλο

� Μέθοδος αφαίρεσης: Συνένωση

Page 27: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Message Flows

Page 28: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Message Flows

Page 29: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths

� Αρχικά τα πρέπει να εντοπιστούν τα paths� Στη συνέχεια σε κάθε path εφαρµόζεται η αφαίρεση για τα Tasks

Page 30: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 1

� ΒΡΜΝ στοιχείο: Gateway� Abstraction Object: Path� Συνθήκη:

¡ Ενδιάµεσα σε Gateways ¡ Περιέχουν πάνω από ένα Task¡ Εκτελούνται από τον ίδιο Participant¡ Το πλήθος των εξερχοµένων του ενός ισούται µε το πλήθος των εισερχοµένων του άλλου

� Μέθοδος αφαίρεσης: Συνένωση

Page 31: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 1

Page 32: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 2

� ΒΡΜΝ στοιχείο: Event� Abstraction Object: Path� Συνθήκη:

¡ Ξεκινούν µε Start ή Intermediate Event¡ Καταλήγουν σε Intermediate ή End Event¡ Περιέχουν πάνω από ένα Task¡ Εκτελούνται από τον ίδιο Participant

� Μέθοδος αφαίρεσης: Συνένωση

Page 33: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 2

Page 34: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 3

� ΒΡΜΝ στοιχείο: Loop� Abstraction Object: Path� Συνθήκη:

¡ Κάθε loop συνοδεύεται από µια συνθήκη, η οποία όσο είναι αληθής, το loop εκτελείται

¡ Ένα Gateway αντιπροσωπεύσει µια συνθήκη¡ Περιέχουν πάνω από ένα Task

� Μέθοδος αφαίρεσης: Συνένωση

Page 35: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αφαίρεση στα Paths 3

Page 36: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Είδη/Επιλογές Αφαίρεσης στα πλαίσια της εφαρµογής

� Default/Global Abstraction¡ Εξαλείφει και συνενώνει τα όλα τα υποψήφια προς αφαίρεση στοιχεία χωρίς να υπάρξει αλληλεπίδραση µε το χρήστη

¡ Δε λαµβάνει υπόψη επιλεκτικά κάποιο σηµείο του διαγράµµατος, ούτε και κάποιο συγκεκριµένο είδος στοιχείου

� Selective/Local Abstraction¡ Δίνει τη δυνατότητα να ορίσει ο χρήστης σε ποιο σηµείο του µοντέλου θα γίνει η αφαίρεση(πχ σε µέσα σε ένα µεγάλο loop µόνο) και ποια είδη στοιχείων (πχ τα lanesµόνο) θα αφαιρεθούν

¡ Αξιολογεί ένα προς ένα τα στοιχεία, αν θα εξαλειφθούν, αν θα συνενωθούν ή αν θα µείνουν ως έχουν

Page 37: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 38: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Λειτουργικότητα του εργαλείου

� Παίρνει σαν είσοδο ένα αρχικό µοντέλο BPMN � Στο αρχικό µοντέλο εφαρµόζει τους κανόνες της αφαίρεσης

� Δίνει σαν έξοδο ένα άλλο µοντέλο στο οποίο έχει εφαρµοστεί η αφαίρεση

� Το τελικό µοντέλο συσχετίζεται µε το αρχικό, αφού στην ουσία πρόκειται για µια απλούστερη µορφή του

� Δίνει σαν έξοδο, επίσης, τα στατιστικά στοιχεία της αφαίρεσης

� Παρέχει τη δυνατότητα της επιπλέον επεξεργασίας, µέσω της οποίας ο χρήστης επιλέγει σε ποια στοιχεία του µοντέλου επιθυµεί να γίνει η αφαίρεση

Page 39: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Βασικές λειτουργίες του εργαλείου

1. Κατασκευή ενός BPMN µοντέλου2. Ανέβασµα αρχείου που περιέχει ένα ΒΡΜΝ

µοντέλο3. Αναζήτηση στο Ιστορικό4. Εφαρµογή της Default/Global Abstraction5. Εφαρµογή της Selective/Local Abstraction6. Υπολογισµός στατιστικών7. Αποθήκευση µοντέλου στη Βάση Δεδοµένων8. Αποθήκευση µοντέλου στον υπολογιστή του χρήστη

Page 40: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

1.Κατασκευή BPMN µοντέλου

� O χρήστης κατασκευάζει εκείνη την ώρα το µοντέλο¡ Οδηγείται στο site bpmn.io για να κατασκευάσει το

µοντέλο

� Έξοδος¡ Το µοντέλο που σχεδιάζει ο χρήστης¡ Το µοντέλο γράφεται σε αρχείο που αποθηκεύεται στον υπολογιστή του χρήστη

¡ Το αρχείο αυτό είναι µια από τις επιλογές εισόδου της επόµενης λειτουργίας

Page 41: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

2.Ανέβασµα αρχείου που περιέχει ένα ΒΡΜΝ µοντέλο

� Είσοδος¡ Το αρχείο .bpmn στο οποίο περιέχεται το ΒΡΜΝ µοντέλο ¡ Μπορεί να έχει παραχθεί από την προηγούµενη διαδικασία

� Έλεγχος ¡ Ύπαρξη αρχείου¡ Μορφή αρχείου (.bpmn ή .bpmn2)¡ Επανάληψη διαδικασίας µέχρι να ολοκληρωθεί σωστά το ανέβασµα

� Έξοδος¡ Το αρχείο ανεβασµένο στον server

Page 42: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

3.Αναζήτηση στη Ιστορικό

� Είσοδος¡ Το αρχείο που εισήχθη

� Έλεγχος¡ Αν το µοντέλο που περιέχει το αρχείο έχει υποστεί ήδη επεξεργασία

¡ Αναζήτηση στη ΒΔ¡ Αποτέλεσµα

÷ Το πολύ δύο µοντέλα και δύο σετ από στατιστικά¢ Κανένα αποτέλεσµα από τη ΒΔ¢ Default/Global Abstraction¢ Default/Global Abstraction και Selective/Local Abstraction

� Έξοδος¡ Ο χρήστης µπορεί να δει και να αποθηκεύσει όποιο αποτέλεσµα θέλει ή να τα αγνοήσει

¡ Το µοντέλο και τα στατιστικά που θα επιλέξει

Page 43: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

4.Εφαρµογή της Default/Global Abstraction

� Είσοδος¡ Το µοντέλο που περιέχεται στο αρχείο

� Έλεγχος¡ Αν το µοντέλο δεν είναι έγκυρο σύµφωνα µε την Camunda 7.5¡ Ανέβασµα ενός αρχείου που περιέχει έγκυρο µοντέλο

� Λειτουργικότητα¡ Γίνεται σε δύο φάσεις (Εδώ δεν είναι διακριτές)¡ Ορίζονται τα υποψήφια προς αφαίρεση στοιχεία ύστερα από την εφαρµογή των κανόνων αφαίρεσης

¡ Συνενώνονται ή εξαλείφονται όλα� Έξοδος

¡ Το µοντέλο µετά την εφαρµογή της Default/Global Abstraction

Page 44: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

5.Εφαρµογή της Selective/Local Abstraction

� Είσοδος¡ Το µοντέλο που περιέχεται στο αρχείο

� ΛειτουργικότηταΓίνεται σε δύο φάσεις, που σε αυτό το σηµείο είναι διακριτές

¡ Φάση 1÷ Ορίζονται τα υποψήφια προς αφαίρεση στοιχεία÷ Παρουσιάζονται στο χρήστη÷ Του ζητείται να αποδεχτεί ή να απορρίψει την αφαίρεση για κάθε στοιχείο

÷ Η έξοδος της φάσης αυτής είναι οι επιλογές του χρήστη¡ Φάση 2

÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1

÷ Συνενώνονται, εξαλείφονται ή παραµένουν όποια στοιχεία επιθυµεί ο χρήστης.

� Έξοδος¡ Το µοντέλο µετά την εφαρµογή της Selective/Local Abstraction

Page 45: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

6.Υπολογισµός Στατιστικών

� Είσοδος¡ Το µοντέλο πριν την αφαίρεση¡ Το µοντέλο µετά την αφαίρεση

� Έξοδος¡ Ποσοστό µείωσης στοιχείων για:

÷ Lanes÷ Tasks÷ Message Flows÷ Data÷ Text Annotation÷ Total

¡ Παρουσιάζεται παράλληλα µε τις εξόδους των 3,4,5 λειτουργιών

Page 46: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

7.Αποθήκευση µοντέλου στη ΒΔ

� Η λειτουργία αυτή συµβαίνει ανεξάρτητα από τις επιλογές του χρήστη

� Tα µοντέλα που παράγονται και ενώ υπάρχουν ήδη, ενηµερώνονται στη ΒΔ µε την τελευταία έκδοση¡ Όµοια και για τα στατιστικά

� Tα µοντέλα που παράγονται από τις λειτουργίες 4 και 5 αποθηκεύονται στη βάση δεδοµένων¡ Όµοια και για τα στατιστικά

Page 47: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

8.Αποθήκευση µοντέλου στον υπολογιστή του χρήστη

� Τα µοντέλα που παράγονται ως έξοδοι των λειτουργιών 3,4 και 5 αποθηκεύονται σε αρχεία αν το επιθυµεί ο χρήστης¡ Η αποθήκευση γίνεται σε προκαθορισµένο φάκελο¡ Αν δεν επιθυµεί, τα µοντέλα δεν αποθηκεύονται στον υπολογιστή του

Page 48: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 49: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αρχιτεκτονική εργαλείου

� client-server technology � 3-tier architecture

Page 50: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αρχιτεκτονική 3 επιπέδων

� Επίπεδο 1 (Presentation Layer)¡ Browsers για πρόσβαση στην εφαρµογή¡ Μετατροπή του κώδικα των jsp σελίδων (σε µορφή κατανοητή από τον χρήστη)

¡ Οπτικοποίηση διαγραµµάτων (bpmn.io)� Επίπεδο 2 (Business Logic Layer)

¡ Web Server: Apache Tomcat version 8.0.24¡ Jsp σελίδες¡ Java program (application)¡ Επικοινωνία µε τη βάση δεδοµένων

� Επίπεδο 3 (Database Services Layer)¡ PostgreSQL

Page 51: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Αρχιτεκτονική 3 επιπέδων

� Προγραµµατιστικό περιβάλλον ¡ Eclipse Neon, Java EE Developer Edition¡ Apache Tomcat 8.0.24¡ JDBC driver

Page 52: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Προγραµµατισµός στον server

� Server-side programs¡ Java

÷ Servlets÷ JSPs

� Client-side programs¡ scripts που έχουν γραφεί στις JSP σελίδες µε Scriplet

Page 53: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Το εργαλείο ως Web εφαρµογή

� Client-Server Technology� 3-tier Architecture� Java� Servlets & JSP pages� HTTP protocol over TCP/IP� JavaScript� Scriplet� CSS

Page 54: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Προγράµµατα, Βιβλιοθήκες, jar files κ.ά.

¡ Eclipse Neon, Java EE Developer Edition¡ Apache Tomcat 8.0.24¡ Camunda 7.5, για παροχή διεπαφών του ΒΡΜΝ στη Java¡ git, npm & bower¡ bpmn-io/bpmn-js, για προβολή µοντέλων¡ Refresher for Eclipse ¡ Jar files για το ανέβασµα αρχείου (common-io-2.4 &

common-fileupload-1.2.2)¡ PostgreSQL Database 9.6

Page 55: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 56: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Ας δούµε και την εφαρµογή…

Page 57: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Agenda

Δηµήτριος-Αλέξανδρος Σίνης

Θεωρητικό Υπόβαθρο� Εισαγωγή� Αφαίρεση BPMN Μοντέλων

Παρουσίαση Εργαλείου� Λειτουργικότητα� Αρχιτεκτονική και Τεχνολογίες� Επίδειξη� Στάδια Ανάπτυξης

Page 58: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

1.Καθορισµός απαιτήσεων

� Για το εργαλείο που αναπτύχτηκε� Για το πλάνο εργασίας και το χρονοδιάγραµµα

Page 59: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

2.Διάβασµα Βιβλιογραφίας

� Για το πρότυπο µοντελοποίησης επιχειρησιακών διαδικασιών BPMN 2.0

� Για τους κανόνες αφαίρεσης επιχειρησιακών διαδικασιών

Page 60: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

3.Σχεδιασµός

� Λειτουργικότητα και λειτουργικές προδιαγραφές του εργαλείου

� Αρχιτεκτονική του εργαλείου� Διαγράµµατα UML

¡ Activity¡ Class¡ Component¡ Deployment

Page 61: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

4.Προπαρασκευαστικό στάδιο για την υλοποίηση του εργαλείου

� Διάβασµα για τις γλώσσες προγραµµατισµού του εργαλείου

� Εγκατάσταση προγραµµάτων, βιβλιοθηκών, server, plug-ins και κάποιων ήδη υλοποιηµένων προγραµµάτων

Page 62: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

5.Σκελετός εφαρµογής

� Κατασκευή JSP σελίδων� Servlets� web.xml αρχείο, που ορίζει το πώς θα καλείται το κάθε servlet

� Σύνδεση της εφαρµογής µε τον Server� Δοκιµαστικές εφαρµογές, για την αλληλουχία των σελίδων και την επιβεβαίωση της ορθής λειτουργίας των servlets

Page 63: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

6.Ενασχόληση µε τη βιβλιοθήκη για την BPMN 2.0

� Έρευνα για την επιλογή της καταλληλότερης� Επιλογή βιβλιοθήκης και εγκατάσταση αυτής� Μελέτη της βιβλιοθήκης για:

¡ Parsing bpmn αρχείων¡ Συµπεριλαµβανόµενες κλάσεις¡ Διαχείριση των µοντέλων και των συστατικών στοιχείων της

bpmn¡ Τροποποίηση µοντέλων¡ Γράψιµο µοντέλων σε αρχείο¡ Εντοπισµό ελλείψεων και ανάλογος χειρισµός αυτών¡ Δοκιµές

Page 64: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

7.Υλοποίηση κλάσεων

� Κώδικας για τον εντοπισµό και τη διαχείριση µονοπατιών µέσα στο µοντέλο

� Κώδικας για τους κανόνες αφαίρεσης, που επιστρέφουν τα υποψήφια για αφαίρεση στοιχεία

� Κώδικας για την εφαρµογή της αφαίρεσης στα στοιχεία αυτά

� Κώδικας για υπολογισµό των στατιστικών της αφαίρεσης

� Κατασκευή αρχείων .bpmn για την επαλήθευση της ορθής λειτουργίας

Page 65: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

8.Προβολή και κατασκευή µοντέλων

� Προβολή µοντέλων¡ Εγκατάσταση npm και bower¡ Προσθήκη έτοιµου κώδικα javascript¡ Προσθήκη refresher και χρονοκαθυστέρησης για την προβολή των µοντέλων

� Κατασκευή µοντέλων¡ Προσθήκη υπερσυνδέσµου στην εφαρµογή που µεταφέρει τον πελάτη σε κάποιο site για την κατασκευή µοντέλων

Page 66: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

9.Βάση Δεδοµένων

� Σύνδεση της εφαρµογής µε µία βάση δεδοµένων¡ Για αποθήκευση µοντέλων που έχουν υποστεί αφαίρεση ¡ Για αποθήκευση στατιστικών στοιχείων¡ Για αποφυγή της επεξεργασίας ενός ήδη επεξεργασµένου αρχείου κατά το παρελθόν

¢ Ανάκτηση αρχείου και στατιστικών

Page 67: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

10.Εµφάνιση της εφαρµογής

� Προσθήκη CSS στις JSP σελίδες για την εµφάνιση του εργαλείου στο χρήστη¡ Επιλογή γραµµατοσειράς¡ Φόντου¡ Χρωµάτων¡ Και άλλα

Page 68: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

Ερωτήσεις

Page 69: BPMN Abstraction Tool · ÷ Η είσοδος της φάσης αυτής εκτός από το µοντέλο είναι και η έξοδος της φάσης 1 ÷ Συνενώνονται,

ΠΑΡΟΥΣΙΑΣΗ ΕΡΓΑΛΕΙΟΥ ΑΦΑΙΡΕΣΗΣΕΠΙΧΕΙΡΗΣΙΑΚΩΝ ΔΙΑΔΙΚΑΣΙΩΝ

BPMN Abstraction Tool