Download - Sioux Hot-or-Not: Essential Unified Process (Ivar Jacobson)

Transcript
Page 1: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

Enough Process: Let’s Do Practices

Ivar Jacobson

Page 2: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

2© 2007 Ivar Jacobson International

From the successes in modern software

developmentAgile Methods

CampThe Software Engineering

Camp

Process Maturity Camp

In the future, an ever present but invisible process

We need a new paradigm

Process becomes second nature

Process is just a composition of Practices

Practice is a First Class Citizen the unit of adoption, planning and execution of process

Unified ProcessExamples: CMMI, Spice XP, Scrum

Page 3: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

3© 2007 Ivar Jacobson International

From the successes in modern software

developmentAgile Methods

CampThe Software Engineering

Camp

Process Maturity Camp

In the future, an ever present but invisible process

We need a new paradigm

Process becomes second nature

Process is just a composition of Practices

Practice is a First Class Citizen the unit of adoption, planning and execution of process

Unified ProcessExamples: CMMI, Spice XP, Scrum

NEW

Next Generation Process is here today!

Page 4: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

4© 2007 Ivar Jacobson International

Each Camp Has It’s Own Ideas…

A soup of ideas; it is a soup because you can not easily identify reusable elements.

… but where do they come from?

The VariousProcess Camps

Software Engineering

Process Maturity

Agile Methods

Page 5: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

5© 2007 Ivar Jacobson International

Every Company Has Many Processes

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

A B C D N

Page 6: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

6© 2007 Ivar Jacobson International

Every Company Has Many Processes

… that borrow ideas from the three camps.

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

A B C D N

Page 7: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

7© 2007 Ivar Jacobson International

Every Company Has Many Processes

A soup of soups made using ideas “borrowed” and re-written by process engineers within the company.

New ideas say 5 %

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

B C D NA

… that are just more soups of ideas.

Page 8: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

8© 2007 Ivar Jacobson International

What are projects supposed to do?

• There is no one-correct process.• Each process has something to offer, but they’re hard to

use together.• None of them do exactly what the project team wants.• Overall the pre-defined processes seem to add little

value

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

B C D NA

Page 9: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

9© 2007 Ivar Jacobson International

Every project ends up with its own way of working

… that pays lip service to the company processes.

Project 1 Project 2 Project 3 Project X

The VariousProcess Camps

CompanyProcesses

Projects

Software Engineering

Process Maturity

Agile Methods

B C D NA

Page 10: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

10© 2007 Ivar Jacobson International

Every project ends up with its own way of working

The Project –Process Gap … and a huge gap between what it

does and what the process says.

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

B C D NA

Project 1 Project 2 Project 3 Project X

…Projects

Page 11: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

11© 2007 Ivar Jacobson International

Every project ends up with its own way of working

The Project –Process Gap … and a huge gap between what it

does and what the process says.

The VariousProcess Camps

CompanyProcesses

Software Engineering

Process Maturity

Agile Methods

B C D NA

Project 1 Project 2 Project 3 Project X

…Projects

It’s no wonder

no-one likes processes!

Page 12: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

12© 2007 Ivar Jacobson International

Practices help to close the project-process gap

Project 1 Project 2 Project 3 Project X

B C D NA

Each camp provides its own set of practices.

Software Engineering

Process Maturity

Agile Methods

The Project –Process Gap

Page 13: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

13© 2007 Ivar Jacobson International

Processes become compositions of practices

Software Engineering

Process Maturity

Agile Methods

Project 1 Project 2 Project 3 Project X

…B D NA C D NAEach process

just takes the practices it wants.

Page 14: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

14© 2007 Ivar Jacobson International

The Next Generation Process is Practice-Centric

My Process

New ideas say 5 %

A set of practices

= +

From potentially many different methodologists around the world –

essentially written by them

Each process is just a set of practices.

Teams compose practices to create their own way of working.

Page 15: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

15© 2007 Ivar Jacobson International

Agenda

• What makes a good practice?– When is a best practice a well-formed practice?

• What is the Essential Unified Process?– Making practices available today

• What is EssWork?– Making practices useful

• Harnessing the power of practices– The real enabler of sustainable change

• Wrap up

Page 16: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

16© 2007 Ivar Jacobson International

There are 100’s of so-called practices…

…but are really all the same kind of thing?

Risk-DrivenIterative

Development

Use-CaseDriven

Development

Use-CaseModeling

Test-DrivenDevelopment

Robustness Analysis

User Stories

Business Modeling

Aspect Orientation

PSP

Scrum

SOA

Retro-spectives

Product-Line Engineering

Business ProcessRe-Engineering

Prince2

Systems Engineering

Pair Programming

ProgramManagement

Page 17: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

17© 2007 Ivar Jacobson International

There are 100’s of so-called practices…

…but are really all the same kind of thing?

Risk-DrivenIterative

Development

Use-CaseDriven

Development

Use-CaseModeling

Test-DrivenDevelopment

Robustness Analysis

User Stories

Business Modeling

Aspect Orientation

PSP

Scrum

SOA

Retro-spectives

Product-Line Engineering

Business ProcessRe-Engineering

Prince2

Systems Engineering

Pair Programming

ProgramManagement

Page 18: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

18© 2007 Ivar Jacobson International

We need a shared definition of “practice”

Pragmatics• A practice provides a way to systematically and verifiably address a

particular aspect of a problem.– A Practice has a clear beginning and an end allowing it to be separately

applied. Each Practice gives value • Examples of practices are

– Iterative development– Use case driven development– Project management à la Scrum– Team practice incl workshops, war room,

pair programming, etc.

More precisely• A use-case module in our AOSD book

– It has a beginning and an end– It may be a peer practice or extend an existing practice

Page 19: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

19© 2007 Ivar Jacobson International

There are different kinds of practice

IterativeEssentials

ScrumEssentials

Use-CaseEssentials

UserStories

ArchitectureEssentials

ComponentEssentials

Test-DrivenDevelop’t

QAEssentials

ProcessEssentials PSP Agile

ModelingTeam

Essentials

UnifiedProcessLifecycle

Scrum-of-Scrums

Use-Casesfor Service

Def’n

Model-DrivenArch

Comp’sfor

Re-Use

PracticeHarvesting

OrgProcess

Imp

EssentialUML

DistributedTeam

VirtualTeam

Comp’sfor .Net

Measurem’tEssentials

Tech

nica

lPr

actic

esCr

oss-

Cutti

ngPr

actic

es

Peer Practice Extension PracticeKey:

Page 20: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

20© 2007 Ivar Jacobson International

Processes are just collections of practices

IterativeEssentials

ScrumEssentials

Use-CaseEssentials

UserStories

ArchitectureEssentials

ComponentEssentials

Test-DrivenDevelop’t

QAEssentials

ProcessEssentials PSP Agile

ModelingTeam

Essentials

UnifiedProcessLifecycle

Scrum-of-Scrums

Use-Casesfor Service

Def’n

Model-DrivenArch

Comp’sfor

Re-Use

PracticeHarvesting

OrgProcess

Imp

EssentialUML

DistributedTeam

VirtualTeam

Comp’sfor .Net

Measurem’tEssentials

Tech

nica

lPr

actic

esCr

oss-

Cutti

ngPr

actic

es

Peer Practice Extension PracticeKey:

Page 21: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

21© 2007 Ivar Jacobson International

Agenda

• What makes a good practice?– When is a best practice a well-formed practice?

• What is the Essential Unified Process?– Making practices available today

• What is EssWork?– Making practices useful

• Harnessing the power of practices– The real enabler of sustainable change

• Wrap up

Page 22: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

22© 2007 Ivar Jacobson International

The Unified Process

Ericsson Approach

Objectory Process

Late ’60s

‘87 –’96

IBM RUP

The Rise of Practices ?

‘96 –’00

40 years of process* development

Agile Manifesto

‘07 –> ?

XP, SCRUM & “Lightweight Methods”

‘01 –’06

Everyone's Agile

CMMI

EssUP

CMM

SW-CMM

XX-CMM

* Process, Method, Methodology, whatever...

Page 23: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

23© 2007 Ivar Jacobson International

What else have we learnt? They’re hard to learn…

You can get knowledge from books . . .….or from a web-site.

Page 24: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

24© 2007 Ivar Jacobson International

…and hard to love

• Every process tries to be complete– As a consequence every successful process will grow until it dies

under its own weight

• Every branded process is just a soup of ideas ”borrowed” from other processes– With some new idea(s)

• The process is out of sync with what the team does…– …and the project – process gap get wider and wider

• The project has to adopt an entire process– No-one uses an entire process or limits themselves to practices

from one process

It’s no wonder no-one likes process.

Page 25: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

25© 2007 Ivar Jacobson International

‘87 –’96

‘96 –’00

A different perspective - 40 years of practice development

‘07 –> ?

‘01 –’06

Use-Case Driven Development Paper, OOPSLA, 87

The Rational Objectory Process, 1997

The Objectory Process andObject-Oriented Software Engineering, Addison Wesley, 1992

The Unified Software Development Process, Addison Wesley, 1999

UML, OOPSLA, 1995IBM Method, 1996

Catalysis, 1998

Crystal, 2004

More and more methods and processes using use cases.

RUP

EssUP

And now a simple practice again… Use-CaseEssentials

Company X, Y & ZMethods

Page 26: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

26© 2007 Ivar Jacobson International

The Practices in the Essential Unified Process

TechnicalPractices

Cross-Cutting Practices

EssUP Practices

Use Case

Process Modeling

Product

Architecture

$

Component

Iteration

Team

EssUP practices have been successfully applied by many companies in many markets.

Page 27: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

27© 2007 Ivar Jacobson International

The Practices in the Essential Unified Process

TechnicalPractices

Cross-Cutting Practices

Iterative

Component

Architecture Use Case

ModelingProcess Team

EssUP Practices

Product

$

Whe

re is

testi

ng?

It is

Ever

ywhe

re!

Page 28: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

28© 2007 Ivar Jacobson International

Disciplines and practices – two complementary perspectives

A process organized as a set of disciplines. Each discipline containing

everything from every practice about an area of a process

A set of individual practices that can be composed into a process

EssUP Practices

Use Case

Process Modeling

Product

Architecture

$

Component

Iteration

Team

Page 29: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

29© 2007 Ivar Jacobson International

EssUP Practices

Use Case

Process Modeling

Product

Architecture

$

Component

Iteration

Team

Busin

ess M

odeli

ng

Requ

iremen

tsAn

alysis

& D

esign

Implm

entat

ionTe

stDe

ploym

ent

Confi

g. / C

hang

e Mgt

Projec

t Man

agem

ent

Envir

onmen

t

The 8 Essential Practices describe the essence of the Unified Process

Practices are ’end-to-end’ aspects of process

• Practices cross-cut the traditional software engineering disciplines

Page 30: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

30© 2007 Ivar Jacobson International

Consider use-case development as a practice

Use-case driven development involves • specifying the system as a set of use-

cases, • understanding what the elements of the

system need to do to enable the use cases, and

• verifying that the produced system fulfils the use cases.

This requires Requirements, Analysis, Design and Test activities to be undertaken.

Use-CasePractice

Page 31: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

31© 2007 Ivar Jacobson International

Find the Practice – The Requirements Discipline

Page 32: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

32© 2007 Ivar Jacobson International

Find the Practice – and Analysis and Design and Test

Activities from the Requirements Discipline

Activities from Analysis and

Design

Activities from Test

Page 33: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

33© 2007 Ivar Jacobson International

Requirements and testing…

…closing the loop and defining what “done” is.

Requirements define what should be implemented

Test Cases verify that the system works as specified by the Requirements

Code implements the requirements

Requirements

Implementation

Class...Pass

Fail

Test Case & Test Results

Page 34: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

34© 2007 Ivar Jacobson International

Practice descriptions have many dimensions

Weight:

Application:

Light Heavy

General Specific

Depth: Essentials Everything

Breadth: One Area Many Areas

Prescription: UnconstrainedHighlyConstrained

Ceremony: Low High

Flexibility: Open Closed

Page 35: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

35© 2007 Ivar Jacobson International

Practice descriptions have many dimensions

Weight:

Application:

Light Heavy

General Specific

Depth: Essentials Everything

Breadth: One Area Many Areas

Prescription: UnconstrainedHighlyConstrained

Ceremony: Low High

Flexibility: Open Closed

Start with a lightweight, flexible definitionthat captures the essentials

Page 36: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

36© 2007 Ivar Jacobson International

Practice descriptions have many dimensions

Weight:

Application:

Light Heavy

General Specific

Depth: Essentials Everything

Breadth: One Area Many Areas

Prescription: UnconstrainedHighlyConstrained

Ceremony: Low High

Flexibility: Open Closed

Add detail, prescription, ceremony, and formality by extension

Page 37: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

37© 2007 Ivar Jacobson International

Practice separation has many benefits

• You can learn practices individually• You can apply practices separately• You can adopt the practices you want, when you want,

and at the pace that suits you• You can mix-and-match practices from any source • You only have to change the practices that need changing

Practice Separation: The key to successful, long-lasting process improvement.

Page 38: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

38© 2007 Ivar Jacobson International

Essential Unified Process – Key characteristics

• A complete, useable software development process• Delivered in the way that suits you on the platform that

you use• That’s easy to adopt and tailor

Free Open Source Adaptive Easy to Use

Agile Lightweight Universal Extensible Scalable

Complete Sufficient Comprehensive Recursive

Page 39: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

39© 2007 Ivar Jacobson International

Agenda

• What makes a good practice?– When is a best practice a well-formed practice?

• What is the Essential Unified Process?– Making practices available today

• What is EssWork?– Making practices useful

• Harnessing the power of practices– The real enabler of sustainable change

• Wrap up

Page 40: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

40© 2007 Ivar Jacobson International

Some new innovations are required….

…to bring the practices to life and make them useful.

Defining and using Practices in a new way.

Practice Smartness

Practice Usage

Practice User Experience

Page 41: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

41© 2007 Ivar Jacobson International

Apply card game metaphor for practice descriptions

• A card contains concise description of things to produce and things to do, etc.

• A practice is a set of cards

• A team/individual works on a set of instance cards

* Ward Cunningham invented CRC cards,

published in 1989

Page 42: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

42© 2007 Ivar Jacobson International

The “Essentials” are in the cards

Page 43: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

43© 2007 Ivar Jacobson International

Process becomes an invisible part of everyday project life

Cards make the practices useful

• Cards display the essentials• Cards support daily tasks• Build the deck you need• Annotate the cards • View your cards• Automated support available• Detailed guidelines can easily be dipped into as needed• References can be accessed if more information is

needed

Page 44: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

44© 2007 Ivar Jacobson International

Some new innovations are required….

…to bring the practices to life and make them useful.

Defining and using Practices in a new way.

Practice Smartness

Practice Usage

Practice User Experience

Page 45: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

45© 2007 Ivar Jacobson International

Remember the team goal…

GoodSoftware

Current Situation

andOpportunity

To produce good software, quickly!

Page 46: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

46© 2007 Ivar Jacobson International

Three team games

Use the Practices to Assemble a Process[Process Improvement Game]

Use the Practices to Plan the Project[Planning Game]

Use the Practices in a Project[Development Game]

GoodSoftware

Current Situation

andOpportunity

All implemented within Eclipse or VSTS.

Page 47: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

47© 2007 Ivar Jacobson International

To play games with the cards – you will need a Game Board

Star

t her

e

Fini

sh h

ere

Game Board

Cards

Slots

For example - The game board for the process improvement game must allow you to describe any software process.

Page 48: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

48© 2007 Ivar Jacobson International

The game board needs slots

Opportunity Specified System Implemented System Executable System Team Project Backlog Way of Working

Customer Representative

Analyst Developer Tester Project Lead

Understand the need Ensure stakeholder

satisfaction Accept the system Specify the system Shape the system Implement the system Test the system Establish the project Steer the project Support the team Conclude the project

People and their competencies

Things to produce or to have

Things to doEvery project needs ...

... whether you document them or not

Page 49: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

49© 2007 Ivar Jacobson International

... from three areas

Opportunity

Specified System Implemented System Executable System

Team Project Backlog Way of Working

Customer representative

Analyst Developer Tester

Project Lead

Understand the need Ensure stakeholder

satisfaction Accept the system Specify the system Shape the system Implement the system Test the system Establish the project Steer the project Support the team Conclude the project

Customer

Solution

Endeavour

People and their competencies

Things to produce or to have

Things to do

Page 50: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

50© 2007 Ivar Jacobson International

Understand and enable your current practices

• The Game Board is initially a practice independent kernel

Competencie

s

Things to Pro

duce

Things to D

o

Star

t her

e

Fini

sh h

ere

• It is initially empty, it just has the slots.• Use the game board to assess what you do:

• Lightly (rely on tacit knowledge) populate it with cards that describe what you have today (your process, your practices, or parts of it).

• Improve with cards from new practices.• Mix in new practices and assess their impact

Page 51: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

51© 2007 Ivar Jacobson International

Play your cards to assemble your way-of-working

My Process

Page 52: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

52© 2007 Ivar Jacobson International

Some new innovations are required….

…to bring the practices to life and make them useful.

Defining and using Practices in a new way.

Practice Smartness

Practice Usage

Practice User Experience

Page 53: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

53© 2007 Ivar Jacobson International

Bill Gates: The Road Ahead

Newsweek December 19, 2005: ”How ’intelligent agents’ and mind-mappers are taking our information democracy to the next stage.”

Page 54: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

54© 2007 Ivar Jacobson International

People want smart, interactive practices

Add active guidance, review, checking and help by automation.

Smart Practices come with intelligent agents and automated guidance.

Use-CaseEssentials

I help withuse cases

ArchitectureEssentials

I help witharchitecture

IterativeEssentials

I help withIterative planning

Page 55: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

55© 2007 Ivar Jacobson International

Smart Practices have Smart Tools: intelligent agents

I help withuse cases

I help witharchitecture

I help withIterative planning

I help withEmbedded

Systems

I help withBusiness Systems

Active Guidance gives you expert advice just when you want it (if you

want)

Active Review monitors status, progress and quality for you (if you

want) Active Automation

performs mundane tasks for you (if you want)

Virtual Pair ProgrammersAnalystsDesignerTesterProject Managers

You learn as you work

You learn as you work

Page 56: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

56© 2007 Ivar Jacobson International

Smart Practices have Smart Tools: intelligent agents

I help withuse cases

I help witharchitecture

I help withIterative planning

I help withEmbedded

Systems

I help withBusiness Systems

Active Guidance gives you expert advice just when you want it (if you

want)

Active Review monitors status, progress and quality for you (if you

want) Active Automation

performs mundane tasks for you (if you want)

Virtual Pair ProgrammersAnalystsDesignerTesterProject Managers

You are in command

You are in command

Page 57: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

57© 2007 Ivar Jacobson International

Smart Practices have Smart Tools: intelligent agents

I help withuse cases

I help witharchitecture

I help withIterative planning

I help withEmbedded

Systems

I help withBusiness Systems

Active Guidance gives you expert advice just when you want it (if you

want)

Active Review monitors status, progress and quality for you (if you

want) Active Automation

performs mundane tasks for you (if you want)

Virtual Pair ProgrammersAnalystsDesignerTesterProject Managers

You focus on creative work

You focus on creative work

Page 58: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

58© 2007 Ivar Jacobson International

Knowledge Base

Agents and tools

Cards Guidelines

References

Practices

How it all fits together – summary this far

Star

t her

e

Fini

sh h

ere

Process Kernel

I dotest cases

Page 59: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

59© 2007 Ivar Jacobson International

Practices need to embrace what’s happening

Mash Ups

Smart Tools

Social Networking

Lightweight, composable,

sociable, intelligent practices

Page 60: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

60© 2007 Ivar Jacobson International

We’ve more than enough best practices…

Separate the practices from one another Combine them in innovative and exciting new ways Stop re-inventing the wheel Learn from the past Focus on collaboration and improvement Stop throwing the baby out with the bath water

…let’s make them useful.

Page 61: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

61© 2007 Ivar Jacobson International

We’ve more than enough best practices…

Separate the practices from one another Combine them in innovative and exciting new ways Stop re-inventing the wheel Learn from the past Focus on collaboration and improvement Stop throwing the baby out with the bath water

…let’s make them useful.

Free the Practices

Page 62: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

62© 2007 Ivar Jacobson International

This isn’t just hot air…it is available today

EssUP Practices

Use Case

Process Modeling

Product

Architecture

$

Component

Iteration

Team

UPUP Lifecycle

OtherPractices

Essential UMLDomain Modeling

SCRUM...

A number of separate but composable,

lightweight practices are already available…

Use Cases

Test Cases

OO Analysis

J2EE Design

Smart Practices

Rules Engine

Fact Servers

Rules Language

IA Platform

Integrations

EssWork / EssUP, RUPRose, XDE, RSX, ReqPro, RMT, Test Manager, etcClearCase, ClearQuest, Word, etc

…some with intelligent agents…

Cards

Star

t her

e

Fini

sh h

ere

Star

t her

e

Fini

sh h

ere

Star

t her

e

Fini

sh h

ere

Game Boards

ProcessKernel

Eclipse, Web 2.0,VisualStudio

…and an interactive environment and community can be

created.

Page 63: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

63© 2007 Ivar Jacobson International

Agenda

• What makes a good practice?– When is a best practice a well-formed practice?

• What is the Essential Unified Process?– Making practices available today

• What is EssWork?– Making practices useful

• Harnessing the power of practices– The real enabler of sustainable change

• Wrap up

Page 64: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

64© 2007 Ivar Jacobson International

Changing things is hard…

…and changing people is even harder.

“Many team and organization change and improvement efforts are lost or badly bewildered. Decades of studies have consistently shown that 50–70 percent are failing. “

Jim Clemmer, Pathways to Performance, Macmillan Canada and Prima Publishing

“…there’s enough evidence of success to say that change is possible – and enough evidence of failure to say that it isn’t likely.”

Peter Senge, the ‘father’ of the learning organization

Page 65: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

65© 2007 Ivar Jacobson International

What methodologists thinks happens in an organization

You put the process into one or two pilot projects…

Page 66: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

66© 2007 Ivar Jacobson International

What methodologists thinks happens in an organization

You put the process into one or two pilot projects……and then roll it out to everyone else.

When everybody is using it the job’s done.

Page 67: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

67© 2007 Ivar Jacobson International

What really happens

Whilst the first process is being rolled out other processes start to appear and spread.

Successful ones continue to spread – others stall.When they collide “process wars” break-out.

Page 68: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

68© 2007 Ivar Jacobson International

Harnessing the dynamics of practice adoption

Practices can harness these dynamics to support long-term sustainable change.

They avoid conflict and interference by enabling seamless composition.

Page 69: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

69© 2007 Ivar Jacobson International

The Practices in the Essential Unified Process

TechnicalPractices

Cross-Cutting Practices

EssUP Practices

Use Case

Process Modeling

Product

Architecture

$

Component

Iteration

Team

EssUP practices have been successfully applied by many companies in many markets.

Page 70: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

70© 2007 Ivar Jacobson International

Different teams use different selections of practices

Every team is different.Every practice adoption is different.

Education services company

Use CaseIteration

Team

Major Investment Bank

Modeling

Iteration Use Case

Component

Architecture

Product

$

A small teamdoing maintenance

Use CaseScrum

Team

Component

Page 71: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

71© 2007 Ivar Jacobson International

How Practices Add Value

0

20

40

60

80

100

120

Practice 1 Practice 2 Practice 3 Practice 4 Practice 5 Practice 6 Practice 7 Practice 8

The majority of the benefit comes from changing a small number of the right practices.

Page 72: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

72© 2007 Ivar Jacobson International

Practice separation has many benefits

You can learn practices individually You can apply practices separately You can adopt the practices you want, when you want,

and at the pace that suits you You can mix-and-match practices from any source You only have to change the practices that need changing

Practice Separation: The key to successful, long-lasting process improvement.

Page 73: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

73© 2007 Ivar Jacobson International

Agenda

• What makes a good practice?– When is a best practice a well-formed practice?

• What is the Essential Unified Process?– Making practices available today

• What is EssWork?– Making practices useful

• Harnessing the power of practices– The real enabler of sustainable change

• Wrap up

Page 74: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

74© 2007 Ivar Jacobson International

Lessons Learned

• Changing everything is too much and bound to fail• Evolutionary and incremental change is possible…

…and practices provide the right unit of change• Practice separation makes it easy to get started• Always start from the essentials and only add more when

needed• Introduce tools and intelligent agents to support and

sustain the change

74

Practice separation and incremental practice adoption really work.

Page 75: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

75© 2007 Ivar Jacobson International

Let’s Do Practices

From the successes in modern software

developmentAgile Methods

CampThe Software Engineering

Camp

Process Maturity Camp

In the future, an ever present but invisible process

We need a new paradigm

Process becomes second nature

The team’s way-of-working is just a composition of

Practices

Practice is a First Class Citizen the unit of adoption, planning and execution of process

Unified ProcessExamples: CMMI, Spice XP, Scrum

Page 76: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

76© 2007 Ivar Jacobson International

The current situation – methods and processes

1st Generationtacit

Ad Hoc Knowledgein textbooks

2nd Generationexplicit

Structured Knowledge in an engineered PD

USDP,SA&SD, OOSE,

Scrum, XP

RUP, MSF,Select Perspective

Page 77: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

77© 2007 Ivar Jacobson International

1st Generationtacit

Ad Hoc Knowledgein textbooks

2nd Generationexplicit

Structured Knowledge in an engineered PD

USDP,SA&SD, OOSE,

Scrum, XP

RUP, MSF,Select Perspective

EssUP & EssWork - Beyond Process Definitions.Bringing practices, teams, and tools together

The New Era – Interactive Practices – Being Here Today

Interactive Knowledgein a dynamic environment

3rd Generationinteractive

EssUP in EssWork

Page 78: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

78© 2007 Ivar Jacobson International

But we need your help

• Don’t be satisfied with brittle closed processes• Don’t be sucked into process wars and process

engineering• Don’t close your mind to changes and innovations in the

industry• Build on the good practice you use today…• … to create new and exciting ways-of-working• ….and evolve the next generation of truly best practices

Let’s capture and share all our practices.

Page 79: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

79© 2007 Ivar Jacobson International

EssUP and EssWork Product Releases

Sign up for updates on EssUP, EssWork and Waypointer at

www.ivarjacobson.com andwww.esswork.com

+

Page 80: Sioux Hot-or-Not: Essential Unified Process (Ivar  Jacobson)

80© 2007 Ivar Jacobson International

[email protected]