The 3 E's of #NoEstimates

Post on 17-Oct-2014

1267 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

My talk from MYOB brown bag, 16th October 2013.

Transcript

Neil Killick, Agile Coach/Trainerneilkillick.com / agilemelbourne.com neil_killick / #NoEstimates

Copyright Neil Killick, Iterative, 2013

● ETHICS

● EMERGENCE● EMPIRICISM

The 3 E’s of #NoEstimates

ETHICS

eth·ics [eth-iks]plural noun

1. ( used with a singular or plural verb ) a system of moral principles: the ethics of a culture.

2. the rules of conduct recognized in respect to a particular class of human actions or a particular group, culture, etc.: medical ethics; Christian ethics.

3. moral principles, as of an individual: His ethics forbade betrayal of a confidence.

4. ( usually used with a singular verb ) that branch of philosophy dealing with values relating to human conduct, with respect to the rightness and wrongness of certain actions and to the goodness and badness of the motives and ends of such actions.

● Estimates become commitments of both scope and time

● Trust breaks down when wrong thing is delivered and/or delivery is late

● Focusing on schedule rather than building right thing (customer value) increases chances of this happening

Cycle of Mistrust

● Estimate-driven projects encourage game playing and dishonesty

● Lambasting people for not hitting estimates

● Measuring/comparing team performance with story points

● Pressure for estimated project scope to fit into an already agreed budget or timeframe

Unethical Behaviour

● Not meeting a deadline has negative consequences, so we tend to be optimistic about our chances if we're running late

○ "I'll be 5-10 minutes" means 15-20 minutes

● Risk of negative bias where work is undesirable

○ e.g. Old technology, using brittle legacy systems○ "Nope we can't do that / It's too big / It's

impossible"

Cognitive Biases

EMPIRICISM

em·pir·i·cism [em-pir-uh-siz-uhm]noun

1. empirical method or practice.2. Philosophy . the doctrine that all knowledge is derived from sense experience. Compare rationalism ( def 2 ) .3. undue reliance upon experience, as in medicine; quackery.4. an empirical conclusion.

em·pir·i·cal [em-pir-i-kuhl]adjective

1. derived from or guided by experience or experiment.2. depending upon experience or observation alone, without using scientific method or theory, especially as in medicine.3. provable or verifiable by experience or experiment.

● Software estimates are typically deterministic (not probabilistic)

○ People asked to provide them with estimation rituals

○ Range from complete guesses to educated guesses

● Tend to not consider WIP, cost of delay, etc.

Determinism vs Probabilism

● “Are we on track?” means "Will we get all agreed features done in time?"○ Should mean "Will we solve the problem or meet

the goal within budget?"

● New team velocity not stable for >6 weeks, and then only if good practices used

● Estimates typically a single number or date rather than a range ⇒ likely to be wrong

Monitoring progress

Data drives improvement & decision making

● Agile/Scrum etc. strongly promote empirical process to control risk and deliver right thing in the desired timeframes or for desired budget

● Agile/Scrum Risk Management:○ Managing risk of delivering right thing

within constraints rather than risk of not delivering pre-determined scope on schedule

Risk Management

EMERGENCE

e·mer·gence [ih-mur-juhns]noun

1. the act or process of emerging.2. Evolution. the appearance of new properties or species in the course of development or evolution.

e·merge [ih-murj]verb (used without object), e·merged, e·merg·ing.

1. to come forth into view or notice, as from concealment or obscurity: a ghost emerging from the grave; a ship emerging from the fog.2. to come up or arise, as a question or difficulty.3. to come into existence; develop.4. to rise, as from an inferior or unfortunate state or condition.

What you really really want!

Tell me what you want

● Estimates are based on what we think we want

● Being driven by this lessens chances of discovering what we really, really want (Spice Girl requirements)

● Effective Agile is about skilfully managing emergent requirements, design and architecture to build the right thing

But I don’t know!

Iterative decisions● Both cost and value emerge as we build and get

feedback from users, market conditions, etc.

● By controlling cost in small drips we can focus on value, build things in timeboxes, iterate on solutions and decision making

● Scale up or down accordingly on an initiative with small fixed, capable x-functional teams

● Deadlines and changing parameters affect our behaviour throughout project, whether we have estimated or not

● Why not set our own shorter deadlines without estimating them?

● Use these as constraints to iterate over solution

Emergent behaviour

Neil Killick, Agile Coach/Trainerneilkillick.com / agilemelbourne.com neil_killick / #NoEstimates

Copyright Neil Killick, Iterative, 2013

top related