This site is designed for XHTML and CSS compatible browsers. We recommend that you update your browser to a newer version.
12/19/07
Agile tools should support the team's everyday work.
Panu Liira, Agile Coach
Working as Agile consultants and coaches we are frequently asked to recommend the best software tools to aid in Agile project planning and management. So far we have yet to arrive at any generally applicable answers. Speaking with other industry professionals involved in Agile projects has revealed similar experiences.
Agile project management and Agile Methods transfer a lot of responsibility to the Agile teams. Self-organizing teams tend to select, plan and track their work collectively. Like the Agile project, any tool supporting project planning and tracking should be a tool driven by the whole team.
Another characteristic of Agile Methods is the inherent generation of valuable real-time project information. A quality tool should facilitate the capturing of information as a part of daily activities and provide derived reports and progress projections to support decision making and stakeholder communication.
The Agile paradigm revolves heavily around interpersonal communication and flexible planning activities with tools such as whiteboards and story cards. Moving out of the Agile comfort-zone of co-located teams, however, impedes the use of these conventional tools. Scaling up project sizes also immediately increases the need for tools that enable communication and allow for the viewing of project-related information on different levels of abstraction and planning.
Steering a multi-team project usually requires an additional level of planning, for example, handling the often unavoidable dependencies between the teams. In a larger project, the number of stakeholders and roles using the tools also tends to increase. This poses additional requirements for tools to offer meaningful views on different levels of the project and for different roles.
Our trials of existing project management tools have resulted in the conclusion that it is difficult to find a tool that would fit comfortably into the daily work cycle of Agile teams. While numerous existing tools already have many of the features needed to manage the work of Agile teams, the implementation, and more specifically the ease-of-use, lends a lot to be desired.
Most of the tools that we have evaluated have either been on the feature-rich side and too cumbersome to fit the team members' daily use, or too lightweight to offer the needed support to plan and run projects. Often the tools also impose prescriptive processes compromising process adaptation and different implementations of Agile Methods. For example, most have an inflexible pre-defined way of organizing and structuring project requirements.
It seems that attaining the right feature set to allow flexibility and ease of use while supporting the basic needs of most Agile teams remains a challenge. Perhaps as a result, simple spreadsheets still seem to remain the tool of choice for many Agile teams.
In our view, many of the shortcomings of the existing tool support culminate around managing requirements and planning iterations and releases. The first challenge in any project naturally is the creation of the first version of the list of requirements, or in Scrum terms, the product backlog. In our experience, this often ends up being an exercise based on trial-and-error, as the requirements can be structured and represented in multiple ways and levels of abstraction. With current tools the process is often somewhat frustrating and cumbersome. The next immediate challenge lies in accommodating the constant changes and elaboration of the requirements during the project brought on by the Agile approach.
As a part of our contribution to the FLEXI research project we are planning to implement a tool that will support the management of the product backlog of an Agile project starting from the initial planning done at the time of project inception.
Our primary focus will at first be in supporting the conceptualization of a product idea into a coherent set of requirements, and then the planning, estimating and tracking of the requirements through the project. Our aim is also to develop the tool to provide communicative visualizations of the project's scope and real time status.
As the FLEXI project is focused on Agile product development on the large scale, our target is to design the tool to be scalable supporting large projects and distributed teams.
Panu Liira, Agile Coach, Certified ScrumMaster
Panu is an experienced Agile practitioner, consultant, trainer and coach. Armed with years of hands-on experience on Agile development and project management, he has helped many organizations in adopting Agile thinking and practices.