WHat is agIle arChiTecTurE?
thomas.malt@knowit.no
@thomasmalt
A g i L e
A r c H i t E c t U r e
F o r D e v E lo P e r S
W h y s p E n d
t i M e O n
A r c H i t E c t U r e ?
TO cReaTe ShaRed diRecTion
Awesome App v2.0
When we’re building a small part of a huge
solution we need to be able navigate
efficiently
To implement our part as effective as
possible
and to build something that is fit for
purpose
we need to understand how it fits as part of
the whole
TO CreAte MapS fOr NavIgaTion
Good Software Architecture is
about continuously reducing
complexity in the systems we build
Choose the simplest possible
solution with the best possible
programming interface
The most expensive part of
software is development time
TO rEduCe ComPleXity
ALl TeaMs MusT bE aBle to taKe
aRchIteCtuRal reSpoNsiBilIty
For thEir woRk
S o , w h At
D o I d O ?
AGilE mOdeLliNg
5 e A s y s t E p s
O n T h e r o A d T o A g i L e
A r c H i t E c t U r e
STep 1:
Never just start coding right
away
Discuss the solutions in the team
Draw on a whiteboard
Have the whiteboard available at
the team area
STep 2:
A. Take photos of the whiteboard
B. Give the photos meaningful names
C. Put the photos in a shared folder
STep 3:
A. Put the photos in a presentation or confluence page
B. Add extra descriptions about technical details and
state of implementation
C. Add descriptive names and titles so your
documentation is possible to search for
STep 4:
A. Teach yourself a diagramming tool
• yes - anything will do, even powerpoint

B. Start recreating what you draw on the
whiteboard
• maybe with added information
STep 5
A. Practice creating diagrams
B. Teach yourself C4
C. Learn about and understand UML2
W h aT i S
A r c H i t E c t U r e
g o V e r N a n C e
YOu NeeD tO aLigN yOur woRk
CReaTe An ArcHitEctUre coUncIl
• Start regular meetings with Tech-
Leads on all teams
• More people can join if it fits your
organisation
• Share state of architecture
regularly
• Discuss challenges and make
decisions on alignment
H o w to d o 

E n t E r p R i s E
a R c h I t e C tu R e
O n A u t O n o M o u S t E a m S
A r c H i t E c t U r e
G o v E r n A n c E
i s k e Y
"organisations which design systems ... are
constrained to produce designs which are
copies of the communication structures  of
these organisations."
— Melvin Conway[3]
C o n W a y S l A w
I n v E r s E c O n w Ay M a n O e u V r e
To adapt the organisation to match the
capabilities we wish to create in our
software systems
WhaT wE’rE tRyiNg To AchIevE
Build world class products and services
• Products that are second to none when it comes to user experience and functionality
• Technical solutions that are scalable, stable and simple to maintain
Increase the quality and fitness of our work
• Create software with the right quality
• Build the most effective solutions
• Create solutions rapidly with high precision
Create world class organisations
• Build teams that are fun to work in
• Let people reach their full potential
• Create a culture of continuous learning and personal development
CReaTe PurPosE aNd ComMon diRecTioN
HAve arChiTecTs On All teAms
ARchIteCtuRe CouNciL aCroSs
OrgAniSatIon
Api cenTerEd devEloPmeNt
5 s T e p S T o w A r d S
A g i L e
A r c H i t E c t U r e
STep 1:
Act as a mentor
Make the teams responsible for
solutions architecture
Remember: purpose, autonomy and
mastery are the most motivational work
factors for knowledge workers
Responsibility and ownership must be
taught to the teams, and takes practice.
STep 2
Work with the teams to organise architecture
documentation
This can be in presentations in a shared drive, or
pages in Confluence
This should be your architecture repository
Please avoid introducing Enterprise Architecture tools to the
teams
STep 3:
Start to actively engage developers in
architecture decisions
Start having regular Architecture show and
tell sessions to coordinate and share
experience between teams
This is the start of the Architecture council.
The goal is building Architecture
governance from this activity
STep 4:Work hard to introduce diagramming
tools and teach efficient techniques
allow for practice, learning and a low
threshold for contributing and
participating
Look for motivated developers you can
recruit as champions and develop into
Tech-Leads
Applikasjon for tilsyn
Backend for Applikasjon
API
Eksterne
integrasjoner
Google Maps
Brreg
Andre
APIAPI
Andre interne
systemer
Regelmotor
for tilsyn
Databaser
API APIAPI
API Gateway og orkestrering
APIGatewayandorkestrering
STep 5:Continue to allow for practice, learning
and a low threshold for contributing
Applaud and appreciate effort and
engagement
• Introduce C4
• Introduce UML
• Consider introducing Archimate and BPMN when they’re ready
B e C a r E f u L w I t h
T o g A f
Research evidence shows that "most TOGAF
recommendations are usually found inapplicable" and
not followed even in the organizations included in the
list of TOGAF-users provided by The Open Group.
http://www.bcs.org/content/conWebDoc/55547
[…]TOGAF can be considered only as "a toolkit of
random EA-related recommendations" and “using
TOGAF” can be best explained as ”studying TOGAF
and then doing something else instead”
http://www.bcs.org/content/conWebDoc/55892
Introduction to Agile Architecture
Introduction to Agile Architecture

Introduction to Agile Architecture

  • 2.
    WHat is agIlearChiTecTurE? thomas.malt@knowit.no @thomasmalt
  • 3.
    A g iL e A r c H i t E c t U r e F o r D e v E lo P e r S
  • 4.
    W h ys p E n d t i M e O n A r c H i t E c t U r e ?
  • 5.
    TO cReaTe ShaReddiRecTion Awesome App v2.0
  • 6.
    When we’re buildinga small part of a huge solution we need to be able navigate efficiently To implement our part as effective as possible and to build something that is fit for purpose we need to understand how it fits as part of the whole TO CreAte MapS fOr NavIgaTion
  • 7.
    Good Software Architectureis about continuously reducing complexity in the systems we build Choose the simplest possible solution with the best possible programming interface The most expensive part of software is development time TO rEduCe ComPleXity
  • 8.
    ALl TeaMs MusTbE aBle to taKe aRchIteCtuRal reSpoNsiBilIty For thEir woRk
  • 9.
    S o ,w h At D o I d O ?
  • 10.
  • 11.
    5 e As y s t E p s O n T h e r o A d T o A g i L e A r c H i t E c t U r e
  • 12.
    STep 1: Never juststart coding right away Discuss the solutions in the team Draw on a whiteboard Have the whiteboard available at the team area
  • 13.
    STep 2: A. Takephotos of the whiteboard B. Give the photos meaningful names C. Put the photos in a shared folder
  • 14.
    STep 3: A. Putthe photos in a presentation or confluence page B. Add extra descriptions about technical details and state of implementation C. Add descriptive names and titles so your documentation is possible to search for
  • 15.
    STep 4: A. Teachyourself a diagramming tool • yes - anything will do, even powerpoint
 B. Start recreating what you draw on the whiteboard • maybe with added information
  • 16.
    STep 5 A. Practicecreating diagrams B. Teach yourself C4 C. Learn about and understand UML2
  • 17.
    W h aTi S A r c H i t E c t U r e g o V e r N a n C e
  • 18.
    YOu NeeD tOaLigN yOur woRk
  • 19.
    CReaTe An ArcHitEctUrecoUncIl • Start regular meetings with Tech- Leads on all teams • More people can join if it fits your organisation • Share state of architecture regularly • Discuss challenges and make decisions on alignment
  • 21.
    H o wto d o 
 E n t E r p R i s E a R c h I t e C tu R e O n A u t O n o M o u S t E a m S
  • 22.
    A r cH i t E c t U r e G o v E r n A n c E i s k e Y
  • 23.
    "organisations which designsystems ... are constrained to produce designs which are copies of the communication structures  of these organisations." — Melvin Conway[3] C o n W a y S l A w
  • 24.
    I n vE r s E c O n w Ay M a n O e u V r e To adapt the organisation to match the capabilities we wish to create in our software systems
  • 25.
    WhaT wE’rE tRyiNgTo AchIevE Build world class products and services • Products that are second to none when it comes to user experience and functionality • Technical solutions that are scalable, stable and simple to maintain Increase the quality and fitness of our work • Create software with the right quality • Build the most effective solutions • Create solutions rapidly with high precision Create world class organisations • Build teams that are fun to work in • Let people reach their full potential • Create a culture of continuous learning and personal development
  • 26.
    CReaTe PurPosE aNdComMon diRecTioN
  • 27.
  • 28.
  • 29.
  • 30.
    5 s Te p S T o w A r d S A g i L e A r c H i t E c t U r e
  • 31.
    STep 1: Act asa mentor Make the teams responsible for solutions architecture Remember: purpose, autonomy and mastery are the most motivational work factors for knowledge workers Responsibility and ownership must be taught to the teams, and takes practice.
  • 32.
    STep 2 Work withthe teams to organise architecture documentation This can be in presentations in a shared drive, or pages in Confluence This should be your architecture repository Please avoid introducing Enterprise Architecture tools to the teams
  • 33.
    STep 3: Start toactively engage developers in architecture decisions Start having regular Architecture show and tell sessions to coordinate and share experience between teams This is the start of the Architecture council. The goal is building Architecture governance from this activity
  • 34.
    STep 4:Work hardto introduce diagramming tools and teach efficient techniques allow for practice, learning and a low threshold for contributing and participating Look for motivated developers you can recruit as champions and develop into Tech-Leads Applikasjon for tilsyn Backend for Applikasjon API Eksterne integrasjoner Google Maps Brreg Andre APIAPI Andre interne systemer Regelmotor for tilsyn Databaser API APIAPI API Gateway og orkestrering APIGatewayandorkestrering
  • 35.
    STep 5:Continue toallow for practice, learning and a low threshold for contributing Applaud and appreciate effort and engagement • Introduce C4 • Introduce UML • Consider introducing Archimate and BPMN when they’re ready
  • 36.
    B e Ca r E f u L w I t h T o g A f
  • 38.
    Research evidence showsthat "most TOGAF recommendations are usually found inapplicable" and not followed even in the organizations included in the list of TOGAF-users provided by The Open Group. http://www.bcs.org/content/conWebDoc/55547
  • 39.
    […]TOGAF can beconsidered only as "a toolkit of random EA-related recommendations" and “using TOGAF” can be best explained as ”studying TOGAF and then doing something else instead” http://www.bcs.org/content/conWebDoc/55892