Introduction to Agile and SCRUm
-
Upload
sumeet-moghe -
Category
Technology
-
view
675 -
download
2
Transcript of Introduction to Agile and SCRUm
Thursday 19 March 2009
Implementing SCRUMResponding to change
Training & Education
Thursday 19 March 2009
Objectives
Thursday 19 March 2009
Thursday 19 March 2009
Building a house
Thursday 19 March 2009
Some history
Thursday 19 March 2009
Software Engineering
Thursday 19 March 2009
Thursday 19 March 2009
The people who build this
Thursday 19 March 2009
0
1.25
2.5
3.75
5
Bugs/ KLOC
Industry NASA
NASA’s Defect Density
Thursday 19 March 2009
0
1.25
2.5
3.75
5
Bugs/ KLOC
Industry NASA
pretty good, right?
NASA’s Defect Density
Thursday 19 March 2009
0
1.25
2.5
3.75
5
Bugs/ KLOC
Industry NASA
Another data point...
0
225
450
675
900
Cost ($/LOC)
Thursday 19 March 2009
heavy method...
Thursday 19 March 2009
high risk
Thursday 19 March 2009
high cost
Thursday 19 March 2009
less flexibility to change
Thursday 19 March 2009
Waterfall
Thursday 19 March 2009
Thursday 19 March 2009
Requirements
Thursday 19 March 2009
Requirements
Design
Thursday 19 March 2009
Requirements
Design
Develop
Thursday 19 March 2009
Requirements
Design
Develop
Verify
Thursday 19 March 2009
Requirements
Design
Develop
Verify
Maintain
Thursday 19 March 2009
Strengths
Thursday 19 March 2009
Weaknesses
Thursday 19 March 2009
People make mistakes
Thursday 19 March 2009
Pitfalls
Thursday 19 March 2009
big
Thursday 19 March 2009
big Bang
Thursday 19 March 2009
early change
Thursday 19 March 2009
Thursday 19 March 2009
late change
Thursday 19 March 2009
Thursday 19 March 2009
Change is expensive!
Thursday 19 March 2009
Fixed Plans
Thursday 19 March 2009
predicting change...
Thursday 19 March 2009
is difficult ...
Thursday 19 March 2009
without a crystal ball
Thursday 19 March 2009
Adversarial Relations
Thursday 19 March 2009
and hence...
Thursday 19 March 2009
not fun!
Thursday 19 March 2009
Introducing Agile
Thursday 19 March 2009
An approach
Thursday 19 March 2009
given human reality
Thursday 19 March 2009
Guiding Values
Thursday 19 March 2009
Feedback
Thursday 19 March 2009
Communication
Thursday 19 March 2009
Courage
Thursday 19 March 2009
Simplicity
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
build your manifesto
Thursday 19 March 2009
Individuals & Interactions
Working Software
Customer Collaboration
Responding to Change
Processes & Tools
Contract Negotiation
Comprehensive Documentation
Following a plan
Thursday 19 March 2009
Individuals & Interactions
Working Software
Customer Collaboration
Responding to Change
Processes & Tools
Contract Negotiation
Comprehensive Documentation
Following a plan
Over
Over
Over
Over
The Agile Manifesto
Thursday 19 March 2009
Your Approach
Thursday 19 March 2009
SCRUMThursday 19 March 2009
Moving from...
Thursday 19 March 2009
Software Delivery Marathon
Analysis Design Develop Test Maintain
Thursday 19 March 2009
Moving to...
Thursday 19 March 2009
Sprint
Analysis Develop Test
Sprint
Analysis Develop Test
Sprint
Analysis Develop Test
Tw
eak
Tw
eak
Simple DesignContinuous IntegrationBuild & Deployment Automation
Thursday 19 March 2009
Incremental Development
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Iterative Development
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
once != iteration
Thursday 19 March 2009
The Scrum Master
Thursday 19 March 2009
Guru NOT Nanny
Thursday 19 March 2009
Sprint Planning
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Typical of a SCRUM Team
Thursday 19 March 2009
Typical of a SCRUM Team
Yesterday’s Weather
Thursday 19 March 2009
Collective ownership
Thursday 19 March 2009
Moving from...
Thursday 19 March 2009
Thursday 19 March 2009
My Project Plan
Thursday 19 March 2009
Moving to...
Thursday 19 March 2009
In Analysis Ready for Dev In Dev Dev Complete In QA QA Complete
Thursday 19 March 2009
In Analysis Ready for Dev In Dev Dev Complete In QA QA Complete
Our Card Wall!
Thursday 19 March 2009
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
When we planned to finish
Burn Up Chart
Thursday 19 March 2009
I1 I2 I3 I4 I5 I6 I7 I8 I9 I10 I11 I12 I130
37.5
75
112.5
150
Scope Planned Actual Projected
When we planned to finish
When we should finish
Burn Up Chart
Thursday 19 March 2009
Planned Actual Projected
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
When we planned to finish
Burn Down Chart
Thursday 19 March 2009
Day1 Day 2 Day 3 Day 4 Day 5 Day 6 Day 7 Day 8 Day 90
37.5
75
112.5
150
Planned Actual Projected
When we planned to finish
When we should finish
Burn Down Chart
Thursday 19 March 2009
Tips for Implementation
Thursday 19 March 2009
Analysis Development Management
Thursday 19 March 2009
Analysis
Thursday 19 March 2009
Moving from...
Thursday 19 March 2009
Name
FR-4: Case sensiti
vity in search-and-replace
Requirements
When a user invokes the search-and-replace function, the
software must g
ive the option to do a case-sensitive search.
By default, the search will match any text w
hich has the same
letters as the search term, even if the case is
different. If
the user
indicates that the search is t
o be done with case-sensitivity turned
on, then the so
ftware will o
nly match text in the document w
here
the case is identical to
that of the search term.
During a search and replace, when the so
ftware replaces original
text in the document w
ith the replacement text specified by the
user, the softw
are retains the case of th
e original text as follows:
•If th
e original text was all uppercase, then the replacement
text must b
e inserted in all uppercase.
•If th
e original text was all lowercase, then the replacement
text must b
e inserted in all lowercase.
•If th
e original text had the first character uppercase and the
rest of th
e characters lowercase, then the replacement text
must reflect th
is case as w
ell.
•If th
e original text was sentence case (w
here the first letter of
each word is uppercase), th
en the replacement text must b
e
inserted in sentence case.
•In all o
ther cases, the replacement text sh
ould be inserted
using the case that was specifie
d by the user.
References
UC-8: Search
Nonfunctional Requirements
Nonfunctional requirements impose constra
ints on the design or im
plementation (such as performance re
quirements,
quality sta
ndards or design constraints).
Users have implicit e
xpectations about how well the so
ftware will w
ork. These characteristi
cs include how easy the
software is
to use, how quickly it executes, h
ow reliable it is, a
nd how well it behaves w
hen unexpected conditions
arise. The nonfunctional re
quirements define these aspects about th
e system. (The nonfunctional requirements a
re
sometimes re
ferred to as “non-behavioral requirements” or “softw
are quality attrib
utes”.)
The nonfunctional requirements s
hould be defined as precisely as possible. Often, th
is is done by quantify
ing them.
Where possible, the nonfunctional re
quirements should provide specific measurements which the softw
are must
meet. The maximum number of se
conds it must ta
ke to perform a task, th
e maximum size of a database on disk, th
e
number of hours per day a system must b
e available, and the number of concurrent users supported are examples of
requirements that th
e software must im
plement but do not change its behavior.
This section will contain multip
le nonfunctional requirements, e
nough to define all of th
e performance and quality
attributes of the softw
are. Nonfunctional requirements can use the same template as functional requirements
(above). The following table shows an example of a nonfunctional re
quirement:
Name
NF-7: Performance constraints for search-and-replace
Summary
The search-and-replace feature must perform a search quickly
Rationale
If a search is n
ot fast e
nough, users will a
void using the software.
Requirements
A case-insensitive search-and-replace performed on a 3MB
document with twenty 30-character search terms to be replaced
with a different 30-character se
arch term must take under 500ms
on a 700mhz Pentium III running Microsoft W
indows 2000 at
50% CPU load.
Applied Software Project Management
Andrew Stellman & Jennifer Greene
http://www.stellman-greene.com!
4!
Requirements specification
Thursday 19 March 2009
Moving to...
Thursday 19 March 2009
As a Role
I want to Process
So that Goal
User Stories
Thursday 19 March 2009
A useful resource
Thursday 19 March 2009
]
Thursday 19 March 2009
Lo/Mid Fi Prototypes
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Analysis Development Management
Thursday 19 March 2009
Development
Thursday 19 March 2009
Testing
Thursday 19 March 2009
Unit Tests
Thursday 19 March 2009
Test Automation
Thursday 19 March 2009
Test Automation
Thursday 19 March 2009
Test Automation
Thursday 19 March 2009
Test Automation
Thursday 19 March 2009
Developers
Thursday 19 March 2009
Moving from...
Thursday 19 March 2009
Solo Coding
Thursday 19 March 2009
Moving to...
Thursday 19 March 2009
Thursday 19 March 2009
Pairing
Thursday 19 March 2009
Mentorship
Pairing
Thursday 19 March 2009
Continuous Integration
Thursday 19 March 2009
Analysis Development Management
Thursday 19 March 2009
Management
Thursday 19 March 2009
Story Wall
Thursday 19 March 2009
Thursday 19 March 2009
Self Organizing Team
Thursday 19 March 2009
Standup Meeting
Thursday 19 March 2009
Big, Visible Charts
Thursday 19 March 2009
Retrospectives
Thursday 19 March 2009
Thursday 19 March 2009
Thursday 19 March 2009
Questions?
Thursday 19 March 2009
Thank You
Thursday 19 March 2009