Scrum/Tools

From MozillaWiki
Jump to navigation Jump to search

Agile Bench

The Good

The Bad


Agilo

Address: http://www.agile42.com/agilo/

The Good

  • Agilo seems very powerful. Users can create tasks, move them into particular Sprints, prioritize them with a drag-and-drop interface, and perform most of the other tasks required for managing a Scrum project. Additionally, Agilo automatically generates burndown charts and other statistics.
  • Because Agilo is built on top of Trac, it inherits all of the features of Trac (repository integration, etc.). In addition, it can be extended by any plugin that works with Trac.

The Bad

  • Agilo is far from usable. Though this seems minor, it makes the benefits of the software almost a moot point -- it doesn't matter how poewrful Agilo is if no one can figure out how to use it.

Bugzilla

Address: https://bugzilla.mozilla.org/

Some of these thoughts are based on Songbird's experience with Bugzilla, documented in their post Songbird path to Agility – Part III.

The Good

  • The bug dependency feature seems very useful. Scrum recognizes that a product cannot be fully defined from the start. As a result, Scrum encourages teams to write basic descriptions of distant requirements and add specific details as they become apparent. The bug dependency tool may allow for this.
    • For example, a team building a website might create a user story for user login early in the project. Without much information, this story would be fairly high-level, for example "A user should be able to log into the site." Later, the team could add specific details as additional stories -- "A users should be able to log into the site with his email addresses", "The user should be able to find the 'Login' link in the top-right corner of the site", etc. These stories could be marked as dependencies of the first.
  • Mozilla is, of course, very familiar with Bugzilla. Most people would need little training with the tool.
  • The Songbird team has written a tool which generates reports from Bugzilla tickets. The tool, called sdpbot, is released under an open-source license.

The Bad

  • The authors of sdpbot note that they "made no attempt to make it generic" and that people using the software should expect to "do some work to customize it" for their needs.
  • sdpbot does not seem to generate burndown charts from Bugzilla data, and there do not seem to be any other tools that do.
  • The Songbird team uses priorities to create an informal release backlog. Though it can be modified, it seems that sdpbot by default assumes that priorities will be used this way. As the Scrum Guide explains, release backlogs are rarely useful and sometimes detrimental.
  • Unlike some other tools, Bugzilla aims to be fairly generic. It was not built specifically for managing Scrum user stories, so it may take some work, frustration, and training to set it up appropriately. The writeup from the Songbird team seems to confirm this -- the first section is named "Wrestling Bugzilla into shape" and they explain that their primary reason for using Bugzilla was that their workflow was already built around it.

Jira

The Good

The Bad


Open Atrium

Address: http://openatrium.com/

The Good

  • Open Atrium provides a very good task-tracking tool called "Case Tracker". Case Tracker allows cases to be categorized (bug, feature, or task), assigned, and grouped into projects. Additionally, Case Tracker can send a notification to some or all team members when a case is updated.
  • Open Atrium is extremely customizable. Because Open Atrium is based on Drupal, it can even be extended with the thousands Drupal modules that already exist.
  • Like all Development Seed software, Open Atrium is extremely easy to use

The Bad

  • As a beta product, Open Atrium has some design flaws. The notification system is especially problematic, often encouraging users to spam one another unnecessarily.
  • Open Atrium's Case Tracker does not allow cases to be assigned to multiple team members. This can cause problems when two or more team members are assigned a collaborative task, as only one of them will see the task in her list of assigned tasks.
  • By default, the Case Tracker does not provide fields for time estimates or story points
  • By default, Open Atrium does not provide code repository integration as Trac does
  • Open Atrium does not provide a burndown chart, and there do not seem to be any Drupal modules that can provide one
  • Though Open Atrium is very customizable, many customizations are wiped out whenever the system is upgraded. Though not impossible, building customizations in such a way that they do not interfere with future updates can be difficult and time-consuming.

Trac

Address: http://trac.edgewall.org/

The Good

  • Trac makes it easy to generate custom listing of tickets ("reports"). The product backlog and individual sprint backlogs could be created this way.
  • Trac does a good job of reporting progress toward milestones. These visualizations could act as a decent replacement for burndown charts.
  • Trac integrates with Subversion repositories, and can integrate with most other repository types using plugins. This integration allows team members to browse code and reference changsets in tickets.

The Bad

  • Trac does not provide a burndown chart by default. There is a Burndown plugin, but like many Trac plugins, it is somewhat unstable and somewhat difficult to use.
  • Trac does not provide time estimation fields by default. There is a plugin for this, but it is again somewhat difficult to use.

The Wiki

Address: https://wiki.mozilla.org/Main_Page

The Good

  • Like Bugzilla, the Wiki is already very familiar to the Mozilla community.
  • The Wiki is extremely flexible, making it possible to provide most of the artifacts, backlogs, and statistics that Scrum encourages.

The Bad

  • The Wiki's biggest strength may make it a liability for managing Scrum projects. Because it is so loose and unrestrictive, it cannot easily provide a list of "My Tasks", cannot easily track time remaining on tasks, cannot easily provide a burndown chart, etc.