BAnAna: Blockchain –
Anwendungsfall – Analyse

Durchführung: Sommer 2018

Ausgangssituation

Die Blockchain-Technologie und deren Umsetzung vor allem im Finanzbereich hat spätestens im Jahre 2017 so massiv Aufmerksamkeit – und was noch viel wichtiger ist: Investitionskapital – auf sich gezogen, dass von einem Hype gesprochen werden kann. Neben den bekannten Implementierungen wie beispielsweise für die Kryptowährungen Bitcoin oder Ethereum entstehen stetig neue Blockchain-Ansätze, die aufgrund von Spezialisierung konkrete Probleme lösen. Blockchain ist nicht gleich Blockchain: Je nach Implementierung und funktionalen Charakteristika werden spezifische Anwendungsfälle adressiert. Für Entscheidungsträger, Berater oder Anwender ist es nicht leicht, den Überblick darüber zu gewinnen und zu behalten, welche Blockchain-Implementierung für welchen spezifischen Anwendungsfall geeignet ist.

Lösungsansatz

Was wollen wir erreichen?
Im letzten GreenLab Boards on Blockchain haben wir uns u.a. damit beschäftigt, wer die Akteure im Blockchain-Ökosystem sind und wie diese zueinander in Beziehung stehen. Jetzt wollten wir verschiedene Blockchain-Implementierungen genauer analysieren, um funktionale Unterscheidungsmerkmale zu identifizieren und typische Anwendungsfälle abzuleiten. Ziele waren dabei:

  • die Identifikation funktionsbasierter Unterscheidungsmerkmale von Blockchains,
  • die Entwicklung typischer Anwendungsfälle, für die unterschiedliche Blockchains geeignet sind, wobei die Eignung der jeweiligen Blockchain mit Hilfe unserer Unterscheidungsmerkmale ermittelbar sein soll,
  • ein Praxistext etablierter Blockchain-Implementierungen, wobei wir die jeweilige Implementierung ausprobieren und hinsichtlich praxisnaher Kriterien miteinander vergleichen wollten, wie bspw.:
    • Dokumentation und Architekturbeschreibungen,
    • Größe und Reife der Community,
    • Zugänglichkeit und Aufwand zur Einrichtung der Entwicklungsumgebung sowie
    • Verständlichkeit und Komplexität zur Entwicklung eines „Hello World“-Programms.

Abschließend sollte es möglich sein, Anwendungsfälle so zu analysieren, dass Blockchain-Implementierungen gefiltert und konkrete Empfehlungen ausgesprochen werden können.

Wie sind wir vorgegangen?
Grundlage unseres GreenLabs war eine Bachelorarbeit und die daraus resultierende Veröffentlichung der Blockchain-Forschungsgruppe an der Dualen Hochschule Stuttgart um Prof. Dr. Sebastian Richter, die Blockchain-Anwendungsfälle aus einer problemorientierten Sicht analysierte1. Für eine funktionsbasierte Unterscheidung der Blockchain-Technologien nutzten wir bestehende Forschungsansätze – eine ontologische Betrachtung von Blockchain-Technologien2. Zur Erarbeitung der Anwendungsfälle entwickelten wir zunächst ein Analysemodell, das eine prozess- und technologieorientierte Betrachtung berücksichtigt. Schließlich entwickelten wir Anwendungsfälle, aus denen problemorientierte, funktionale Anforderungen ableitbar sind und aus denen sich ein Mapping zu den Funktionen unterschiedlicher Blockchain-Technologien ergeben. Ziel war die Entwicklung eines Bewertungsmodells für Anwendungsfälle zur Empfehlung entsprechender Blockchain-Implementierungen. Parallel dazu führten wir in enger Zusammenarbeit mit unserem Partner D:IG Praxistests verschiedener Blockchain-Implementierungen (insb. von IOTA) durch, um die tatsächliche Einsatztauglichkeit zu prüfen.

Wie sollte das Ergebnis aussehen?
Grundsätzlich wollten wir verstehen, ob der von uns angedachte Ansatz tragfähig ist und ein besseres Verständnis über die Praxistauglichkeit bestehender Implementierungen gewinnen. Das Ergebnis besteht somit aus verschiedenen Artefakten, die nachfolgend zusammengefasst sind:

  • Modell zur Analyse von Anwendungsfällen als Ausgangsbasis für die Identifikation von Einzelproblemen und funktionalen Anforderungen, die sich aus dem Anwendungsfall ergebe
  • Übersicht einer Zuordnung bestehender Blockchain-Implementierungen und ihrer funktionalen Eigenschaften, kategorisiert anhand einer ontologischen Betrachtungsperspektive 
  • Evaluationsmodell von Blockchain-Implementierungen mit funktionaler Unterscheidung und anwendungsfallbezogener Gewichtungsmöglichkeit
  • Bewertungsmatrix einer praxisnahen Evaluation konkreter Blockchain-Implementierungen mit entsprechender Dokumentation
  • Aufbereitung der Anwendungsfälle

Methodik

Methodik zur Entwicklung des Vorgehensmodells
Ziel war es, eine Orientierungshilfe zu entwickeln, um praxisnahe Anwendungsfälle zu analysieren und die zur Lösung des jeweils beschriebenen Problemfalls geeignete Blockchain-Technologie empfehlen zu können. Dazu haben wir zunächst ein abstraktes Analysemodell entwickelt, welches eine prozessuale und technologische Perspektive berücksichtigt. Die nachfolgende Grafik fasst das Modell vereinfacht zusammen.

Anschließend haben wir einen Ansatz recherchiert, der eine funktionsbasierte Unterscheidung von Blockchains ermöglicht. Das Ergebnis war eine Ontologie von Blockchain-Technologien2. Die nachfolgende Grafik fasst die Unterscheidungsmerkmale zusammen:

Anschließend haben wir etablierte Blockchain-Ansätze den einzelnen Unterscheidungskriterien zugeordnet. Zudem entwickelten wir ein Bewertungsmodell, das es ermöglicht, die Relevanz der entsprechenden Unterscheidungsmerkmale für einen konkreten Anwendungsfall zu bewerten und zu gewichten, um die einzelnen Blockchain-Ansätze anwendungsfallspezifisch zu filtern und Empfehlungen geben zu können. Nachfolgende Abbildung gibt einen beispielhaften Eindruck möglicher Auswertungsergebnisse.

In die Bewertung der Anforderungen und Funktionen von Blockchains haben wir auch die Ergebnisse aus dem Praxistest einfließen lassen. Denn für den Praxisfall ist nicht immer die theoretisch beste Option geeignet, sondern auch die Praxistauglichkeit der Technologie für eine pragmatische und effiziente Implementierung von Bedeutung. Diese bildet eine weitere Bewertungsdimension in unserem Evaluationsansatz.

Methodik zur Entwicklung der Anwendungsfälle
Zunächst haben wir Anforderungen an die Anwendungsfälle definiert. Wichtige Fragestellungen waren dabei:

  • Was ist ein Anwendungsfall und was soll er in unserem Kontext leisten?
  • Welche Abstraktionsstufe ist notwendig?
  • Was sind Anforderungen an die zu entwickelnden Anwendungsfälle?
  • Was sind typische Probleme bzw. Problemräume, die durch Blockchain-Technologie adressiert und für unsere Anwendungsfälle relevant wären?
  • Inwieweit ist der identifizierte Ansatz zur ontologischen Betrachtung von Blockchain-Technologie für unsere Fragestellung geeignet?
  • Wie bereiten wir die Anwendungsfälle auf?

Tatsächlich haben wir diese Fragestellungen durch individuelles und gemeinsames Experimentieren und Diskutieren der Ergebnisse beantwortet. Die praktischen Anwendungsfälle orientieren sich dabei an aktuellen Projekteinsätzen und persönlichen Erfahrungen der Teammitglieder.

Methodik für die Praxistests
Im ersten Schritt haben wir durch Recherche ein Überblick über bestehende Blockchain-Ansätze gewonnen und anhand folgender Kriterien eine Auswahl getroffen:

  • Eignung für die zu betrachtenden Anwendungsfälle
  • Unterschiedlichkeit der Ansätze
  • Relevanz und Community-Größe
  • Zugang zu Informationen über den Blockchain-Ansatz

Daraufhin konnten wir eine Longlist und eine Shortlist erstellen. In einem zweiten Schritt haben wir den eigentlichen Praxistest mit nachfolgenden Einzelschritten durchgeführt.

  • Lesen von Spezifikation und Dokumentation des jeweiligen Ansatzes
  • Aufsetzen der Entwicklungsumgebung
  • Download der erforderlichen Dateien
  • Implementierung eines fiktiven Anwendungsfalls (als „Hello World“)
  • Ausführen der Anwendung
  • Zeitfenster pro Test: 5 bis 7 Stunden
  • Dokumentation der Ergebnisse

In einem dritten Schritt haben wir die jeweiligen Testergebnisse reflektiert und die Ansätze hinsichtlich ihrer Praxistauglichkeit bewertet. Bewertungskriterien waren dabei:

  • Setup der Entwicklungsumgebung
  • Verbreitung und Komplexität der Programmiersprachen
  • Dokumentation der Blockchain und der Programmierung (Funktionen)
  • Größe und Reife der Community
  • Plug & Play: Einfachheit von Installation zum ersten „Hello World“
  • Schwierigkeiten während der Entwicklung (Anzahl, Schweregrad)
  • Komplexität der Gesamtarchitektur/-system

Bugs während der Entwicklung
Die Kriterien haben wir auf einer Skala von 1 (sehr gut) bis 5 (mangelhaft) instanziiert (siehe nachfolgende Grafik) und auf die getesteten Blockchains angewendet.

Das finale Anwendungsszenario zur Implementierung der Ansätze im Praxistest ist nachfolgend grafisch dargestellt. Zur Bewertung von Etherum konnten wir auf die Erfahrungen und umfangreichen Dokumentationen aus dem letzten GreenLab zurückgreifen.

Ergebnisse des Praxistests
Bei allen Blockchain-Ansätzen konnten wir einen Anwendungsfall erfolgreich implementieren. Der Anwendungsfall für IOTA hatte den größten Umfang, allerdings konnte dieser innerhalb von acht Stunden umgesetzt werden. Bei Ripple gab es mehrere Herausforderungen – insbesondere bei der Dokumentation und den bereitgestellten Hilfestellungen der Community – bevor eine praxisnahe Implementierung möglich war. Die Einzelbewertungen sind nachfolgend zusammengefasst:

Anwendungsbeispiel
Im Anschluss haben wir die Anwendungsfälle aufbereitet und anhand der von uns entwickelten Vorgehensweise analysiert, sodass konkrete Empfehlungen für Blockchains abgeleitet werden konnten. Ein entsprechendes Beispiel zum Download (siehe rechts oben) verdeutlicht die Vorgehensweise.

Fazit

Während des GreenLabs haben wir viel über die Einsatzmöglichkeiten und Praxistauglichkeit der Blockchain-Technologie gelernt. Eine wesentliche Erkenntnis war, dass es tatsächlich nicht trivial ist, Anwendungsfälle zu definieren, bei denen allein oder zu einem sehr großen Anteil die Blockchain-Technologie wirklich erforderlich ist. Im Gegensatz dazu war uns die Bandbreite der Funktionalitäten und Einsatzmöglichkeiten im Vorfeld so nicht bewusst.

Das GreenLab war für uns ein weiterer wichtiger Baustein, die Blockchain-Technologie besser zu verstehen. Wir haben eine Orientierungshilfe zur Analyse von Anwendungsfällen und für eine lösungsorientierte Empfehlung einer geeigneten Blockchain-Technologie entwickelt. Diesen Ansatz gilt es nun weiterzuentwickeln, auszureifen und in der Praxis anzuwenden, um ihn zu validieren und Erfahrungen damit zu sammeln. Darüber hinaus ist es unser Ziel, eine  induktive Identifikation funktionaler Unterscheidungsmerkmale von Blockchain-Ansätzen voranzutreiben, z.B. im Rahmen einer zu betreuenden Abschluss- oder Projektarbeit. Auf diesem Wege ließen sich die Ergebnisse mit unseren theoriebasierten Unterscheidungsmerkmalen abgleichen.

Literatur:
1 Witt, Josepha & Richter, Sebastian. (2018). Ein problemzentrierter Blick auf Blockchain-Anwendungsfälle. Multikonferenz Wirtschaftsinformatik (MKWI), Lüneburg.
2
Tasca, Paolo, Thanabalasingham, Thayabaran & Tessone, Claudio J. (2017): Ontology of Blockchain Technologies. Principles of Identification and Classification, SSRN Electronic Journal.