Upload
alyssa-shelton
View
222
Download
2
Tags:
Embed Size (px)
Citation preview
1
Agile Project Management
Mark Stringer
2
3
Introductions
• Who am I?• Who are you?
4
Why are you here today?
• Why are you here?• What are you hoping to learn?
5
Why am I here today?
• Web/Digital is different• Agile can deal with it (better)
6
Activity: Good/Bad Happy/Sad Project
• What kinds of words and phrases describe a happy project?
• What kinds of words and phrases describe a sad project?
7
8
Differing approaches to project management
Why web is different
In-depth look at iterative development
Stories
Estimation
Iterations
Tests
Velocity
Meetings
Role of the Project Manager
Introduction to Agile
9
Project Management is about Dealing with Change
“the problem isn’t change because change is going to happen, the problem is our inability to cope with change” – Kent Beck, Extreme Programming
10
“Writing software is a creative process, like painting or writing or architecture” - Ken Schwaber – author Software Development using Scrum
Artistic Making
11
12
13
14
15
16
17
18
19
20
http://www.guardian.co.uk/tsunami/story/0,15671,1381830,00.html
http://www.guardian.co.uk/world/2009/apr/10/somali-pirates-hostage-us-miltary
21
Flickr, del.icio.usTagging
no taxonomy
PageRank eBayreputation
Amazon reviews:useras contributor
Blogs: ParticipationNot Publishing
BitTorrentRadical Decentralization
Gmail, Google Maps and AJAX
Rich User Experiences
Google Adsensecustomer self-serviceenabling the long tail
Wikipedia:Radical Trust
Strategic Positioning• The Web as Platform
User Positioning•You control your own data
Core Competencies• Services, not packaged software• Architecture of Participation• Cost-effective scalability• Remixable data source and data-transformations• Software above the level of a single device• Harnessing Collective Intelligence
An attitude not a technology
The Long Tail
Data as the Intelinside
Trust your users
Small Pieces Loosely Joined - web as
components
Rich User Experience
The Perpetual BetaSoftware that gets
better the more peopleuse it
Play
HackabilityGranular Addressability
of content
Emergent: User behaviour not predetermined
The Right to Remix“Some Rights Reserved”
22
Traditional Waterfall Project Management
Specification
Design
Code
Test
Final Product?
23
Of the important things, choose some that you think you can finish during the iteration
One at a time, work through the things you choose until time is up
Look at the list of things to do and decide which are most important
Those things that you didn’t get done go back on the list of things to do along with any new things to do that you noticed during the iteration
Iterative project approach
24
An iterative approach
• Don't try to do everything at once• Don’t think you need to know everything
before you start• Do the most important things first• Set a (short) time limit• Learn from each iteration• This is nothing new – it is common to
both artistic making and scientific enquiry
25
Activity: Waterfall vs Iterative
Task1. Write down three things that are done
using “Waterfall” methods2. Write down three things that are done
“Iteratively”
26
Activity: Minimum Iteration
Client briefWe want you to put on a production of Romeo and Juliet
TaskCome up with single words or terms that describe each of the constituent parts of a production and write them on post-its
27
Activity: Minimum iteration
TaskPut your post-its into three piles:1. Absolutely must have2. Would be nice to have3. Would be the icing on the cake
28
29
Differing approaches to project management
Why web/digital is different
In-depth look at iterative development
Stories
Estimation
Iterations
Tests
Velocity
Meetings
Role of the Project Manager
Introduction To Agile
30
Stories
31
Stories
“List all of the things that the system should include and address, including functionality, features and technology.” Ken Schwaber - Scrum
Stories then form the basis of an ongoing dialogue between the client and the development team NOT a concrete specification.
32
PriorityEffort
Scope
Stories: scope, priority, effort
33
Stories
• Things to do are listed in terms of stories• Each story describes a want or need,
visible to the client• Stories ideally produced with the client
(whether internal or external).
34
Stories: Client BriefYacht and Boat Modeller Monthly has decided to completely overhaul its on-line presence. The aim is that when people type “model yacht” or “model boat” into a search engine that YBMM.cheapyserve.co.uk is in the top 10 results.
YBMM has decided to make all the articles that are available in its print edition available on-line 4 weeks after they are available on the news stands. It has also decided to make facsimile copies of all of its back issues available and searchable on-line.
However, in order to access all this valuable information, visitors to the site must register for free. Once they have registered, they can rate and comment on articles on the site. From these ratings a “most popular articles of the month” and “most popular articles from the archives” list can be created which should be displayed on the front page of the site.
YBMM will use this list of enthusiasts as a new revenue stream – selling space in a monthly newsletter to its advertisers.
35
Stories: Story writing
Search for an article Search for a facsimile archive article Make facsimile copies searchable On-line registration Registered Users can comment on articles Registered Users can rate articles Most popular recent article table Most popular archived article table Production of mailing list for newsletter Site Design SEO – Search Engine Optimisation Domain name
Possible stories for YBMM Online
36
Activity: Extracting Stories
Task
Read through the brief
identify stories by writing them up on index cards
37
Activity: Extracting StoriesThrills and Swoon OnlineThrills and Swoon have been publishing romance novels since 1928, they sell 2 million books a year. T&S were recently purchased by the multimedia giant Big Corp, Big Corp feel that there is a market for selling T&S books as downloads on line. They are especially interested in publishing T&S's back catalogue and are also interested to use T&S's experience in this market to inform similar attempts to provide on line access to other Big Corp titles.
If people type “Romance Novel” into a Google, the T&S site should be in the top 5 results returned – ideally, in the top 1! People visiting the site will be able to search and browse through titles that are available on line by keyword and by sub-genre e.g. Hospital, Historical, Military, Supernatural. Some titles will be available for free. But ONLY after visitors to the site have registered and provided their details. Some other titles will require payment protected by Digital Rights Management.
Thrills and Swoon have a mailing list of over a million women worldwide, half of whom regularly by romance books by mail order. They want to bring this community on line, giving them the opportunity to write reviews of the books, give the books a five star rating and recommend them to friends.
The aim is that the site will make money by selling advertising space to advertisers interested in targeting the readership of T&S novels. Banner advertising will be provided by another of Big Corp's companies, the Ab Fab Ad company.
38
PriorityEffort
Scope
Stories: scope, priority, effort
39
Stories: Prioritisation
*** Must haves** Nice to haves* Icing on the cake
Search for an article ***Search for a facsimile archive article (is this different?) ***Make facsimile copies searchable ***On-line registration ***Registered Users can comment on articles **Registered Users can rate articles **Most popular recent article table *Most popular archived article table *Production of mailing list for newsletter *Site Design ***SEO – Search Engine Optimisation **Domain name **
40
PriorityEffort
Scope
Stories: scope, priority, effort
41
Stories: Effort
Estimated in points: 1 point = 0.5 days
Search for an article *** Search for a facsimile archive article*** Make facsimile copies searchable*** On-line registration *** Site Design *** Registered Users can comment on articles ** Registered Users can rate articles ** Most popular recent article table * Most popular archived article table * Production of mailing list for newsletter * SEO – Search Engine Optimisation ** Domain name **
42
Activity: priority
1. Prioritise each story with client (Mark will pretend to be the client)
*** = must have** = nice to have* = icing on the cake
43
Differing approaches to project management
Why web/digital is different
In-depth look at iterative development
Stories
Estimation
Iterations
Tests
Velocity
Meetings
Role of the Project Manager
Introduction to Agile
44
Estimation
45
Highs and Lows - the Geometric mean
• What’s the shortest possible time that this could take?
• What’s the longest time that this could take (use the same units).
Estimate = A x B
46
Highs and Lows - the Geometric mean: Worked
Example, Thrills and Swoon
• What’s the shortest possible time that this could take? A week - 5 days.
• What’s the longest time that this could take (use the same units). A year - 200 days
Estimate = 5x200
Estimate = 1000
= 30 days
47
Planning Poker
Coffee?1004020138
53211/20
48
Knock Knock Knock…
49
Activity: Estimation
Use “Kock, knock, knock” to estimate the number of points that each of the stories that you identified will take.
50
Review: Stories
What are the three variables that make up stories?What is the difference between a story and a specification?
51
PriorityEffort
Scope
Stories: scope, priority, effort
52
Iterations
53
Identify an Iteration
• What is the minimum list of useful things you can complete in a specified time period?
• Whole team negotiates which stories should be completed in the next iteration
• Client negotiates with team members about scope, priority and effort of stories
• Time-boxed meeting to identify the iteration
• Give it a name
• WORKING SOFTWARE as soon as possible
54
Iteration 1
Example: Identify an Iteration
Search for an article *** 5 points Search for a facsimile archive article*** 5 points Make facsimile copies searchable*** 20 point On-line registration *** 5 points Domain name ** 5 points Site Design *** 20 points Registered Users can comment on articles ** 14 points Registered Users can rate articles ** 20 points Most popular recent article table * 10 points Most popular archived article table * 5 points Production of mailing list for newsletter * 10 points SEO – Search Engine Optimisation ** 30 points
55
Activity: iteration
Task• Decide on iteration length (you have a team of 3)• Decide on what stories will make up the first
iteration and agree this with your client (Mark)
56
Tests
57
Types of tests
• What is a test?– It is the thing that allows you to know when you are
done• Teams may contain dedicated testers whose job
is to run the tests• Technical
– Pass or fail test (can be automated)• Non-technical
– Pass or fail criteria (e.g. client sign off)• What if a test fails?
– If a task hasn’t passed it’s test by the end of the iteration then it is counted as ‘not done’
58
Example: Iterations and tests
Iteration 1
Search for an article *** 5 pointsTest:1) Enter a search term for the article in the page 2) Press search button3) a results table is returned containing the appropriate articles for the search term.
Search for a facsimile archive article*** 5 points Make facsimile copies searchable*** 20 point On-line registration *** 5 points
59
Activity: write some tests
Task• Write tests for the stories in your first
iteration• Hand over stories to Mark
60
Review: tests
What is the role of tests?What happens if the tests are not completed?
61
Differing approaches to project management
Why web is different
In-depth look at iterative development
Stories
Estimation
Iterations
Tests
Velocity
Meetings
Role of the Project Manager
Introduction to Agile
62
Velocity
63
64
? ?Know your velocity
65
Activity: Velocity
Task• Calculate the velocity of a someone in the
room
66
Velocity
• Velocity is project specific and can change from iteration to iteration
• Calculate velocity: how many story points did you actually deliver in the last iteration?
• How does this compare to what you said you would do?
67
EA Spouse
The blog post that cost the one of the world’s biggest games company in the world $100M
68
Example: Estimated vs. Actual Velocity
Start of iteration
Estimated velocity = 40 points
End of iteration
Actual velocity = 20 points
Search for an article *** 5 points Search for a facsimile archive article*** 5 points Make facsimile copies searchable*** 20 point On-line registration *** 5 points Domain name ** 5 points
Search for an article *** 5 points Search for a facsimile archive article*** 5 points Make facsimile copies searchable*** 20 point On-line registration *** 5 points Domain name ** 5 points
69
Review: velocity
How do we calculate the velocity of an iteration?How do we know the total development points that there are to ‘spend’ on the next iteration?
70
Activity: Velocity and the second iteration
Task
1. Work out the current velocity of the project
2. Choose stories for the second iteration using the current project velocity
71
Activity: Client changes their mindAfter several years of tortuous negotiations, Big Corp have finally arrived at a deal with Orinoco.com, the world leader in on line book sales. Big Corp executives have been happy with the way that the Thrills and Swoon on line project is going and would like to use the Thrills and Swoon on line site as a pilot for their partnership Orinico.com. As well as being offered the opportunity to download the back- catalogue of Thrills and Swoon, visitors to the site will be given the opportunity to purchase the book via Orinoco.com's “publish on demand” service (having entered their payment details, a paperback copy of the book of their choice will be printed especially for them). Orinoco.com's pubish on demand service will now be integrated into the Thrills and Swoon online site.
As part of the deal, Orinoco have also agreed to provide access to their own database of the German Gothic Romances owned by the company Shmaltz und Zucker. This means that the entire site will need to be made capable of translation into German (it's well know, that on average German translations are one and a half times the length of English, so this may well affect the design).Task1. Extract more stories2. Negotiate new priorities with client (Mark)3. Visit the other team and compare
72
Differing approaches to project management
Why web/digital is different
In-depth look at iterative development
Stories
Estimation
Iterations
Tests
Velocity
Meetings
Role of the Project Manager
Introduction to Agile
73
Meetings
74
Types of Meetings
• Story extraction• Daily stand ups• Iteration planning meetings• Client demo• Client feedback meetings
75
Meetings: story extraction
• Story extraction initiates the project and continues throughout
• Must be done with the product owner• There should be a single product owner,
the person who gets client agreement over what the stories are and has the power to prioritise for the client (they can be client or delivery side)
76
Meetings: daily stand up
• Time boxed – 15 minutes• Same time, same place, everyday (but in
real world, can be online)• Mustn’t be silent!• Everybody talks• What did I do yesterday?• What am I doing today?• What obstacles are there?
77
Meetings: iteration planning meetings
• Time-boxed – to be agreed by team• Reschedule if not complete when time box
finishes• Product owner must be present
– If the client can’t be there, appoint a product owner
• Outcome: prioritised, effort estimated stories to be delivered in a fixed time scale (iteration)
78
Meetings: pigs and chickens
• Fry up: the chicken is involved but the pig is committed
• Ideally you only want pigs• If pigs and chickens are
present, only pigs can contribute, chickens can listen in
79
Meetings: client demo
• Demo working software or completed non-software tasks
• Figure out how to demo deep technical functions and ‘invisible’ technical work
• If it can’t be demonstrated it is not finished
80
Meetings: client feedback meetings
• Can be at the end of a demo meeting or at the start of a new iteration meeting but must be time-boxed
• Listen carefully• Feedback may lead to new stories (scope,
priority, effort)
81
Role of project manager
• Run Meetings• Keep the chickens at bay• Keep people focused on iteration stories• Make sure that if a story is finished, it is
really finished• Deal with obstacles that distract team
members
82
Review: Meetings
1. What are the different types of meetings we’ve discussed?
2. Who runs the daily stand up?3. What is the difference between the
chicken and the pig?
83
Recap: role of project manager
• Run meetings• Keep the chickens at bay• Keep people focused on iteration stories• Make sure that if a story is finished, it is
really finished• Deal with obstacles that distract team
members
84
Activity: Stand-up meeting
TaskRead your card and attend the meeting!
85
Feedback on meetings activity
1. How did you find the stand up meeting?2. Was the time-boxing useful?3. Do you get a sense of why having these
meetings daily is useful?
86
Review: Introduction to Agile
• What is the difference between iterative and waterfall development?
• Stories – what are the three variables?
• Why is prioritisation essential?
• Suggest some ways of coming up with estimates for a project?
• How do you know when you're done?
• How do you know what the velocity is for your next iteration?
• Who runs meetings?
87
Not Checked Out Checked Out Done Sprint Goal: Beta- Ready Release
Login2
Browse Titles
2
SearchTitles
4
Talk to DB
4 Unplanned
Items
Next
Deal withVPN 2Get LogoApproval8
Search Full Text4Search
Full Text4Search Full Text4
88
89
90
91
92
93
THE END