Next Rachel goes over some typical agile practices like standup meetings, sprints, user stories, release plans, TDD, velocity, burndown charts, team boards, retrospectives, continuous integration. Most teams adopt these practices but struggle with pair programming, product increment, and collocation. Often the teams are self organizing and cross functional and include 5 to 10 members with at least one tester. The customer role is split between someone who is making priority calls and someone who is explaining the domain. Agile project manager or scrum master are responsible for facilitating meetings, shielding the team, working with the team to remove obstacles. Sometimes they also do project management activities like reporting progress and preparing the road ahead.
Rachel stresses the importance of setting up a visual space to see what the team is working on at the moment. The team gathers around the project board for their daily stand up meeting.
Projects start with an iteration Zero that creates the release plan, sets up an infrastructure, architecture, and for some initial estimation. The typical cycle is 2 weeks. Half of 1st day is spent planning, then development, and at the last day there is a demo and then a retrospective. A lot of teams start the sprint on Thursday. Lots of teams have a preplanning meeting. The meeting at the beginning of the iteration is for estimation and task creation while the meeting to decide what goes into a sprint happens a couple of days earlier. Demos need to involve product owner and a wider set of stakeholders. It’s ok to have breathing spaces between iterations. It is also ok to have polish iterations before a major release.
Rachel wraps up by recommending that we read multiple agile books and use them as a source of ideas and not as “religious” texts. Projects are varied and each might need a different approach. We need to inspect, adapt and evolve.
This presentation is available on InfoQ at http://www.infoq.com/presentations/agile-mashups