Search

Learn Scrum with JIRA

Many organizations use JIRA as a one-shot solution to automate their processes, and JIRA has almost become synonymous with Agile. Even organizations that don’t deploy it across all levels use it for at least some of their projects. Such is the popularity of JIRA. So, what exactly makes it so popular? JIRA provides a simple and easy-to-use solution for project management tasks, right from gathering requirements to maintaining releases and generating all sorts of reports and metrics. The best part of the tool is that it is highly customizable, attending to the needs of one and all. If it is said that there isn’t a thing that one cannot do using JIRA in terms of project management, then that is not an understatement.  Since Agile is the buzzword now and most organizations are opting for it, this article will provide users with a detailed insight on how to carry out their project management tasks and software development activities by using a Scrum framework.   Before moving ahead, there are two basic pre-requisites that the user who intends to use JIRA must have and they are: Pre-Requisites:  An active account on JIRA Required permissions (Super Admin, Project Admin, etc. – Defined by organizations) 1. Creation of Project: The first and most important thing is to create a project in JIRA under which we will be carrying out our activities and tracking the progress of those. There are two ways a user can create a project.  Method 1:  Step 1: Log in to JIRA using your credentials. Once you are logged in, you will land on the project dashboard which will look something like this.  Step 2: Click on Settings icon and select the Projects option as highlighted in the image below.   Step 3: Select “Create Project” option as shown in the image.   Step 4: After clicking on “Create Project”, you will be prompted with two options to select from.  Classic Project  Next Gen Project Step 5: Once you have selected the type of project, you will be asked to enter the Project name. You will also have the option to change the type of template i.e Scrum, Kanban or Bug Fixing, depending on the purpose for which you wish to use JIRA.  Once done, you must click on the “Create” button.  And voila, it’s that simple. Once you have clicked on the create button, you will land on the project dashboard with the name of the project highlighted on the top left. As we can see in the image below, project name “My Scrum Project” is visible. Method 2.  The steps remain the same, only difference is that instead of navigating through settings, once you have logged in, you will have the option to navigate via “Projects” link as depicted in the pic.  2. Creating Backlog: Once the project has been created the second important step is to define requirements in a backlog. As you can see in the pic below, there is the option to select “Backlog” from the left side panel/navigation pane to navigate to the backlog section.  Here you can start creating backlog items. This backlog serves as the “Product Backlog”. Users can outline requirements in terms of Epics, User Stories, Tasks and Bugs which are known as “issue types” in JIRA. In short, everything that is created is an issue in JIRA. Please note that for ease of understanding and reference, I am sticking to the most basic issue types as mentioned above.  Step 1: To create issues in JIRA, all that is needed to be done is to click on the “Create” button on the top most navigation bar. This bar remains visible at all times by default, no matter whichever page you navigate to. Step 2: Once the user clicks on “Create”, a dialog box to enter details of the issue will open.   The two most important fields in this are:  Project: This field, by default, is populated with the name of the project you are in. But in case you wish to change the project field, the same can be selected from the dropdownIssue Type: This option by default is selected as “Story” but can be changed depending on which issue you want to create. The relevant issue can be chosen from the dropdown. Below image shows how it all looks like in JIRA. There are two types of fields on the dialog box; Mandatory and Non-Mandatory. Mandatory fields are marked with a red Asterix. Also, these fields change on change of the issue type i.e. on basis of what is applicable to the issue type being selected.  As already mentioned, JIRA is highly customizable and a JIRA admin can add or change more issue types based on what terminology is being used by the project and/or organization on the whole. E.g. Issue type of Features can also be added in case teams follow a feature-based development approach wherein features are divided across teams and encompass the hierarchy of epics and stories.  In a similar manner, issue type “Story” can be amended to be displayed as “User Story” or at times to be more specific, something like “Functional User story” and/or “Technical User story”. In addition to this, the fields are also customizable. New fields can be added and the rule of mandatory and option field can also be altered depending on what works best for the team. To make these changes, the JIRA admin needs to navigate to the settings section and then to the desired settings type to change them. Please note that these settings will only be available to the user who either is a JIRA admin or has permission to perform these activities. Permissions are issued by the JIRA admin to the user.  Coming back to the topic of creation of backlog, once you fill up the details and click on “Create” at the bottom of the dialog box, a new issue is created in JIRA that now starts reflecting in the backlog.  Issues can also be created by using the short cut link available in the backlog section as highlighted below.  Once you click on “+” icon, you will be able to select the type of issue to create and provide a summary for the same.   After entering the summary details, you are required to click enter and the issue is created. To enter other details, you will have to navigate to the created issue by clicking on it in backlog or opening the same in a new tab and then doing the needful.  As soon as an issue is created, the same starts reflecting in the backlog. Here you can see two stories and one bug that were created, are visible in the backlog. 1. Linking Issues:  We all know the hierarchy of requirements goes something like Epics > Stories > Tasks. JIRA gives us the capability to link one issue type with another. To start with as a very basic ask, stories will fall under the epics and thus need to be linked with the correct epic. This linkage is something which replaces the requirement traceability of traditional models. When everything is perfectly linked then it can be easily known which requirement from the customer was covered under which epic and if we go into a granular level, under which story and even tasks the requirements fall under. Similarly, if a bug is found in the story while working on it, the bug can also be logged and linked against the story.  To link issues, the steps below can be performed.  Epic Link: To link stories under an epic, JIRA specifically provides the field “Epic Link” in stories. The field at most times is made mandatory by organizations to make sure that every story that is created in JIRA is by default linked to the epics. Here the epic becomes the parent issue of the story and thus it also becomes easy to make sure that every requirement has been worked upon.  Step 1: There are two ways to create the Epic link. While creation of the story, you will have the option to mention Epic link or if the story is created using shortcut link, the same can be added by opening the story and then mentioning the epic in the epic link field as shown below. Step 2: Once selected the same starts reflecting in the story details.   Step 3: To see the linkage, you need to navigate back to backlog. The link starts displaying in the backlog.   2. Linking Bugs:  Once the bugs are created, they can be used to block user stories in a similar fashion, though there is no specific field like epic link in case of bugs, they can be linked using the “Link issue” option.  Step 1: Once the bug is created, note the issue ID and open the story which needs to be blocked and select the “Link Issue” option.  Step 2: By default, “is blocked by” option is selected, indicating that the story is blocked due to the following issue. As soon as you enter the bug issue id and click on link, the story is linked with the bug or to be more specific, the story is marked ‘blocked’ by the bug. In this way multiple stories can be blocked with a single bug and vice versa.   Note – Stories can be linked to other stories to showcase linkage, to mark dependency, to display duplicity/redundancy etc in the same manner, all that is needed is to select the correct option from the dropdown after selecting “Link issue”. Issue Prioritization in Backlog.  As the rule goes, the product backlog must be prioritized at all times i.e. the issue with the highest priority should be at the top and the issue with least priority should be at the bottom of the backlog, so that the teams working on the backlog have a clear idea about the work they need to pull in once the next iteration starts or to understand if they have capacity for more during the ongoing sprint. Keeping the backlog prioritized also helps the team to keep working as per the product roadmap in the absence of the product owner and as such the team does not get blocked.  JIRA also provides the capability to keep the backlog prioritized at all times by the simple function of dragging and dropping the issue above or below the other ones. Below images will give you an idea of the same.  Scenario 1: Once you start creating issues in the backlog, the issues start reflecting in the ascending order of their Issue IDs i.e. the order in which they are created. For ease of reference, the issues have been named as 1, 2, 3, 4 and placed one after the other.  Now assume that the priority of Story 4 is the highest and thus it should be at the top of the backlog, followed by test story 2, followed by 1 and 3 respectively. Thus, they should be placed in order of 4,2,1 and 3 in the backlog. This can be done by simply dragging the items to bring them in the desired order.  Scenario 2: Below image gives you a backlog which is sorted on the basis of prioritization of stories as per the priority defined by the PO. Bugs too can be dragged and placed at the relevant position in the backlog depending on their severity and priority. All these activities of creation and prioritization of backlog are done primarily by the PO. In case the PO is supporting multiple teams and there are BAs supporting individual teams or acting as proxy POs for the teams, then POs can leverage them for backlog management. Scrum master needs to ensure that the backlog is prioritized, properly detailed and at least the stories for the immediate next sprint remain in a ready state.   3. Creating & Starting a Sprint:  Once the backlog has been created, the next step for the team is to gather and hold the sprint planning event. PO can open the stories and discuss the details and Acceptance Criteria with team members. Once all the stories have been discussed, the team can start pulling the stories in the sprint and for that to happen the team will need a sprint in JIRA. It is again very simple.  Step 1: In the backlog section, there is a “Create Sprint” button.  Step 2: Once you click on the button; a sprint is created, starting from sprint 1 with a prefix of project ID as shown in the image below. You have the option to create issues directly in the sprint using the quick link as mentioned above for the backlog or the issues can be dragged and dropped in the sprint created. All the issues dragged and dropped in the sprint created, as discussed in sprint planning, will serve as the sprint backlog.  Step 3:  Once all the issues are dragged and dropped in the sprint, the sprint is ready to be started. As an example, we see that test story 4 and 2 as well as a bug have been dragged to sprint 1 as displayed in the image below.Please note as part of sprint planning session, details like Story Assignee, story points and hourly estimates can be filled in the stories using the fields available. Also, in case the story owner wants to highlight the individual tasks they intend to perform as part of working on the story like Analysis, Coding, Review etc or in case multiple team members are working on a single story then to highlight individual work assignments, the option of creating tasks can be used. Tasks can be created just like stories, as mentioned above. It is similar to work breakdown in traditional models.What needs to be made sure is that before marking the sprint planning as being complete, all the stories have been pulled in sprint and assigned and estimated in terms of story points or hours or both, according to the approach the teams have decided to take. All the sub tasks that have been created, can optionally be assigned. If desired, these subtasks can also be estimated. Once all this is done, the Scrum Master can then mark sprint planning as complete and proceed to start the sprint.  As we know that before sprint planning, a goal is provided by the PO to the team. The same goal can be added in the sprint. Just select the three dots option besides the sprint on right side and select edit sprint and you will be able to enter the sprint goal.  4. Starting Sprint: Once the planning is complete and activities like estimations, assignments and tasking have been done, it is time to start the sprint. This is simple to do. In the backlog, there is a “Start Sprint” button. Once you click on it, a dialog box appears where you can verify sprint goal and set a duration for the sprint. After reviewing the details, you can click on “Start” and we are good to go.  5. in Progress:  Once the sprint has started, you can navigate to the “Active Sprint” section to visualize the progress on the stories in the sprint. Team members can update the stories to depict statuses from “To Do”, “In Progress” and “Done” and also update their daily hours in the stories in case teams are estimating in terms of hours.  6. Completing/Closing Sprint:  On the last day of the sprint, it is important to mark the ongoing sprint as closed in JIRA so that next sprint can be planned and started.  All the items which are marked done are considered complete. Anything pending to be completed is either moved to the next sprint or to backlog in consultation with the PO.  Step 1: In the “Active Sprint” section. On the top right corner, you need to click on “Complete Sprint” button.  Step 2: Once the “Complete Sprint” button is clicked, a dialog box appears with details of issues that have been completed and the ones which are pending. Select the place where you wish to move the pending items to, either to the backlog or next sprint which is to be started.Step 3: Once you select the desired value under “Move to” field and click on “Complete” button the Sprint is marked as complete.   

Learn Scrum with JIRA

6K
  • by Deepti Sinha
  • 16th Dec, 2020
  • Last updated on 17th Mar, 2021
  • 13 mins read
Learn Scrum with JIRA

Many organizations use JIRA as a one-shot solution to automate their processes, and JIRA has almost become synonymous with Agile. Even organizations that don’t deploy it across all levels use it for at least some of their projects. Such is the popularity of JIRASo, what exactly makes it so popularJIRA provides a simple and easy-to-use solution for project management tasks, right from gathering requirements to maintaining releases and generating all sorts of reports and metrics. The best part of the tool is that it is highly customizable, attending to the needs of one and all. If it is said that there isn’t a thing that one cannot do using JIRA in terms of project management, then that is not an understatement.  

Since Agile is the buzzword now and most organizations are opting for it, this article will provide users with detailed insight on how to carry out their project management tasks and software development activities by using a Scrum framework  

Before moving ahead, there are two basic pre-requisites that the user who intends to use JIRA must have and they are: 

Pre-Requisites:  

  • An active account on JIRA 
  • Required permissions (Super Admin, Project Admin, etc. – Defined by organizations) 

1. Creation of Project: 

The first and most important thing is to create a project in JIRA under which we will be carrying out our activities and tracking the progress of those. There are two ways a user can create a project.  

Method 1:  

Step 1: Log in to JIRA using your credentials. Once you are logged inyou will land on the project dashboard which will look something like this.  

Learn Scrum with JIRAStep 2: Click on Settings icon and select the Projects option as highlighted in the image below.   

Learn Scrum with JIRA

Step 3: Select “Create Project” option as shown in the image.   

Learn Scrum with JIRA

Step 4: After clicking on “Create Project”, you will be prompted with two options to select from.  

  • Classic Project  
  • Next Gen Project 

Learn Scrum with JIRA

Step 5: Once you have selected the type of project, you will be asked to enter the Project name. You will also have the option to change the type of template i.e Scrum, Kanban or Bug Fixing, depending on the purpose for which you wish to use JIRA.  Once done, you must click on the “Create” button.  

Learn Scrum with JIRA

And voila, it’s that simple. Once you have clicked on the create button, you will land on the project dashboard with the name of the project highlighted on the top left. As we can see in the image below, project name “My Scrum Project” is visible. Learn Scrum with JIRAMethod 2.  

The steps remain the same, only difference is that instead of navigating through settings, once you have logged in, you will have the option to navigate via “Projects” link as depicted in the pic.

Learn Scrum with JIRA  

Learn Scrum with JIRA2. Creating Backlog: 

Once the project has been created the second important step is to define requirements in backlog. As you can see in the pic below, there is the option to select “Backlog” from the left side panel/navigation pane to navigate to the backlog section.  

Learn Scrum with JIRA

Here you can start creating backlog items. This backlog serves as the “Product Backlog”. Users can outline requirements in terms of Epics, User Stories, Tasks and Bugs which are known as “issue types” in JIRA. In short, everything that is created is an issue in JIRA. Please note that for ease of understanding and reference, I am sticking to the most basic issue types as mentioned above.  

Step 1: To create issues in JIRA, all that is needed to be done is to click on the “Create” button on the top most navigation bar. This bar remains visible at all times by default, no matter whichever page you navigate to. Step 2: Once the user clicks on “Create”, a dialog box to enter details of the issue will open.   

Learn Scrum with JIRA

The two most important fields in this are:  

  • ProjectThis field, by default, is populated with the name of the project you are in. But in case you wish to change the project field, the same can be selected from the dropdown

Learn Scrum with JIRA

  • Issue Type: This option by default is selected as “Story” but can be changed depending on which issue you want to create. The relevant issue can be chosen from the dropdown. Below image shows how it all looks like in JIRA. 

There are two types of fields on the dialog box; Mandatory and Non-Mandatory. Mandatory fields are marked with a red Asterix. Also, these fields change on change of the issue type i.e. on basis of what is applicable to the issue type being selected.  

As already mentioned, JIRA is highly customizable and a JIRA admin can add or change more issue types based on what terminology is being used by the project and/or organization on the whole. E.g. Issue type of Features can also be added in case teams follow a feature-based development approach wherein features are divided across teams and encompass the hierarchy of epics and stories.  

In a similar manner, issue type “Story” can be amended to be displayed as “User Story” or at times to be more specific, something like “Functional User story” and/or “Technical User story”. 

In addition to this, the fields are also customizable. New fields can be added and the rule of mandatory and option field can also be altered depending on what works best for the team. 

To make these changes, the JIRA admin needs to navigate to the settings section and then to the desired settings type to change them. Please note that these settings will only be available to the user who either is a JIRA admin or has permission to perform these activities. Permissions are issued by the JIRA admin to the user.  

Learn Scrum with JIRA

Coming back to the topic of creation of backlog, once you fill up the details and click on “Create” at the bottom of the dialog box, a new issue is created in JIRA that now starts reflecting in the backlog.  

Issues can also be created by using the short cut link available in the backlog section as highlighted below.  

Learn Scrum with JIRA

Once you click on “+” iconyou will be able to select the type of issue to create and provide a summary for the same.   

Learn Scrum with JIRA

Learn Scrum with JIRA

After entering the summary details, you are required to click enter and the issue is created. To enter other details, you will have to navigate to the created issue by clicking on it in backlog or opening the same in new tab and then doing the needful.  

As soon as an issue is created, the same starts reflecting in the backlog. Here you can see two stories and one bug that were created, are visible in the backlog. 

Learn Scrum with JIRA

1. Linking Issues:  

We all know the hierarchy of requirements goes something like Epics > Stories > Tasks. JIRA gives us the capability to link one issue type with another. To start with as a very basic ask, stories will fall under the epics and thus need to be linked with the correct epic. This linkage is something which replaces the requirement traceability of traditional models. When everything is perfectly linked then it can be easily known which requirement from the customer was covered under which epic and if we ginto a granular level, under which story and even tasks the requirements fall under. Similarly, if a bug is found in the story while working on it, the bug can also be logged and linked against the story.  

To link issues, the steps below can be performed.  

Epic Link: To link stories under an epic, JIRA specifically provides the field “Epic Link” in stories. The field at most times is made mandatory by organizations to make sure that every story that is created in JIRA is by default linked to the epics. Here the epic becomes the parent issue of the story and thus it also becomes easy to make sure that every requirement has been worked upon.  

Step 1: There are two ways to create the Epic link. While creation of the storyyou will have the option to mention Epic link or if the story is created using shortcut link, the same can be added by opening the story and then mentioning the epic in the epic link field as shown below. 

Learn Scrum with JIRA

Step 2: Once selected the same starts reflecting in the story details.   

Learn Scrum with JIRAStep 3: To see the linkage, you need to navigate back to backlog. The link starts displaying in the backlog.   

Learn Scrum with JIRA

2. Linking Bugs:  

Once the bugs are created, they can be used to block user stories in a similar fashion, though there is no specific field like epic link in case of bugs, they can be linked using the “Link issue” option.  

Step 1: Once the bug is created, note the issue ID and open the story which needs to be blocked and select the “Link Issue” option.  Learn Scrum with JIRAStep 2: By default, “is blocked by” option is selected, indicating that the story is blocked due to the following issue. As soon as you enter the bug issue id and click on link, the story is linked with the bug or to be more specific, the story is marked blocked by the bug. In this way multiple stories can be blocked with a single bug and vice versa.   

Note – Stories can be linked to other stories to showcase linkage, to mark dependency, to display duplicity/redundancy etc in the same manner, all that is needed is to select the correct option from the dropdown after selecting “Link issue”. 

Issue Prioritization in Backlog.  

As the rule goes, the product backlog must be prioritized at all times i.e. the issue with the highest priority should be at the top and the issue with least priority should be at the bottom of the backlog, so that the teams working on the backlog have a clear idea about the work they need to pull in once the next iteration starts or to understand if they have capacity for more during the ongoing sprint. Keeping the backlog prioritized also helps the team to keep working as per the product roadmap in the absence of the product owner and as such the team does not get blocked.  

JIRA also provides the capability to keep the backlog prioritized at all times by the simple function of dragging and dropping the issue above or below the other ones. Below images will give you an idea of the same.  

Scenario 1: Once you start creating issues in the backlog, the issues start reflecting in the ascending order of their Issue IDs i.e. the order in which they are created. For ease of reference, the issues have been named as 1, 2, 3, 4 and placed one after the other.  

Learn Scrum with JIRANow assume that the priority of Story 4 is the highest and thus it should be at the top of the backlog, followed by test story 2, followed by 1 and 3 respectively. Thus, they should be placed in order of 4,2,1 and 3 in the backlog. This can be done by simply dragging the items to bring them in the desired order.  

Scenario 2: Below image gives you a backlog which is sorted on the basis of prioritization of stories as per the priority defined by the PO. 

Learn Scrum with JIRA

Learn Scrum with JIRA

Bugs too can be dragged and placed at the relevant position in the backlog depending on their severity and priority. All these activities of creation and prioritization of backlog are done primarily by the PO. In case the PO is supporting multiple teams and there are BAs supporting individual teams or acting as proxy POs for the teams, then POs can leverage them for backlog management. Scrum master needs to ensure that the backlog is prioritized, properly detailed and at least the stories for the immediate next sprint remain in a ready state.   

3. Creating & Starting Sprint:  

Once the backlog has been created, the next step for the team is to gather and hold the sprint planning event. PO can open the stories and discuss the details and Acceptance Criteria with team members. Once all the stories have been discussed, the team can start pulling the stories in the sprint and for that to happen the team will need a sprint in JIRA. It is again very simple.  

Step 1: In the backlog section, there is a “Create Sprint” button.  Learn Scrum with JIRAStep 2: Once you click on the button; a sprint is created, starting from sprint 1 with a prefix of project ID as shown in the image below. You have the option to create issues directly in the sprint using the quick link as mentioned above for the backlog or the issues can be dragged and dropped in the sprint created. All the issues dragged and dropped in the sprint created, as discussed in sprint planning, will serve as the sprint backlog.  

Learn Scrum with JIRA

Learn Scrum with JIRA

Step 3:  Once all the issues are dragged and dropped in the sprint, the sprint is ready to be started. As an example, we see that test story 4 and 2 as well as a bug have been dragged to sprint 1 as displayed in the image below.

Learn Scrum with JIRA

Please note as part of sprint planning session, details like Story Assignee, story points and hourly estimates can be filled in the stories using the fields available. Also, in case the story owner wants to highlight the individual tasks they intend to perform as part of working on the story like Analysis, Coding, Review etc or in case multiple team members are working on a single story then to highlight individual work assignments, the option of creating tasks can be used. Tasks can be created just like stories, as mentioned above. It is similar to work breakdown in traditional models.

Learn Scrum with JIRA

Learn Scrum with JIRA

What needs to be made sure is that before marking the sprint planning as being complete, all the stories have been pulled in sprint and assigned and estimated in terms of story points or hours or both, according to the approach the teams have decided to take. All the sub tasks that have been created, can optionally be assigned. If desired, these subtasks can also be estimated. Once all this is done, the Scrum Master can then mark sprint planning as complete and proceed to start the sprint.  

As we know that before sprint planning, a goal is provided by the PO to the team. The same goal can be added in the sprint. Just select the three dots option besides the sprint on right side and select edit sprint and you will be able to enter the sprint goal.  

Learn Scrum with JIRA

Learn Scrum with JIRA

4. Starting Sprint: 

Once the planning is complete and activities like estimations, assignments and tasking have been done, it is time to start the sprint. This is simple to do. In the backlog, there is a “Start Sprint” button. Once you click on it, a dialog box appears where you can verify sprint goal and set a duration for the sprint. After reviewing the details, you can click on “Start” and we are good to go.  Learn Scrum with JIRA

5. in Progress:  

Once the sprint has started, you can navigate to the “Active Sprint” section to visualize the progress on the stories in the sprint. Team members can update the stories to depict statuses from “To Do”, “In Progress” and “Done” and also update their daily hours in the stories in case teams are estimating in terms of hours.  

Learn Scrum with JIRA6. Completing/Closing Sprint:  

On the last day of the sprint, it is important to mark the ongoing sprint as closed in JIRA so that next sprint can be planned and started.  

All the items which are marked done are considered complete. Anything pending to be completed is either moved to the next sprint or to backlog in consultation with the PO.  

Step 1: In the “Active Sprint” section. On the top right corner, you need to click on “Complete Sprint” button.  

Learn Scrum with JIRA

Step 2: Once the “Complete Sprint” button is clicked, a dialog box appears with details of issues that have been completed and the ones which are pending. Select the place where you wish to move the pending items to, either to the backlog or next sprint which is to be started.Learn Scrum with JIRAStep 3: Once you select the desired value under “Move to” field and click on “Complete” button the Sprint is marked as complete.   

Deepti

Deepti Sinha

Blog Author

Deepti is an Agile Coach by profession and Freelance Trainer with over 11 years of industry experience working primarily with healthcare & finance clients in delivering business. She has played a wide variety of roles in the graph of her career, whether it be, management, operations or quality. She likes reading fiction, management and loves to write her experiences. Her colleagues mostly describe her as very detail oriented person with a knack of creativity and imagination. And yes, she loves feedback more than her coffee!!

Join the Discussion

Your email address will not be published. Required fields are marked *

Suggested Blogs

Why Scrum Is Lightweight; Simple To Understand; Difficult To Master?

85 percent of respondents say Scrum continues to improve quality of work life—State of Scrum 2017-2018 We have all heard companies who have adopted Scrum wax eloquent about its advantages and the benefits it brings in to business. Scrum has been adopted because it is supposed to be simple and promotes collaboration and communication. Yet, more organizations attempting the Agile/Scrum transformation often fail and end up abandoning their transformation or get stuck in a limbo. So, is the golden statement that ‘Scrum is lightweight, simple to understand, difficult to master’ true? In this blog we attempt to decipher this statement and understand how Scrum Masters can help make Scrum projects or implementations successful.Where to start?So, what makes Scrum so popular? That it is better suited to the changing market conditions of the present times is well known, but how is it able to do it?  Scrum is an adaptable, iterative framework that helps Scrum teams break down large projects into small chunks called epics and sprints. Goals are defined and timeboxed. Teams are small, self-organized and with a high degree of cross-function. A goal or functionality has to be delivered at the end of each sprint. This helps for quick feedback and gives teams the ability to adapt to changing requirements—a must in times when products have to adapt quickly to please changing user preferences.  The advantages of Scrum include:  More satisfied customers Better managed processes and happier teams Better visibility into projects Better quality products  Projects completed withing time and budget constraints Better adaptability  Motivated teams Lightweight Management ProcessScrum is a lightweight framework because it provides adaptable solutions to complex problems and helps teams and organizations generate value.Why Scrum is considered to be lightweight, easy to understand but difficult to master?Lightweight: Scrum, based on Agile values, has few elements and maximizes responsiveness to customer needs. This makes it lightweight and apt for software development in the modern world.  Easy to Understand: With just three roles, three artifacts, four ceremonies and 12 Agile values, Scrum is pretty easy to understand. Scrum is a collection of practices and concepts that teams use to build processes around. The Scrum Guide which is the Scrum bible is also easy to read and understand. The three scrum roles are: Team, Scrum Master, Product Owner The ceremonies are:  Sprint Planning, Daily Scrum, Retrospective and Sprint Review The three artifacts are: Product Backlog, Sprint Backlog, Burndown chart  Difficult to Master: So, if Scrum is so easy to learn about and understand then why is that it’s difficult to actually implement and master? Let us look at this from the perspective of a Scrum Master. A Scrum Master is a critical part of the Scrum team and is in effect a microcosm of Scrum upholding the Agile values and focusing on creating a self-organizing, highly motivated and collaborative team. Scrum is a not a one-size-fits- all framework. Perhaps that is what makes it difficult to master. It has to be tailored to suit the needs of each project, team and organization. There are several factors that need to be considered before adopting Scrum. The Scrum Master’s role, similarly, needs to be learnt and there are several skills a professional must have or needs to cultivate in order to be a successful Scrum Master. The Scrum Master’s Role in a Successful Scrum Adoption:There are many Scrum teams that have started out in the right way, but soon fall by the wayside as they do not follow Scrum in principle. This is where the Scrum Master plays a very critical role in the success of the team. Despite Scrum being ‘simple to understand and difficult to master’ the Scrum Master is considered to be the expert on all things Scrum.As a coach, guide and mentor, the Scrum Master should facilitate the successful adoption of Scrum, and help others to gain mastery over Scrum principles and values.A Scrum Master must mandatorily follow certain core values and inspire the team to follow them as well. These core values that include openness, commitment, focus, courage and respect bring the team together and promote better work ethics and practices.Besides inculcating Scrum principles and values and guiding a successful adoption, a Scrum Master should also have these attributes:  An Unbiased and Open Mind:  An unbiased and open mind is key to being a good Scrum Master. As part of their portfolio, Scrum Masters have to work with different teams and team members having different personalities. Having an open mind will help the Scrum Master to not look at every team with the same lens and treat each team differently. Solutions that work for one team may not work for other teams or situations. Having an open mind will help you realise this and tweak your decisions based on teams and situations.   Transparency:  Transparency and open communication are the pillars of Scrum. As a Scrum Master your intentions should be open and transparent to everyone including your team and the product owner. The team must at all times know your reasons for doing certain things or taking certain decisions. Being upfront with the team members will help in trust building and lead to better work ethics.   Metrics to Map Progress:There are several tools available to track a team’s progress and the Scrum Master must ensure that these metrics showing the team’s progress be made available to the entire team. This will help the team better plan sprints, work collaboratively and improve working practices in order to ensure better output and value.   Motivation for Team Members: Keeping your team members happy and motivated is a Scrum Master’s main job. This includes removing obstacles that may impede the team from performing and helping them work according to Scrum values and techniques. The development team develops the product, and a happy team means a well-built product and satisfied customers. Assistance to the Product Owner:  As a Scrum Master, aiding the Product Owner is a major part of your responsibility. The Product Owner is a major stakeholder in the Scrum team and the Scrum Master aids the product owner in backlog management and by facilitating Scrum events, product planning and by helping the team to identify backlog items. Aiding the Product Owner in issues that they may face with regards to the project, stakeholders or the team will create a positive environment and will make things between the team and the product owner smoother.   Focus on the Challenges: Every Scrum project comes with its set of issues. But an effective Scrum Master will be aware of every challenge or impediment that comes in the way of the development team and takes these problems head on. Focusing on these challenges early on and resolving them is paramount to the success and progress of the team and the project. Appreciation for Achievements:  The focus of daily sprints and retrospectives is often to celebrate achievements and give the development team proper appreciation. A Scrum Master encourages and motivates and this they also do by respective current achievements. While giving advise on how things should be done is necessary, appreciating the team on its achievements is equally important.   Respect for Others: Your team members all have different personalities and each brings their own uniqueness and expertise to the team. No one team member is less or more important than the other. An effective and efficient Scrum Master will recognise this early on and treat every team member with the same amount of respect.  Understanding of Situations in the Right Context:  Not all things are as what they appear. The sooner a scrum master understands this, the better. Situations in context to teams, individuals and even the organization are not always black and white and the Scrum Master must consider the baggage of organizational culture, current systems, internal politics, etc before coming to a conclusion about a team or a team members. Instead, one must attempt to form close relationships with the team and understand the workings of the team and the organizations before passing judgement. Ability to Have Tough Conversations :  You as a Scrum Master are often seen as a problem solver, friend and mentor. But don’t let this image of yours come in the way of making tough decisions or having tough conversations. As a Scrum Master you must have the courage to do the right thing and if this means having difficult but necessary conversations with either the team members, the product owner or the stakeholders, then you must do it.    Courage to Protect the Team:  More often than not, there are unreasonable demands made on the development team. The Scrum Master should have the courage to protect the team and say an emphatic ‘no’ to the Product Owner or the stakeholders.  Accountability: You are accountable for your team’s success as you are for its failures. If as a Scrum Master you want your team to be accountable then the best way to get them to do that is to be accountable yourself. You can do this by being more invested in the day-to-day activities of the team and considering yourself to be a part of the team as well.  Support for Team Members: As a Scrum Master you are not just invested in the project but also in the growth of individual team members. You should motivate, encourage and support your team members to grow and reach heights in their careers.   Deep Commitment: If the team feels that the Scrum Master is committed to the project, committed to the team and committed to the team members, then they are more likely to be open and transparent with the Scrum Master. This trust with the team has to be built so that team members can be open about the challenges they face. The Scrum Master is the voice of the team and must support them at all stages.   Focus on Improvement:  Scrum is all about continuous improvement and the success of the Scrum Master is also tied to the continuous improvement of the Scrum team. If your team is getting better with time then you are doing well as a Scrum Master. From daily sprints to retrospectives, the Scrum Master provides avenues for the team to improve itself, identify problems and suggest solutions to work better.  Conclusion Scrum is the most used Agile framework, yet there are several lessons that organizations need to learn about Scrum before they embark on a transformation journey. This lightweight and easy to use framework can turn around the fortunes of companies if implemented in the right way. It’s important for an organization’s culture to be ready to accept and implement Scrum for project and organizational success.  
7720
Why Scrum Is Lightweight; Simple To Understand; Di...

85 percent of respondents say Scrum continues to... Read More

Scrum Master – The Scrum Team’s Servant-Leader!

The term servant leader is synonymous with a Scrum Master. But what does it mean? The Scrum Master is a servant leader in Agile projects, but servant leadership goes far beyond Agile, and Scrum Masters serve more than just the team.In this blog we attempt to look at the Scrum Master’s role as a servant leader, what the role entails and the responsibilities of the Scrum Master beyond the team, in context to the organization. What is servant-leadership?The term servant leadership was first coined by Robert Greenleaf in his article “The Servant as Leader”, in which he defined a servant leader as: The Servant-Leader is servant first. It begins with the natural feeling that one wants to serve, to serve first. Then conscious choice brings one to aspire to lead. That leader significantly differs from one who is leader first, may be due to the need to acquire power, material belonging, control and authority within the organization. Servant leadership is something very different from traditional leadership, which places the leader at the top of the hierarchy and the employees in the lower rung. Servant leadership, in a sense, is the opposite of traditional leadership, as it places the leader at the bottom of the hierarchy while employees are on the higher rungs. The leaders, in this case, are serving the people above them. Servant leadership refers to leaders who believe in serving people and the community that they are a part of, rather than accumulating power for themselves. This style of leadership emphasizes on helping subordinates better themselves, empowering employees and helping others perform to the best of their abilities.Servant leadership does not prescribe telling employees what to do, instead it helps the workforce find their sense of ownership and unlock their potential to reach their goals. Servant leadership is all about empowering others, which when consistently done can raise morale, enhance productivity and reduce employee attrition.Servant Leadership and ScrumScrum, in a way, is the very essence of servant leadership. Unlike traditional project management methodologies, it does not follow a top-down, hierarchical approach. Instead, decisions are lateral and happen with the involvement of the whole team. Scrum is the perfect approach in which to practice the concept of servant leadership. The 5 Scrum values of Openness, Respect, Commitment, Courage, and Focus, adhere to the philosophy of Servant Leadership. The Scrum Master plays a key role in the development of the product, the team and the organization. The Scrum Guide defines the servant leadership a Scrum Master’s role has to perform in context to the roles mentioned above. The Scrum Values that a Scrum Master practices have a ripple effect throughout the organization. The Scrum Master is seen as an evangelist for practicing and promoting Scrum in the enterprise.The Agile Manifesto and servant-leadershipThe Agile Manifesto states that one must value: Individuals and interactions over Process and tools Working software over Comprehensive documentation Customer collaboration over Contract negotiation Responding to change over Following a plan These again align with the values of servant leadership, which is all about putting people or employees first. The Agile Manifesto describes focusing on building projects around motivated individuals and giving them an environment of support, trust and collaboration—all characteristics of servant leadership.Who Are These Servant Leaders?The Scrum Guide defines the service provided by the Scrum Master as servant leadership. The Scrum Master selflessly provides servant leadership to the development team, product owner and the whole organization. By serving these entities, the Scrum Master can create a high performing team, a valuable product and an efficient organization that is able to meet business objectives and keep customers happy.  Though the term Scrum Master may be deceptive, the Scrum Master is not a master of the team but in fact serves the team in order to ensure smooth functioning and productivity.Servant Leadership and Scrum Master Roles of Servant LeadershipServant leadership:The day-to-day activity of a Scrum Master involves servant leadership. Servant leadership in a scrum team involves performance planning, coaching, helping the team self- organize, resolving conflicts through conflict management, removing obstacles that hinder progress and serving the team. The Scrum Master, while practicing servant leadership, helps the team grow and mature and become independent enough to make their own decisions. Servant leadership in Scrum is all about making the team self-reliant, so they can cope with the pressures of the role. As a servant leader the Scrum Master creates a high performing team, helps them become collaborative and high performing in order to achieve goals and meet the requirements of the customer.  Service to the Scrum Team: As a servant leader, the primary responsibility of the Scrum Master is to help the development team perform. They help the team perform to the best of their abilities by giving them an environment that is conducive to work in, encouraging them, guiding them and removing obstacles that may hinder progress. As a coach, the Scrum Master will guide the team on scrum processes and help them adhere to Agile values during the development of the product. The Scrum Master is responsible for the scrum team’s effectiveness, and they work tirelessly to ensure that the team is motivated, encouraged, creative and innovative. The Scrum Master through servant leadership helps the team improve Scrum practices which helps them become more productive and generate value. The Scrum Team’s role in motivating and helping the team comes through in the daily stand-up meetings that are arranged as part of the sprint. The Scrum Master encourages team members to share their grievances and progress made through the sprint. Team members can talk about obstacles that may be hindering their work and due cognizance will be taken up by the Scrum master to ensure that these obstacles are removed.  According to the Scrum Guide, the Scrum Master helps the Development Team by: Coaching the team in becoming self-organized and cross-functional Helping the Scrum Team focus on creating high-value increments by removing impediments Helping the team deliver within the timeframe of the sprint Service to the Product Owner: The Scrum Master is a servant leader not just for the development team but also the Product Owner. While the Product Owner is primarily responsible for the product backlog, they cannot do this alone. The Scrum Master aids the development team and the Product Owner with effective product backlog management.The Scrum Master is involved at every stage of the product backlog grooming, helping the product owner with Scrum events, product planning and to identify backlog items along with the development team. The Scrum Master helps the Product Owner define the product vision to the team.   According to the Scrum Guide, the Scrum Master helps the Product Owner by: Helping in Product Goal definition and Product Backlog management Helping the Scrum Team understand manage the Product Backlog items Setting up empirical product planning in complex environments and, Managing and facilitating stakeholder collaboration.Service to the Organization: The Scrum Master is a coach and motivator not just for the development team but goes beyond the team to spread the awareness of Scrum in the entire organization. Scrum Masters coach and help teams and departments understand Scrum and develop an Agile mind-set. Besides servant leadership to the team a Scrum Master is also involved in promoting the ideas and values of Scrum. An organization can get an agile mind-set only if the entire organization adopts Scrum and not just a few teams. This is where the Scrum Master comes in, helping other teams not involved with Scum to gain the Agile mind-set, through training and coaching. The Scrum Master is an Agile evangelist and promotes Scrum enterprise-wide.According to Scrum.org the Scrum Master serves the organization by: Leading, training, and coaching the organization in adopting Scrum Planning and advising Scrum implementations within the organization Coaching employees and stakeholders in the way Scrum works Helping stakeholders work with Scrum TeamsSome Servant-Leader Behaviours for every Scrum MasterBeing empathetic: This is the foremost personality trait required for anyone wanting to become a Scrum Master. Your empathy will shine through in your interactions with the team members and your dealings with the stakeholders. You should be able to see problems from the point of view of each party and work towards solving these problems. Caring: As a caring and empathetic Scrum Master, your team will feel free to approach you and share their concerns. Providing a listening ear will make you more approachable. You will be able to more clearly understand the impediments that are stopping project progress and work towards providing a solution.  Managing Conflicts: Not all team members will get along with each other and this can cause disruptions and problems within the team, lowering their productivity. As a Scrum Master you need to be great at conflict management, help others solve their problems, work with each other and create a high performing and harmonious team. Building relationships: You need to build a rapport with your team, the product owner and the stakeholders. This will help you communicate freely and help others approach you with their problems and issues. You need to build that relationship of trust and take everyone along on the journey of success.  Being ethical: Ethics play an important role in software development, especially since software now controls every aspect of our lives. The product created should be free of malice and fraud. The Scrum Master should guide the team in delivering the product at a value and standard that is expected and agreed upon with the stakeholder. There should not be any shortcuts or concessions made on the quality of the product delivered as this will affect not just the Scrum Master and the team’s reputation but will cause a dent in the reputation of the organization.   Conclusion  Servant leadership and the Scrum Master’s role is the backbone of Scrum. The Scrum Master as a servant leader re-emphasizes the values of Scrum and helps to enhance teamwork, collaboration, motivation and value. Under the able servant leadership of the Scrum Master, individual members and the team will grow, become more confident and help in delivering value.  
7884
Scrum Master – The Scrum Team’s Servan...

The term servant leader is synonymous with a Scrum... Read More

A Guide to Scaling Scrum

Scrum has been proven to work well for small teams. But the true benefits of Agile can only be reaped if Agile and Scrum are scaled at the enterprise level. However, this is easier said than done. According to statistics, 47% of Agile transformations are not successful. While this is a worrying trend, there are still hundreds of organizations who have got it right and are able to survive the competition by innovating faster, delivering value and adapting to changing markets. How are they doing it? By using scaled Scrum.There are several tools and frameworks available for scaling Scrum at the enterprise level. In this blog, we attempt to look at a few of these.  Scaling Scrum with NexusNexus is among the most popular frameworks for scaling Scrum. According to the Nexus Guide, “Nexus is a framework for developing and sustaining scaled product delivery initiatives. It builds upon Scrum, extending it only where absolutely necessary to minimize and manage dependencies between multiple Scrum Teams while promoting empiricism and the Scrum Values.” How is Nexus different from Scrum? Scrum defines three primary roles: The Product Owner, the Scrum Master and the development team. These three roles work together in one team.The Nexus framework consists of several Scrum teams that work together toward a common product goal and defines the Nexus Integration Team as an additional accountability.  Nexus helps to build on the values of Scrum and also solves the collaboration and dependency challenges that tend to occur between teams in Scrum.Benefits of using Nexus Nexus extends Scrum in the following ways:  Accountabilities: Nexus introduces the Nexus Integration Team, which consists of the Scrum Master, Product Owner, and members. This team is accountable for delivering a workable product at the end of each sprint.  Events: Nexus events aim to add to or supplement Scrum events and serve not just individual teams but also the Nexus Integration Team. The objective of a sprint is to achieve the Nexus sprint goal. Artifacts: Although the teams are different, within the Nexus framework they all work towards a single goal and follow a single product backlog. There’s a high amount of transparency and work is allocated to each team. The Nexus Integration TeamAccording to the Nexus Guide, “the Nexus Integration Team exists to coordinate, coach, and supervise the application of Nexus and the operation of Scrum so the best outcomes are derived.” The Nexus Integration Team or NIT comprises of the Scrum Master, the Product Owner and Nexus integration team members. There are generally three to nine Scrum teams working together in Nexus. All of them follow a single product backlog and work towards delivering a single product. The Nexus Integration Team forms an essential role within Nexus and is tasked with providing transparent accountability among the teams in Nexus.Product OwnerThe Product Owner is accountable for maximizing the product value and the work carried out in Nexus. Their primary task is to order and refine the product backlog. Being a member of the Nexus Integration Team, the product owner will work with all the Scrum teams in the Nexus Integration team. The product owner and the teams work towards better defining and refining the product backlog.Scrum MasterJust like in regular Scrum, the Scrum Master in the Nexus Integration Team is also responsible for ensuring that the Nexus framework is understood by everyone on the team as prescribed by the Nexus Guide.   MembersThe members of the Nexus Integration Team are the Scrum team members who aid the Scrum teams in adoption of tools and practices that will help the team and members deliver value at the end of each sprint that meets the definition of done. Nexus Integration Team membership should be considered more important than the individual Scrum Team membership and members should work towards first fulfilling their Nexus team responsibilities.What are the Events in Nexus?Nexus adds or augments the events as defined by Scrum. The Nexus event durations are like Scrum event durations and are guided by the Scrum Guide.  Nexus events consist of: Sprint- A Nexus sprint is the same as in Scrum, at the end of which a single increment is delivered.  Cross team refinement- The aim of Nexus is to enhance collaboration and reduce cross team dependencies. Cross team refinement helps to make dependencies and responsibilities more transparent. This makes it easier for Scrum teams within the Nexus to clearly identify and deliver their allocated tasks.  Nexus Sprint Planning- Nexus sprint planning will involve the participation of the Product Owner and concerned teams' members from each team. The purpose of the Nexus Sprint Planning is to assign and co-ordinate activities for a single sprint.  Nexus Daily Scrum- This is like the daily stand up in Scrum. Nexus daily scrum is used to identify any issues and track progress. Any issues are immediately prioritized and solved so that they do not hinder the work of the developers.  Nexus Sprint Review- This event is held at the end of sprints to provide feedback on the increment that has been built and on any future updates that have to be made. Nexus Sprint Retrospective- Like in Scrum, Nexus retrospectives are an important part of the project and are used to reflect on how quality and consistency can be improved.  Some Nexus ArtifactsNexus artifacts are the same as Scrum artifacts and when implemented correctly ensure transparency and value maximization. Every artifact is designed to give a commitment. For example, the product backlog is the artifact and its commitment is the product goal. Other artifacts and their commitments include: Nexus Sprint Backlog-Nexus Sprint Goal Integrated Increment-Definition of Done Along with Nexus, LeSS is another popular framework for scaling agile.  Scaling Scrum with LeSS The Large-Scale Scrum (LeSS) framework is an offering from Atlassian and is a framework for scaling Scrum to multiple teams that are working on the same product. The idea behind LeSS is to start with a single Scrum team as defined in the Scrum Guide and then replicate it to multiple teams who are working on a single product. LeSS has earned the label of being “barely sufficient” as it is a simple framework to apply and uses the basic concepts of Scrum to scale.  How do Sprint Planning meetings in LeSS work?  LeSS generally carries out sprint planning in two stages. Sprint Planning One focuses on selecting items that are of topmost priority, solving unanswered issues and defining the sprint goal. The Sprint Planning Two is like the sprint plan of regular Scrum and focuses on creating a plan of action for getting things done.  Daily meeting  The daily Scrum meeting in LeSS is similar to how it is done in normal single Scrum teams and involves team members discussing the work accomplished and the work to be done during the day. It is a time-boxed meeting and helps teams address any issues that may be hindering work.   Sprint Delivery Meeting (Review) The sprint review meeting is an essential part of LeSS and helps teams and stakeholders review the product built during the sprint and suggest changes and new ideas.   Retrospective The retrospective for LeSS is similar to one team Scrum. These retrospectives held at the end of the sprint will help teams to reflect on the progress of tasks, and identify the obstacles that may hinder or impede the overall project.  Let’s take a look at some of the other frameworks that are used for scaling agile. Scaling Scrum with SAFe®The Scaled Agile Framework, SAFe in short, follows the principles of lean and agile and helps in scaling Scrum to the enterprise. It helps to manage alignment, collaboration, and delivery from multiple agile teams to ensure enterprise success. It systematically focuses on applying Scrum at each level of the enterprise, to maximize value and ensure a successful agile transformation.A successful SAFe adoption ensures end-to-end business agility with significant improvements in strategy, delivery, execution and business competencies. It helps organizations overcome competition and ensure innovative business solutions to gain customer trust and partnership. The SAFe framework is continuously improvised in order to help organizations cope with the digital age and ensure that business outcomes are delivered.Scaling Scrum with the Scrum@Scale frameworkAnother framework that allows organizations to implement Scrum at scale is the Scrum@Scale framework. This framework expands on the core principles of Scrum and helps to scale Scrum over a wide range of industries and sectors, ensuring customer satisfaction and creation of successful products. It promotes communication across all teams and departments, and optimizes resources, removes roadblocks and ensures creation of innovative products.A Final Word By driving Agile at the organizational level, companies can gain all the benefits of team-level Scrum at scale. More often than not the principles of team level Scrum are not sustainable at the enterprise level and the transformation fails. Tested and proven Agile scaling frameworks are now able to turn this around, and help organizations scale up the principles and practices of Scrum to become more adaptable, flexible and responsive. Professionals can master these frameworks and help their organization adopt the culture, mind-set and principles of Scrum and agile.  
5494
A Guide to Scaling Scrum

Scrum has been proven to work well for small tea... Read More