This document contains a series of slides by Sander Hoogendoorn on topics related to agile software development. Some key points discussed include:
- The benefits of smaller components like microservices over monolithic architectures.
- How teams and development cycles are trending toward being even smaller, more autonomous, and continuous.
- Why estimates and plans are giving way to minimal viable products and roadmaps in a continuous delivery model.
- How the landscape is shifting from projects to a continuous culture of learning and exploration.
Swanseacon 2017 Keynote - It's a small world after all.
1. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 2
@aahoogendoorn | www.ditisagile.nl
It’s a small world
after all
Sander Hoogendoorn
ditisagile.nl
Mentoring ▪ Consulting ▪ Training
Agile ▪ Software architecture ▪ Code
2. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 3
Sander Hoogendoorn
Me
Dad, software architect, agile coach,
programmer, speaker, writer
Owner ditisagile.nl
CTO ANVA
Former CTO Voldemort Insurances
Former global agile thoughtleader
Capgemini
Web
www.sanderhoogendoorn.com
aahoogendoorn
aahoogendoorn
sander@ditisagile.nl
9. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 10
Moore’s Law
The number of transistors in a dense integrated circuit doubles approximately every two years.
12. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 13
The IBM Personal Computer (the 5150). The simplest configuration has 16K on-board
RAM and uses an audio cassette to load and save data. A floppy drive is optional. A hard
drive was not supported. A system for home or school with a memory of 64K bytes, a
single diskette drive and its own display, was priced around $3,000.
13. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 14
Then, in 2006, Amazon launched its Elastic
Compute cloud (EC2) as a commercial web
service that allows small companies and
individuals to rent computers on which to run
their own computer applications.
28. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 40
SMALLER
COMPONENTS
MICROSERVICES
EVEN SHORTER
CYCLES
BYE BYE SCRUM
THE
CONTINUOUS
CULTURE
SMALLER
AUTONOMOUS
TEAMS
LESS
MANAGEMENT
MORE PRODUCT
MANAGEMENT
MINIMAL VIABLE
PRODUCTS
NO MORE
PROJECTS
32. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 46
Roadmaps over plans
While there is value in the items on the right, we value the items on the left more
37. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 55
@aahoogendoorn | www.ditisagile.nl
Less is more
Delivering (minimal)
products, not projects
46. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 64
Does agile scale?
If you don’t succeed at agile in a team 5-person team, what makes you think you’ll succeed at enterprise level?
49. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 67
To satisfy the customer through early and
continuous delivery of valuable software
Agile manifesto
51. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 69
Continuous delivery
An approach in which teams ensure that every change to
the system is releasable, and that we can release any
version at the push of a button.
Aimed to make releases boring, so we can deliver
frequently and get fast feedback on what users care about.Jez Humble
66. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 89
Dependability.
Team members get things done on time and meet expectations.
Structure and clarity.
High-performing teams have clear goals and well-defined roles within the group.
Meaning.
The work has personal significance to each member.
Impact.
The work of the team is purposeful and positively impacts the greater good.
Psychological Safety.
A culture where managers provide air cover and create safe zones so
employees can let down their guard.
Five key characteristics of enhanced teams
Project Aristotle has managed to study 180 Google teams, conduct 200-plus interviews, and analyze over 250 different team attributes
68. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 91
Team is a pool of people with all the right skills
Often with a ‘technical leader’
Single backlog of small work items
Kanban style board
Small teams form and disband dynamically to
implement epics
Often two to three members
Let the team decide
Product owner becomes an analyst
As little estimates as possible
Stand-ups with whole team
Retrospective on request
Micro-teams
71. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 96
Microservices
In short, the microservice architectural style is an approach
to developing a single application as a suite of small services,
each running in its own process and communicating with
lightweight mechanisms, often an HTTP resource API.
These services are built around business capabilities and
independently deployable by fully automated deployment
machinery. There is a bare minimum of centralized management
of these services, which may be written in different programming
languages and use different data storage technologies.
Martin Fowler
74. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 100
Distributed systems
Oh and by the way… Doing microservices
(or serverless) means that you are building
a distributed systemMe
81. @aahoogendoorn | www.ditisagile.nlIt’s a small word after all 130
@aahoogendoorn | www.ditisagile.nl
References
and questions
www.sanderhoogendoorn.com
www.ditisagile.nl
aahoogendoorn
aahoogendoorn
sander@ditisagile.nl