Features

Managing Multiple Agile Projects

By Jyotsana Kitchloo and Shilpa Bandekar

Planning for Agile projects is based on user stories and involves product development through short sprints rather than long development cycles. This iterative approach makes it the most preferred way for managing a project team's workload. However, the basics of project management do not change from waterfall or any other traditional method of software development. For example, you still define requirements, plan resources, communicate with team members, and monitor and manage risks pretty similarly to the traditional models.

The difference in planning for Agile versus a more traditional development approach comes in because each sprint in Agile aims to deliver a piece of working functionality. It demands working software over comprehensive design documentation. The good part of Agile is you do not include the same amount of upfront details as you would need to do in traditional methods. On the flip side, the project documentation is likely to frequently change during the project duration. In a well-run Agile project, code and user documentation are developed in parallel over multiple sprints that are based on task scenarios or "user stories." At the end of any sprint, product code and documentation can be built and then published for giving to customers.

When managing a team of information developers who are allocated to multiple Agile projects, it is important to understand the nuances that are necessary to complete each task associated with those projects that run almost in parallel. Whether you are managing information developers who work on a large project or work on entirely different projects or you are managing one information developer who covers several projects, managing each project comes with its own set of challenges—resources, complexities, durations, project sizes, responsibility assignments, and dependencies.

Suddenly you see a surge in the responsibility, coordination, and additional teamwork needed. How do you leverage your individual project management skills to be able to manage all projects? How do you ensure that deadlines are met when there is not enough visibility into the details being provided by the project teams, or when target dates are not clear? How do you still have a happy and motivated team?

Documentation keeps evolving over multiple sprints, so just enough documentation is the key in Agile projects. Here are some of the key challenges that documentation managers face quite often:

  • When your team members are part of multiple teams, is it possible for them to attend all important meetings and still track their tasks and milestones to produce their deliverables?
  • How do you ensure that there is a writer assigned to all projects, so that the project team feels like they have a reliable point of contact?
  • How do you resolve conflicting priorities among Agile projects and keep communication going with your team and the project teams?
  • How do you develop your team members into what they aim to be and help them with personal skill development?

Using basic project management tenets, consider addressing some of these challenges by using the following approaches in your work.

Project Planning

For every project, a project plan is an essential requirement. This plan covers project details such as scope, timelines, team members, dependencies, and risks and mitigation plans. In an Agile world, these plans are short and can cover features and user stories, but they also take into account documentation-specific tasks you might have, such as addressing documentation bugs, converting help systems, etc.

Having an upfront plan like this might tend to go against Agile principles, but the plan is a good birds-eye view that helps you determine the effort your team needs to put together for each upcoming project. You can create a wiki-based project dashboard or a spreadsheet, or any tool that captures phase-wise details for managing multiple projects. You can also use a project life-cycle checklist. It helps you identify your measured goals. For example, are all requirements for the project available? Are there required skills needed for the project that demands a certain team member work on it? Are all dependencies covered? Do you have hourly, daily, or weekly targets your team must meet? Although this list will keep changing depending on the input you get from project stakeholders, review it frequently.

Project Tracking

When managing multiple projects, it's important to remember that you need to make progress on each of those projects. Working on only one project, then moving to the next, doesn't typically work in fast-paced Agile environments. Use your master project plan to analyze project milestones to see which project you needs more focus and when. As a documentation manager, communicate with your team members every day. Don't shy away from providing regular updates of your progress to your peer stakeholders. These frequent reports help solidify teamwork and reduce silos.

Task Prioritization

Remember, in an Agile project, having shippable product (including documentation) at the end of a sprint is an important goal. To make this happen, you're going to have to help writers prioritize their tasks among their projects. Careful analysis is needed to ensure that each project meets your company's strategic objectives and that you are aware of target dates.

To prioritize and separate high priority projects from lower priority projects or tasks, use an approach that balances the needs of customers and your team members. You can use a graph or matrix to sort multiple items and rank them in order of importance. A graph like this lets you list criteria for importance, a description of each criterion, the impact on the project if the criterion is not met, and a rating scale for how the item matches up to that criterion. For example:

Criteria Description Impact Rating Scale
Value to Customer Deployment Guide There will be more support calls due to lack of documentation that covers deployment scenarios. 5

1 = little value
5 = high value/essential to customer

This ranking helps you decide which projects need immediate focus and which projects can be addressed later.

Team Organization

Consider how to organize the writers into different teams to best serve multiple projects. Ensure you build a strong team by knowing individual strengths and weaknesses for each team member. Some team members may work extremely fast, but might not have an eye for details. Another member may be very thorough but cannot handle a big project all by herself. If you know your team quite well, you can use this knowledge to balance the productivity of your team. Then organize your team to reflect and leverage the talents and personalities of your team members.

Knowing your team members helps you make good team assignments depending on the nature of each project. However, be ready to change the structure over time to cater to the varying requirements of projects. When moving people across projects, keep in mind not to over-schedule multitasking people. The task-switching overhead associated with many activities can significantly reduce effectiveness. In addition, the many meetings involved in working with Agile can overtax a writer quickly if you don't have a plan for how to handle those meetings. Some people multi-task more efficiently than others. Therefore, if some of your team members cannot easily perform parallel tasks, set clear priorities and help them do well by having them focus on just one or two objectives at a time.

Capacity Planning

Capacity planning is one of the best tools available to people who work on multiple Agile projects. Planning their available capacity for working on their assigned projects helps your team members keep from being overloaded. Ensure that the capacity plan covers all project tasks for all projects with respect to their importance and priority, independent and interdependent tasks, as well as bandwidth for personal growth tasks. The knowledge of completed tasks and projects can be a key input into estimating for future work. Familiarize yourself with your team's capacity frequently. This knowledge will help you allocate team members for each project and take up new assignments for your team in the future.

Leadership

Guide and continuously influence your team by providing them a vision to keep them on track and help them move from one stage to the next throughout their projects. Daily interactions are opportunities to reinforce that vision and create positive energy. Good managers are creative and find new ways to motivate each member of the team. They are proactive in addressing the needs of their team. They inspire team collaboration, effectiveness, and transparency. In absence of this leadership, the work may still happen, but the team will never reach its full potential. As a leader, stay informed to understand and assess team readiness when dealing with different project situations.

Change Management

Change is constant, especially in an Agile environment, and we all need to be prepared to accommodate changes in varying project environments. The key is embracing change in a positive way that doesn't impact a project negatively. Uncertainties can occur when some tasks are too uncertain to be planned at all, so only rough estimates of the lead-time are made. In some cases, you may need to step aside from those uncertain tasks to focus on a completely new task. If this happens, use your standup meetings to ensure your team is aware of what you're doing, and make sure your future sprint planning meetings include thorough discussion of user stories.

Be proactive rather than reactive when dealing with uncertainties/unforeseen changes. The proactive approach tries to reduce the impact of uncertainties prior to the start of the task. For example, by allocating buffer or flexibility in the plan you can account for uncertainties or unexpected events. As your team estimates projects in release planning and sprint planning meetings, over time, your estimates will get better for the tasks you're assigned.

Being flexible helps you address changes and react in a way that keeps the project momentum moving. Following are some non-planned activities that writers often deal with. Flexibility in your process lets you move things around to accommodate these requests:

  • You are working on a task and another high priority task comes up.
  • You need to make a documentation update after a new enhancement is made to the product.
  • You get a request for a quick edit of some documentation to send to a small group of customers.
Communication

Agile principles espouse increased communication. Since communication is at the heart of everything you do as a manager, working with teams in an Agile environment lets you hone those skills on a daily basis. You must spend your day discussing, listening, presenting, and sharing information with your team and project stakeholders. Use the following tips to help increase your communication skills in managing multiple teams, projects, and writers:

  • Be positive: Support and provide healthy feedback to your team members. Praise and encourage them to take up additional responsibilities that benefit their own and their company's growth. Recognize their efforts. Discourage gossips and negativity among team members.
  • Have open communication: Always let your team members know they can discuss with you their issues or concerns. Pass on project communication as it comes to you from management executives. This transparency helps the team remain engaged with the company and switch gears as needed.
  • Be credible: If you are proactive in addressing the needs of your team, your team members will gradually build trust in you. It is the level of trust the team members have with the manager that makes or breaks the team and performance and development of the team members. Explain the reasoning of your decisions and do not make promises you cannot keep. In a highly charged situation, take control, gather your thoughts, and convey the right message. When you are angry or emotional, give yourself time to calm down and gather your thoughts before communicating with your team members.
  • Be an active listener: Be aware of the moods, attitudes, and engagement levels of your team. Understand the situation and allow team members to convey their ideas. During meetings, pay attention and do not interrupt, check mails, or take calls.
  • Meet regularly: Arrange one-to-one meetings to review workloads, assignments, expectations, and concerns. Explain the company's objectives and ensure your team members' goals are aligned to those objectives.
  • Give continual feedback: Frequently give and ask for feedback that can help us improve and be productive in our work.
  • Handle conflicts with grace: Conflict is normal in all work environments. When there is a conflict, do not ignore it, but face it and deal with it in an unbiased manner.
Conclusion

Managing multiple Agile projects exposes many challenges because those projects operate in a more dynamic environment than do traditional projects. While planning and estimation are at the center of discussion most of the time, predictability and standardization are essential to the success of a multi-tasking team. The pressure of the faster pace with Agile projects can distract the team from producing their deliverables with the best quality. But those distractions can be faced head-on and conquered with the guidance of good leaders.

Successful managers transition from traditional project management to becoming flexible leaders and more effective communicators for their teams in the Agile environment. Strong people-focused leadership in this environment helps ensure team stability by teaching the team how to adapt to frequent changes, collaborate with their team members, and improve communication.

JYOTSANA KITCHLOO is a Documentation Specialist at NetIQ. She has been involved in technical communication for over 12 years. She currently is involved in technical documentation and project management for multiple projects. Her interests include reading, writing, and mentoring young writers.

SHILPA BANDEKAR is a Lead Information Developer at Novell. She has been involved in technical communication for over nine years. She has been an active member of the Human Factors team at Novell and is involved in creating and reviewing UI prototypes. Her interests include sketching and reading.