IODA Architecture – agiler Softwareentwurf im Team

Stefan Lieser, Ralf Westphal

Kurzinformationen

Auf Anfrage
Auf Anfrage

Detailinformationen

Eine saubere Softwarearchitektur hilft,

  • die Lebensdauer der Software zu erhöhen,
  • die Entwicklung zu beschleunigen,
  • das Deployment zu vereinfachen,
  • näher am Kundenwunsch zu bleiben.


Einige Muster für saubere Architekturen sind über die Jahrzehnte vorgeschlagen worden, unter anderem: MVC, N-Tier, Hexagonal, Clean Architecture. Dazu kommen Empfehlungen für eine prinzipielle Strukturierung von Code z.B. in Form von SOLID.

Dennoch leiden auch jüngere Codebasen immer wieder unter frühzeitiger Versteifung. Woran kann das liegen? Es drängt sich der Eindruck auf, dass den Architekturmustern etwas gemein ist, dass es weiterhin erschwert, sauber zu strukturieren.

Der IODA Architecture unterliegt die Annahme, dass das Wurzelproblem versteifter Codebasen in funktionalen Abhängigkeiten besteht, die selbst durch Dependency Inversion nicht genügend entschärft werden. Ein Heer von Interfaces, abstrakten Klassen und allgegenwärtiges Mocking sind aus dieser Perspektive keine Schritte in Richtung Lösung, sondern ein Symptom des weiterhin bestehenden Wurzelproblems.

Im Kern der IODA Architecture steht daher der konsequente Verzicht auf funktionale Abhängigkeiten. Der Gewinn ist unmittelbar: Ohne funktionale Abhängigkeiten steigen Erweiterbarkeit und Testbarkeit. Prinzipien wie OCP oder ISP werden wie selbstverständlich eingehalten und DI verliert an Bedeutung. Code wird weniger verrauscht durch Maßnahmen zur Einhaltung von Prinzipien.

Dieses Kunststück erreicht die IODA Architecture durch einen Fokuswechsel. Sie ist …

  • verhaltensorientiert statt datenorientiert,
  • nachrichtenorientiert statt objektorientiert,
  • orientiert an der Abstraktion statt am Detail.


Das macht die IODA Architecture auch besonders geeignet für agiles Vorgehen. Sie kann auch als inkrementgetrieben bezeichnet werden.

Zur IODA Architecture gehören Prinzipien, ein systematisches Vorgehen, das Strukturen schrittweise aus Anforderungen entwickelt sowie eine leichtgewichtige visuelle Notation. Damit ist das Architekturmuster nicht nur eine Empfehlung zur Strukturierung von Code, sondern steht für eine Methode systematischer Softwareentwicklung. Die IODA Architecture steht in der Tradition des Software Engineering.

Auszug aus den Seminarinhalten:

  • Anforderungen systematisch zerlegen für schnelles Feedback und automatisierte Tests
  • Software strukturieren für Funktionalität und Effizienz
  • Modularisierung jenseits von SOLID
  • der Softwareproduktionsprozess aus Sicht der Engpasstheorie

Lieser, Stefan

Stefan Lieser ist Informatiker und hat Ende 2008 die Clean Code Developer Initiative mitbegründet. Er arbeitet als Trainer und Berater zu den Themen Clean Code Developer, Entwurf mit Flow Design sowie Softwarearchitektur. In seinem Buch „Mit Flow Design zu Clean Code“ beschreibt er einen Softwareentwicklungsprozess, bei dem das systematische Zerlegen der Anforderungen sowie der Entwurf im Vordergrund stehen. Er ist Geschäftsführer der CCD Akademie GmbH.

 

CCD Initiative https://clean-code-developer.de 
Flow Design https://flow-design.info 
CCD Akademie https://ccd-akademie.de 

Westphal, Ralf

Ralf Westphal (ralfw.de, @ralfw) ist Trainer, Berater und Mitgründer der Clean Code Developer Initiative (clean-code-developer.de). Seine Schwerpunkte sind dauerhaft hohe Produktivität für die Softwareentwicklung und zukunftsfähige Teamorganisation. Seit 1997 ist Ralf vielschreibender Autor in Blogs, Zeitschriften und Büchern sowie Referent auf Entwicklerkonferenzen im In- und Ausland.

 

Seminarziel

Die Teilnehmer lernen Prinzipien und Praktiken kennen, um Software vor und unabhängig von Codierung zu denken. Pragmatische Systematik für Analyse und Entwurf sind die Grundlage für nachhaltige Produktivität. Visuelle Kommunikation im Team reduziert Konflikte und fördert arbeitsteilige Entwicklung.

Methode

Die Referenten legen viel Wert auf die Motivation zu einer Denkkultur für effiziente, d.h. zügig Feedback generierende Softwareentwicklung. Die Teilnehmer durchlaufen daher immer wieder einen Analyse-, Entwurfs- und auch Implementierungsprozess und werden zur Reflexion angehalten. Dadurch bauen sie Kraft auf, Evolvierbarkeit und Agilität unter widrigen Projektumständen als Werte hochzuhalten.

Informationen

Unsere Leistungen – Sie erhalten:

  • den Seminarvortrag und begleitende Seminarunterlagen
  • Ihre persönliche Teilnahmebescheinigung

Teilnehmer-Vorteile

  • Frühbucher: € 100 Rabatt (gültig, bei einer Anmeldung bis 4 Wochen vor Seminarbeginn)

Gruppenrabatt:

Bei einer gleichzeitigen Anmeldung von 3 bis 4 Mitarbeitern erhalten Sie 5 % Gruppenrabatt, ab 5 Mitarbeitern erhöht sich der Gruppen-Rabatt auf 10 %!

Inhouse-Seminare

Dieses Seminar ist auch als Inhouse-Schulung durchführbar. Schon ab einer Teilnehmerzahl von 5 Mitarbeitern kalkulieren wir Ihnen gerne ein kostengünstiges Inhouse-Trainings-Angebot.

NRW-Bildungsscheck

SIGS DATACOM ist zugelassener Bildungspartner des Landes NRW. Ihren NRW-Bildungsscheck für unsere Seminare einzulösen ist möglich! Weitere Informationen erhalten Sie unter: NRW-Bildungsscheck!!

Disclaimer

Wir sind für die eigenen Inhalte, die wir zur Nutzung bereithalten, nach den allgemeinen Gesetzen verantwortlich. Von diesen eigenen Inhalten sind Querverweise (externe Links) auf die von anderen Anbietern bereit gehaltenen Inhalte zu unterscheiden. Diese fremden Inhalte stammen nicht von uns und spiegeln auch nicht unsere Meinung wider, sondern dienen lediglich der Information. Wir machen uns diese Inhalte nicht zu eigen und übernehmen trotz sorgfältiger inhaltlicher Kontrolle keine Haftung für die Inhalte externer Links. Für den Inhalt der verlinkten Seite sind ausschließlich deren Betreiber verantwortlich.