SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
Experte für effektive ProduktentwicklungMatthias Bohlen
Softwarearchitektur entwerfen,
ohne dabei verrückt zu werden!
+49 170 772 8545
mbohlen@mbohlen.de
http://www.mbohlen.de
@mbohlende
Benutzer
Entwickler
Business
Domänen-
experte
Architekt
Fachbereich
Analyst
etc.
Designer
Programmierer
Tester
Kunde
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Architekten sind beschäftigt
2
entwerfen
entscheiden
vereinfachen
implementieren
dokumentieren
kommunizieren
schätzen
balancieren
beraten
verkaufen
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Kummunikation am Fließband
Das funktioniert nicht!
Software hat keine physikalischen
Gesetze, die die Korrektheit der
Ergebnisse nach jeder Übergabe
sicherstellen würden!
3
ArchitektBusiness EntwicklerKunde Tester
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Entwicklung ist nicht Fertigung
Architekt wird zum zentralen
Kommunikator,
also zum Flaschenhals
Er wartet oder entscheidet alles selbst
Es gibt keine Kommunikation, die an
einer Stelle zum Abschluss kommt
Stille Post dauert zu lange
Man braucht immer die Sicht aller Rollen
4
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Agile Architekturrunde:
Gemeinsam sind wir Architekten !
5
Benutzer
Entwickler
Business
Domänen-
experte
Architekt
Fachbereich
Analyst
etc.
Designer
Programmierer
Tester
Kunde
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Warum alle am Tisch sitzen müssen
6
Stakeholder Beitrag zur Architektur
Benutzer Erwartungen, kognitives Modell
Kunde Zeit, Kosten, Produktkonfiguration
je nach Zielmarkt angepasst
Business Umsatz, Kosten, Investment
Domänenexperte Erfahrung
Entwickler Machbarkeit, Testbarkeit
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Beispiel: Make or Buy Entscheidung
7
Stakeholder Beitrag zur Architektur
Business Schlägt "buy" statt "make" vor
Kunde und
Benutzer
Sagt, ob das gekaufte Etwas die
Standards einhält
Domänenexperte Beurteilt Integrierbarkeit des
gekauften Etwas
Entwickler Beurteilen Aufwand und
Nebenwirkungen der Integration des
gekauften Etwas
Tester Beurteilt, ob das integrierte System
testbar sein wird
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Zusammenarbeit
8
Architekturrunde
Saturn-
Team
Neptun-
Team
Architektur
Saturn-Backlog Neptun-Backlog
Saturn Neptun
Delegation
Delegation
Dienstag, 30. April 13
Foto: Casey Hussein Bisson
Lean Architecture
9
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Was ist SW-Architektur?
10
ISO 42010:
fundamental concepts or properties of a system in its
environment embodied in its elements, relationships,
and in the principles of its design and evolution
Die fundamentalen Konzepte oder
Eigenschaften eines Systems in seiner
Umgebung, verkörpert in seinen
Elementen und Beziehungen, in den
Prinzipien seines Designs und seiner
Evolution.
Dienstag, 30. April 13
Form versus Struktur
11
Struktur stützt Form
Form ermöglicht Verhalten
Dienstag, 30. April 13
Form
"Essenz" der Struktur
wahrnehmbar, interessant
wertliefernd
konstant
12
Foto: Maik Maid
Dienstag, 30. April 13
Struktur
notwendig für die Form
wahrnehmbar, doch weniger interessant
Kosten erzeugend
stabil
13
Foto: Ralph Aichinger
Dienstag, 30. April 13
Verhalten
das, was in der Form passieren kann
interessant
Nutzen stiftend
variabel, flexibel
14
Foto: Benjamin Thompson
Dienstag, 30. April 13
15
Was das System ist Was das System tut
Form
Subsysteme
Interfaces, APIs
Domänenobjekte
Use Case
Kontext
Methodenfreie
Rollen
Struktur
Module
Pakete
Klassen
Methodenreiche
Rollen
Algorithmen
Form geht alle an!
Form ändert sich seltener als Struktur!
Daher: Im Architekturteam die Form aufbauen,
in den anderen Teams die Strukturen schaffen!
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Entwickeln und dokumentieren
16
Aspekt Bedeutung Medien
Form Subsysteme, APIs, von
außen sichtbares
Verhalten
Bilder und
Vodcasts im Wiki,
APIs im Code
Struktur Subsystem-interne
Klassen und
Schnittstellen
Code
Verhalten wichtige Abläufe im
System
Bilder im Wiki,
den Rest im Code
Stil Entwurfsprinzipien Wiki
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Architekturentwicklung fraktal
17
gelb
cyan
Auslieferung
rot
blau
Lagerhaltung
grün
saphir
rubin
Bestellung
diamant
Top Level Architekturrunde
Zahlung
Kundenverwaltung
Schnittstellen
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Architekturentwicklung fraktal
18
cyan
rot
blau
Lagerhaltung
grün
saphir
Top Level Arch
Zahlung
K
Spontane
Architekturrunde
auf Ebene jeder
Subdomäne!
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
User Story "Nach Waren stöbern"
19Für Kunden: Stellen Sie Ihre eigenen Bilder ein.
Hier reinlesen und suchen
Matthias' Amazon | Angebote | Wunschzettel | Gutscheine | Geschenke
Suche Bücher
her Erweiterte Suche Stöbern Bestseller Neuheiten Hörbücher Englische Bücher Tasch
IT-Unternehmensarchitektur: Von der
Geschäftsstrategie zur optimalen
IT-Unterstützung [Gebundene Ausgabe]
Wolfgang Keller (Autor)
(3 Kundenrezensionen) (3)
Preis: EUR 49,90 kostenlose Lieferung. Siehe Details.
Alle Preisangaben inkl. MwSt.
Auf Lager.
Verkauf und Versand durch Amazon.de. Geschenkverpack
verfügbar.
Nur noch 13 Stück auf Lager - jetzt bestellen.
Lieferung bis Dienstag, 4. September: Bestellen Sie inn
3 Stunden und 24 Minuten und wählen Sie Morning-Expr
der Kasse. Siehe Details.
71 neu ab EUR 49,90 6 gebraucht ab EUR 35,60
Kategorien ansehen
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Bestand und Lieferzeit
20
Kunde möchte beides sehen
"Stöbern"-Story (in Bestellung) muss...
das Lager nach dem Bestand fragen
die Auslieferung nach der Lieferzeit fragen
beides ausgeben
Subdomänen-Leute nehmen den
Gesprächsbedarf mit und gehen zur
nächsten Anforderung über
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Die Form der Subdomänen ändern
21
Subdomäne Komponente zuständiges Team
Bestellung Shop saphir
Lager Bestand rot
Auslieferung Warenausgang gelb
Vertreter aus saphir, rot und gelb diskutieren und
beschließen die Schnittstellenerweiterungen.
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Team rot und sein Shop
22
Mit den neuen Schnittstellen aus den
Teams saphir und gelb...
...erweitert Team rot die Form der
"Shop"-Komponente
«Geschaeft»
Shop
«Geschaeft»
Auslieferung::Warenausgang
«Stamminformationen»
Lagerhaltung::Bestand
Lieferzeit abfragenBestand abfragen
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
In der nächsten Architekturrunde
23
Teams berichten über das realisierte
Form-Inkrement
Andere Mitglieder der Runde geben
Feedback
Die Form ist jetzt gut
Teams realisieren und testen die Struktur
und dokumentieren die Änderungen.
Dienstag, 30. April 13
Foto: Casey Hussein Bisson
Wie schaffen wir es, Form-
Änderungen für 75 Leute
zu koordinieren, ohne
dabei verrückt zu werden?
24
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Ein kanban pro Feature
25
Bestand und
Lieferzeit anzeigen
Subdomänen:
✓Bestellung (führend)
✓Lager
✓Auslieferung
- Zahlung
- Schnittstellen
Subdomänen
ankreuzen, um
Abstimmbedarf
festzustellen
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Kanban Board (linke Hälfte)
26
IdeenIdeen Features Nächste
Features
Form / ArchitekturForm / ArchitekturForm / Architektur
Neu zerlegen entwerfen zur Abstimmung fertig zum
Entwickeln315
610
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Kanban Board (rechte Hälfte)
27
EntwickelnEntwickelnEntwickeln Systemtest Akzeptanztest Produktion
Subdomäne unterwegs fertig zum
Systemtest
Lager
Bestellung
Auslieferung
Zahlung
Kunden
Schnittstellen
30
15 15 12
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Das WIP-Limit optimieren
nach Henrik Kniberg
To do Doing Done
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
1
Zu geringes WIP-Limit
To do Doing
orem ipsum dolor
sit amet, co nse
ctetur
Done
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
2
Gerade richtiges WIP-Limit
To do Doing
orem ipsum dolor
sit amet, co nse
ctetur
Done
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
5
Zu hohes WIP-Limit
orem ipsum dolor
sit amet, co nse
ctetur orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
Zzzzzzzzz
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
Leute
warten
Langsamer Fluss
(end-to-end)
Leute warten
manchmal
(Spielraum)
Schneller
FlussTasks warten
selten
Langsamer
Fluss
Tasks
warten oftKein Platz
hier...
Leute
warten nie
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Das Gesetz von Little
29
Durchschnittlich gilt:
Work in Progress [Features]
Zykluszeit = ---------------------------------
[Wochen] Durchsatz [Features pro Woche]
Dienstag, 30. April 13
Entwicklerpaar
Architektur-
Kümmerer
Entwicklerpaar
Experte für effektive ProduktentwicklungMatthias Bohlen
Beispiel-Annahmen (1)
Work in Progress = 2 Features
Zykluszeit = 2 Wochen pro Feature
also Durchsatz = 1 Feature pro Woche
30
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Annahmen (2)
Jeder Architektur-Kümmerer muss...
die Form von 1 Feature pro Woche
entwerfen, abstimmen, dokumentieren
und den Code dazu reviewen
31
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Annahmen (3)
Ein Kümmerer braucht pro Feature...
1 Std. um Requirements zu verstehen
1 Std. um Requirements aufzuschreiben
8 Std. zum Entwerfen der Form
10 Std. zur Abstimmung mit den anderen
4 Std. für Code-Reviews und zur
Dokumentation der Architektur
Das sind 24 Stunden pro Woche
Bleiben 16 Stunden Reservezeit
32
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Der Wochenplan des "Kümmerers"
33
Montag Dienstag Mittwoch Donnerstag Freitag
09:00 - 09:30
09:30 - 12:00
12:00 - 13:00
13:00 - 15:00
15:00 - 16:00
16:00 - 17:00
Daily Scrum MeetingsDaily Scrum MeetingsDaily Scrum MeetingsDaily Scrum MeetingsDaily Scrum Meetings
Konzentrierte Entwurfsarbeit
oder Code-Reviews
Konzentrierte Entwurfsarbeit
oder Code-Reviews
Konzentrierte Entwurfsarbeit
oder Code-Reviews
Konzentrierte Entwurfsarbeit
oder Code-Reviews
Konzentrierte Entwurfsarbeit
oder Code-Reviews
Mittagessen gehenMittagessen gehenMittagessen gehenMittagessen gehenMittagessen gehen
Meetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der Form
Requirements Architektur-DokumentationArchitektur-DokumentationArchitektur-DokumentationArchitektur-Dokumentation
Req.-Doku ReservezeitReservezeitReservezeitReservezeit
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Annahmen (4)
Das Meeting der Kümmerer...
dauert 2 Std. pro Tag
stimmt 15 Form-Änderungen pro Woche ab
das sind 3 pro Meeting
bleibt pro Abstimmung eine halbe Stunde
plus pro Meeting eine halbe Stunde Puffer
Jeder Kümmerer bringt pro Woche eine
Form-Änderung zur Abstimmung
34
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Annahmen (5)
35
Wenn mein Team sehr flexibel ist...
dann rotieren wir die Rolle des Kümmerers
dann komme ich nur alle 5 Wochen dran
in den anderen 4 Wochen entwickle ich
lauffähige Software!
Entwicklerpaar
Architektur-
Kümmerer
Entwicklerpaar
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Jeder Stakeholder
trägt seinen Teil zur
Architektur bei
Form in der Runde,
Struktur/Verhalten
außerhalb der Runde
Architekturarbeit
feature by feature
über die Woche
verteilt erarbeiten
36
3x Teile und
herrsche
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Mehr dazu? eBook lesen!
Erhältlich bei:
amazon.de
(für Kindle-Geräte)
lulu.com
(EPUB-Format für
iPad und andere)
37
Matthias Bohlen
Softwarearchitektur
auf die schlanke Art
Architekturarbeit entspannt
und effektiv organisieren
mit der Kanban-Methode
EntwickelnEntwickelnEntwickeln Systemtest Akzeptanztest Produktion
Subdomäne unterwegs fertig zum
Systemtest
Lager
Bestellung
Auslieferung
Zahlung
Kunden
Schnittstellen
30
15
15 12
IdeenIdeen Features Nächste
Features
Form / ArchitekturForm / ArchitekturForm / Architektur
Neu zerlegen entwerfen zur Abstimmung fertig zum
Entwickeln315
610
Methodless Role
Methodful Role
parameter1
parameter2
Context *1
Domain class
Domain object in role
<<mixin>><<instanceof>>
Dienstag, 30. April 13
Experte für effektive ProduktentwicklungMatthias Bohlen
Mehr Info? Hier melden!
Matthias Bohlen
Coach für effektive Produktentwicklung
Telefon: +49 170 772 8545
E-Mail: mbohlen@mbohlen.de
Web: http://www.mbohlen.de/
Twitter: @mbohlende
Dienstag, 30. April 13

Más contenido relacionado

Destacado

Fotos Maravillosas
Fotos MaravillosasFotos Maravillosas
Fotos Maravillosas
Jorge Llosa
 
La cumparsita en acuarelas
La cumparsita en acuarelasLa cumparsita en acuarelas
La cumparsita en acuarelas
Jorge Llosa
 
WATERS Press Update
WATERS Press UpdateWATERS Press Update
WATERS Press Update
CitySlang
 
Curiosidades Del Mundo
Curiosidades Del MundoCuriosidades Del Mundo
Curiosidades Del Mundo
Jorge Llosa
 
Sample report
Sample reportSample report
Sample report
tk99
 

Destacado (20)

Fotos Maravillosas
Fotos MaravillosasFotos Maravillosas
Fotos Maravillosas
 
Lied der Deutschen Akk-Orch
Lied der Deutschen Akk-OrchLied der Deutschen Akk-Orch
Lied der Deutschen Akk-Orch
 
La cumparsita en acuarelas
La cumparsita en acuarelasLa cumparsita en acuarelas
La cumparsita en acuarelas
 
Interview: Herausforderungen bei Auswahl und Installation eines DMS-/ECM-Systems
Interview: Herausforderungen bei Auswahl und Installation eines DMS-/ECM-SystemsInterview: Herausforderungen bei Auswahl und Installation eines DMS-/ECM-Systems
Interview: Herausforderungen bei Auswahl und Installation eines DMS-/ECM-Systems
 
Cyberbullying: amenaza en la web
Cyberbullying: amenaza en la webCyberbullying: amenaza en la web
Cyberbullying: amenaza en la web
 
Ipv6 zum Anfassen - von Johannes Hubertz
Ipv6 zum Anfassen - von  Johannes Hubertz Ipv6 zum Anfassen - von  Johannes Hubertz
Ipv6 zum Anfassen - von Johannes Hubertz
 
WATERS Press Update
WATERS Press UpdateWATERS Press Update
WATERS Press Update
 
Mehr Geld durch mehr Wert
Mehr Geld durch mehr WertMehr Geld durch mehr Wert
Mehr Geld durch mehr Wert
 
El ordenador
El ordenadorEl ordenador
El ordenador
 
RAMOS GENERALES
RAMOS GENERALESRAMOS GENERALES
RAMOS GENERALES
 
Curiosidades Del Mundo
Curiosidades Del MundoCuriosidades Del Mundo
Curiosidades Del Mundo
 
Sample report
Sample reportSample report
Sample report
 
Der Beweisantrag im Strafprozess
Der Beweisantrag im Strafprozess  Der Beweisantrag im Strafprozess
Der Beweisantrag im Strafprozess
 
3. Community Training MINTsax.de- Protokoll
3. Community Training MINTsax.de- Protokoll 3. Community Training MINTsax.de- Protokoll
3. Community Training MINTsax.de- Protokoll
 
Viagra
ViagraViagra
Viagra
 
20120115 anuncios culto
20120115 anuncios culto20120115 anuncios culto
20120115 anuncios culto
 
Bach sonatas and partitas for violin (cello version)
Bach   sonatas and partitas for violin (cello version)Bach   sonatas and partitas for violin (cello version)
Bach sonatas and partitas for violin (cello version)
 
Bibliographie Heinz Sterzenbach
Bibliographie Heinz SterzenbachBibliographie Heinz Sterzenbach
Bibliographie Heinz Sterzenbach
 
ACUERDO DE AMPLIACIÓN DE MESAS DE VOTACIÓN
ACUERDO DE AMPLIACIÓN DE MESAS DE VOTACIÓNACUERDO DE AMPLIACIÓN DE MESAS DE VOTACIÓN
ACUERDO DE AMPLIACIÓN DE MESAS DE VOTACIÓN
 
Tareas De La Usach Y Sus Encargados Congreso Filosofía
Tareas De La Usach Y Sus Encargados Congreso FilosofíaTareas De La Usach Y Sus Encargados Congreso Filosofía
Tareas De La Usach Y Sus Encargados Congreso Filosofía
 

Similar a Softwarearchitektur entwerfen ohne dabei verrückt zu werden

Prof. Dr. Thomas Allweyer @ BPMN 2010
Prof. Dr. Thomas Allweyer @ BPMN 2010Prof. Dr. Thomas Allweyer @ BPMN 2010
Prof. Dr. Thomas Allweyer @ BPMN 2010
bpmn2010
 
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-BaukastenJAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
Andreas Schmidt
 

Similar a Softwarearchitektur entwerfen ohne dabei verrückt zu werden (12)

Neue Strategie bei Stuffle nach Research
Neue Strategie bei Stuffle nach ResearchNeue Strategie bei Stuffle nach Research
Neue Strategie bei Stuffle nach Research
 
Kundenbegeisterndes ERP von Übermorgen
Kundenbegeisterndes ERP von ÜbermorgenKundenbegeisterndes ERP von Übermorgen
Kundenbegeisterndes ERP von Übermorgen
 
Digitalisierung im Mittelstand - wie aus neuer Produkttechnologie Geschäftsmo...
Digitalisierung im Mittelstand - wie aus neuer Produkttechnologie Geschäftsmo...Digitalisierung im Mittelstand - wie aus neuer Produkttechnologie Geschäftsmo...
Digitalisierung im Mittelstand - wie aus neuer Produkttechnologie Geschäftsmo...
 
Haems Senf live vom 23. Mai 2017
Haems Senf live vom 23. Mai 2017Haems Senf live vom 23. Mai 2017
Haems Senf live vom 23. Mai 2017
 
Prof. Dr. Thomas Allweyer @ BPMN 2010
Prof. Dr. Thomas Allweyer @ BPMN 2010Prof. Dr. Thomas Allweyer @ BPMN 2010
Prof. Dr. Thomas Allweyer @ BPMN 2010
 
Benchlearning Präsentation Internes Community Management (blp15)
Benchlearning Präsentation Internes Community Management (blp15)Benchlearning Präsentation Internes Community Management (blp15)
Benchlearning Präsentation Internes Community Management (blp15)
 
Prototyping digitaler Geschäftsmodelle - Übertragen auf Marketing / PR
Prototyping digitaler Geschäftsmodelle - Übertragen auf Marketing / PRPrototyping digitaler Geschäftsmodelle - Übertragen auf Marketing / PR
Prototyping digitaler Geschäftsmodelle - Übertragen auf Marketing / PR
 
Softwarearchitektur vs. PHP
Softwarearchitektur vs. PHPSoftwarearchitektur vs. PHP
Softwarearchitektur vs. PHP
 
Arbeiten in Zukunft: Jobs, die verschwinden und Skills, die wir brauchen. Ses...
Arbeiten in Zukunft: Jobs, die verschwinden und Skills, die wir brauchen. Ses...Arbeiten in Zukunft: Jobs, die verschwinden und Skills, die wir brauchen. Ses...
Arbeiten in Zukunft: Jobs, die verschwinden und Skills, die wir brauchen. Ses...
 
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-BaukastenJAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
JAX 2013: Feedback aus der Produktion. Ein Blick in den DevOps-Baukasten
 
Einladung zum Praxisforum Digitalisierung - BarCamp Edition
Einladung zum Praxisforum Digitalisierung - BarCamp EditionEinladung zum Praxisforum Digitalisierung - BarCamp Edition
Einladung zum Praxisforum Digitalisierung - BarCamp Edition
 
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
Atomic Design – Die Einheit von Frontend und Design im RWD-Zeitalter - webina...
 

Más de Matthias Bohlen

Softskills fördern den Projekterfolg
Softskills fördern den ProjekterfolgSoftskills fördern den Projekterfolg
Softskills fördern den Projekterfolg
Matthias Bohlen
 
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
Matthias Bohlen
 
Ein Team und seine Verträge
Ein Team und seine VerträgeEin Team und seine Verträge
Ein Team und seine Verträge
Matthias Bohlen
 
Softwarearchitekten – die machtlosen Anführer
Softwarearchitekten – die machtlosen AnführerSoftwarearchitekten – die machtlosen Anführer
Softwarearchitekten – die machtlosen Anführer
Matthias Bohlen
 

Más de Matthias Bohlen (20)

"Einmal durch" in 90 Minuten
"Einmal durch" in 90 Minuten"Einmal durch" in 90 Minuten
"Einmal durch" in 90 Minuten
 
WJAX 2016: Liefern, schon vor dem Schätzen!
WJAX 2016: Liefern, schon vor dem Schätzen!WJAX 2016: Liefern, schon vor dem Schätzen!
WJAX 2016: Liefern, schon vor dem Schätzen!
 
Softskills fördern den Projekterfolg
Softskills fördern den ProjekterfolgSoftskills fördern den Projekterfolg
Softskills fördern den Projekterfolg
 
Patterns effektiv einsetzen
Patterns effektiv einsetzenPatterns effektiv einsetzen
Patterns effektiv einsetzen
 
Warum Manager zu Designern werden müssen
Warum Manager zu Designern werden müssenWarum Manager zu Designern werden müssen
Warum Manager zu Designern werden müssen
 
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
Anforderungen, Architektur, Projektvertrag – ein Trio von Freunden(?)
 
Not invented here – wie Teams besser zusammenarbeiten können
Not invented here – wie Teams besser zusammenarbeiten könnenNot invented here – wie Teams besser zusammenarbeiten können
Not invented here – wie Teams besser zusammenarbeiten können
 
Projekte richtig starten
Projekte richtig startenProjekte richtig starten
Projekte richtig starten
 
Medizin und Marketing – die Rolle des Softwarearchitekten heute
Medizin und Marketing – die Rolle des Softwarearchitekten heuteMedizin und Marketing – die Rolle des Softwarearchitekten heute
Medizin und Marketing – die Rolle des Softwarearchitekten heute
 
WJAX 2014: Pah, ArchitekturDoku, darauf habe ich keine Lust!
WJAX 2014: Pah, ArchitekturDoku, darauf habe ich keine Lust!WJAX 2014: Pah, ArchitekturDoku, darauf habe ich keine Lust!
WJAX 2014: Pah, ArchitekturDoku, darauf habe ich keine Lust!
 
WJAX 2014: Na klar muss alles "gestern" fertig sein
WJAX 2014: Na klar muss alles "gestern" fertig seinWJAX 2014: Na klar muss alles "gestern" fertig sein
WJAX 2014: Na klar muss alles "gestern" fertig sein
 
WJAX 2012: Agile Teams im Gleichgewicht
WJAX 2012: Agile Teams im GleichgewichtWJAX 2012: Agile Teams im Gleichgewicht
WJAX 2012: Agile Teams im Gleichgewicht
 
Risikomanagement mit Real Options
Risikomanagement mit Real OptionsRisikomanagement mit Real Options
Risikomanagement mit Real Options
 
STOP IT: Schätzen, verschätzen, nachverhandeln
STOP IT: Schätzen, verschätzen, nachverhandelnSTOP IT: Schätzen, verschätzen, nachverhandeln
STOP IT: Schätzen, verschätzen, nachverhandeln
 
Flow in Lean, Flow im Team
Flow in Lean, Flow im TeamFlow in Lean, Flow im Team
Flow in Lean, Flow im Team
 
Ein Team und seine Verträge
Ein Team und seine VerträgeEin Team und seine Verträge
Ein Team und seine Verträge
 
Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?
Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?
Scrum, Lean, Kanban, XP: Was ist gut für mein Projekt?
 
Softwarearchitekten – die machtlosen Anführer
Softwarearchitekten – die machtlosen AnführerSoftwarearchitekten – die machtlosen Anführer
Softwarearchitekten – die machtlosen Anführer
 
Quantitatives Management von Entwicklungsvorhaben
Quantitatives Management von EntwicklungsvorhabenQuantitatives Management von Entwicklungsvorhaben
Quantitatives Management von Entwicklungsvorhaben
 
Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?
 

Softwarearchitektur entwerfen ohne dabei verrückt zu werden

  • 1. Experte für effektive ProduktentwicklungMatthias Bohlen Softwarearchitektur entwerfen, ohne dabei verrückt zu werden! +49 170 772 8545 mbohlen@mbohlen.de http://www.mbohlen.de @mbohlende Benutzer Entwickler Business Domänen- experte Architekt Fachbereich Analyst etc. Designer Programmierer Tester Kunde Dienstag, 30. April 13
  • 2. Experte für effektive ProduktentwicklungMatthias Bohlen Architekten sind beschäftigt 2 entwerfen entscheiden vereinfachen implementieren dokumentieren kommunizieren schätzen balancieren beraten verkaufen Dienstag, 30. April 13
  • 3. Experte für effektive ProduktentwicklungMatthias Bohlen Kummunikation am Fließband Das funktioniert nicht! Software hat keine physikalischen Gesetze, die die Korrektheit der Ergebnisse nach jeder Übergabe sicherstellen würden! 3 ArchitektBusiness EntwicklerKunde Tester Dienstag, 30. April 13
  • 4. Experte für effektive ProduktentwicklungMatthias Bohlen Entwicklung ist nicht Fertigung Architekt wird zum zentralen Kommunikator, also zum Flaschenhals Er wartet oder entscheidet alles selbst Es gibt keine Kommunikation, die an einer Stelle zum Abschluss kommt Stille Post dauert zu lange Man braucht immer die Sicht aller Rollen 4 Dienstag, 30. April 13
  • 5. Experte für effektive ProduktentwicklungMatthias Bohlen Agile Architekturrunde: Gemeinsam sind wir Architekten ! 5 Benutzer Entwickler Business Domänen- experte Architekt Fachbereich Analyst etc. Designer Programmierer Tester Kunde Dienstag, 30. April 13
  • 6. Experte für effektive ProduktentwicklungMatthias Bohlen Warum alle am Tisch sitzen müssen 6 Stakeholder Beitrag zur Architektur Benutzer Erwartungen, kognitives Modell Kunde Zeit, Kosten, Produktkonfiguration je nach Zielmarkt angepasst Business Umsatz, Kosten, Investment Domänenexperte Erfahrung Entwickler Machbarkeit, Testbarkeit Dienstag, 30. April 13
  • 7. Experte für effektive ProduktentwicklungMatthias Bohlen Beispiel: Make or Buy Entscheidung 7 Stakeholder Beitrag zur Architektur Business Schlägt "buy" statt "make" vor Kunde und Benutzer Sagt, ob das gekaufte Etwas die Standards einhält Domänenexperte Beurteilt Integrierbarkeit des gekauften Etwas Entwickler Beurteilen Aufwand und Nebenwirkungen der Integration des gekauften Etwas Tester Beurteilt, ob das integrierte System testbar sein wird Dienstag, 30. April 13
  • 8. Experte für effektive ProduktentwicklungMatthias Bohlen Zusammenarbeit 8 Architekturrunde Saturn- Team Neptun- Team Architektur Saturn-Backlog Neptun-Backlog Saturn Neptun Delegation Delegation Dienstag, 30. April 13
  • 9. Foto: Casey Hussein Bisson Lean Architecture 9 Dienstag, 30. April 13
  • 10. Experte für effektive ProduktentwicklungMatthias Bohlen Was ist SW-Architektur? 10 ISO 42010: fundamental concepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution Die fundamentalen Konzepte oder Eigenschaften eines Systems in seiner Umgebung, verkörpert in seinen Elementen und Beziehungen, in den Prinzipien seines Designs und seiner Evolution. Dienstag, 30. April 13
  • 11. Form versus Struktur 11 Struktur stützt Form Form ermöglicht Verhalten Dienstag, 30. April 13
  • 12. Form "Essenz" der Struktur wahrnehmbar, interessant wertliefernd konstant 12 Foto: Maik Maid Dienstag, 30. April 13
  • 13. Struktur notwendig für die Form wahrnehmbar, doch weniger interessant Kosten erzeugend stabil 13 Foto: Ralph Aichinger Dienstag, 30. April 13
  • 14. Verhalten das, was in der Form passieren kann interessant Nutzen stiftend variabel, flexibel 14 Foto: Benjamin Thompson Dienstag, 30. April 13
  • 15. 15 Was das System ist Was das System tut Form Subsysteme Interfaces, APIs Domänenobjekte Use Case Kontext Methodenfreie Rollen Struktur Module Pakete Klassen Methodenreiche Rollen Algorithmen Form geht alle an! Form ändert sich seltener als Struktur! Daher: Im Architekturteam die Form aufbauen, in den anderen Teams die Strukturen schaffen! Dienstag, 30. April 13
  • 16. Experte für effektive ProduktentwicklungMatthias Bohlen Entwickeln und dokumentieren 16 Aspekt Bedeutung Medien Form Subsysteme, APIs, von außen sichtbares Verhalten Bilder und Vodcasts im Wiki, APIs im Code Struktur Subsystem-interne Klassen und Schnittstellen Code Verhalten wichtige Abläufe im System Bilder im Wiki, den Rest im Code Stil Entwurfsprinzipien Wiki Dienstag, 30. April 13
  • 17. Experte für effektive ProduktentwicklungMatthias Bohlen Architekturentwicklung fraktal 17 gelb cyan Auslieferung rot blau Lagerhaltung grün saphir rubin Bestellung diamant Top Level Architekturrunde Zahlung Kundenverwaltung Schnittstellen Dienstag, 30. April 13
  • 18. Experte für effektive ProduktentwicklungMatthias Bohlen Architekturentwicklung fraktal 18 cyan rot blau Lagerhaltung grün saphir Top Level Arch Zahlung K Spontane Architekturrunde auf Ebene jeder Subdomäne! Dienstag, 30. April 13
  • 19. Experte für effektive ProduktentwicklungMatthias Bohlen User Story "Nach Waren stöbern" 19Für Kunden: Stellen Sie Ihre eigenen Bilder ein. Hier reinlesen und suchen Matthias' Amazon | Angebote | Wunschzettel | Gutscheine | Geschenke Suche Bücher her Erweiterte Suche Stöbern Bestseller Neuheiten Hörbücher Englische Bücher Tasch IT-Unternehmensarchitektur: Von der Geschäftsstrategie zur optimalen IT-Unterstützung [Gebundene Ausgabe] Wolfgang Keller (Autor) (3 Kundenrezensionen) (3) Preis: EUR 49,90 kostenlose Lieferung. Siehe Details. Alle Preisangaben inkl. MwSt. Auf Lager. Verkauf und Versand durch Amazon.de. Geschenkverpack verfügbar. Nur noch 13 Stück auf Lager - jetzt bestellen. Lieferung bis Dienstag, 4. September: Bestellen Sie inn 3 Stunden und 24 Minuten und wählen Sie Morning-Expr der Kasse. Siehe Details. 71 neu ab EUR 49,90 6 gebraucht ab EUR 35,60 Kategorien ansehen Dienstag, 30. April 13
  • 20. Experte für effektive ProduktentwicklungMatthias Bohlen Bestand und Lieferzeit 20 Kunde möchte beides sehen "Stöbern"-Story (in Bestellung) muss... das Lager nach dem Bestand fragen die Auslieferung nach der Lieferzeit fragen beides ausgeben Subdomänen-Leute nehmen den Gesprächsbedarf mit und gehen zur nächsten Anforderung über Dienstag, 30. April 13
  • 21. Experte für effektive ProduktentwicklungMatthias Bohlen Die Form der Subdomänen ändern 21 Subdomäne Komponente zuständiges Team Bestellung Shop saphir Lager Bestand rot Auslieferung Warenausgang gelb Vertreter aus saphir, rot und gelb diskutieren und beschließen die Schnittstellenerweiterungen. Dienstag, 30. April 13
  • 22. Experte für effektive ProduktentwicklungMatthias Bohlen Team rot und sein Shop 22 Mit den neuen Schnittstellen aus den Teams saphir und gelb... ...erweitert Team rot die Form der "Shop"-Komponente «Geschaeft» Shop «Geschaeft» Auslieferung::Warenausgang «Stamminformationen» Lagerhaltung::Bestand Lieferzeit abfragenBestand abfragen Dienstag, 30. April 13
  • 23. Experte für effektive ProduktentwicklungMatthias Bohlen In der nächsten Architekturrunde 23 Teams berichten über das realisierte Form-Inkrement Andere Mitglieder der Runde geben Feedback Die Form ist jetzt gut Teams realisieren und testen die Struktur und dokumentieren die Änderungen. Dienstag, 30. April 13
  • 24. Foto: Casey Hussein Bisson Wie schaffen wir es, Form- Änderungen für 75 Leute zu koordinieren, ohne dabei verrückt zu werden? 24 Dienstag, 30. April 13
  • 25. Experte für effektive ProduktentwicklungMatthias Bohlen Ein kanban pro Feature 25 Bestand und Lieferzeit anzeigen Subdomänen: ✓Bestellung (führend) ✓Lager ✓Auslieferung - Zahlung - Schnittstellen Subdomänen ankreuzen, um Abstimmbedarf festzustellen Dienstag, 30. April 13
  • 26. Experte für effektive ProduktentwicklungMatthias Bohlen Kanban Board (linke Hälfte) 26 IdeenIdeen Features Nächste Features Form / ArchitekturForm / ArchitekturForm / Architektur Neu zerlegen entwerfen zur Abstimmung fertig zum Entwickeln315 610 Dienstag, 30. April 13
  • 27. Experte für effektive ProduktentwicklungMatthias Bohlen Kanban Board (rechte Hälfte) 27 EntwickelnEntwickelnEntwickeln Systemtest Akzeptanztest Produktion Subdomäne unterwegs fertig zum Systemtest Lager Bestellung Auslieferung Zahlung Kunden Schnittstellen 30 15 15 12 Dienstag, 30. April 13
  • 28. Experte für effektive ProduktentwicklungMatthias Bohlen Das WIP-Limit optimieren nach Henrik Kniberg To do Doing Done orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur 1 Zu geringes WIP-Limit To do Doing orem ipsum dolor sit amet, co nse ctetur Done orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur 2 Gerade richtiges WIP-Limit To do Doing orem ipsum dolor sit amet, co nse ctetur Done orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur 5 Zu hohes WIP-Limit orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur Zzzzzzzzz orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur orem ipsum dolor sit amet, co nse ctetur Leute warten Langsamer Fluss (end-to-end) Leute warten manchmal (Spielraum) Schneller FlussTasks warten selten Langsamer Fluss Tasks warten oftKein Platz hier... Leute warten nie Dienstag, 30. April 13
  • 29. Experte für effektive ProduktentwicklungMatthias Bohlen Das Gesetz von Little 29 Durchschnittlich gilt: Work in Progress [Features] Zykluszeit = --------------------------------- [Wochen] Durchsatz [Features pro Woche] Dienstag, 30. April 13
  • 30. Entwicklerpaar Architektur- Kümmerer Entwicklerpaar Experte für effektive ProduktentwicklungMatthias Bohlen Beispiel-Annahmen (1) Work in Progress = 2 Features Zykluszeit = 2 Wochen pro Feature also Durchsatz = 1 Feature pro Woche 30 Dienstag, 30. April 13
  • 31. Experte für effektive ProduktentwicklungMatthias Bohlen Annahmen (2) Jeder Architektur-Kümmerer muss... die Form von 1 Feature pro Woche entwerfen, abstimmen, dokumentieren und den Code dazu reviewen 31 Dienstag, 30. April 13
  • 32. Experte für effektive ProduktentwicklungMatthias Bohlen Annahmen (3) Ein Kümmerer braucht pro Feature... 1 Std. um Requirements zu verstehen 1 Std. um Requirements aufzuschreiben 8 Std. zum Entwerfen der Form 10 Std. zur Abstimmung mit den anderen 4 Std. für Code-Reviews und zur Dokumentation der Architektur Das sind 24 Stunden pro Woche Bleiben 16 Stunden Reservezeit 32 Dienstag, 30. April 13
  • 33. Experte für effektive ProduktentwicklungMatthias Bohlen Der Wochenplan des "Kümmerers" 33 Montag Dienstag Mittwoch Donnerstag Freitag 09:00 - 09:30 09:30 - 12:00 12:00 - 13:00 13:00 - 15:00 15:00 - 16:00 16:00 - 17:00 Daily Scrum MeetingsDaily Scrum MeetingsDaily Scrum MeetingsDaily Scrum MeetingsDaily Scrum Meetings Konzentrierte Entwurfsarbeit oder Code-Reviews Konzentrierte Entwurfsarbeit oder Code-Reviews Konzentrierte Entwurfsarbeit oder Code-Reviews Konzentrierte Entwurfsarbeit oder Code-Reviews Konzentrierte Entwurfsarbeit oder Code-Reviews Mittagessen gehenMittagessen gehenMittagessen gehenMittagessen gehenMittagessen gehen Meetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der FormMeetings zur Abstimmung der Form Requirements Architektur-DokumentationArchitektur-DokumentationArchitektur-DokumentationArchitektur-Dokumentation Req.-Doku ReservezeitReservezeitReservezeitReservezeit Dienstag, 30. April 13
  • 34. Experte für effektive ProduktentwicklungMatthias Bohlen Annahmen (4) Das Meeting der Kümmerer... dauert 2 Std. pro Tag stimmt 15 Form-Änderungen pro Woche ab das sind 3 pro Meeting bleibt pro Abstimmung eine halbe Stunde plus pro Meeting eine halbe Stunde Puffer Jeder Kümmerer bringt pro Woche eine Form-Änderung zur Abstimmung 34 Dienstag, 30. April 13
  • 35. Experte für effektive ProduktentwicklungMatthias Bohlen Annahmen (5) 35 Wenn mein Team sehr flexibel ist... dann rotieren wir die Rolle des Kümmerers dann komme ich nur alle 5 Wochen dran in den anderen 4 Wochen entwickle ich lauffähige Software! Entwicklerpaar Architektur- Kümmerer Entwicklerpaar Dienstag, 30. April 13
  • 36. Experte für effektive ProduktentwicklungMatthias Bohlen Jeder Stakeholder trägt seinen Teil zur Architektur bei Form in der Runde, Struktur/Verhalten außerhalb der Runde Architekturarbeit feature by feature über die Woche verteilt erarbeiten 36 3x Teile und herrsche Dienstag, 30. April 13
  • 37. Experte für effektive ProduktentwicklungMatthias Bohlen Mehr dazu? eBook lesen! Erhältlich bei: amazon.de (für Kindle-Geräte) lulu.com (EPUB-Format für iPad und andere) 37 Matthias Bohlen Softwarearchitektur auf die schlanke Art Architekturarbeit entspannt und effektiv organisieren mit der Kanban-Methode EntwickelnEntwickelnEntwickeln Systemtest Akzeptanztest Produktion Subdomäne unterwegs fertig zum Systemtest Lager Bestellung Auslieferung Zahlung Kunden Schnittstellen 30 15 15 12 IdeenIdeen Features Nächste Features Form / ArchitekturForm / ArchitekturForm / Architektur Neu zerlegen entwerfen zur Abstimmung fertig zum Entwickeln315 610 Methodless Role Methodful Role parameter1 parameter2 Context *1 Domain class Domain object in role <<mixin>><<instanceof>> Dienstag, 30. April 13
  • 38. Experte für effektive ProduktentwicklungMatthias Bohlen Mehr Info? Hier melden! Matthias Bohlen Coach für effektive Produktentwicklung Telefon: +49 170 772 8545 E-Mail: mbohlen@mbohlen.de Web: http://www.mbohlen.de/ Twitter: @mbohlende Dienstag, 30. April 13