in praise of rigidityagileaustralia.com.au/2018/slides/agileaus-2018-james-ross.pdf · agile...
TRANSCRIPT
in praise ofRIGIDITY
James RossCTO @ Envato@jimmyjazz68
AGILITY
AGILITYnimbleness, deftness,dexterity, liveliness,
sprightliness
RIGIDITY
RIGIDITYsolidity, hardness,
stringency, stiffness,inflexibility
no wonder we loveAGILITY
but what if we'remissing
something?
what if we'renot seeingthe whole picture?
the hypothesis
there is noAGILITYwithoutRIGIDITY
to support it
the examples
agile softwareagile wetwareagile systems
agile relationships
event sourcingconcept maps
theory of constraintscrucial conversations
event sourcing
what is it?
TL;DRevent sourcing means that
all truth in your system is captured asan append-only series of
immutable business events
TL;DRno UPDATEno DELETE
only INSERT and SELECT
an example
how does it supportAGILITY?
by never throwing any data away
event sourcinglets you build a time machine andreinterpret history whenever youcome up with a new idea you want to try
how does it demandRIGIDITY?
you must notmodify your events.
if you do,all bets are off
agile interpretationsofhard facts
what does it meanforyou?
choose carefullyand
communicate clearlyyour
system's hard edges
concept maps
what are they?
TL;DRa concept map is a visual glossary
of the specialised languageof your problem domain
TL;DRa concept map is just
a collection of propositions.A proposition is just
a sentence that uses a verbto connect two nouns (concepts)
an example
source codeAgile Australia 2018 explores Agile Methodology
Agile Australia 2018 is a ConferenceAgile Australia 2018 is held at Crown PalladiumCrown Melbourne is composed of Crown Casino
Crown Melbourne is composed of Crown PalladiumExtreme Programming exemplifies Agile Methodology
Kent Beck created Extreme ProgrammingRachel Slattery organises Agile Australia 2018
how does it supportAGILITY?
by increasing the speed, effectivenessand correctness of sharing domain knowledge
concept mapsincrease the speed, effectivenessand correctness of development efforts
how does it demandRIGIDITY?
the core concepts in your domain
do not changeand are not open to
interpretation
accelerated understandingof
strict meaning
what does it meanforyou?
provide clarityand
demand consistencyyour
team's communication
theory of constraints
what is it?
TL;DRToC is a management paradigmthat sees any system as being
limited in the achievement of its goalby a single constraint at any time
TL;DRToC adopts a
process of ongoing improvementbased on identifying the constraint
and reorganising everything else around it
TL;DRIDENTIFY the constraintEXPLOIT the constraint
SUBORDINATE everything to the constraintELEVATE the constraint
RINSE & REPEAT
an example
how does it supportAGILITY?
actually, that's the wrong question :)
ToCis instead supported by agile methods,applying them to elevate the constraint(step 4 of its 5 step improvement process)
how does it demandRIGIDITY?
anything you doto improve something that is
not a constraintis a complete
waste of time
agile systemsthrough
stringent focus
what does it meanforyou?
stop wasting timeapplying
agile techniquesto things that
don't matter
crucial conversations
what is it?
TL;DRcrucial conversations is a book
that describes a set of toolsfor talking when stakes are high
TL;DReveryone has a path to action with 4 stages:
observation -> interpretation -> feeling -> actionor
facts -> story -> feeling -> action
an example
how does it supportAGILITY?
by broadening our perspective andbuilding a pool of shared meaningcrucial conversationsbreaks down walls and builds bridgesbetween individuals and teams
how does it demandRIGIDITY?
by
strictly separatingobservable facts
frompersonal interpretations
agile relationshipsthrough
agile interpretationsof
hard facts
what does it meanforyou?
learn to
share your pathand ask others to
share theirs
in praise ofRIGIDITY
in praise ofBALANCEAGILITY<->RIGIDITY
questions