Clarify Goal of the Analysis – Process Mining Rule 1 of 4

This is article no. 1 of the four-part article series Privacy, Security and Ethics in Process Mining.

Clarify Goal of the Analysis

The good news is that in most situations Process Mining does not need to evaluate personal information, because it usually focuses on the internal organizational processes rather than, for example, on customer profiles. Furthermore, you are investigating the overall process patterns. For example, a process miner is typically looking for ways to organize the process in a smarter way to avoid unnecessary idle times rather than trying to make people work faster.

Read this article in German:
Datenschutz, Sicherheit und Ethik beim Process Mining – Regel 1 von 4

However, as soon as you would like to better understand the performance of a particular process, you often need to know more about other case attributes that could explain variations in process behaviours or performance. And people might become worried about where this will lead them.

Therefore, already at the very beginning of the process mining project, you should think about the goal of the analysis. Be clear about how the results will be used. Think about what problem are you trying to solve and what data you need to solve this problem.

Do:

  • Check whether there are legal restrictions regarding the data. For example, in Germany employee-related data cannot be used and typically simply would not be extracted in the first place. If your project relates to analyzing customer data, make sure you understand the restrictions and consider anonymization options (see guideline No. 3).
  • Consider establishing an ethical charter that states the goal of the project, including what will and what will not be done based on the analysis. For example, you can clearly state that the goal is not to evaluate the performance of the employees. Communicate to the people who are responsible for extracting the data what these goals are and ask for their assistance to prepare the data accordingly.

Don’t:

  • Start out with a fuzzy idea and simply extract all the data you can get. Instead, think about what problem are you trying to solve? And what data do you actually need to solve this problem? Your project should focus on business goals that can get the support of the process managers you work with (see guideline No. 4).
  • Make your first project too big. Instead, focus on one process with a clear goal. If you make the scope of your project too big, people might block it or work against you while they do not yet even understand what process mining can do.

Privacy, Security and Ethics in Process Mining – Article Series

When I moved to the Netherlands 12 years ago and started grocery shopping at one of the local supermarket chains, Albert Heijn, I initially resisted getting their Bonus card (a loyalty card for discounts), because I did not want the company to track my purchases. I felt that using this information would help them to manipulate me by arranging or advertising products in a way that would make me buy more than I wanted to. It simply felt wrong.

Read this article in German:
Datenschutz, Sicherheit und Ethik beim Process Mining – Artikelserie

The truth is that no data analysis technique is intrinsically good or bad. It is always in the hands of the people using the technology to make it productive and constructive. For example, while supermarkets could use the information tracked through the loyalty cards of their customers to make sure that we have to take the longest route through the store to get our typical items (passing by as many other products as possible), they can also use this information to make the shopping experience more pleasant, and to offer more products that we like.

Most companies have started to use data analysis techniques to analyze their data in one way or the other. These data analyses can bring enormous opportunities for the companies and for their customers, but with the increased use of data science the question of ethics and responsible use also grows more dominant. Initiatives like the Responsible Data Science seminar series [1] take on this topic by raising awareness and encouraging researchers to develop algorithms that have concepts like fairness, accuracy, confidentiality, and transparency built in (see Wil van der Aalst’s presentation on Responsible Data Science at Process Mining Camp 2016).

Process Mining can provide you with amazing insights about your processes, and fuel your improvement initiatives with inspiration and enthusiasm, if you approach it in the right way. But how can you ensure that you use process mining responsibly? What should you pay attention to when you introduce process mining in your own organization?

In this article series, we provide you four guidelines that you can follow to prepare your process mining analysis in a responsible way:

Part 1 of 4: Clarify the Goal of the Analysis

– Part 2 of 4: Responsible Handling of Data (COMING SOON!)

– Part 3 of 4: Consider Anonymization (COMING SOON!)

– Part 4 of 4: Establish a collaborative Culture (COMING SOON!)

Acknowledgements

We would like to thank Frank van Geffen and Léonard Studer, who initiated the first discussions in the workgroup around responsible process mining in 2015. Furthermore, we would like to thank Moe Wynn, Felix Mannhardt and Wil van der Aalst for their feedback on earlier versions of this article.

Datenschutz, Sicherheit und Ethik beim Process Mining – Regel 3 von 4:

Dieser Artikel ist Teil 3 von 4 aus der Reihe Datenschutz, Sicherheit und Ethik beim Process Mining.

Anonymisierung in Betracht ziehen

Falls Ihr Datensatz vertrauliche Informationen enthält, können Sie auch Anonymisierungsmethoden anwenden. Wenn Sie einen Wertesatz anonymisieren, werden die tatsächlichen Werte (z.B. die Mitarbeiternamen “Mary Jones”, “Fred Smith” usw.) durch einen anderen Wert ersetzt (z.B. ”Ressource 1”, ”Ressource 2″, etc.).

Falls der gleiche Originalwert mehrfach im Datensatz auftaucht, wird er stets durch den gleichen Wert ersetzt (”Mary Jones” wird immer durch “Ressource 1” ersetzt). Auf diese Weise ermöglicht Ihnen die Anonymisierung, die ursprünglichen Daten zu verschleiern und gleichzeitig wesentliche Muster des Datensatzes für Ihre Analyse zu bewahren. Sie können z.B. die Arbeitsauslastung alle Mitarbeiter analysieren, ohne die tatsächlichen Namen zu sehen.

Einige Process Mining-Tools (wie Disco oder ProM) haben Anonymisierungsfunktionalität bereits eingebaut. Dies bedeutet, dass Sie Ihre Daten in das Process-Mining-Tool importieren und dort auswählen können, welche Datenfelder anonymisiert werden sollen. Sie können beispielsweise die Case-IDs, den Ressourcennamen, die Attributwerte oder die Zeitstempel anonymisieren. Anschließend können Sie den anonymisierten Datensatz exportieren und an Ihr Team für die Analyse weitergeben.

Was man tun sollte:

  • Denken Sie daran, dass trotz einer Anonymisierung bestimmte Informationen immer noch identifizierbar sein können. Vielleicht gibt es beispielsweise nur einen Patienten mit einer sehr seltenen Krankheit oder das Geburtsdatum Ihres Kunden in Kombination mit dem Geburtsort kann die Anzahl der möglichen Personen, auf die dies zutrifft, so stark einschränken, dass die Daten nicht mehr anonym sind.

Was man nicht tun sollte:

  • Anonymisieren der Daten, bevor Sie Ihre Daten bereinigt haben, da nach der Anonymisierung eine Datenreinigung oft nicht mehr möglich ist. Stellen Sie sich beispielsweise vor, dass in verschiedenen Regionen Kundenkategorien unterschiedliche benannt werden, obwohl sie dasselbe bedeuten. Sie möchten diese unterschiedlichen Namen in einem Datenreinigungsschritt zusammenführen. Nachdem Sie jedoch die Namen als “Kategorie 1”, “Kategorie 2” usw. anonymisiert haben, kann die Datenreinigung nicht mehr durchgeführt werden.
  • Anonymisierung von Feldern, die nicht anonymisiert werden müssen. Während eine Anonymisierung dabei helfen kann, die Muster Ihrer Daten zu bewahren, können Sie leicht relevante Informationen verlieren. Wenn Sie beispielsweise die Case-ID in Ihrem Incident-Management-Prozess anonymisieren, können Sie die Ticketnummer des Vorgangs im Service Desk-System nicht mehr ausfindig machen. Durch die Schaffung einer Kooperationskultur rund um Ihre Process Mining-Initiative (siehe Leitfaden Nr. 4) und durch eine verantwortungsvolle, zielorientierte Arbeitsweise, können Sie oft offen mit den ursprünglichen Daten arbeiten.

Datenschutz, Sicherheit und Ethik beim Process Mining – Regel 1 von 4:

Dieser Artikel ist Teil 1 von 4 aus der Reihe Datenschutz, Sicherheit und Ethik beim Process Mining.

Klarstellung des Analyseziels

Die gute Nachricht ist, dass Process Mining in den häufigsten Fällen keine personenbezogenen Daten auswerten muss, da es sich meistens auf interne, organisatorische Prozesse konzentriert und nicht auf die Kundenprofile. Des Weiteren untersuchen Sie die generellen Prozessmuster. Process Mining sucht beispielsweise in der Regel nach Möglichkeiten, den Prozess auf intelligentere Art und Weise aufzubauen, um somit unnötige Leerlaufzeiten zu vermeiden, anstatt die Menschen zu schnellerem Arbeiten zu drängen.

english-flagRead this article in English:
Clarify Goal of the Analysis – Process Mining Rule 1 of 4

Wenn Sie die Leistung eines bestimmten Prozesses besser verstehen möchten, müssen Sie sich allerdings häufig mit den Attributen auseinandersetzen, die das Variieren des Prozessverhaltens oder deren Durchlaufzeiten erklären können. Und Ihre Kollegen können sich schnell Sorgen machen, wohin dies führt.

Aus diesem Grund sollten Sie sich bereits am Anfang des Process Mining-Projektes über das Analyseziel Gedanken machen. Seien Sie sich im Klaren darüber, wie die Ergebnisse verwendet werden. Denken Sie darüber nach, welche Probleme Sie versuchen zu lösen und welche Daten Sie benötigen, um dieses Problem lösen zu können.

Was man tun sollte:

  • Überprüfen Sie, ob es gesetzliche Einschränkungen hinsichtlich der Daten gibt. So können beispielsweise in Deutschland mitarbeiterbezogene Daten typischerweise nicht verwendet werden und werden normalerweise gar nicht erst extrahiert. Falls sich Ihr Projekt auf die Analyse von Kundendaten konzentriert, sollten Sie sicherstellen, dass Sie die Einschränkungen verstanden und Anonymisierungsoptionen in Betracht gezogen haben (siehe Richtlinie Nr. 3).
  • Ziehen Sie die Aufstellung einer Ethik-Charta in Erwägung, die das Projektziel umfasst, einschließlich allem, was auf der Analyse basierend durchgeführt wird und was nicht. Sie können beispielsweise klar festhalten, dass das Ziel nicht darin besteht, die Leistung der Mitarbeiter zu bewerten. Tauschen Sie sich mit den Personen, die für die Extraktion der Daten verantwortlich sind, darüber aus, was diese Ziele sind, und bitten Sie sie um deren Unterstützung bei der entsprechenden Vorbereitung der Daten.

Was man nicht tun sollte:

  • Mit einer wagen Idee durchzustarten und einfach anzufangen, alle Daten zu extrahieren, die Sie bekommen können. Überlegen Sie sich stattdessen lieber: Welches Problem versuche ich zu lösen? Und welche Daten brauche ich, um dieses Problem zu lösen? Ihr Projekt sollte sich auf Unternehmensziele konzentrieren, die vom Manager des Prozesses, den Sie analysieren, unterstützt werden können (siehe Leitlfaden Nr. 4).
  • Das erste Projekt zu groß machen. Konzentrieren Sie sich stattdessen lieber auf einen Prozess mit klarem Ziel. Wenn der Umfang Ihres Projektes zu groß ist, können andere es blockieren oder gegen Sie arbeiten, ohne zu verstehen, was Process Mining tatsächlich bewegen kann.

Datenschutz, Sicherheit und Ethik beim Process Mining – Artikelserie

Als ich vor zwölf Jahren in die Niederlande zog und anfing, bei lokalen Supermarktketten wie Albert Heijn einzukaufen, habe ich mich zunächst gegen die Bonuskarte (Treuekarte für Rabatte) gewehrt, da ich nicht wollte, dass das Unternehmen meine Einkäufe nachverfolgen konnte. Ich verstand, dass die Verwendung dieser Informationen ihnen helfen könnte, mich zu manipulieren, indem sie Produkte anwerben oder so arrangieren würden, dass ich mehr kaufen würde, als mir lieb war. Es fühlte sich einfach falsch an.

english-flagRead this article in English:
Privacy, Security and Ethics in Process Mining – Article Series

Fakt ist aber, dass keine Datenanalyse-Technik intrinsisch gut oder schlecht ist. Es liegt allein in den Händen der Menschen, ob sie die Technologie so einsetzen, dass dabei etwas Produktives und Konstruktives entsteht. Während Supermärkte die Informationen ihrer Kunden aufgrund der Treue-Karten benutzen könnten, um sicherzustellen, dass sie den längsten Weg im Geschäft haben, wenn sie ihre gewöhnlichen Produkte einkaufen (und dadurch an soviel anderen Produkten wie möglich vorbeikommen), können sie auf der anderen Seite die Informationen verwenden, um den Einkauf angenehmer zu gestalten und mehr Produkte anzubieten, die wir mögen.

Die meisten Unternehmen haben mit der Anwendung von Datenanalysetechniken begonnen, mit welchen sie ihre Daten auf die eine oder andere Weise analysieren. Diese Datenanalysen können Unternehmen und ihren Kunden gewaltige Chancen einräumen, doch mit der zunehmenden Nutzung der Data-Science-Techniken drängt sich auch die Frage der Ethik und die einer verantwortungsvollen Anwendung in den Vordergrund. Initiativen, wie die Seminarreihe ‘Responsible Data Science [1]’, beschäftigen sich mit dem Thema insofern, als ein Bewusstsein geschaffen wird und die Forscher ermutigt werden, Algorithmen zu entwickeln, die sich auf Konzepte wie Fairness, Genauigkeit, Vertraulichkeit und Transparenz stützen [2].

Process Mining kann Ihnen erstaunlichen Einblicke in Ihre Prozesse verschaffen und Ihre Verbesserungsinitiativen mit Inspiration und Enthusiasmus bereichern, wenn Sie es richtig anwenden. Aber wie können Sie sicherstellen, dass Sie Process Mining verantwortungsvoll anwenden? Was sollten Sie beachten, wenn Sie Process Mining in Ihre eigene Organisation integrieren?

In dieser Artikelserie stellen wir Ihnen vier Richtlinien vor, die Sie befolgen können, um Ihre Process Minining-Analyse verantwortungsvoll vorzubereiten:

Teil 1 von 4: Klarstellung des Analyseziels

Teil 2 von 4: Verantwortungsvoller Umgang mit Daten

Teil 3 von 4: Anonymisierung in Betracht ziehen

Teil 4 von 4: Schaffung einer Kooperationskultur

Danksagung

Wir danken Frank van Geffen und Léonard Studer, der die ersten Diskussionen in der Arbeitsgruppe rund um das verantwortungsvolle Process Mining im Jahr 2015 initiiert haben. Wir danken ausserdem Moe Wynn, Felix Mannhardt und Wil van der Aalst für ihr Feedback zu früheren Versionen dieses Artikels.

 

Benford-Analyse

Das Benfordsche Gesetz beschreibt eine Verteilung der Ziffernstrukturen von Zahlen in empirischen Datensätzen. Dieses Gesetz, welches kein striktes Naturgesetz ist, sondern eher ein Erklärungsversuch in der Natur und in der Gesellschaft vorkommende Zahlenmuster vorherzusagen.

Das Benfordsche Gesetz beruht auf der Tatsache, dass die Ziffern in einem Zahlensystem hierarchisch aufeinander aufbauen: Es beginnt mit der 1, dann folgt die 2, dann die 3 usw. In Kombination mit bestimmten Gesetzen der Natur (der natürliche Wachstumsprozess, dabei möglichst energiesparend wachsen/überleben) oder Ökonomie (so günstig wie möglich einkaufen) ist gemäß des Benfordschen Gesetz zu erwarten, dass die Ziffer 1 häufiger vorkommt als die 2, die wiederum häufiger vorkommt als die 3. Die Ziffer 9 braucht demnach den längsten Weg und kommt entsprechend verhältnismäßig seltener vor.

Dieses Phönomen hilft uns bei echten Zufallszahlen nicht weiter, denn dann sind alle Ziffern nicht aufeinander aufbauend, sondern mehr oder weniger gleichberechtigt in ihrem Auftrauen. Bei der klassischen und axiomatischen Wahrscheinlichkeit kommen wir damit also nicht ans Ziel.

Die Benford-Analyse ist im Grunde eine Ausreißeranalyse: Wir vergleichen Ziffernmuster in Datenbeständen mit der Erwartungshaltung des Benfordschen Gesetzes. Weicht das Muster von dieser Erwartung ab, haben wir Diskussionsbedarf.

Moderne Zahlensysteme sind Stellenwert-Zahlensysteme. Neben den Dual-, Oktal- und Hexadezimalzahlensystemen, mit denen sich eigentlich nur Informatiker befassen, wird unser Alltag vom Dezimalzahlensystem geprägt. In diesem Zahlensystem hat jede Stelle die Basis 10 (“dezi”) und einen Exponenten entsprechend des Stellenwertes, multipliziert mit der Ziffer d. Es ist eine Exponentialfunktion, die den Wert der Ziffern in bestimmter Reihenfolge ermittelt:

Z =\sum_{i=-n}^{m}d_{i}\cdot10^{i}

Die Benford-Analyse wird meistens nur für die erste Ziffer (also höchster Stellenwert!) durchgeführt. Dies werden wir gleich einmal beispielhaft umsetzen.

Die Wahrscheinlichkeit des Auftretens der ersten “anführenden” Ziffer d ist ein Logarithmus zur Basis B. Da wir im alltäglichen Leben – wie gesagt – nur im Dezimalzahlensystem arbeiten, ist für uns B = 10.

p(d)=\log_{B}\left( 1 +\frac{1}{d} \right)

Im Standard-Python lässt sich diese Formel leicht mit einer Schleife umsetzen:

Benford-Algorithmus in Python mit NumPy und Pandas

Nachfolgend setzen wir eine Benford-Analyse als Minimalbeispiel in NumPy und Pandas um.

Nun möchten wir eine Tabelle erstellen, mit zwei Spalten, eine für die Ziffer (Digit), die andere für die relative Häufigkeit der Ziffer (Benford Law). Dazu nutzen wir das DataFrame aus dem Pandas-Paket. Das DataFrame erstellen wir aus den zwei zuvor erstellten NumPy-Arrays.

Man könnte sicherlich auch den natürlichen Index des DataFrames nutzen, indem wir diesen nur um jeweils 1 erhöhen, aber das verwirrt später nur und tun wir uns jetzt daher lieber nicht an…

Das Dataframe-Objekt kann direkt plotten (das läuft über die matplotlib, die wir aber nicht direkt einbinden müssen):benfordsches_gesetz_dezimalzahlen_ziffern

Diese neun Balken zeigen die Verteilung der Ziffernhäufigkeit nach dem Benfordschen Gesetz, diese Verteilung ist unsere Erwartungshaltung an andere nummerische Datenbestände, wenn diese einem natürlichen Wachstum unterliegen.

Analyse der Verteilung der ersten Ziffer in Zahlungsdaten

Jetzt brauchen wir Daten mit nummerischen Beträgen, die wir nach Benford testen möchten. Für dieses Beispiel nehme ich aus einem ein SAP-Testdatensatz die Spalte ‘DMBTR’ der Tabelle ‘BSEG’ (SAP FI). Die Spalte ‘DMBTR’ steht für “Betrag in Hauswährung’, die ‘BSEG’ ist die Tabelle für die buchhalterischen Belegsegmente.
Die Datei mit den Testdaten ist über diesen Link zum Download verfügbar (Klick) und enthält 40.000 Beträge.

Wir laden den Inhalt der Datei via NumPy.LoadTxt() und machen aus dem resultierenden NumPy-Array wieder ein Pandas.DataFrame und holen uns die jeweils erste Ziffer für alle Einträge als Liste zurück.

Die Einträge der ersten Ziffer in firstDigits nehmen wir uns dann vor und gruppieren diese über die Ziffer und ihrer Anzahl relativ zur Gesamtanzahl an Einträgen.

Wenn wir die Werte der relativen Anzahl aufsummieren, landen wir bei 94% statt 100%. Dies liegt daran, dass wir die Ziffer 0 ausgelassen haben, diese jedoch tatsächlich vorkommt, jedoch nur bei Beträgen kleiner 1.00. Daher lassen wir die Ziffer 0 außenvor. Wer jedoch mehr als nur die erste Ziffer prüfen möchte, wird die Ziffer 0 wieder mit in die Betrachtung nehmen wollen. Nur zur Probe nocheinmal mit der Ziffer 0, so kommen wir auf die 100% der aufsummierten relativen Häufigkeiten:

Nun erstellen wir ein weiteres Pandas.DataFrame, mit zwei Spalten: Die Ziffern (Digit) und die tatsächliche Häufigkeit in der Gesamtpopulation (Real Distribution):

Abgleich der Ziffernhäufigkeit mit der Erwartung

Nun bringen wir die theoretische Verteilung der Ziffern, also nach dem zuvor genannten Logarithmus, und die tatsächliche Verteilung der ersten Ziffern in unseren Zahlungsdaten in einem Plot zusammen:

In dem Plot wird deutlich, dass die Verteilung der führenden Ziffer in unseren Zahlungsdaten in ziemlich genau unserer Erwartung nach dem Benfordschen Gesetz entspricht. Es sind keine außerordentlichen Ausreißer erkennbar. Das wäre auch absolut nicht zu erwarten gewesen, denn der Datensatz ist mit 40.000 Einträgen umfassend genug, um dieses Muster gut abbilden zu können und von einer Manipulation dieser Beträge im SAP ist ebenfalls nicht auszugehen.

benford-analyse-python-fuer-sap-bseg-dmbtr

Gegenüberstellung: Computer-generierte Zufallszahlen

Jetzt wollen wir nochmal kurz darauf zurück kommen, dass das Benfordsche Gesetz für Zufallszahlen nicht unwendbar ist. Bei echten Zufallszahlen bin ich mir da auch sehr sicher. Echte Zufallszahlen ergeben sich beispielweise beim Lotto, wenn die Bälle mit Einzel-Ziffern durch eine Drehkugel hüpfen. Die Lottozahl-Ermittlung erfolgt durch die Zusammenstellung von jeweils gleichberechtigt erzeugten Ziffern.
Doch wie ist dies bei vom Computer generierten Zufallszahlen? Immerhin heißt es in der Informatik, dass ein Computer im Grunde keine Zufallszahlen erzeugen kann, sondern diese via Takt und Zeit erzeugt und dann durchmischt. Wir “faken” unsere Zahlungsdaten nun einfach mal via Zufallszahlen. Hierzu erstellen wir in NumPy ein Array mit 2000 Einträgen einer Zufallszahl (NumPy.Random.rand(), erzeugt floats 0.xxxxxxxx) und multiplizieren diese mit einem zufälligen Integer (Random.randint()) zwischen 0 und 1000.

Erzeugen wir die obigen Datenstrukturen erneut, zeigt sich, dass die Verteilung der Zufallszahlen ganz anders aussieht: (vier unterschiedliche Durchläufe)

benford-analyse-python-numpy-pseudo-zufallszahlen

Anwendung in der Praxis

Data Scientists machen sich das Benfordsche Gesetz zu Nutze, um Auffälligkeiten in Zahlen aufzuspüren. In der Wirtschaftsprüfung und Forensik ist diese Analyse-Methode recht beliebt, um sich einen Eindruck von nummerischen Daten zu verschaffen, insbesondere von Finanztransaktionen. Die Auffälligkeit durch Abweichung vom Benfordchen Gesetz entsteht z. B. dadurch, dass Menschen eine unbewusste Vorliebe für bestimmte Ziffern oder Zahlen haben. Greifen Menschen also in “natürliche” Daten massenhaft (z. B. durch Copy&Paste) ein, ist es wahrscheinlich, dass sie damit auch vom Muster des Benfordschen Gesetzes abweichen. Weicht das Muster in Zahlungsströmen vom Bendfordsche Erwartungsmuster für bestimmte Ziffern signifikant ab, könnte dies auf Fälle von unnatürlichen Eingriffen hindeuten.

Die Benford-Analyse wird auch gerne eingesetzt, um Datenfälschungen in wissenschaftlichen Arbeiten oder Bilanzfälschungen aufzudecken. Die Benford-Analyse ist dabei jedoch kein Beweis, sondern liefert nur die Indizien, die Detailanalysen nach sich ziehen können/müssen.