Agile Development -- an overview Peter Steinfeld June 30, 2015
Who uses Agile Development?
What problem does Agile Development solve? Produce a deliverable (product, document, contest, …) Fixed time schedule to deliver Team to do the work (ideally small – 4 to 10 people) Software development (but it can be used elsewhere) Dealing with uncertainty
How does Agile Development work? -- key aspects Roles for participants – Product Owner, Developer, Scrum Master Iterations – fixed time length with demonstrable results Backlog – list of unfinished tasks Scrum meetings – short, daily meetings
How does Agile Development work? -- Participant roles Product Owner Figures out what the customer wants – what it means to be successful Answers questions from developers Figures out how to test Developer Does the work Typically, there are many developers Scrum Master Runs the meetings – scrum, retrospective, and planning Keeps the backlog prioritized and correct Other roles – Manager, Agile Coach
How does Agile Development work? -- Iterations Sequence of deliverables at fixed times Last iteration is the final deliverable For each iteration Implementation time Deliver (ideally to the customer) At the end of the iteration, discuss What went well, what needs to improve Plan the next iteration
How does Agile Development work? -- Backlog List of unfinished work (tasks, bug fixes, …) Task creation is separate from implementation Anyone can work on an item in the backlog Prioritize and manage the backlog
How does Agile Development work? -- Scrum meetings Short, daily meeting with the whole team Led by the Scrum Master Each participant answers the three questions – What did I do since the last meeting? What do I plan to do next? Am I blocked?
Using Agile Development for the Oregon Games Project Challenge The kids did all of the work I functioned as the Agile coach and manager We used GitHub issues and waffle.io for our backlog We won the “Rookie” award our first year, and the “Professionalism” award the second year
Pete.Steinfeld@gmail.com