24
Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Using the Essential Unified Process with Visual Studio Team

System

Ian Spence and Craig Lucia

Page 2: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Agenda

• Introduction• A new paradigm with several exciting innovations:

– Practice separation – Practice user experience– Practice smartness

• Innovations that can help you today:– Making process adoption easy / making VSTS adoption easy– Demonstration

• Final words

Page 3: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

What is the Essential Unified Process?

• The first Next Generation Process• A pre-built assembly of 8 core practices• The foundation for the creation of your own processes• A framework for the addition of further practices

Page 4: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

The Unified Process

Ericsson Approach

Objectory Process

Late ’60s

‘87 –’96

‘97 –’98

IBM Rational Unified Process

Good Software

‘99 –’05

Building on our heritage

Page 5: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Essential Unified Process – Key characteristics

Free

Open Source

Adaptive

Easy to Use

Agile

Lightweight

Universal

Extensible

Scalable

Complete

Sufficient

Comprehensive

Recursive

• 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

Iterative

Component

Architecture Use Case

Product

Page 6: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Bringing more power and flexibility to VSTS

• VSTS unites the team around a single way-of-working

• VSTS is very good tool for tracking and managing work

• On top of this, we can add MORE capabilities:

– Practice separation

– Process composition

– Dynamic task generation

• It is not just the work items that we define, it is the way they are used

Enhancing Visual Studio Team System

+

Page 7: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

More than just a Unified Process….

…the first of a new generation of software development processes.

Page 8: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Agenda

• Introduction• A new paradigm with several exciting innovations:

– Practice separation – Practice user experience– Practice smartness

• Innovations that can help you today:– Making process adoption easy / making VSTS adoption easy– Demonstration

• Final words

Page 9: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

A Next Generation Process is not monolithic

From the successes in modern software

development

Agile Methods Camp

Unified Process Camp

Process Maturity Camp

In the future, an ever present but invisible process

Process becomes second nature

A new paradigm

Practice is a First Class Citizen

the unit of adoption, planning and execution of process

Practice Separation

Practice User

Experience

Practice Smartness

And the innovations of

a new paradigm

Page 10: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

A Next Generation Process is not monolithic

From the successes in modern software

development

Agile Methods Camp

Unified Process Camp

Process Maturity Camp

In the future, an ever present but invisible process

Process becomes second nature

A new paradigm

Practice is a First Class Citizen

the unit of adoption, planning and execution of process

Practice Separation

Practice User

Experience

Practice Smartness

And the innovations of

a new paradigm

NEW

Page 11: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Balancing the practitioners’ view and the process engineers’ view

Making the Essential Unified Process easy to use, easy to adopt and even more effective

I need to get things done

ProcessEngineer Practitioner

There must be uniformity and

consistency

Page 12: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Agenda

• Introduction• A new paradigm with several exciting innovations:

– Practice separation – Practice user experience– Practice smartness

• Innovations that can help you today:– Making process adoption easy / making VSTS adoption easy– Demonstration

• Final words

Page 13: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

What is a Practice?

Pragmatics• A Practice is a set of activities to give value to a particular stakeholder of a

software organization

• A Practice – explicit knowledge waiting to be put into action– A set of compatible process elements that can be added to a process to address a

risk or extend an existing practice– A practice includes its own verification providing it with a clear beginning and an

end, and allowing it to be independently applied

• Our practices are supplied as a set of cards and guidelines defining a way of doing something

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 14: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

The Practices in the Essential Unified Process

TechnicalPractices

Social Engineering Practices

Process Practices

Organizational Practices

Iteration

Component

Architecture Use Case

ModelingProcess Team

Title

EssUP Practices

ProductW

here

is te

stin

g?

It is

eve

ryw

here

!

Page 15: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Building a process eco-system around 8 Essential Practices

• There will be 100s of practices extending the essentials

PSP / TSP Pair Programming

Social Engineering Practices

Extended CMMI

6 Sigma Prince2

Process Practices

Organizational PracticesPortfolio

Management

ProgramManagement

Enterprise Architecture

Product Line Eng.

SOA

REUSE Model Driven Architecture

Systems Engineering Business Use-Case

Domain Modeling

Robustness Analysis

Aspect Orientation

Technical Practices

Iteration

Component

Architecture Use Case

ModelingProcess Team

Title

EssUP Practices

Product

Page 16: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Practices can be applied individually

..or in any combination (with or without the introduction of local practices)

Use Case

A team starting out with use cases

Iterative ComponentUse Case

Team

A small team doing maintenance

Existing Local PracticesPRINCE2

ComponentArchitecture Use Case

ModelingProcess Team

Title

A large formal project

Iterative

Page 17: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

All within VSTS

PracticePracticePracticePractice

Add

Instantiate only the practices you need within VSTS.

Incrementally compose the process and the project schema.

Page 18: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Practice BrowserPractice Explorer

For Browsing Authoring, and

Composing Practices

Page 19: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Agenda

• Introduction• A new paradigm with several exciting innovations:

– Practice separation – Practice user experience– Practice smartness

• Innovations that can help you today:– Making process adoption easy / making VSTS adoption easy– Demonstration

• Final words

Page 20: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Today, process descriptions are designed for process engineers

• Usually presented in books or web pages.– That nobody reads

• Usually out-of-date– And not what’s actually done

• Not accessible or easy to work with– And don’t contain the advice you need

It’s a law of nature:Most people don’t read books,

especially long process descriptions.

Page 21: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

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

Essen

tial U

nified

Pro

cess

©Iva

r Jac

obso

n Inte

rnati

onal,

2006

revisi

on 24

A test

case

def

ines

a se

t of t

est in

puts a

nd

expec

ted

resu

lts fo

r the

pur

pose

of

evalu

atin

g w

heth

er o

r not a

syst

em

corr

ectly

impl

emen

ts a

spec

ific s

cena

rio.

Test C

ase

UCDD

Test

cas

es:

•Pro

vide

a foun

datio

n fo

r des

igni

ng an

d

implem

entin

g te

sts

•Allo

w the c

omplet

ion

of s

yste

m

spec

ificat

ion

•Allo

w test

s to

be sp

ecifie

d be

fore

impl

emen

tatio

n st

arts

Essen

tial C

onten

ts:

•1..

n Pr

e-c

onditio

ns fo

r tes

t

•1.

.n In

put

•1..

n Exp

ecte

d Res

ults

Refer

ence

s to

:

•1..

n Use

-Cas

e Flo

ws (

defin

ing

a

scen

ario

to b

e tes

ted)

Scena

rio

Cho

sen

Test D

ata

and

Res

ults

Def

ined

Varia

bles

Defin

ed

Spec

ified

Sys

tem

Ess

entia

l Uni

fied

Proc

ess

©Iv

ar J

acob

son

Inte

rnat

iona

l, 20

06

revis

ion

24

Sp

ecif

y T

est

Spe

cify

a te

st to

:

•V

erify

that

the

exec

utab

le s

yste

m

perf

orm

s as

sp

ecifi

ed

•D

efin

e h

ow th

e ou

tco

mes

of t

he te

sts

are

eval

uat

ed to

det

erm

ine

the

test

res

ults

•Fo

cus

the

deve

lopm

ent o

f the

sof

twar

e

tow

ards

the

test

s it

mus

t mee

t

The

act

ivity

is c

om

plet

ed w

hen

:

•Te

st:

Spe

cifie

d

•Te

st S

pec

ifica

tion:

Te

st C

ases

Iden

tifie

d

or b

eyon

d

Rec

om

men

ded

ap

proa

ches

:

•In

depe

nde

nt s

yste

m te

st

•R

egre

ssio

n te

st

•In

tegr

atio

n te

st

UC

DD

Test

er

Exe

cuta

ble

Sys

tem

Spec

ified

Sys

tem

Bac

klog

Dev

elo

per

Pro

ject

Lea

d

Tes

t

Spe

cific

atio

n

Test

Inte

grat

e an

d T

est

Exe

cuta

ble

Sys

tem

Ess

entia

l Uni

fied

Proc

ess

©Iv

ar J

acob

son

Inte

rnat

iona

l, 20

06

revis

ion

24

Spec

ified

Sys

tem

Tra

ck P

rog

ress

Com

pare

act

ual p

rogr

ess

with

the

pla

n to

:

•Q

uic

kly

iden

tify

pro

blem

are

as

•U

nd

erst

and

pro

gres

s an

d v

elo

city

•P

red

ict m

ilest

one

com

ple

tion

•A

sses

s m

ilest

one

ach

ieve

men

ts

The

activ

ity is

com

ple

ted

whe

n:

•Te

st R

esu

lts:

Eva

luat

ed

•B

ackl

og it

ems

addr

esse

d (s

uch

as

scen

ario

s an

d d

efec

ts) h

ave

bee

n

mar

ked

as

Ver

ified

•T

he U

se-C

ase

Mo

dule

flo

ws

add

ress

ed

have

bee

n m

arke

d a

s V

erifi

ed

•M

ilest

one

ach

ieve

men

t has

bee

n

reco

rded

an

d te

am v

elo

city

is k

now

n

Rec

om

men

ded

app

roac

hes:

•C

on

tinu

ous

pro

gres

s tr

acki

ng

•D

emo

nst

rate

res

ults

reg

ula

rly

UC

DD

Bac

klo

g

Dev

elo

per

An

alys

t

Pro

ject

Lea

d

Tes

ter

Use

-Cas

e

Mo

du

le

Bac

klo

g

Exe

cuta

ble

Sys

tem

Tes

t

Res

ults

Sp

ecifi

ed

Syst

em

Bac

klo

g

Exe

cuta

ble

Syst

em

Ste

er P

roje

ct

Ess

e nti a

l Uni

f ied

Pr o

cess

©Iv

ar J

acob

son

I nt e

rnat

ion a

l, 20

06

r evis

i on

24

A u

s e-c

a se

spec

i fica

tion

des

c rib

es h

ow

a n a

cto

r u

ses

a sy

stem

to a

c hie

ve a

go

al

a nd

wh

a t th

e sy

s te m

do

e s fo

r th

e ac

tor

to

ach

ieve

that

go

al.

Use

-cas

e sp

eci fi

catio

ns:

•C

aptu

re re

qu

irem

ents

in c

on t

e xt

•D

e fin

e s c

enar

ios

•E

nab

le e

ffe c

tive

s co

pe

man

age m

ent

•P

rovi

de

the

det

ail t

o d

riv e

the

oth

e r

de v

elo

pm

ent a

cti v

i ties

an

d e

n su

re th

a t

they

de l

i ver

val

ue

Brie

fly D

es c

ribe

d

Es s

entia

l Ou

tlin

e

Fu

lly D

es c

ribed

Bu

llete

d O

utl in

eUse

-Cas

e S

pec

ifica

tion

UC

DD

Ind

ivid

ual

Flo

ws

ma

y h

av e

dif

fere

nt

deg

ree

s o

f el

ab

ora

tio

n

Ess

enti a

l Co

nte

nts

:•

1 N

ame

•1

Bri

e f D

escr

iptio

n•

1 B

asic

Flo

w•

0..n

Alte

rnat

ive

Flo

ws

Sp

ecif i

ed S

yste

m

Esse

ntia

l Uni

fied

Proc

ess

©Iv

ar J

acob

son

Int e

rna t

iona

l, 2 0

06

revi

sion

24

Exe

cute

Tes

t

Tes

ter

Exe

cute

a te

st to

:

•V

erify

tha

t the

exe

cuta

ble

syst

em m

eets

the

eval

uat

ion

crit

eria

of t

he te

st

•Id

entif

y de

fect

s an

d p

lace

in th

e ba

cklo

g

to e

nsu

re th

at th

ey a

re a

ddr

esse

d

The

activ

ity is

com

ple

ted

whe

n:

•T

est:

Eva

luat

ed

•A

ny

Def

ects

: Id

entif

ied

and

add

ed to

the

Bac

klo

g•

Tes

t Res

ults

: A

nal

yzed

Rec

omm

end

ed a

ppro

ache

s:

•A

utom

ated

test

ing

•P

rog

ram

mat

ic te

stin

g

•M

anu a

l tes

ting

UC

DD

Exec

uta

ble

Sys

tem

Spe

cifie

d Sy

stem

Bac

klog

Test

R

esul

ts

T est

Exec

uta

ble

Sys

tem

Bac

klog

Def

ect

Inte

gra

te a

nd

Tes

t

Dev

elo

per

Essen

tial U

nified Pro

cess

©Iva

r Jac

obso

n Inter

nationa

l, 2006

revisi

on 24

Skilled

at ga

ther

ing an

d com

munica

ting

stak

ehol

der n

eeds

. Has

a th

orough

knowled

ge of t

he dom

ain in

which

the

solu

tion w

ill be d

eplo

yed.

Custom

er R

epre

senta

tive

Custo

mer

repr

esen

tative

s help

the t

eam

to:

•Def

ine p

riorit

ies

•Iden

tify s

take

holders

•Unde

rsta

nd the b

usin

ess o

pportu

nity

•Unde

rsta

nd th

e pro

blems a

nd n

eeds

of

the s

take

holder

s

•Cap

ture

and ev

aluate t

he req

uirem

ents

•Vali

date

the d

elive

red sy

stem

Essen

tial S

kills:

•Dom

ain kn

owled

ge

•Com

mun

icatio

n skills

•Bui

lds t

rust

•Cap

able

of par

ticipat

ing in

modeli

ng

sess

ions

Subjec

t Mat

ter

Expert

Ambas

sado

r

Use

r

Projec

t

Adviso

r

Active

ly M

anages

Scope

Dire

cts th

e

Busines

s

UCDD

* Ward Cunningham invented CRC cards,

published in 1989

Page 22: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

The “Essentials” are in the cards

Page 23: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

Supported by simple guidelines and references

I dotest cases

Reference books

Intelligent Agents

RUP Knowledge Base

Page 24: Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia

See the cards within VSTS

Process Guidance