Presentation on theme: "1 Agile Project Management Mark Stringer. 2 3 Introductions Who am I? Who are you?"— Presentation transcript:
1 Agile Project Management Mark Stringer
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?
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
21 Flickr, del.icio.us Tagging no taxonomy PageRank eBay reputation Amazon reviews:user as contributor Blogs: Participation Not Publishing BitTorrent Radical Decentralization Gmail, Google Maps and AJAX Rich User Experiences Google Adsense customer self-service enabling 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 Intel inside Trust your users Small Pieces Loosely Joined - web as components Rich User Experience The Perpetual Beta Software that gets better the more people use it Play Hackability Granular Addressability of content Emergent: User behaviour not predetermined The Right to Remix “Some Rights Reserved”
22 Traditional Waterfall Project Management SpecificationDesign CodeTest 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 Task 1. Write down three things that are done using “Waterfall” methods 2. Write down three things that are done “Iteratively”
26 Activity: Minimum Iteration Client brief We want you to put on a production of Romeo and Juliet Task Come 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 Task Put your post-its into three piles: 1. Absolutely must have 2. Would be nice to have 3. Would be the icing on the cake
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
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.
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 Brief Yacht 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 Stories Thrills and Swoon Online Thrills 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.
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 **
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
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?
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)
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 points Test: 1) Enter a search term for the article in the page 2) Press search button 3) 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
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 mind After 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). Task 1. Extract more stories 2. 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
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 Task Read 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 OutChecked OutDone Sprint Goal: Beta- Ready Release Login 2 Browse Titles 2 Search Titles 4 Talk to DB 4 Unplanned Items Next Deal with VPN 2 Get Logo Approval 8 Search Full Text 4 Search Full Text 4 Search Full Text 4