Jira
This post contains a brief note on Jira, a software tool that is popular among software developers, team leads, project managers.
A few weeks ago, I had to organize ML workload among various teams, that included UI team, data engineering team, machine learning development team, cloud engineers. My goto tools always included project management tools that either captured the progress via snapshots such as gantt charts. In the last decade or so, Jira, as a tool has become increasingly popular in the software community. Somehow, I had never used Jira until a few weeks ago, when I decided to take a quick look at the tool and start using the tool. It took me a few hours to understand the various features of the framework. By the end of the quick immersion in to the framework, I was able to go from complete novice to creating a kanban dashboard for the entire team. There were already a few old time users of Jira in my team and hence they pitched in to get the entire team up to speed on Jira. In this blog post, I will list out my learnings on reading through and experimenting with Jira for a few days.
- Jira was first introduced in 2002. It is actually a 20 year old framework. Shame that I have started learning about it NOW.
- Jira is a software framework that can be used for project management, issue tracking, bug tracking, software releases. Of course, you can find many enthusiasts using for tracking activities/tasks for completely different reasons like managing video release schedules on youtube etc
- The basic unit of Jira is called issue. This should not be confused with the regular English use of the term. Issue here refers to any chunk of work that needs to get done in a certain amount of time. The attributes of an item are completely customizable
- Jira incorporates tools to realize two agile methodologies: scrum and kanban
- In the case of scrum methodology, there are epics and stories. Epics are aggregation of a set of stories. There are sprints that span anywhere between a week to a month. Teams are assigned issues relating to epics and during the scrum meetings, scrum boards are used to discuss various aspects of the project.
- Kanban methodology is more simpler where one groups the issues based on the status of the issue - To-Do,In-Progress,Done
- Of course there are tons of issues that need to get done for any project. By including everything on a Kanban board or a Scrum board, it will lead a mess. The way to control what goes on to a board is via filter and status types.
- For any Kanban or Scrum board, one writes a filter query and includes the relevant status types on the board. There is also a concept of backlog where all the issues not present on a user board can reside.
- All attributes of an issue can be customized
- One can set up custom filters so that one can quickly review various issues
- Every project owner gets to decide the general workflow that lays down a directed graph among the various status types
- One can set up custom status types for the project
- Dashboards and Reporting tools give a variety of options to track the progress of the project, track the time spent of various activities by the team members etc.
- Project is nothing but a container for issues
- Every project gets a unique key that is used for assigning a unique id to various issues and epics
- There are three versions of the software - Jira core, Jira software and Jira Service desk
- There are two licensing options - cloud or on-prem
- Every issue must have a summary, i.e. it is a mandatory field
- Whether it is a kanban board or a scrum board, the basic intention is to move the issue from left side of the board to right side of the board, i.e. To-Do status to Done status
- When an issue is mapped to DONE status, a resolution is applied
- Main options for project administrator
- components
- versions
- schemes
- issue types
- screens
- workflows
- schema controls issue types to the project. As an admin, you can create new issue type, new screens new field types, workflows and many more aspects
Hopefully I will see the benefits of using Jira in the current project. In any case, it is much better than the traditional project management tools that I am familiar with.