technical excellence: why does it not stick even now?

73
Technical Excellence: Why does it not stick even now? Antti Kirjavainen @anttiki

Post on 17-Oct-2014

574 views

Category:

Business


2 download

DESCRIPTION

Technical excellence, meaning e.g. quality code, sound architecture, good test automation and coverage, continuous integration and continuous deployment, is the pre-requisite of sustainable software development. Sustainability of software development is essential for improving the Return On Investment and extending the life cycle of software products and services. In my talk I will explain why the majority of organizations is still not making effective management decisions to ensure they get technical excellence. I will argue that technical excellence is impossible to buy from a software vendor and impossible to enforce in contractual terms. The other side to this subject is my second argument: the only way to ensure technical excellence is to have a skilled and motivated team that takes responsible of it, and giving that team the responsibility and means to ensure technical excellence I will go over my personal experiences relating to management decisions regarding technical excellence and illustrate the thinking that is behind the ineffective decision-making related to technical excellence. In conclusion, I will describe what kind of change of mindset is required for making effective management decisions regarding technical excellence.

TRANSCRIPT

Page 1: Technical Excellence: Why does it not stick even now?

Technical Excellence: Why does it not stick even now?

Antti Kirjavainen @anttiki

Page 2: Technical Excellence: Why does it not stick even now?

Test Coverage Policy: The Idea

Page 3: Technical Excellence: Why does it not stick even now?
Page 4: Technical Excellence: Why does it not stick even now?

Test Coverage Policy: The Idea

>60% Unit Test Coverage

Regular reports

Quality

Page 5: Technical Excellence: Why does it not stick even now?

Test Coverage Policy: The Reality

>60% Unit Test Coverage

Regular reports

Lots of tests doing

nothing but adding % of test coverage

Page 6: Technical Excellence: Why does it not stick even now?

Technical Excellence

Page 7: Technical Excellence: Why does it not stick even now?

Continuous attention to technical excellence and good design enhances agility.

Technical Excellence

Page 8: Technical Excellence: Why does it not stick even now?

quality code, sound architecture, good test automation and coverage, continuous integration and continuous deployment.

Examples of Technical Excellence

Page 9: Technical Excellence: Why does it not stick even now?
Page 10: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda

Page 11: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Page 12: Technical Excellence: Why does it not stick even now?

building it right

to

maximize delivery potential

Technical Excellence

Page 13: Technical Excellence: Why does it not stick even now?

Why don’t we have it, then?

Page 14: Technical Excellence: Why does it not stick even now?

Alert

Alert!

Your organizationmight be suffering from a

Legacy mindset.Photo by Jeremiah Owyang

ProcessesAndpolicies

Page 15: Technical Excellence: Why does it not stick even now?

Test Coverage Policy: The Idea

>60% Unit Test Coverage

Regular reports

Quality

Page 16: Technical Excellence: Why does it not stick even now?

Test Coverage Policy: The Reality

>60% Unit Test Coverage

Regular reports

Lots of tests doing

nothing but adding % of test coverage

Page 17: Technical Excellence: Why does it not stick even now?

Alert

Alert!

Your organizationmight be suffering from a

Legacy mindset.

Contract clauses

Page 18: Technical Excellence: Why does it not stick even now?

Contract with a Warranty Period

Development

Acceptance Testing

Support, warranty period

6 months

We’ll fix all the defects for free during these periods!We’ll fix all the defects for free during these periods!

Page 19: Technical Excellence: Why does it not stick even now?

Contract with a Warranty Period

Development

Acceptance Testing

Support, warranty period

6 months

Page 20: Technical Excellence: Why does it not stick even now?

Prioritization by Business value

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 21: Technical Excellence: Why does it not stick even now?

Example from Real Life: The Plan

Product Backlog

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

15

mon

ths

Page 22: Technical Excellence: Why does it not stick even now?

Example from Real Life: The Reality

Product Backlog

Architectural feature I

Feature 1

Feature 2

Architectural feature II

Feature 3

Feature 4

Feature 5

Feature 6

12

mon

ths

to g

o

Page 23: Technical Excellence: Why does it not stick even now?

Example from Real Life: The Decision

Product Backlog

Architectural feature I

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Arch

itectu

ral featu

re II

Duct tape & chewing gum solutions

6 m

on

ths

to

go

Page 24: Technical Excellence: Why does it not stick even now?

Example from Real Life: The Effects

Page 25: Technical Excellence: Why does it not stick even now?

Old approaches do not solve the problem

Processes and policies

Business value prioritization

Contract clauses

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 26: Technical Excellence: Why does it not stick even now?

Why?

Page 27: Technical Excellence: Why does it not stick even now?

Traditional Management Paradigm:Extrinsic motivation

Desire to achieve goal GReward result RAssume R leads to G

Problems with non-linear effects

From Management 3.0 by Jurgen Appelo

Page 28: Technical Excellence: Why does it not stick even now?

Non-linear effects in SW dev

We are here

From Management 3.0 by Jurgen Appelo

Page 29: Technical Excellence: Why does it not stick even now?

What is needed instead?

Page 30: Technical Excellence: Why does it not stick even now?

New Management Paradigm:Intrinsic motivation

Desire to achieve goal GWhere G is its own reward

No non-linear effects

From Management 3.0 by Jurgen Appelo

Page 32: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Understanding

Page 33: Technical Excellence: Why does it not stick even now?

Skills

Page 34: Technical Excellence: Why does it not stick even now?

Autonomy

Page 35: Technical Excellence: Why does it not stick even now?

Discipline

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

Page 36: Technical Excellence: Why does it not stick even now?

MotivationUnderstandingSkillsAutonomyDiscipline

Requires

Page 37: Technical Excellence: Why does it not stick even now?

How can devs support that?

Page 38: Technical Excellence: Why does it not stick even now?

Managers, Business and Developers

Trust enables

Autonomy

Managers

Business

Developers

Developers can bring

Skills

+Understanding

+Discipline

Shared

Motivation

Understanding

Discipline

Page 39: Technical Excellence: Why does it not stick even now?

Motivation for Managers, Business?

Trust enables

Autonomy

Managers

Business

Developers

Developers can bring

Skills

+Understanding

+Discipline

Shared

Motivation

Understanding

Discipline

?

Page 40: Technical Excellence: Why does it not stick even now?

What’s in it for me?

Manager

Business

Page 41: Technical Excellence: Why does it not stick even now?

Example from Real Life: Legacy How-To

Product Backlog

Architectural feature I

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Arch

itectu

ral featu

re II

Duct tape & chewing gum solutions

6 m

on

ths

to

go

Page 42: Technical Excellence: Why does it not stick even now?

Example from Real Life: The Effects

Page 43: Technical Excellence: Why does it not stick even now?

Your cautionary story?

Page 44: Technical Excellence: Why does it not stick even now?

How to build trust?

Trust enables

Autonomy

Managers

Business

Developers

Developers can bring

Skills

+Understanding

+Discipline

Shared

Motivation

Understanding

Discipline

?

Page 45: Technical Excellence: Why does it not stick even now?

Who should define indicators / metrics?

DevelopersBusiness

IT / architectsManagers

Page 46: Technical Excellence: Why does it not stick even now?

Test Coverage Policy

>60% Unit Test Coverage

Regular reports

Lots of tests doing

nothing but adding % of test coverage

Page 47: Technical Excellence: Why does it not stick even now?

What would the Experts choose instead?

Leading Indicators

Lagging Indicators

Technical Quality

Sound Architecture

Developers

Page 48: Technical Excellence: Why does it not stick even now?

Micromanagement by the teamMike Cohn

Page 49: Technical Excellence: Why does it not stick even now?

What to do if there’s no trust?

Page 50: Technical Excellence: Why does it not stick even now?

Do not be an order-taker!

Product Backlog

Architectural feature I

Feature 1

Feature 2

Feature 3

Feature 4

Feature 5

Feature 6

Arch

itectu

ral featu

re II

Duct tape & chewing gum solutions

6 m

on

ths

to

goX

Page 51: Technical Excellence: Why does it not stick even now?

How to grow development organization?

Trust enables

Autonomy

Managers

Business

Developers

Developers can bring

Skills

+Understanding

+Discipline

Shared

Motivation

Understanding

Discipline

?

Page 52: Technical Excellence: Why does it not stick even now?

Let excellence grow in circles or guilds!

Team A

Team C

Team B

Team D

Page 53: Technical Excellence: Why does it not stick even now?

Let excellence grow in circles or guilds!

DevOps Circle

Team A Team B

Team C Team D

Page 54: Technical Excellence: Why does it not stick even now?

Houston Inc. Frontend Circle

Frontend Circle

Board ofdirectors

Houston Personn

el

Customers & sales

Where

to

invest

Outside world

Houston Inc.

ProtosTraining

Feedback

Ideas

Visibility

Cred

Outside frontend

scene

Conferences + events

Page 55: Technical Excellence: Why does it not stick even now?

Conclusions

Page 56: Technical Excellence: Why does it not stick even now?

building it right

to

maximize delivery potential

Technical Excellence

Page 57: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda

Page 58: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Page 59: Technical Excellence: Why does it not stick even now?

Old approaches do not solve the problem

Processes and policies

Business value prioritization

Contract clauses

High risk, low

value

High risk, High value

Low risk, low

value

Low risk, high value

Page 60: Technical Excellence: Why does it not stick even now?

Traditional Management Paradigm:Extrinsic motivation

Desire to achieve goal GReward result RAssume R leads to G

Problems with non-linear effects

From Management 3.0 by Jurgen Appelo

Page 61: Technical Excellence: Why does it not stick even now?

New Management Paradigm:Intrinsic motivation

Desire to achieve goal GWhere G is its own reward

No non-linear effects

From Management 3.0 by Jurgen Appelo

Page 62: Technical Excellence: Why does it not stick even now?

Emphasis on Flow over Batches

Photo by Daniele Zedda Infographic from People10

Understanding

Page 63: Technical Excellence: Why does it not stick even now?

Skills

Page 64: Technical Excellence: Why does it not stick even now?

Autonomy

Page 65: Technical Excellence: Why does it not stick even now?

Discipline

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

Page 66: Technical Excellence: Why does it not stick even now?

Managers, Business and Developers

Trust enables

Autonomy

Managers

Business

Developers

Developers can bring

Skills

+Understanding

+Discipline

Shared

Motivation

Understanding

Discipline

Page 67: Technical Excellence: Why does it not stick even now?

What’s in it for me?

Manager

Business

Page 68: Technical Excellence: Why does it not stick even now?

What would the Experts choose instead?

Leading Indicators

Lagging Indicators

Technical Quality

Sound Architecture

Developers

Page 69: Technical Excellence: Why does it not stick even now?

Let excellence grow in circles or guilds!

DevOps Circle

Team A Team B

Team C Team D

Page 71: Technical Excellence: Why does it not stick even now?

Maximize the ImpactPhoto by Spettacolopuro

Page 72: Technical Excellence: Why does it not stick even now?

Thank you for your attention

Page 73: Technical Excellence: Why does it not stick even now?

Antti [email protected]@anttiki

http://www.slideshare.net/AnttiKirjavainen/http://learninggamedev.wordpress.com/http://www.houston-inc.com/