Technical Excellence:
Why does it not stick even now?
Antti Kirjavainen
@anttiki
Test Coverage Policy: The Idea
Test Coverage Policy: The Idea
>60%
Unit Test
Coverage

Quality
Regular
reports
Test Coverage Policy: The Reality
>60%
Unit Test
Coverage

Lots of tests

doing
nothing but
adding % of
test coverage
Regular
reports
Technical Excellence
Technical Excellence

Continuous attention to

technical excellence and
good design enhances agility.
Examples of Technical Excellence

quality code,
sound architecture,
good test automation and
coverage,
continuous integration and
continuous deployment.
Emphasis on Flow over Batches

Photo by Daniele Zedda
Emphasis on Flow over Batches

Photo by DanielePeople10
Infographic from Zedda
Technical Excellence

building it right
to

maximize delivery potential
Why don’t we have it, then?
Processes
Alert
And

policies
Alert!
Your organization
might be suffering from a

Legacy mindset.
Photo by Jeremiah Owyang
Test Coverage Policy: The Idea
>60%
Unit Test
Coverage

Quality
Regular
reports
Test Coverage Policy: The Reality
>60%
Unit Test
Coverage

Lots of tests

doing
nothing but
adding % of
test coverage
Regular
reports
Alert

Contract clauses
Alert!
Your organization
might be suffering from a

Legacy mindset.
Contract with a Warranty Period
We’ll fix all the defects for free
during these periods!

Development

Acceptance
Testing

Support,
warranty period
6 months
Contract with a Warranty Period

Development

Acceptance
Testing

Support, warra
nty period
6 months
Prioritization by Business
value
Example from Real Life: The Plan

Product Backlog

Feature 1

15 months

Feature 2
Feature 3

Feature 4
Feature 5
Feature 6
Example from Real Life: The Reality

Product Backlog

Architectural feature I

12 months to
go

Feature 1
Feature 2
Architectural feature II
Feature 3
Feature 4
Feature 5
Feature 6
Example from Real Life: The Decision

Product Backlog

6 months to
go

Architectural feature I
Feature 1
Feature 2
Feature 3
Feature 4
Feature 5

Duct tape & chewing
Feature 6
gum solutions
Example from Real Life: The Effects
Old approaches do not solve the problem
Processes and
policies

Contract clauses

Business value
prioritization
Why?
Traditional Management Paradigm:
Extrinsic motivation
Desire to achieve goal G
Reward result R
Assume R leads to G

Problems with non-linear effects
From Management 3.0 by Jurgen Appelo
Non-linear effects in SW dev
We are here

From Management 3.0 by Jurgen Appelo
What is needed instead?
New Management Paradigm:
Intrinsic motivation
Desire to achieve goal G
Where G is its own reward

No non-linear effects
From Management 3.0 by Jurgen Appelo
Nurturing Technical Excellence

Photo by D Sharon Pruitt
Emphasis on Flow over Batches

Understanding
Photo by DanielePeople10
Infographic from Zedda
Skills
Autonomy
Discipline

Antti Leinonen, Sirkus Magenta, photo by Tuomas Stenbäck
Requires

Motivation
Understanding
Skills
Autonomy
Discipline
How can devs support that?
Managers, Business and Developers
Shared

Trust enables

Developers can
bring

Motivation

Autonomy

Skills

Understanding

+Understanding

Discipline

+Discipline

Managers
Developers
Business
Motivation for Managers, Business?
Shared
Motivation

?

Trust enables

Developers can
bring

Autonomy

Skills

Understanding

+Understanding

Discipline

+Discipline

Managers
Developers
Business
Manager

What’s in it for me?
Business
Example from Real Life: Legacy How-To

Product Backlog

6 months to
go

Architectural feature I
Feature 1
Feature 2
Feature 3
Feature 4
Feature 5

Duct tape & chewing
Feature 6
gum solutions
Example from Real Life: The Effects
Your cautionary story?
How to build trust?
Shared

Trust enables

Developers can
bring

Motivation

Autonomy

Skills

Understanding

+Understanding

Discipline

+Discipline

Managers

Business

?

Developers
Who should define indicators / metrics?

Managers

IT / architects

Business

Developers
Test Coverage Policy
>60%
Unit Test
Coverage

Lots of tests

doing
nothing but
adding % of
test coverage
Regular
reports
What would the Experts choose instead?

Leading
Indicators
Developers

Technical
Quality
Sound
Architecture

Lagging
Indicators
Micromanagement by the team
Mike Cohn
What to do if there’s no trust?
Do not be an order-taker!

Product Backlog

6 months to
go

Architectural feature I
Feature 1
Feature 2
Feature 3
Feature 4
Feature 5

Duct tape & chewing
Feature 6
gum solutions
How to grow development organization?
Shared

Trust enables

Developers can
bring

Motivation

Autonomy

Skills

Understanding

+Understanding

Discipline

+Discipline

Managers
Developers
Business

?
Let excellence grow in circles or guilds!

Team A

Team B

Team C

Team D
Let excellence grow in circles or guilds!

Team A

Team B

DevOps
Circle

Team C

Team D
Houston Inc. Frontend Circle

Outside
world

Outside
frontend
scene

Houston
Inc.
Feedback

Idea
s

Conferences +
events

Frontend
Circle

Visibility

Training
Board of
directors

Houston
Personne
l

Customer
s & sales
Conclusions
Technical Excellence

building it right
to

maximize delivery potential
Emphasis on Flow over Batches

Photo by Daniele Zedda
Emphasis on Flow over Batches

Photo by DanielePeople10
Infographic from Zedda
Old approaches do not solve the problem
Processes and
policies

Contract clauses

Business value
prioritization
Traditional Management Paradigm:
Extrinsic motivation
Desire to achieve goal G
Reward result R
Assume R leads to G

Problems with non-linear effects
From Management 3.0 by Jurgen Appelo
New Management Paradigm:
Intrinsic motivation
Desire to achieve goal G
Where G is its own reward

No non-linear effects
From Management 3.0 by Jurgen Appelo
Emphasis on Flow over Batches

Understanding
Photo by DanielePeople10
Infographic from Zedda
Skills
Autonomy
Discipline

Antti Leinonen, Sirkus Magenta, photo by Tuomas Stenbäck
Managers, Business and Developers
Shared

Trust enables

Developers can
bring

Motivation

Autonomy

Skills

Understanding

+Understanding

Discipline

+Discipline

Managers
Developers
Business
Manager

What’s in it for me?
Business
What would the Experts choose instead?

Leading
Indicators
Developers

Technical
Quality
Sound
Architecture

Lagging
Indicators
Let excellence grow in circles or guilds!

Team A

Team B

DevOps
Circle

Team C

Team D
Nurture Technical Excellence

Photo by D Sharon Pruitt
Maximize the Impact
Photo by Spettacolopuro
Thank you for your attention
Antti Kirjavainen
antti.kirjavainen@houston-inc.com
@anttiki
http://www.slideshare.net/AnttiKirjavainen/
http://learninggamedev.wordpress.com/
http://www.houston-inc.com/

Technical Excellence: Why does it not stick even now?