Agile Project Management with GreenHopper 6 Blueprints — Save 50%
An intuitive guide to efficiently track and manage projects in an agile way using GreenHopper for JIRA with this book and ebook
In this article by Jaibeer Malik, author of Agile project management with GreenHopper 6 Blueprints, we will cover analyzing the project backlog, planning the backlog in an incremental way, and grooming the backlog over a period of time. Based on ranked backlog, we will be creating a Sprint backlog and starting a sprint. To achieve this, we will be covering the following GreenHopper functionalities:
- Creating Epic to be able to break the backlog into multiple top-level functionalities, referred to as Theme or Epic
- Creating Story to be able to break an Epic/functionality into smaller pieces of functionality or user stories
- Creating technical tasks to be able to break the Story into smaller technical tasks required to deliver the functionality
- Ranking the backlog to prioritize the backlog items in the order of delivered business value
- Creating a Sprint to be able to deliver the backlog in incremental or iterative way
(For more resources related to this topic, see here.)
Creating an Epic
An Epic is a large functionality of a product which needs to be delivered and which can further be divided into user stories. An Epic can span over multiple Sprints, until it is all finished.
As shown in the following screenshot, click on the + icon in the Epics panel to create an Epic:
Create an Epic using the Epic issue type and enter the relevant details for your Epic. In the Epics panel, the Epic name you entered while creating the Epic is displayed along with issue details representing the Epic.
The panel also displays total issues (Story, improvements, bugs, and so on) assigned to an Epic along with the total estimates (here, Story points in our case for the Epic). For Epics created with no Epic name or missing Epic name, unlabelled Epic text is displayed.
Use drag-and-drop functionality on the Epics panel to rank the Epic within your backlog. Keep the high-priority Epic, which you will be working on first, on top.
To edit an Epic name, click on Edit name, which allows inline editing, as shown in the following screenshot:
You can also distinguish an Epic with specific colors, and the corresponding Epic name will always be highlighted with that color in view.
Creating a Story
A user Story in Scrum is a user/actor conversation/requirement or a small functionality which can easily be unit tested and delivered in a limited time of a single Sprint. The Story belongs to an Epic.
To create a Story for an Epic, click on the create issue in epic link on Epics panel.
As shown in the preceding screenshot, to create a Story, select the relevant issue type and enter Story details. The newly created Story will be listed under an Epic and will also be visible in the Plan mode. If you select an Epic in the Epics panel, all the issues related to that Epic will be displayed on backlog panel. If you select one of the newly created stories, the Story panel is displayed on the right-hand side.
As shown in the preceding screenshot, the issue details panel is opened. You can perform all the relevant operations available to the issue on the same panel. The tag panel on the left-hand side allows you to do corresponding operations on the selected Story.
The Story details panel helps you with inline editing to edit the Story and related details. Using the Actions panel, you can edit and perform multiple operations related to Story.
The technical tasks are deliverable tasks performed by the developers to deliver a Story in a Sprint.
To add subtasks to a Story in the Plan mode, select a Story to add subtasks to, and the details panel of the Story will be visible.
As shown in the preceding screenshot, click on the Create Sub-Task button on the issue details panel to add a subtask to an issue. The same panel also displays the list of existing subtasks for an issue. Based on time tracking enabled for the Jira system, you will be able to add hour estimations for the technical tasks. If time tracking is enabled, the Story details panel also displays the total efforts required for all the subtasks, as shown at the bottom in the previous screenshot.
Ranking the backlog
By now you have your backlog ready with most of the required Epics which are further divided into different user stories to be delivered.
One of the important tasks in managing and grooming backlog is the ranking or ordering of different backlog items. From a business value perspective, not all functionality is of the same business value. Some functionalities are must have and some are good to have, having less business value.
As stated in the earlier section, you can rank Epics by drag-and-drop in the Epics panel and Epics will be relatively ranked in the panel. You will be able to focus on the Epic in the backlog which you are currently working upon.
To rank Story and other issue types in the backlog list, drag-and-drop vertically in the list based on the priority.
As shown in the preceding screenshot, you should be able to drag-and-drop each issue to prioritize it relatively. You can select multiple items in the backlog list by using Ctrl + Click or Shift + Click to move in the list or also to assign to a Sprint.
As shown in the preceding screenshot, you can do bulk operations on the selected issues. The following options are available:
- Send to: It is used to move multiple items to a selected Sprint during the Sprint planning event.
- Top of Backlog: It is used to bulk prioritize the selected items by moving to the top of the backlog with highest ranking.
- Bottom of Backlog: It is used to bulk prioritize the selected items by moving to the bottom of the backlog with lowest ranking.
- View in Issue Navigator: It is used to view the selected items in Jira issue navigator.
- Bulk Change: It's the functionality to bulk change the selected items, which can be editing issue details.
You can also rank the technical tasks in the Work mode to move items based on priority, and teams can accordingly work on technical tasks based on pre-set priority.
Creating a Sprint
A Sprint in Scrum is an iteration to deliver a committed set of functionality for a product in a time box of nearly a month or less.
We have our prioritized backlog ready with us in the proper prioritized order. The next step is to estimate and pick a set of backlog items from product backlog to deliver in a particular Sprint
To create a Sprint, click on the Create Sprint button in the Plan mode under Backlog panel, as shown in the following screenshot:
It will create a blank Sprint for you. Click on the Sprint name to edit it with inline editing as per your current Sprint number. To plan the Sprint, click on the date fields for inline editing to set start and end dates for a Sprint.
To add Story items to a Sprint, drag stories based on preset ranking order of Story and drop it in the Sprint panel, the Sprint you are currently planning.
You can also select multiple items from the backlog panel, right-click, and send those to the newly created Sprint.
To start a Sprint, click on the Start Sprint link on the Sprint panel header in Plan mode, as shown in the following screenshot:
If you haven't set the Sprint timelines yet, once you start a Sprint, the start date and end date for the Sprint will be asked for in a Sprint start popup. The Sprint start and end date values will be referenced as the Sprint timelines to generate different reports like Burndown chart in the report panel. Starting the Sprint will move you from the Plan mode to the Work mode in the current board.
You can have only one Sprint as an active Sprint. For a single board, currently you can have only one Sprint as running or as an active Sprint. You can still create multiple Sprints in the Plan mode and those will still be inactive Sprints (you can't start working on those Sprints).
One of the practical scenarios for different projects is running multiple teams, and some teams do work on the same project backlog but also create team backlog out of a big project backlog. To achieve this, you can use multiple ways to create a team backlog, as well as multiple boards for multiple Sprints to run multiple teams.
For example, you can use Labels field, Component field, or Custom field to store team information. Take an example to run following teams, Orange, Green, and Blue.
As shown in the preceding screenshot, you can create multiple team boards designated specifically for each team. For example, Team Blue Scrum Board, Team Green Scrum Board, and Team Orange Scrum Board are displayed in the screenshot.
You will be able to start separate Sprints for each team working on team backlog which is part of the project backlog. You can update each backlog item to team backlog during Sprint planning only, so that same backlog item is not available to other teams.
Different teams use different approaches to use Jira, and GreenHopper's customizable and flexible nature helps teams to achieve what suits best to their requirements.
One additional feature of working with boards to access a GreenHopper view of items and a Jira view is the interchangeable nature. You can access your backlog items from boards directly in the issue navigator in Jira. There are multiple selection options available to switch to an issue navigator from the GreenHopper view. In a similar way, while browsing an issue in Jira, you can also switch to the GreenHopper view.
As shown in the preceding screenshot, the Issues in Epic panel and Agile panel in Jira view are displayed for an Epic issue type.
The issues in Epic panel lists down all the issues associated to the Epic in view. Agile panel option View on Board allows you to select a board that issue is listed in GreenHopper, and you can easily switch to your board view.
We created Epic and Story issues as part of the product backlog. We also covered creation of technical task items as part of Sprint planning meeting.
We also moved the items in the Plan mode to rank the items based on business prioritization. Using Plan mode, the team created Sprint and committed on backlog items to be completed in a Sprint. The team started a Sprint and set the Sprint timelines to continue the Sprint.
Resources for Article :
- Advanced JIRA 5.2 Features [Article]
- Getting Started on UDK with iOS [Article]
- Mission Running in EVE Online [Article]
eBook Price: $19.99
Book Price: $33.99
About the Author :
Jaibeer Malik is an experienced programmer and Agile enthusiast with a passion for new technologies, clean code, and Agile development.
He has been working in the IT industry for nearly 10 years now with extensive experience in software designing, architecture, and development in domains varying from internet to telecom, to finance, oil, gas, and transport. He is involved in the development of both small and big enterprise applications that make a difference in the real world. He has good experience in technologies such as Java, J2EE, Hibernate, Spring, Wicket, Flex, Scala, ElasticSearch, and many other open source technologies.
He is a Certified Scrum Product Owner (CSPO), Certified Scrum Master (CSM), and experienced in distributed Agile development. He regularly writes his thoughts in the form of blog posts on his personal website and on other technical forums.
He is currently located in Amsterdam, working as a Java Software Architect for one of the top e-commerce platforms in Netherlands.
To know more about the author visit the following links: