Gone are the days when a lack of options forced us to use spreadsheets for project management and planning. Now, plenty of project management solutions are available to businesses and teams. At Mad Devs, we use Atlassian's Jira for efficient and transparent project management. However, not many project managers know that Jira is more than an efficient project management solution. It can be integrated with many other tools and services.
One of the main reasons our team relies on Jira is its extensive functionality. Every project is unique and requires a special approach and a specific toolset for effective software project management with Jira. With this platform, Mad Devs can choose the necessary stack to plan, track, and release even the most complex projects. While there is no single correct way to organize a project in Jira (everything depends on its unique context), we have collected best practices based on our experience creating transparent and efficient project management practices and want to share them with you.
How Mad Devs uses Jira
Before we delve into the details of Jira, we'll give you some background on how we use the platform to organize our workflow. We love Scrum and Kanban boards, and Jira lets us use both. Sometimes, we combine them if we see that it'll benefit a project.
Kanban helps visualize the workflow
At Mad Devs, we use Kanban boards when a team prefers to start working on a project without a detailed plan or when we need to visualize the workflow. If you're not familiar with Kanban boards, they are typically boards with three columns: To-Do, Doing, and Done. A Kanban workflow organizes tasks to ensure the work moves forward, with team members moving tasks from one status to another as they work on them.
In Jira, you can customize your boards and add layers for specific clients, deliverables, and products to give you the detail you need.
Scrum helps to create detailed plans
We use Scrum boards for projects where we need to plan everything in detail. A scrum takes place over a specific time period called a sprint. One sprint can last 1 or 2 weeks, depending on the project. The team organizes daily check-ins on their progress to ensure the sprint's tasks are completed and identify possible bottlenecks and issues.
How Mad Devs uses Scrum
When our teams create a project in Scrum, we start by arranging some things. At this stage, the backlog is empty, but we soon create user stories, tasks, or bug issues to put there. If we observe patterns in user stories or there are too many of them, we create epics.
Epics are a way to organize the dependencies between tasks or user stories. Without creating epics, a project manager would have to arrange all the tasks into a roadmap manually. This takes a lot of time, so we use epics. They allow us to display all the tasks in a beautiful roadmap, just like this one:
Click on an Epic to expand it and see all related tasks and stories. If your manager knows how to work with the connections, real magic will happen, and you'll see relationships between tasks and possible blockers:
We can connect tasks under the same epic or several epics to reduce the time we need to find tasks related to their field, tasks assigned to a specific person, priority, and whatever else you want to highlight. With an epic, managers provide their team with the necessary information right away without extra calls or messages.
Sprint planning
A sprint is a period of time within which we need to complete a predetermined set of tasks. A sprint can be one, two, three, or even four weeks long. We prefer two-week sprints because they aren't too short and allow us to manage a good part of the work. They also let us regularly control the processes and check whether we're moving in the right direction. However, we don't exclude other periods for sprints, either, depending on the specifics of a project.
When a sprint starts, we organize sprint planning meetings to discuss the sprint's goals and stories that are prioritized in the backlog. The development team creates the tasks they need to complete. Then, we commit to complete a specific number of tasks within the sprint.
Once everything is ready, the sprint starts. We have our own stand-up procedures and routines for organizing retrospective meetings and following all the other stages needed to handle the tasks within a sprint. You can read about them in our other articles:
5 best practices for managing a Jira workflow
At Mad Devs, we've developed best practices to ensure our processes run smoothly, improve the productivity of each team member, and make our work transparent and traceable. Read on to learn from our experience.
1. Groom the backlog
This is easy to do with Jira. Backlog grooming involves reviewing, prioritizing, and updating the backlog regularly and removing outdated tasks. This process is called backlog grooming, and with it, we ensure that:
- We keep the backlog clean for easy navigation through the items.
- We keep the backlog relevant, well-documented, and prioritized per the project's and team's needs.
- The backlog helps the team be aligned when working on new features, fixing bugs, or performing other product-related activities.
Constant backlog grooming ensures we prioritize our tasks properly.
2. A customized workflow
The Mad Devs standard Jira workflow looks like this:
- To do. Work that hasn't started yet.
- In progress. Work that is being looked at by the team
- Code review. Work that is done and waiting for review
- Done. Work that is done.
Jira is a highly customizable tool that allows teams to create workflows to match any project, the stack used by a team, or how a team works.
At Mad Devs, we can change the names of the processes or add additional processes such as "Waiting for QA," "Tested," or another status necessary for a specific situation. Our aim is to make the workflows easy to use, transparent, and clear. Working processes are different from project to project, and you can read more about them in our case studies on our website.
3. Divide big tasks into subtasks
Imagine this situation:
A project manager approaches a software engineer for a time estimate on developing a website page. The engineer takes some time to think and then answers that they'll need two days. While this sounds straightforward, at Mad Devs, we believe this approach has risks. The engineer can't account for roadblocks or the details of the project without breaking the large task of creating a webpage into smaller tasks. Here are a couple of examples of subtasks:
- Text for the page
- Visuals from the designer
- Page structure
These subtasks require the work of other team members, not only the engineer. Therefore, creating the page may take more than two days. They may have noticed this if they'd first broken the larger task into smaller steps. At Mad Devs, we believe subdividing tasks into smaller components helps us assess the time and resources involved.
To review, there are two reasons we divide tasks into subtasks:
- We can assess the time we need for a small task and thus, provide a more exact estimate for the entire task.
- We see if anyone else's participation is needed to complete the task.
Along with these purely practical reasons, dividing a big task into smaller chunks has one more purpose. Breaking a large task into smaller elements reduces stress and gives us a detailed plan for working on the task.
4. Create worklogs
Put simply, worklogs are proof of what an employee has done in a task. We follow this rule at Mad Devs: if it wasn't written down, it never happened. Worklogs are required for any task and project. We use worklogs to note the time we spent on a task and describe what we did during this time. Writing a clear and succinct report without giving unnecessary details is essential. Any colleague or manager should be able to open the worklog and understand what you did and how it contributed to the project. Also, avoid mentioning confidential information and putting links to such information in worklogs
We recommend writing worklogs as soon as you finish working on a task. If someone has spent two hours on a task, they should log the time, even if they plan to continue working. The two-hour limit helps team members take a break and remain focused on producing quality work.
5. Write comments
While they may sound similar, there's a clear distinction between comments and worklogs, and at Mad Devs, we write them constantly. Comments are one of the main communication tools in a team. Tasks often involve more than one team member, and comments help ensure everyone is on the same page in terms of how the project is progressing. They can open your task and find all the information they need from the comments without extra messages or calls. This is particularly helpful when there are delays in projects. Writing a quick update can save everyone's time and nerves and could result in a faster solution than if you didn't write anything.
Here are other benefits of comments:
- Information that can be used for feature documentation
- Team members can express ideas and thoughts
- The team can track activities and remain focused
- They're a record of conversations and discussions with new ideas or decisions
- They're an archive of plans and ideas about a feature that teams can return to in the future
- They help resolve conflicts or questions about a team's work
This routine helps us maintain healthy dynamics within a team by reducing the chance of conflict and unnecessary meetings. These practices also create the foundation for healthy long-term relationships with our clients because they create transparency and accountability that demonstrate our commitment to providing high-quality services. To boost our productivity with these best practices for Jira, we also take advantage of the integrations offered by the platform.
Best Jira integrations apps for 2024
Slack
Slack is our main platform for work-related communication outside of tasks and projects in Jira.
Why we like it:
- Turns messages into trackable tasks
- Comments in Jira tickets are displayed in a special channel
- Alerts from Jira sent to channel
GitLab and GitHub
Jira integration with GitHub makes project management with Jira much simpler.
Why we like it:
- Updates related to pull requests in Jira tasks
- Alerts on commits and deadlines
- Reminders about deployments
- Synchronization of projects, workflows, issues, comments, and streamlining the collaboration across teams
Confluence
Atlassian, the creator of Jira, also offers users Confluence, a tool used to store documentation.
Why we like it:
- Create plans for team members that are linked to tasks
- A one-stop place for team guides and templates
- Easily accessible code documentation
Enji
This is an AI tool that we developed for internal use that is now an independent product.
Why we like it:
- Automatically creates profit and expense reports per project
- Provides summaries of Jira worklogs for entire teams
- Gives a birds-eye-view of projects and activities in Jira
Most useful Jira features for 2024
Data-driven automation
Mad Devs aims to automate everything, and one of the reasons we love Jira is that it helps us do just that.
Why we like it:
- Automatic transitions between statuses
- Alerts on tasks that sit without activity
- Assignments to new tasks
- Customizable to our workflow
Jira Webhooks
When a certain event on Jira occurs, a webhook delivers data as soon as it happens to give us data quickly.
Why we like it:
- Allow remote applications to receive push notifications from Jira
- Customizable for specific issues or projects
- Create Jira-oriented bots
BigPicture
We use this feature for our most demanding projects, such as banking and security systems, that have a lot of tasks and dependencies.
Why we like it:
- Create a global project plan with details on timelines and specialists
- Can structurize tasks by deadlines, assessments, and dependencies
- Provides a clear and precise portfolio view
- Allows us to monitor processes at all levels
- Builds a powerful Gantt diagram for us to plan and manage all our tasks in a single workspace
Example of BigPicture from Atlassian Marketplace
Jira challenges and solutions
Complex interface
Jira can be overwhelming to use for anyone unfamiliar with the platform. While its many features and integrations simplify project management in the long run, the beginning can be difficult. Here are our solutions to overcome this challenge:
- Invest time and resources in training and give team members the chance to experiment with tasks
- Create video and text instructions that are always available to teams
Too many workflows
Jira's ability to customize workflows for any task or project can lead to a situation where every team has a workflow or projects with similar tasks have different processes. Here's how we managed this situation:
- Review your workflows and find common points in the tasks
- Group them by processes and create template workflows for different tasks
Lots of features
The incredible number of features available in Jira creates an artificial desire to use as many as possible, but is it necessary? At Mad Devs, we approach features this way:
- Experiment and see what features work
- Conduct reviews to evaluate the value a feature adds to the workflow
- Remove unnecessary or complicated features
Do I need project management software?
As usual, the answer to that question is: it depends. There are, in fact, situations when having this software may cause more problems than it fixes or slow down the process. On the other hand, there are clear risks for businesses that decide to favor more manual activities and older methods.
Yes: for complex teams and projects
If you run a large business or a team that works with long-term, complex projects, you should consider investing in project management software. The more people involved in tasks and the more layers of approval there are, the more confusing it can become without an efficient way to track your work. Even with the best team, the lack of project management software will create the following issues for your business:
Failing to meet stakeholder expectations and requirements
Without project management software, it's challenging to prioritize tasks and manage your available resources wisely. This leads to failures to meet deadlines, the loss of trust in your team, and the loss of business in the long term.
Wasting resources
Without automation, project managers and other leaders in your business will spend time collecting updates and reports from employees in order to evaluate the project's health. The larger the team, the more time this requires. Ultimately, your business will pay employees to write messages and have video calls instead of working on the project. With the proper software, they could spend their resources on strategic tasks that advance your business goals.
A lack of transparency
Without proper project management software, no one can see a real-time picture of what is happening in the project. You'll spend hours or days collecting information if clients want an update. The absence of project management software makes you more vulnerable to unexpected events and roadblocks that you may have noticed earlier if you could see what was happening.
No credibility
If you don't have a tool to upload tasks, allocate resources, produce reports, and complete other tasks, your business stops being credible. In turn, this means the loss of clients and potential closure.
These are true for large projects and businesses, but there are situations when you may not need project management software:
No: for small teams and simple projects
Despite its time-saving and resource-optimizing features, Jira remains a complex tool to use, which means it can complicate the workflow of small teams and projects. Given the cost of Jira and other project management software, it could be better for freelancers or small businesses to adopt alternative strategies for organizing their work processes. Here are some of these situations:
Simple projects
As mentioned earlier, this software is helpful when your projects are complex and long-term. If your business typically handles simple, short-term projects, you may find that the software will complicate your process instead of optimizing it.
A one-person team
There is little need for updates when you are the only person on your team. If your projects are simple, like in the first point, then complex software will only hinder your progress.
Your process works
While the capabilities of software have advanced, so has their complexity. Sometimes, the method you've perfected over years of work is best for your business. Instead of spending time and other resources testing products and training employees on new workflows, you can continue focusing on your work.
The final decision depends on your business and the nature of your projects. It's also important to remember that even if your processes seem to be working fine, there may be room to optimize your performance through the proper software.
Put Jira to work for you
Jira is an efficient project management tool for Agile teams with multiple integrations and features that allow teams to customize workflows to find the perfect process. When used properly, it optimizes project management and reduces the need for regular messages and meetings to get updates. The advice above works great with software service companies and can be applied to other businesses. As we stated above, keep a written record of activities and work to insure that teams are on the same page and to decrease the chance of conflict.