The Sprint Process At A Glance
Scrumclipse: An Eclipse IDE Plug-In To Follow The Sprint Process
Like described in a previous article subshell organizes its software development with the agile methodology of scrum. Of course we have a big scrum board with DIN A5 cards for each task and a burndown chart to illustrate the process of the sprint. Thereby each task has a corresponding issue in our JIRA bug and issue tracking system and the whole life cycle of the tasks is managed there:
- The issues are assigned to the developer who currently works on it.
- The estimate and the spent time is logged in the working log.
- The state of the issues (e.g. "In Progress", "Review", "Test", "Done") is switched in JIRA.
- And so on...
- Finally the burndown chart is calculated out of the working logs automatically.
In addition to the "traditional" scrum board and burndown chart we created an Eclipse IDE plug-in that integrates the scrum board, the burndown chart and a sprint statistic into the developer's IDE.
The plug-in uses the REST API of JIRA to fetch the issues of the current sprint and to determine its process. The advantages of this plug-in are:
- Easy check whether there are differences between the estimates created at the sprint planning meeting and the regarding JIRA issues.
- Every developer gets the actual state of the sprint every time he presses the "Refresh" button in one of the views.
- Simple opening of the corresponding JIRA issues in the web browser by (double) click on the displayed tasks.
- Easy way to export the sprint results in required formats, e.g. as table to add the unfinished issues into the backlog for the next sprint, as CSV file for later statistic analyses or the burndown chart as image file.
The following sections describe the different views of the Scrumclipse perspective added by the plug-in.
The Scrumboard View
The Scrumboard view shows the issues in the column of their current state: "Todo", "In Progress", "To Review", "In Review", "To Test", "In Test", "To Merge", "In Merge", "To Approve", "In Approve" and "Done" (empty columns can be hidden optionally). Each issue is displayed as a scrum card with the sprint priority, description, JIRA issue key, estimate, spent time and assignee. The corresponding JIRA issue can be opened by clicking the issue key. The planned issues (with an estimated time) have a white background while unplanned issues (without an estimated time) are gray. If more time has been spent to an issue than estimated the upper right corner becomes red. Issues with a set date, e.g concepts or appointments, have a blue border.
The view can be refreshed by using the "Refresh" button in the lower right corner. With the "Copy to Clipboard" button the board can be copied as a Confluence wiki markup table. We use that function to copy our sprint results into our internal wiki at the end of each sprint.
The Burndown Chart View
This view shows the burndown graph of the sprint. Here the start date of the sprint has to be set. Holidays can be skipped by unchecking the particular day. To save the graph "Save as image file..." can be used.
The Statistic View
Sprint analysis can be done with the help of the Statistic view. It shows the estimates, spent times and states of the issues in a table and sums them up. For example you see how many time has been spent on unplanned issues or how large the estimated times differ from the real spent times. The table can be exported as CSV file as well. The JIRA issues can be opened by double click.
Try it: Download and Installation
To configure Scrumclipse for your Eclipse-IDE do the following steps:
1. Configure the custom states "Review", "Test", "Merge" and "Approve" and custom fields for sprint priority and date in JIRA.
2. Configure a JIRA filter that finds all issues of your sprint (e.g. "My Sprint").
3. Download and copy the com.subshell.scrumclipse plug-in into the 'dropins' folder of your Eclipse installation.
4. (Re-)Start your Eclipse-IDE.
5. In Eclipse open the Scrumclipse section in the preferences. Set your JIRA connection data and the filter name (e.g. "My Sprint"). Also enter the internal JIRA identifiers of the JIRA states and fields. E.g. all issues that should be displayed in the "Todo" or "In Progress" columns of the Scrumboard view have to be in JIRA state 1 (= open), 3 (= in progress) or 4 (= reopened).
6. Finally open the Scrumclipse perspective and the views should show the JIRA issues.