Component Versions for JIRA
JIRA building blocks
JIRA is a popular issue tracking and project management tool because even its default configuration works from scratch for a number of small teams and projects. You can then configure each and every detail of JIRA so that it supports your data structures and process flows.
Projects
There are three main building blocks which you can use to map your project into JIRA: projects, components and versions. Project in JIRA is a project or product in your organization: you can add people, configure permissions, create new issue types, define custom workflow etc.
Components
Components are lower level building blocks which you can use to break down your large project into smaller parts. Once you created components you can then specify which component/s issue belongs to. That’s why components help to better define a scope of issues/tasks.
Versions
Versions are used for release management on a project level. They are scheduled in time and can be in two states: unreleased and released. Again, once you created a version e.g. “1.0.1” you then can plan some features to be delivered in this version by it's specific release date.
Release management in complex projects
The way how components and versions work on a project level is fine in a number of cases, but there are a lot of other situations especially in larger projects when versioning is required not only on a project, but a component level too.
Your JIRA project is a Product or a Module?
E.g. in software development mid or large size product can easily contain tens or even hundreds independently releasable modules. And a product version X can be made of version Y of module A, version Z of module B and so on. Those modules are usually developed by different teams.
For such or similar setups a mapping of products and modules to JIRA projects, components and versions is not as simple and obvious as it might look like. If you map real project structure in JIRA where real project is a JIRA project and modules are JIRA project components then you cannot do effective release management on components level because you don't have component versions.
If you go another way and create one JIRA project for each product module then you might end up with hundreds JIRA projects only because you need versions of those modules. You can find more cases and real life examples in the “Component Versions” JIRA feature request in Atlassian public issue tracker.
Solution for component versions in JIRA
Only Atlassian JIRA product managers can answer why component versions feature wasn't implemented after 10 years of waiting. Maybe they left it for add-on vendors to fill that gap earlier or later. We don’t know the answer either, but we have just did - we created Component Versions feature as part of our existing “Subcomponents and Component Versions” add-on.
You can find there native almost native component versions solution with known version management UI on components level:
When creating and editing issues in JIRA you can now select versions using component versions picker dialog via action link under “Fix Version/s” field:
Useful links
Get and evaluate "Component Versions" add-on from Atlassian Marketplace
Read more detailed documentation about component versions for JIRA
Leave a feedback or get support via our Service Desk
Bring requirements into value
8 年Will you release it for Jira Cloud as well?
Senior Manager, Software Delivery
9 年Nice job, bro