organic, not chaotic
DESCRIPTION
LSSC 2011 talk about incremental architecture. Includes some things about BDD and Real Options too.TRANSCRIPT
![Page 2: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/2.jpg)
The Problem
![Page 3: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/3.jpg)
The Solution?
![Page 4: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/4.jpg)
Architectstry to get it
right.
![Page 5: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/5.jpg)
Development teamstry to get it
done.
![Page 6: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/6.jpg)
It’s alwaysa people problem.
![Page 7: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/7.jpg)
It’s also apoliticalproblem.
![Page 8: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/8.jpg)
Tragedyof the
Commons
![Page 9: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/9.jpg)
Hierarchy
Manager
Architect
Dev Dev
Architect
Dev
![Page 10: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/10.jpg)
Whole Team
Analysis Dev Test Release
![Page 11: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/11.jpg)
Assumeyou got it
wrong.
![Page 12: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/12.jpg)
Agile focuses onusing
fast feedback.
Lean focuses onmaking slow feedback
faster.
![Page 13: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/13.jpg)
Architectureis a
commitment.
![Page 14: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/14.jpg)
Real Options
Options have value.
Options expire.
Never commit earlyunless you know why.
![Page 15: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/15.jpg)
A Thought Experiment
![Page 16: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/16.jpg)
Learning is60% - 80%
of software development
![Page 17: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/17.jpg)
If a project has no risks, don’t do it.
![Page 18: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/18.jpg)
The value of optionsincreases
as uncertainty rises
![Page 19: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/19.jpg)
Don’t pick the right technology,pick the one that’scheapest to change.
Chris Matts
![Page 20: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/20.jpg)
Deliberate Discovery
![Page 21: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/21.jpg)
Traditional
Rework
Developers Testers
Deliberate Discovery skills
![Page 22: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/22.jpg)
BDD
Less Rework
Developers Testers
Deliberate Discovery skills
Testers
![Page 23: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/23.jpg)
Gatekeepers
Rework
Developers Architects
Strategicplans
Architects
Tactical constraints
Newplans
![Page 24: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/24.jpg)
Educators
Architects
Architectural“tests”
Less Rework
DevelopersArchitects
![Page 25: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/25.jpg)
The Feature Injection template
In order to achieve a goalAs the stakeholderI want some stuff.
![Page 26: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/26.jpg)
An Example
In order to reduce security operations costsAs the VP of operationsI want users to use our single sign on.
![Page 27: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/27.jpg)
Stakeholders, not Users
![Page 28: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/28.jpg)
Architectural Scenarios
![Page 29: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/29.jpg)
SpecificMeasurableAchievableRelevantTimeboxed
Or, how do we know when we’re done?
![Page 30: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/30.jpg)
Given a contextWhen an event happens
Then an outcome should occur
![Page 31: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/31.jpg)
Given Fred Brownis using the reporting app
When Fred Brown goesto the trading app
Then he should belogged on automatically
![Page 32: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/32.jpg)
Is there a context in whichthis architecture will create
a different outcome?
![Page 33: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/33.jpg)
Given Janet Green is not a trader
Given Janet is logged onto the reporting system
When Janet accesses thetrading system
Then Janet should be refused access
![Page 34: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/34.jpg)
Is this the only outcomethat matters?
If we could achieve it with pixies, would it be enough?
![Page 35: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/35.jpg)
Given Fred Brownis using the reporting app
When Fred Brown goesto the trading app
Then he should belogged on automatically
And his access for each appshould be logged
![Page 36: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/36.jpg)
Having conversations
is more important thancapturing conversations
is more important thanautomating conversations
![Page 37: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/37.jpg)
Dependent Aspects
![Page 38: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/38.jpg)
Walking Skeleton
![Page 39: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/39.jpg)
Prioritisiation
![Page 40: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/40.jpg)
The Big Bucket
![Page 41: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/41.jpg)
A Gantt Chart…
1 1 1
3 3
2 2
1
2
3
![Page 42: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/42.jpg)
1
1
1
3
3
2
2
…on its side
![Page 43: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/43.jpg)
Backlog1
1
1
3
3
2
2
![Page 44: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/44.jpg)
Prioritizing for deadline
$$$$$$$$
$$$$$$$$
$$$$$$$$
$$$$$
$$$$$
$$
$$
$$
Shipped (1 year)
Not ShippedDeadline
![Page 45: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/45.jpg)
Minimum Marketable Feature
$$$$$$$$
$$$$$$$$
$$$$$$$$
$$$$$
$$$$$
$$
$$
$$
Shipped (2 months)
Not Shipped
Not Shipped
Shipped (2 months)
![Page 46: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/46.jpg)
![Page 47: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/47.jpg)
Focusing on Risk
![Page 48: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/48.jpg)
Options have value
![Page 49: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/49.jpg)
Options expire
![Page 50: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/50.jpg)
Shared Libraries
![Page 51: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/51.jpg)
Smallis
beautiful
![Page 52: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/52.jpg)
EnterpriseData
Dictionary
![Page 53: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/53.jpg)
![Page 54: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/54.jpg)
Bounded Contexts
![Page 55: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/55.jpg)
The Best Approach
![Page 56: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/56.jpg)
Gembaor
getting your hands dirty
![Page 57: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/57.jpg)
Liz [email protected]@lunivore
![Page 58: Organic, not chaotic](https://reader036.vdocuments.site/reader036/viewer/2022081413/547c1bcab4af9fe12e8b48df/html5/thumbnails/58.jpg)
Booklist
“Managing the Design Factory”,Don Reinertsen
“Waltzing with Bears”,Tom de Marco and Timothy Lister
“Domain Driven Design”,Eric Evans