Академический Документы
Профессиональный Документы
Культура Документы
Ivar Jacobson
with
Ian Spence
Agenda
What are agile teams looking for?
Cards, conversations, and confirmations
Knowing what to do and when its done
Case Studies
The agile sweet spot a co-located team with an on-site customer
Scaling up the project adding detail where it is needed
Outsourcing working with external suppliers
Definitions of done
Acceptance and other tests
Card
Conversation
Confirmation
Theme
Agenda
What are agile teams looking for?
Cards, conversations, and confirmations
Knowing what to do and when its done
Case Studies
The agile sweet spot a co-located team with an on-site customer
Scaling up the project adding detail where it is needed
Outsourcing working with external suppliers
Withdraw Cash
Bank Customer
Use-Case Model
The purpose of the use-case model is to
explain, bound and scope a system by
providing a complete picture of its actors and
use cases.
Value
Established
System Boundary
Established
Essential Contents:
Structured
1..n Actors
References:
10
Describing a Use-Case
Use-Case Module
Use-Case Specification
Briefly Described
Bulleted Outline
Use-case specifications:
Define scenarios
Essential Outline
Essential Contents:
Fully Described
1 Name
1 Brief Description
1 Basic Flow
Basic Flow
1.
2.
3.
4.
5.
Insert Card
Validate Card
Select Cash Withdrawal
Select Amount
Confirm Availability of
Funds
6. Return Card
7. Dispense Cash
Alternative Flows
A1 Invalid Card
A2 Non-Standard Amount
A3 Receipt Required
A4 Insufficient Funds in ATM
A5 Insufficient Funds in Acct
A6 Would Cause Overdraft
A7 Card Stuck
A8 Cash Left Behind
Etc
11
Use-Case Specification
Briefly Described
1. Insert Card
Define scenarios
2. Validate
Card
Enable effective
scope management
Provide the detail to drive the other
3. activities
Select
Cash
development
and ensure
that Withdrawal
they deliver value
4. Select Amount
Essential Contents:
5. Confirm Availability of
1 Name
1 Brief Description
Funds
1 Basic Flow
6. Flows
Return Card
0..n Alternative
7. Dispense
Ivar Jacobson International, 2005-2007
Use Case EssentialsCash
2.3 / rev. 40
Bulleted Outline
Essential Outline
Fully Described
Basic Flow
Use-case specifications:
Alternative Flows
A1 Invalid Card
A2 Non-Standard Amount
A3 Receipt Required
A4 Insufficient Funds in ATM
A5 Insufficient Funds in Acct
A6 Would Cause Overdraft
A7 Card Stuck
A8 Cash Left Behind
Etc
Withdraw
Cash
Customer
Refill and
Service
the Machine
Purchase
Tickets
Deposit
Funds
Analyze System
Performance
Transfer
Funds
Charge Device
With
Funds
Burglar
Manage
Account
Break Into
Machine
Configure the
Machine
ATM
Engineer
Reconcile Transaction
Logs
ATM
Operator
Run Advertising
Campaign
Update System
Configuration
Change Pricing
Release 1:
, Release 2:
,
Release 3:
, Release 4:
, Out of Scope:
2010 Ivar Jacobson International
13
14
Many scenarios
Alt 1
Step 2
Step 3
Step 4
Alt 3
Step 5
Step 6
Alt 2
Step 7
End of use case
2010 Ivar Jacobson International
15
Test Case
Test Idea
Formulated
Scenario
Chosen
Variables
Identified
Variables
Defined
Scripted /
Automated
Inputs and
expected
results
References to:
Scenario
derived
from the
Use Case
2010 Ivar Jacobson International
16
Specified System
Use-Case Specification
Use-Case Module
Specification
Agreed
Realized
Implemented
Verified
Described by:
Use-Case Module
Briefly Described
Bulleted Outline
1 Use-Case Specification
1 Use-Case Realization
Use-case specifications:
Test Case
Define scenarios
1
Name
Chosen
the system specification
1 Brief Description
Allow tests to be specified before
1 Basic Flow
Variables
implementation starts
0..n Alternative Flows Provide a measure of system quality
Identified
Essential Outline
Fully Described
Variables
Defined
Scoped
Scripted /
Automated
Contents:
UseEssential
Case Essentials
2.3 / rev. 40
References to:
1..n Pre-conditions
1..n Input
1 Scenario
1..n Observations (with Expected Results)
1..n Use-Case Specifications (flows)
0..n Supplementary Requirements
17
Use-Case
Module 1.1
Use-Case
Module 1.2
Use-Case
Module 1.3
Use-Case
Module 1.N
Basic Flow
plus
Test Cases
1.1 1.5
Alt Flows
1-4 plus
Test Cases
1.6 1.10
Alt Flows
5-7 plus
Test Cases
1.11 1.15
Alt Flows
M-15 plus
Test Cases
1.x 1.Y
18
Use-Case
Module 2.1
Basic Flow
Scenario 1
plus
Test Case 2.1
Use-Case
Module 2.2
Basic Flow
Rest of Scenarios
plus
Test Cases
2.2 2.8
Module 2 Complete
the implementation and
testing of the basic flow.
Use-Case
Module 2.3
Basic Flow
+ Supp Reqt A,
B&C
Test Cases
2.9 2.10
The modules can include test scenarios to address the nonfunctional and well as the functional requirements.
2010 Ivar Jacobson International
19
Use case 2
3 flows
Use case 1
30 flows
Use case 3
15 really long flows
Use-Case
Module 1.1
Use-Case
Module 1.2
Use-Case
Module 1.3
Use-Case
Module 1.N
Large
Medium
Small
Very small
Large
Mediu
m
Small
0.5
Very
Small
0.25
0.5
Trivial
Easy
Hard Very
Hard
22
Done
Doable
Where
time runs
out.
At risk
23
Use-Case Module
Use-Case Module
Use-Case Specification
Bulleted Outline
Use-case specifications:
Define scenarios
Essential Outline
Fully Described
Scoped
Use-case modules may be split into parts to
allows groups of flows to be progressed at
different rates
Briefly Described
development activities
and ensure that
Briefly
Described
they deliver value
Essential Contents:
1 Name
1 Brief Description
1 Basic Flow
Specification
Agreed
Realized
Implemented
Verified
Described by:
1 Use-Case Specification
1 Use-Case Realization
Essential Outline
Fully Described
24
Agenda
What are agile teams looking for?
Cards, conversations, and confirmations
Knowing what to do and when its done
Case Studies
The agile sweet spot a co-located team with an on-site customer
Scaling up the project adding detail where it is needed
Outsourcing working with external suppliers
Lightweight use
cases to identify usecase modules.
First working
software within four
weeks.
Delivered on-time
and on-budget.
Agenda
What are agile teams looking for?
Cards, conversations, and confirmations
Knowing what to do and when its done
Case Studies
The agile sweet spot a co-located team with an on-site customer
Scaling up the project adding detail where it is needed
Outsourcing working with external suppliers
Quick and
Lightweight
Work items
for the
backlog
Definitions
of done
User Stories
Use Cases
Added Value
Stories on cards
Bulleted outlines
Placeholders for
conversations
Placeholders for
conversations
Confirmation via
test cases added to
card
Primary Purpose
Supports
Briefly Described
Bulleted Outline
Essential Outline
Fully Described
31
Tests verify
that the
system works
well enough to
satisfy the
customers
Pass
Fail
Class...
Test Cases &
Test Results
Code
implements the
use-case
modules
Code
32
Proven in Practice
The IJI Visual Studio 2010 process template has been tried in real
projects since October.
Insurance Company building a line of business application with state
of the art .NET technologies
Distributed team using TFS for requirements, planning,
communication, reporting and visibility
Six three week iterations
completed so far and the
application is evolving gradually
IJI provided mentoring and
support on the way of working
and related functionality in
Visual Studio
A first deployment is
planned for June.
2010 Ivar Jacobson International
ivar@ivarjacobson.com
ispence@ivarjacobson.com