Agile Project Initiation ‘Best Practices’
Initiating an Agile project can present challenges. If you are new to Agile, you will need to adjust to a different way of working. Even if you have experience with Agile, you may have team members who do not possess your level of experience and who may question the new methodology and approach. To help you avoid the problems that commonly occur and to pave the way for successful project launches, consider the following suggestions as you begin your project:
Focus on the People
- Select the right people for the team. Build the team with key people first, then supplement the group with members who are motivated to learn. If possible, recruit generalists (or people who are interested in becoming generalists) rather than specialists, to ensure that all team members can successfully complete any task in the task list. Engage critical stakeholders early in the process and ensure their commitment throughout the project.
- Train the team. Prepare them for the needed change in working style (Agilists work in teams, not as solo developers) and changes in responsibilities and expectations (team members rely on each other for expertise and work closely with teammates to ensure requirements are met) that Agile projects require. You may want to employ an experienced Agile coach who can help team members transition to Agile methods.
- Communicate expectations clearly. From the start, it is crucial to clarify project requirements and expectations for the team. Team members should be empowered to develop innovative solutions to problems and to collaborate to find their own way of meeting goals.
Think about the Process
- Plan for entire releases. Identify any dependencies across iterations and develop plans to share resources. Use the team’s expected velocity to forecast subsequent iteration completion dates. Consider adding an initial iteration to early Agile projects to deal with any start-up or design issues, or a final iteration to refine products before release.
- Keep initial expectations in check. Don’t expect all early iterations to result in potentially shippable products; especially in complex projects that build upon existing products, iterations can be considered successful if they create end-to-end flows that refine practices. Adjust initial iteration timeboxes to reasonable lengths—two-week iterations may be too short (especially in early iterations) to incorporate training and show progress.
- Clarify the boundaries of the release so everyone involved understands the project. Explicitly define the acceptance criteria to avoid surprises, and set a release date to prevent unlimited revisions to the project scope. Define “done” consistently (especially when there are multiple teams) and limit multitasking to prevent harm to team cohesion and velocity.
Establish the Environment
- Provide an effective team work area. Bring team members together to a co-located work space or develop tools so distributed or dispersed teams can feel co-located. Post all necessary information (story boards, plans, team ground rules) in a clearly visible part of the common area. Be pragmatic about the use of documents—use Agile templates and wikis whenever possible, but don’t ignore documentation that is clearly needed.
- Create a culture of organizational trust. Encourage team members to explore options and make it clear that this exploration occurs without repercussions. Work to make sure that management is committed and patient enough to see the Agile cycle through to its completion, and is willing to expend the necessary resources on training, mentoring, and coaching to adopt Agile.
Keeping these suggestions in mind as you begin new Agile projects will alleviate some of the pressure involved in leading inexperienced Agile teams and improve the odds for project success.
Mini case: Initiating an Agile Project
Lacerta Communications, a cell-phone developer headquartered outside of Dallas, recently hired Sara Powell to lead one of their product development teams in creating their newest cell phone. Lacerta’s last few products have run behind schedule and they underperformed when they hit the market.
Powell is expected to draw on her Agile experience and knowledge to transition the team’s traditional Waterfall approach to new Agile processes and practices. She has explained Agile’s basic practices to her team but has not gone into significant detail. As she’s preparing for the team’s first iteration-planning meeting, she returns to her office to find that she has an email from Erik Carbone, a senior member on the project team.
From: Erik Carbone
To: Sara Powell
RE: Getting ready for the team meeting
How are you doing? Just checking in because our team meeting is scheduled for the end of the week, but we haven’t seen the project plan yet. I’m already getting comments from team members who are grumbling because they don’t know what tasks they’ll be responsible for. I’d like to figure out who I need to assign tasks to now, so we don’t waste time in the meeting.
I know this “Agile thing” is supposed to be highly collaborative and I don’t want to rain on your parade, but I think I speak for everyone when I say that people here have spent a lot of time developing special skills and we know who to go to get things done. We can finish the project faster if we just use our existing processes and get more help from management. I think we can incorporate some of your ideas into the process, but I’ll need to do some work on it first before I give it to the team. So, can you send me the project plan details?
Answer the question in the textbox, then click Submit to compare your answer to an answer written by an experienced project manager.
How would you respond if you were Sara Powell?
Sample Response :
Erik Carbone’s message shows that he misunderstands the underlying Agile principles. He is used to planning the project tasks, and then—as a team lead—assigning them to team members as a command-and-control manager. He is skeptical of the new process and is comfortable relying on tried-and-true practices, even if they haven’t always been successful.
Sara Powell will need to overcome Erik’s (and possibly the team’s) skepticism. She’ll need to ask the skeptics to suspend their disbelief for a few iterations and give “this Agile thing” a try. Usually after a few iterations, teams see improvements over past practices and quickly embrace the Agile methodology. She may also want to note that the existing Waterfall approach hasn’t produced on-time or well-received-by-the-market products for the company.
Powell will also need to provide training and coaching to the team. Many of Agile’s principles are counterintuitive (like creating product tests before creating the products themselves) and only make sense with experience.
Powell will need to change the team’s mindset and its dependency on specialization; Agile teams are best served by cross-trained members who can complete all of the tasks in a project, not specialists who only work on specific tasks before handing them off to another expert.
Powell might train the team by holding workshops to teach the team portions of the Agile methodology (such as an iteration-planning workshop or a retrospectives workshop) as they begin to put Agile principles into action. And she’ll need to explain to the team that the purpose of the upcoming meeting is to allow team members to select project tasks themselves, rather than having a team lead assign them.
To test your understanding of the content presented in this assignment, please choose the correct answer
1. Which of the following statements is not true?Choose only one answer below.
a. Agile team members should be empowered to explore project options without fear of repercussions.
b. Additional iterations may be added to an Agile project to deal with start-up issues or to refine products before release.
c. Agile project teams should be staffed first with specialists to ensure that the team has all of the necessary skills to complete the project.
Correct. Agile teams should first be staffed with generalists (not specialists) to ensure that the team has all of the necessary skills to complete the project.
d. Multitasking should be limited, to avoid affecting team velocity and cohesion.
2. When planning initial Agile projects, you should ________.Choose only one answer below.
a. limit all iterations to two weeks in length
b. post all necessary information in a common team area
Correct. You should post all necessary information in the common area for all team members to view as needed.
c. allow the project boundaries to develop as the project progresses
d. prepare team members to work independently and collaborate only when a project manager is unavailable