Vorlesung Methodische Grundlagen des Software …...2.0 Einführung: Process-Mining 9 Methodische...
Transcript of Vorlesung Methodische Grundlagen des Software …...2.0 Einführung: Process-Mining 9 Methodische...
2.0 Einführung: Process-Mining
1
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Vorlesung
Methodische Grundlagen desSoftware-Engineeringim Sommersemester 2013
Prof. Dr. Jan Jürjens
TU Dortmund, Fakultät Informatik, Lehrstuhl XIV
Teil 2.0: Einführung: Process-Mining
v. 29.04.2013
2.0 Einführung: Process-Mining
2
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
2.0 Einführung: Process-Mining
[mit freundlicher Genehmigung basierendauf einem englischen Foliensatz von
Prof. Dr. Wil van der Aalst (TU Eindhoven)]
Literatur:[vdA11] Wil van der Aalst: Process Mining: Discovery, Conformance and Enhancement of Business Processes, Springer-Verlag. 2011.Unibibliothek (6 Exemplare): http://www.ub.tu-dortmund.de/katalog/titel/1332248(Bei Engpässen kann eine Kopiervorlage der relevanten Ausschnitte zur Verfügung gestellt werden.)● Kapitel 1
2.0 Einführung: Process-Mining
3
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Einordnung2.0: Einführung: Process Mining
● Geschäftsprozessmodellierung● Business Process Mining
− Einführung: Process Mining
− Petrinetze
− Prozessmodellierung und Analyse
− Data-Mining
− Datenbeschaffung
− Prozessextraktion
− Fortgeschrittene Prozessextraktion
● Modellbasierte Softwareentwicklung● Modellbasierte Entwicklung sicherer Software
2.0 Einführung: Process-Mining
4
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Seite 4
Datenexplosion I
2.0 Einführung: Process-Mining
5
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Seite 5
The World's Technological Capacity to Store, Communicate, and Compute Information by Martin Hilbert and Priscila López (DOI 10.1126/science.1200970)
Datenexplosion II
2.0 Einführung: Process-Mining
6
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Seite 6
Datenexplosion III
2.0 Einführung: Process-Mining
7
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Seite 7
Nutzen von Modellen
● Einsicht: Prozess von verschiedenen Seiten betrachten● Diskussion: Stakeholder können Entscheidungen strukturieren● Dokumentation: Personen anleiten oder Zertifizierungen erhalten
(z.B. ISO 9000 Qualitätsmanagement)● Verifikation: Prozessmodelle analysieren, um Fehler in System oder in
Prozeduren zu finden (z.B.: mögliche Deadlocks)● Performance-Analyse: mit Simulationen z.B. beeinflussende Faktoren für
Antwortzeiten, Service Level, etc. verstehen● Animation: End-Nutzer können verschiedene Szenarios “durchspielen”
und Feedback an Designer geben● Spezifikation: Process-aware Information System (PAIS) vor
Implementierung modellieren, als “Vertrag zwischen Entwicklern undEnd-Nutzer/Management“
● Konfiguration: Modelle als Konfiguration von Systemen
2.0 Einführung: Process-Mining
8
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Prozess-Modelle vs. Real-Daten:Relevante Ansätze
● Business Process Management (BPM) ● Business Intelligence (BI)● Online Analytical Processing (OLAP)● Business Activity Monitoring (BAM)● Complex Event Processing (CEP)● Corporate Performance Management (CPM)● Visual Analytics (VA)● Predictive Analytics (PA)● Continuous Process Improvement (CPI)● Total Quality Management (TQM)● Six Sigma
Seite 8
2.0 Einführung: Process-Mining
9
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Beispiel: Six Sigma
Entwickelt von Motorola in frühen 1980ern.
„DMAIC“-Ansatz:
● Definiere (Define) Problem und Ziel,
● Messe (Measure) Hauptindikatoren für Leistung und sammele Daten,
● Analysiere (Analyze) Daten: Zusammenhang zwischen Ursache und Wirkung ermitteln und verifizieren,
● Verbessere (Improve) aktuellen Prozess basierend auf Analyse
● Kontrolliere (Control) Prozess:Abweichung von Ziel minimieren.
Seite 9
Prozess “auf Six Sigma”: nur 3,4 Fehler / 1 Million
Fälle, d.h. im Durchschnitt 99,9997% korrekt.
2.0 Einführung: Process-Mining
10
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Leistungssteigerung vs. Compliance
Skandale (Enron, Tyco, Adelphia, Peregrine, WorldCom, etc.)==>
● Zunehmendes Gewicht auf Corporate Governance, Risk und Compliance (d.h. ob Organisationen “innerhalb ihrer Grenzen” operieren), Interesse an drastischerer Auditierung.
● Neue rechtliche Regelungen:
− z.B. 2002: Sarbanes-Oxley (SOX), 2004: Basel II
Seite 10
2.0 Einführung: Process-Mining
11
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Einschränkungenvon Prozessmodellen
Seite 11
● Kann ausführbare Modelle nutzen, um bestimmte Arbeitsweisen zu erzwingen.
● Meiste “handgemachte” Modelle unterscheiden sich von Realität und bieten höchstens idealisierte Sicht auf Prozess:“Papier-Tiger”.
Wegen:
(a) Interesse an Prozessmodellen,
(b) Menge an Event-Daten und
(c) eingeschränkter Qualität von “handgemachten” Modellen:
=> Event-Daten Prozessmodelle zuordnen: Process-Mining !
2.0 Einführung: Process-Mining
12
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
BPM-Lebenszyklus: klassischer Gebrauch von Prozessmodellen
Seite 12
D i a g n o s e /A n f o r d e r u n g e n
K o n f i g u r a t i o n /I m p l e m e n t i e r u n g
V e r b e s s e r u n g /Ü b e r w a c h u n g
A n p a s s u n g
( R e - ) D e s i g nM o d e l l eD a t e n
E i n s i c h tD i s k u s s i o n
V e r i f i k a t i o n
P e r f o r m a n z -A n a l y s eA n i m a t i o n
S p e z i f i k a t i o nD o k u m e n t a t i o n
K o n f i g u r a t i o n
2.0 Einführung: Process-Mining
13
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Die drei Hauptarten von Process-Mining:Extraktion, Konformanz und Verbesserung *
Seite 13
* discovery, conformance and enhancement
S o f t w a r e -S y s t e m
( P r o z e s s - )M o d e l l
E v e n t - L o g s
m o d e l l i e r ta n a l y s i e r t
T r ä g t E v e n t s e i nz . B . : N a c h r i c h t e n ,
T r a n s a k t i o n e n , e t c .
s p e z i f i z i e r t k o n f i g u r i e r t
i m p l e m e n t i e r ta n a l y s i e r t
u n t e r s t ü t z t /k o n t r o l l i e r t“ W e l t ”
L e u t e M a s c h i n e n
O r g a n i s a t i o n e n K o m p o n e n t e n
G e s c h ä f t s -p r o z e s s e
E x t r a k t i o n
V e r b e s s e r u n g
K o n f o r m a n z
2.0 Einführung: Process-Mining
14
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Orthogonal: Perspektiven
Seite 14
● Kontrollfluss-Perspektive: Reihenfolge der Aktivitäten.
● Betriebliche Perspektive: Informationen über Ressourcen (versteckt im Log), also: Welche Akteure (z.B.: Leute, Systeme, Rollen und Abteilungen) involviert, in welcher Beziehung.
● Fall-Perspektive: Eigenschaften von Fällen. Können z.B. auch über Werte der zugehörigen Daten-Elemente charakterisiert werden.
● Zeitliche Perspektive: Timing und Frequenz von Ereignissen.
2.0 Einführung: Process-Mining
15
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Startpunkt: Event-Log
Seite 15
XES, MXML, SA-MXML, CSV, etc.
2.0 Einführung: Process-Mining
16
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Vereinfachter Event-Log
Seite 16
a = Registrierung anfragen (register request),b = gründlich überprüfen (examine thoroughly), c = normal überprüfen (examine casually), d = Ticket überprüfen (check ticket), e = entscheiden (decide), f = Anfrage neu einleiten (reinitiate request), g = Entschädigung bezahlen (pay compensation),h = Anfrage ablehnen (reject request)
2.0 Einführung: Process-Mining
17
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Prozess-Discovery:BPMN-Modell
2.0 Einführung: Process-Mining
24
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Seite 24
Über Extraktion hinaus:Konformanz und Verbesserung
S o f t w a r e -S y s t e m
( P r o z e s s - )M o d e l l
E v e n t - L o g s
m o d e l l i e r ta n a l y s i e r t
T r ä g t E v e n t s e i nz . B . : N a c h r i c h t e n ,
T r a n s a k t i o n e n , e t c .
s p e z i f i z i e r t k o n f i g u r i e r t
i m p l e m e n t i e r ta n a l y s i e r t
u n t e r s t ü t z t /k o n t r o l l i e r t“ W e l t ”
L e u t e M a s c h i n e n
O r g a n i s a t i o n e n K o m p o n e n t e n
G e s c h ä f t s -p r o z e s s e
E x t r a k t i o n
V e r b e s s e r u n g
K o n f o r m a n z
2.0 Einführung: Process-Mining
25
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Erweiterung
Seite 25
a
R e g i s t r i e r u n ga n f r a g e n
b
g r ü n d l i c h ü b e r p r ü f e n
c
n o r m a lü b e r p r ü f e n
d
e n t s c h e i d e n
E n t s c h ä d i g u n g b e z a h l e n
A n f r a g e a b l e h n e n
A n f r a g e n e u e i n l e i t e n
e
g
h
f
c 1
c 2
c 3
c 4
c 5
P e r f o r m a n z - I n f o r m a t i o n e n ( z . B . : d u r c h s c h n i t t l i c h e Z e i t z w i s c h e n z w e i a u f e i n a n d e r f o l g e n d e n A k t i v i t ä t e n ) k ö n n e n v o m E v e n t -L o g e x t r a h i e r t w e r d e n u n d v i s u a l i s i e r t w e r d e n .
A
A
A
A
A
E
M
M
P e t e
M i k e
E l l e n
R o l l e A :A s s i s t e n t
S u e
S e a n
R o l l e E :E x p e r t e
S a r a
R o l l e M :M a n a g e r
E n t s c h e i d u n g s r e g e l n k ö n n e n v o m E v e n t - L o g e r l e r n t w e r d e n .( z . B . : E i n E n t s c h e i d u n g s b a u m b a s i e r e n d a u f D a t e n , d i e z u m Z e i t p u n k t e i n e r b e s t i m m t e n E n t s c h e i d u n g b e k a n n t w a r e n )
M i t d e m E v e n t - L o g k ö n n e n R o l l e n i n d e r O r g a n i s a t i o n e n t d e c k t w e r d e n ( z . B . : G r u p p e n v o n L e u t e n d i e ä h n l i c h e A r b e i t s m u s t e r h a b e n ) . D i e s e R o l l e n k ö n n e n g e n u t z t w e r d e n , u m I n d i v i d u e n A k t i v i t ä t e n z u z u o r d n e n .
S t a r t
T i c k e t ü b e r p r ü f e n
E n d e
2.0 Einführung: Process-Mining
26
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Play-Out
Seite 26
E v e n t - L o gP r o z e s s m o d e l l
2.0 Einführung: Process-Mining
27
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Play-In
Seite 27
E v e n t - L o g P r o z e s s m o d e l l
2.0 Einführung: Process-Mining
28
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Replay
Seite 28
2.0 Einführung: Process-Mining
29
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013Replay
Seite 29
Wichtig: Modelle mit echten Ereignissen verknüpfen.
Mögliche Anwendungen:
● Erfüllung prüfen
● Modelle reparieren
● Modell um Informationen zu Frequenz und Zeit erweitern
● Voraussagende Modelle konstruieren
● Betriebsunterstützung (Vorhersagen, Vorschläge, etc.)
2.0 Einführung: Process-Mining 30
Seite 30
Wunschpfade in Prozess-Modellen
2.0 Einführung: Process-Mining
31
Methodische Grundlagen Methodische Grundlagen des Software-Engineeringdes Software-Engineering
SS 2013SS 2013
Zusammenfassung2.0: Einführung Business Process Mining
● Geschäftsprozessmodellierung● Process Mining
● Einführung: Process Mining● Modellbasierte Softwareentwicklung● Modellbasierte Entwicklung sicherer
Software