Software Quality Days 2016
Gerrit Beine, MBA
Prof. Dr. Wolfgang Golubski
Antifragilität in der Software-Architektur
Zwei Weisheiten vorab...
It is far better to do
the right thing wrong
than to do
the wrong thing right.
-- Russell Ackhoff
There is nothing so useless
as doing efficiently that
which should not be done at all.
-- Peter F. Drucker
Software-Architektur
Software-Architektur
Die Softwarearchitektur
definiert die grundlegenden
Prinzipien und Regeln für die
Organisation eines Systems
sowie dessen Strukturierung in
Bausteinen und Schnitt- stellen
und deren Beziehungen
zueinander wie auch zur
Umgebung. Dadurch legt sie
Richtlinien für den gesamten
Systemlebenszyklus,
angefangen bei Analyse über
Entwurf und Implementierung
bis zu Betrieb und
Weiterentwicklung, wie auch für
die Entwicklungs- und
Betriebsorganisation fest.
Mahbouba Gharbi / Arne Koschel / Andreas Rausch / GernotStarke: Basiswissen für Softwarearchitekten, dpunkt-Verlag 2012
DIE Anforderung
DIE Anforderung - eine Retrospektive
► Entwickler: Spezifikationsfehler
► Analysten: Architekten im Elfenbeinturm
► Architekten: Planungsfehler des Managements
► Projektleitung: Langsame Tester
Ist das vielleicht NORMAL?
Ein Ausflug in die Natur: Cygnus atratus
Weiße und schwarze Schwäne
► Taleb, Nassim Nicholas: Der Schwarze Schwan: Die
Macht höchst unwahrscheinlicher Ereignisse. Carl
Hanser Verlag, 2008
► Taleb, Nassim Nicholas: Antifragilität: Anleitung für
eine Welt, die wir nicht verstehen. Albrecht Knaus
Verlag, 2013
► Unvorhersehbar Ereignisse können drastische
negative oder positive Folgen haben
http://www.bloggerforum-wirtschaft.de/index.php/seien-wir-ehrlich-schwarze-schwane-sind-eigentlich-anthrazitfarben/
http://www.whymarymatters.com/?p=1014
Fragil, Robust, Antifragil
http://de.slideshare.net/andrefaria/antifragile-16611267
Wirkung DER Anforderung
► Fragil
> Drastische Änderung der inneren Struktur
> Mangelnde Anpassungsfähigkeit
► Robust & Resilient
> Generische Architekturen
> Vorbereitung auf „alle“ Eventualitäten
> Komplexitätstreiber
► Antifragil
> Kontinuierliche Anpassung möglich
> Optionen helfen bei Schwarzen Schwänen
> Einfachheit als Resultat von Reife
Das Spezifikationsdilemma
► Planung ist ein Tanz mit Schwarzen Schwänen
► Schwarze Schwäne entstehen, weil wir mit
Unsicherheit und Unwissen nicht umgehen können
► Wir gehen davon aus, dass unvorhersehbare
Ereignisse durch Nachdenken gelöst werden können
► Suchen nach allgemeingültigen Lösungen und
schaffen damit Komplexität
► Schwarze Schwäne werden durch Software-
Architektur zur selbsterfüllenden Prophezeiung
Die Five Orders of Ignorance und
die Optionalität von Erfolg
► 0th Order of Ignorance (0OI) – Lack of Ignorance
► 1st Order of Ignorance (1OI) – Lack of Knowlegde
► 2nd Order of Ignorance (2OI) – Lack of Awareness
► 3rd Oder of Ignorance (3OI) – Lack of Process
► 4th Order of Ignorance (4OI) – Meta-Ignorance
Armour, P.G.: The five orders of ignorance. Commun. ACM. 43, 17–20 (2000)
Schwarze Schwäne
sind Ergebnisse der 2nd OoI.
Wie können wir
mit ihnen umgehen?
19.01.16 Folienmaster Office 200719
Quelle: Wikipedia
Quelle: Wikipedia
Quelle: Wikipedia
Hilft uns Agilität?
Andy Hunt: The Failure of Agile
► Konzentration auf
> Lernfähigkeit
> Experimente
> Alternativen
> Entscheidungen und ihre
Auswirkungen
Dave Thomas: Agile Is Dead
► What to do:
> Find out where you are
> Take a small step towards your goal
> Adjust your understanding based on
what you learned
> Repeat
► How to do it:
> When faced with two or more
alternatives that deliver roughly the
same value, take the path that makes
future change easier.
Konzentration auf Menschen, nicht Methoden
Richardson,Jared.:arp.agileartisans.com/GROWS_AgileRTP.pdf
Auf dem Weg in die Praxis...
Denkanstöße
► Fehlschläge als wertvoll betrachen:
Fail fast, fail early, fail often.
► Die Zeit im Kopf haben:
Solve today‘s problems today and tomorrow‘s
problems tomorrow.
► Denken wie Thales:
First make it run, than make it fast.
► Maximal einfache Lösungen:
Replace over reuse.
Thesen
► Agilität ist antifragil
Retrospektiven nach Schwarzen Schwänen nutzen
► Kurze Feedback-Zyklen führen zu Antifragilität
Feedback ist die Grundlage allen Lernens
► Software-Architektur wird zum Optionshandel
Ökonomie von Architektur muss ausbalanciert werden
► Wir werden immer zu wenig wissen
Weniger Generik hilft, den Wald im Blick zu behalten
Viel Spaß noch auf den
Software Quality Days 2016!
gerrit.beine@adesso.de
wolfgang.golubski@fh-zwickau.de

Antifragilität

  • 1.
    Software Quality Days2016 Gerrit Beine, MBA Prof. Dr. Wolfgang Golubski Antifragilität in der Software-Architektur
  • 2.
  • 3.
    It is farbetter to do the right thing wrong than to do the wrong thing right. -- Russell Ackhoff
  • 4.
    There is nothingso useless as doing efficiently that which should not be done at all. -- Peter F. Drucker
  • 5.
  • 6.
    Software-Architektur Die Softwarearchitektur definiert diegrundlegenden Prinzipien und Regeln für die Organisation eines Systems sowie dessen Strukturierung in Bausteinen und Schnitt- stellen und deren Beziehungen zueinander wie auch zur Umgebung. Dadurch legt sie Richtlinien für den gesamten Systemlebenszyklus, angefangen bei Analyse über Entwurf und Implementierung bis zu Betrieb und Weiterentwicklung, wie auch für die Entwicklungs- und Betriebsorganisation fest. Mahbouba Gharbi / Arne Koschel / Andreas Rausch / GernotStarke: Basiswissen für Softwarearchitekten, dpunkt-Verlag 2012
  • 7.
  • 8.
    DIE Anforderung -eine Retrospektive ► Entwickler: Spezifikationsfehler ► Analysten: Architekten im Elfenbeinturm ► Architekten: Planungsfehler des Managements ► Projektleitung: Langsame Tester
  • 9.
  • 10.
    Ein Ausflug indie Natur: Cygnus atratus
  • 11.
    Weiße und schwarzeSchwäne ► Taleb, Nassim Nicholas: Der Schwarze Schwan: Die Macht höchst unwahrscheinlicher Ereignisse. Carl Hanser Verlag, 2008 ► Taleb, Nassim Nicholas: Antifragilität: Anleitung für eine Welt, die wir nicht verstehen. Albrecht Knaus Verlag, 2013 ► Unvorhersehbar Ereignisse können drastische negative oder positive Folgen haben http://www.bloggerforum-wirtschaft.de/index.php/seien-wir-ehrlich-schwarze-schwane-sind-eigentlich-anthrazitfarben/ http://www.whymarymatters.com/?p=1014
  • 12.
  • 13.
    Wirkung DER Anforderung ►Fragil > Drastische Änderung der inneren Struktur > Mangelnde Anpassungsfähigkeit ► Robust & Resilient > Generische Architekturen > Vorbereitung auf „alle“ Eventualitäten > Komplexitätstreiber ► Antifragil > Kontinuierliche Anpassung möglich > Optionen helfen bei Schwarzen Schwänen > Einfachheit als Resultat von Reife
  • 14.
    Das Spezifikationsdilemma ► Planungist ein Tanz mit Schwarzen Schwänen ► Schwarze Schwäne entstehen, weil wir mit Unsicherheit und Unwissen nicht umgehen können ► Wir gehen davon aus, dass unvorhersehbare Ereignisse durch Nachdenken gelöst werden können ► Suchen nach allgemeingültigen Lösungen und schaffen damit Komplexität ► Schwarze Schwäne werden durch Software- Architektur zur selbsterfüllenden Prophezeiung
  • 15.
    Die Five Ordersof Ignorance und die Optionalität von Erfolg
  • 16.
    ► 0th Orderof Ignorance (0OI) – Lack of Ignorance ► 1st Order of Ignorance (1OI) – Lack of Knowlegde ► 2nd Order of Ignorance (2OI) – Lack of Awareness ► 3rd Oder of Ignorance (3OI) – Lack of Process ► 4th Order of Ignorance (4OI) – Meta-Ignorance Armour, P.G.: The five orders of ignorance. Commun. ACM. 43, 17–20 (2000)
  • 17.
  • 18.
    Wie können wir mitihnen umgehen?
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
    Hilft uns Agilität? AndyHunt: The Failure of Agile ► Konzentration auf > Lernfähigkeit > Experimente > Alternativen > Entscheidungen und ihre Auswirkungen Dave Thomas: Agile Is Dead ► What to do: > Find out where you are > Take a small step towards your goal > Adjust your understanding based on what you learned > Repeat ► How to do it: > When faced with two or more alternatives that deliver roughly the same value, take the path that makes future change easier.
  • 24.
    Konzentration auf Menschen,nicht Methoden Richardson,Jared.:arp.agileartisans.com/GROWS_AgileRTP.pdf
  • 25.
    Auf dem Wegin die Praxis...
  • 26.
    Denkanstöße ► Fehlschläge alswertvoll betrachen: Fail fast, fail early, fail often. ► Die Zeit im Kopf haben: Solve today‘s problems today and tomorrow‘s problems tomorrow. ► Denken wie Thales: First make it run, than make it fast. ► Maximal einfache Lösungen: Replace over reuse.
  • 27.
    Thesen ► Agilität istantifragil Retrospektiven nach Schwarzen Schwänen nutzen ► Kurze Feedback-Zyklen führen zu Antifragilität Feedback ist die Grundlage allen Lernens ► Software-Architektur wird zum Optionshandel Ökonomie von Architektur muss ausbalanciert werden ► Wir werden immer zu wenig wissen Weniger Generik hilft, den Wald im Blick zu behalten
  • 28.
    Viel Spaß nochauf den Software Quality Days 2016! gerrit.beine@adesso.de wolfgang.golubski@fh-zwickau.de