Methods & Tools Software Development Magazine

Software Development Magazine - Project Management, Programming, Software Testing

 

agileMantis - Scrum Plugin for Mantis Bug Tracking Tool

Dr. Jörg Baumgarten, gadiv GmbH, http://www.gadiv.de/, @agileMantis

Scrum is one of the most popular and ongoing models for Agile software development. agileMantis is an open source plugin that extends the open source bug tracking system MantisBT with Scrum. The figure below tells more than a thousand words:

Web Site: http://gadiv.de/de/opensource/agilemantis/agilemantisen.html.

Version Tested: agileMantis 2.1.

License and Pricing: Free version: Open Source, MIT-based license. Extension by expert version: paid license per time and user.

Support: intensively used "tickets", "discussion" and "blog" items on the website. Additional support by email from 08:00 a.m. to 04:00 p.m. CET at working days in Germany.

Installation: A detailed description is found in the documentation [2]. Free version installation in short:

System requirements

Product

Version

Required

Microsoft Windows
Any other system, where MantisBT runs on

7 or higher

Mandatory

A running installation MantisBT

1.2.5 to 1.2.19

Required

MySQL

5.2 or newer

MS SQL-Server

10.50.1600 or newer

Recommended

PHP

5.3.8 or newer

  1. Download and unzip agileMantis from Sourceforge [3]
  2. Copy the files in the MantisBT plugin folder
  3. In MantisBT with admin rights: Click Manage[Manage Plugins]-> [Install] in the agileMantis -row.

Documentation: All documentation for installation, a beginner tutorial and a detailed technical description are found in a wiki as well as with downloadable pdf documents on Sourceforge [4].

Demo version: From the Sourceforge page, you can start agileMantis to try its look and feel. Both the free and expert versions can be tested there.

Walk through Scrum with agileMantis

We will now provide a short introduction to Scrum and describe why and how agileMantis supports it.

Why Scrum?

During the past ten years, software development strongly transitioned from "waterfall" driven procedures with huge concepts full of deeply detailed and very long term planned procedures to Agile development. Scrum and others approaches are about to replace these old forms of software development simply due to their better performance and flexibility. Especially Scrum is nowadays perfectly organized by a network of parent organizations, schools and trainers and by its well-defined phases and artefacts.

How agileMantis brings Scrum to MantisBT

agileMantis is designed to bring all Scrum Artefacts and organizational topics to the users of MantisBT. MantisBT is a pure open source bug tracking tool. If a MantisBT user wants to switch to Scrum, the only thing to do is to plug in agileMantis. All existing MantisBT data can then be integrated in the Scrum process. The agileMantis plugin manages all Scrum information and MantisBT data sets are never altered.

Initializing Scrum in MantisBT: Create Product Backlog, Team and a first Sprint

After the installation, you can immediately setup your individual Scrum environment with three basic steps.

Figure - Extension of the MantisBT menu by agileMantis with activated agileMantis administration menu.

Step 1: Create a Product Backlog: You already have projects in MantisBT. Now, you can define a Product Backlog and give it a name. Assign the MantisBT projects to the Product Backlog. Select Issues of these Projects into the Product Backlog. agileMantis now treats and displays these Issues as User Stories.

Step 2: Create a Team. You already have users in MantisBT and just have created a Product Backlog. You can now define a Team and give it a name, assign the Product Backlog to the Team. Assign users to the Team and give each member a role (Developer, Scrum Master, Product Owner..) and agileMantis rights.

Step 3: Create the first Sprint. You have just defined a Product Backlog and a Team. Now you can define a Sprint and give it a name, assign the Team and the Product Backlog to the Sprint.

With this your Scrum Team can start working. You can operate with as many Product Backlogs, Teams and Sprints that you want.

Performing Sprints

Scrum follows an elementary rhythm. With agileMantis we swing into this rhythm.

Planning part 1: Select the Product Backlog and check for new User Stories. You can use planning poker for new User Stories and enter the estimated Story Points for each Story.

Planning part 2: [Optional] Enter the days and time that each Team Member has available for the following Sprint in the scheduler.

Planning part 3: Create or select the new Sprint. Choose User Stories from the list offered by the Sprintís Product Backlog and assign them to the Sprint. For each Story, you can create Tasks and assign them to a developer and optionally enter the planned work. The scheduler issues warnings when a developer is assigned to more work than the developer can perform. Using the velocity of previous Sprints, such planning robustly prevents that the team is over- or underloaded with work.

Finish planning: Enter the start and end dates of the Sprint, its goals, and then press "Commit". That is the magic moment. The members can now perform completely all Tasks until the Sprintís end.

Performing development: After the planning, the User Stories and their tasks are automatically displayed on the Sprint Backlog for the free version or the Taskboard for the expert version. The initial status of all Tasks is "toDo". To perform a Task, a developer switches its status to "at work". You can now enter the amount of performed work from time to time. When a Task is finished, its status is changed to "done". When all Tasks of a Story are "done", its status is set to "resolved".

Finishing the Sprint: Close the Sprint at its end date. Thatís it. You can perform the Review using the listed User Stories and start the next Sprint.

agileMantisExpert compared to agileMantisFree

As you can see, using agileMantis requires quite little input to get considerable benefit of automatic aid to the process. However, agileMantis comes in two forms: a free version and an expert version. What are the major differences?

The free version

agileMantisFree is a free open source tool that is written "MantisBT-like". This means that its usage, look and feel are those of MantisBT. It is keyboard-driven, has no graphics and no statistic presentations. It is a "tables-only" tool.

Figure - in the free version, the Taskboard appears in table form as "Sprint Backlog".

The expert version

agileMantisExpert is a commercial tool with paid licenses. It extends the free version and is also installed as a plugin in MantisBT. As a Java applet, it requires JRE 1.7.0_51 or newer.

Figure - In the expert version, the Taskboard is a mouse driven rich access platform for information management.

The expert version is written to achieve optimized ergonomics and presents a much richer and more comfortable interface with far better overview. It is mouse-driven and offers a visual Taskboard together with an optimized Daily Scrum Board. The full content of each User Story is accessible through "quickAccess" popups from everywhere in the application. It keeps a versatile set of graphical monitoring presentations of velocity, stress and success of the current and former Sprints, etc. Last but not least it has individual immediate user support by mail.

Figure - A rich set of graphical evaluations helps to optimize strategy and performance.

Licenses can be ordered for 3, 6, 12 or 24 months for 3, 5, 10, 25, 50 or 100 users. More details are found on the agileMantis home page under "Ordering the License Key".

References

  1. http://gadiv.de/de/opensource/agilemantis/agilemantisen.html.
  2. http://sourceforge.net/p/agilemantis/wiki/Installation/.
  3. http://sourceforge.net/projects/agilemantis/
  4. http://sourceforge.net/p/agilemantis/wiki/Home/.

More Scrum and Bug Tracking Knowledge

Scrum Expert Magazine

Bug Tracking Tools


Click here to view the complete list of tools reviews

This article was originally published in the Summer 2015 issue of Methods & Tools

SpiraTeam Agile ALM


Agile Alliance Technical Conference

SQE Live Virtual Training