The market is changing fast. New products are released daily. What took a year to develop in the past now takes weeks or months. How are product teams doing that?
More and more companies are starting to practice lean product development. Continuous improvements to their products help them react quickly to user feedback and changes in the market.
As a response, companies started implementing microservices and creating reusable components to enable faster development.
Let's have a closer look at the reusable components approach. For example, the web application project consists of components like Database, APIs and custom UI kit library. When you start building the next application, you can re-use the same components, in this case, the UI kit library. You don't need to spend precious time on developing new UI, and you can focus mainly on business logic.
Applications usually go through many release iterations during their lifecycle to enable continuous improvement of the app. If the app consists of many components, you find yourself in a situation when you need to release a new version of the component first. Then you update your application with the new component version.
If the component is used in many apps, it also often happens that different apps use a different version of the same component.
That can happen for many reasons, for example:
To gain better visibility over your component releases and application releases in general, it's good practice to track what and when was the version deployed, and have quick and easy access to these reports.
Jira allows basic project releases tracking out of the box. You can create a new release in your Jira project, give it the name, description, start date, and release date and link issues that are delivered.
There is also an option to create components and link issues to them. But components don't have versioning functionality available by default, so we need to look into some workarounds.
Using Jira project Releases and sensible naming convention allows you to track application and component releases separately:
Afterwards, you can manage both Component and project releases from Jira Releases screen and use the Fix version field in JQL to filter and build reports.
Octo - Component Management for Jira is the Jira app that enables Component releases. You can create a Component version and give it a name, description, Start date and Release date and link the component itself.
Then you link Jira issues to the Component version, and you can use JQL to search.
Component releases have their own screen, so they're not going to mess with your project releases. To track what component version is used in which project release, you can link them together. That allows you to create the following release hierarchy:
For more information watch the following video demonstration.