32
Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit www.lamri.com or email [email protected] Copyright 2003

Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit or email

Embed Size (px)

Citation preview

Page 1: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Planning with Use CasesExtracts from the Lamri Use Case Survival Guide™

Mark Aked

Managing Consultant

For more information visit www.lamri.com or email [email protected]

Copyright 2003

Page 2: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Agenda

Common GroundModern Software Engineering ProcessWhat are Use Cases?

Planning with RiskRisk Based Development LifecyclePlan Drivers

Building the Phase Plan

Summary

Questions

Page 3: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Agenda

Common GroundModern Software Engineering ProcessWhat are Use Cases?

Planning with RiskRisk Based Development LifecyclePlan Drivers

Building the Phase Plan

Summary

Questions

Page 4: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

A Modern Software Engineering Process

Rational Unified Process

Page 5: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

What are Use Cases?

A description of system behavior, in terms of sequences of actions that yield an observable result of value to Actor

Page 6: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Use Case Flow of Events

The sequence of actions are described by Flow of Events

Basic Flow (happy day flow) - what ‘normally’ happens

Alternate Flows - optional or exceptional deviations from the Basic Flow

All of the flow of events related to producing the ‘observable result of value’

A use case is a logical package/container for all of the flow of events that produce an observable result of value to an Actor

Page 7: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Agenda

Common GroundModern Software Engineering ProcessWhat are Use Cases?

Why Plan Using Risks?Risk Based Development LifecyclePlan Drivers

How to Build a Phase Plan

Summary

Questions

Page 8: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

A Functional Based Development Cycle

Page 9: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

A Functional Based Development Cycle

Page 10: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

A Functional Based Development Cycle

Page 11: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

The Logic of Risk Based Approach

Software projects fail for many reasons but commonly because we fail to address and manage risks

Unaddressed risks become issues which add rework (cost, timescale and burnout)

Without the appreciation of risk, we plan by functionality

Architecture and integration expose a high proportion of issues

Page 12: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

A Risk Based Development Cycle

Page 13: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Drivers of Risk Based Planning

Cost

Deadlines

Quality

Content

Mitigate Risk (Technical)

Page 14: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

So you don’t have technical risk?

Leading Edge

New Architecture

Novel Approach

New Technology

Developers say “…it’s an exciting project”

“We are customising it for our environment”

Page 15: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Agenda

Common GroundModern Software Engineering ProcessWhat are Use Cases?

Planning with RiskRisk Based Development LifecyclePlan Drivers

Building the Phase Plan

Summary

Questions

Page 16: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Context

Page 17: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

The Phase Plan

Page 18: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Phase Plan Development Process

Page 19: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Prepare the Risk List

Extract technical risks from the risk list

Prioritise Risks by Risk Exposure

Page 20: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Prepare the Use Cases

Ensure each use case has a - Name - Description - Basic and Alternate Flows identified at outline level - Priority

Page 21: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Select Risks for Iteration

Choose the risks to be addressed in this iteration e.g. top 3 risks.

These become the objectives for the iteration e.g. Objective 1 Mitigate RISK 1

Page 22: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Identify Candidate Use Cases

Produce a Risk/Use Case Matrix

Produce a mapping if implementing the Use Case will expose the Risk as being an issue

Page 23: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Identify Candidate Use Cases

Locate the minimum set of Use Cases required to address the selected Risks

Page 24: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Remember the objective of Elaboration is to mitigate the risk as quickly and with least effort.

All of the Use Case will not mitigate the risk, so we don’t have to implement the whole Use Case

We want to identify the parts of the Use Case that will address the risks

Parts of Use Cases are Flows

Page 25: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Identify Candidate Use Flows

Produce a mapping if implementing the Use Case Flow will expose the risk as being an issue

Page 26: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Use Case Styles

Use Case Specification style must enable each flow to be uniquely identified to allow tracing

Page 27: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Populate the Phase Plan

Page 28: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Planning Tips

If the iteration hasn’t got enough content to keep If the iteration hasn’t got enough content to keep everyone busy,everyone busy,

Add another Use Case Flow that addresses a risk within the iteration (belt Add another Use Case Flow that addresses a risk within the iteration (belt and braces approach)and braces approach)

Add another risk to the scope of the iteration and hence another Use Add another risk to the scope of the iteration and hence another Use Case FlowCase Flow

Don’t just add in another Use Case – focus on risks not building Don’t just add in another Use Case – focus on risks not building functionalityfunctionality

Page 29: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Planning Tips

For early iterations, keep the content small For early iterations, keep the content small (i.e. 1 or 2 flows)(i.e. 1 or 2 flows)

Helps people adapt to new approachHelps people adapt to new approach

Gains buy-in through successGains buy-in through success

Sets the ‘heartbeat’ for regular deliverySets the ‘heartbeat’ for regular delivery

Page 30: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

The Completed Phase Plan

Page 31: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Next Steps

Estimate the amount of effort and draw up a schedule

Fill in the Milestone Date section of the Phase Plan

Page 32: Planning with Use Cases Extracts from the Lamri Use Case Survival Guide™ Mark Aked Managing Consultant For more information visit  or email

Copyright 2003

Summary

Objective of Elaboration is to attack risks with the least amount of effort

Use risks to drive out the Use Cases to implement and then the Use Case Flows

Don’t waste effort implementing the whole use case

Implement as little as possible to mitigate the risk and move on

Don’t allocate too much to an iteration

Maintain focus