Can you create sub-projects in Jira? Not really, but hold on… Components can almost replace them, plus I will show you how to add them to your project in less than 5 minutes.
Also, In this article, I will explain how Jira Components work and why you should use them in your project NOW, plus I will give you a few real-life examples.
What is a Component?
In Jira Cloud or Data Center, a component is a part of a project comprising one or more issues. Components are used to organise and categories issues within a project and can represent different functional areas, teams, or sub-projects within the project.
Also, technically, Components in Jira are tags, so they are similar to labels. However, they are more effective so we can use them as sub-projects. If you have already read my other blog post, Jira Scrum Crash Course, you should know that you can’t create sub-projects regarding hierarchy in Jira.
Components VS Labels
Jira uses labels and components to classify and arrange issues within projects. But there are some significant differences between the two.:
- Scope: Components are specific to a single project, while labels can be used across multiple projects.
- Assignment: Components are typically assigned to issues by project administrators, while labels can be applied to issues by any user with permission to edit the issue.
- Filtering and reporting: Components can filter and report issues within a project, while labels do not have this capability.
Here are some examples of how you might use labels and components in Jira. Later in this article, I will also give you some real-life examples:
- Labels: You might use labels to tag issues with keywords or phrases that describe the issue or its content. For example, you might label an issue with “high priority” or “customer support.”
- Components: You might use components to represent different functional areas, teams, or sub-projects within a project. For example, you might create a component for “front-end development” or “database management.”
Both labels and components are handy tools for organizing and tracking issues within a project. The choice between labels or components will depend on your specific needs and how you want to organise and track your work, so let me give you a few real-life examples.
Issue hierarchy in Jira is simple. Although, by default, we can go up to 3 levels (Epics->Story/Task/Bug -> Sub-tasks). If you have the Jira Premium plan, we can go deeper up and add another level (or two) by using Initiatives. I wrote about Initiatives in this article.
So why do I often use Components, and why should you introduce them to your project sooner than later?
It’s about clarity and better organisation. Even for small project use of components is very beneficial.
Let’s say our Jira project is helping to manage a mobile app development project in Jira. Often, even medium size projects can be split into smaller parts; in our case, it will be Backend and Frontend.
So now it’s a necessary decision time. We can go into two paths. The first is to create two separate projects, but fragmentation is the big downside. Option no two is to set up one project and configure components, and that’s what we will do.
Additionally, each component can have a different leader called a component lead. That’s why labels will not work.
Later, we can also set Filters or have separate Scrum/Kanban boards based on the Component name. Ok, let’s do it.
Setting up components is a simple process. Historically they were only available for Agile-type projects, but you can now use them for any project layout, excluding Next-Gen (Team Managed). I just checked the config, and, at the moment, you can’t use them, but it can change in the future.
So let’s set our first two components, and as a bonus, I will also show you how to create filters based on Components.
I will use a Scrum project, but any Kanban or Company-Manage project type can be used.
From the project menu (Left section), navigate to Components.
Now, click on Create Component
In my case, I will add Frontend, and it’s always good practice to add some description; next, choose a Component Lead, and if you can set a Default assignee; however, I’m not recommending the last option.
You can repeat the process and add another Component. In my case, I only need two: Frontend and Backend.
Good, I hope you followed my steps so from now every new ticket can be assigned to a Component, or we can adjust already created tickets in Jira.
When you add a new issue, create screen screens and select components. It’s below the Summary. If you can’t see Components on your Create Screen, you need to change your create screen section. I described how to do it in this article.
Don’t forget that you can assign tickets to multiple components, which can be helpful.
Cool, now let’s explore option no two, so we will add Component to existing Jira issues.
You can do it from board settings but also the Issue Navigator.
Suppose you are using Scrum Project like me; navigate to Backlog and select any issue. Now, use the, as I call it, “Mini Editor” from the right section and find Components. If you can’t find it, use More fields.
The last step is to create a filter based on components, so later, I can use it for Dashboards or make a Dynamic report in Confluence.
To do it, we will be using JQL.
You need to navigate to Issues and next, use JQL on the right site.
Jira Should automatically convert your query from basic to JQL, also don’t worry if you have never used JQL; I will give you a copy-paste formula 🙂
So, now you should see something like this: project = “SSP” ORDER BY created DESC.
SSP is the key to the project and, of course, in your case, will be different
Let’s add a component.
project = “SSP” AND component = Backend ORDER BY created DESC
Great, l have 33 issues, so the last step is to save it, use the Save Filter link and add some proper names. I will name it SSP – Backend.
I always recommend adding a Components filter as a quick filter to your Scrum / Kanban Board. You can do it from Board settings -> Quick Filters. Just add the name and copy JQL.
Now you should know how powerful components are in Jira. You can also group tickets into categories or organise them into smaller groups. However, the main objective is to use them as sub-projects in Jira. Let me know what you think, and you can share your case. Comments are very welcome.