Software-Architekturen sind stetigem Wandel ausgesetzt. Irgendwann muss DIE (unbekannte) Anforderung vom Software-Architekten berücksichtigt werden. Wie kann man diesem unvorhersehbarem Ereignis begegnen? Nicholas Nassim Taleb (Antifragilität: Anleitung für eine Welt, die wir nicht verstehen) hat aufgezeigt, dass solche Ereignisse die Grundlage zur Verbesserung sein können. Seine Thesen werden auf die Software-Architekturarbeit übertragen. Das Wissen über das Nichtwissen ist eine Grundvoraussetzung, genauso wie der bewusste Umgang mit Risiken und Chancen. Antifragilität ist ein Qualitätsaspekt des Software-Entwicklungsprozesses und nicht der entwickelten Software-Architektur. Agilität in der Software-Entwicklung bekommt damit eine neue Qualität und kann von Antifragilität profitieren.
6. 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
11. 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
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
► 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
15. Die Five Orders of Ignorance und
die Optionalität von Erfolg
16. ► 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)
23. 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.
26. 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.
27. 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
28. Viel Spaß noch auf den
Software Quality Days 2016!
gerrit.beine@adesso.de
wolfgang.golubski@fh-zwickau.de