There are many different ways to build software and run projects. When we began
to build portfolio and project management tools within GitLab, we asked
ourselves, "How do you build tools to support a diverse array of workflows
without crippling users with complexity?" Our conclusion? Build fewer, but more
flexible tools. GitLab's built-in issue boards is a
great example of how choosing to build a single, versatile tool can significantly
reduce complexity and tooling maintenance for the user without limiting its
capabilities.
How do you build tools to support a diverse array of workflows without crippling
users with complexity? Build fewer, but more flexible tools.
Managing projects and software is inherently complex, but the tools don't have to be.
Regardless of how many projects, people, or products you're managing, getting the
visibility you need to keep things running smoothly should be the easy part.
GitLab issues board
A GitLab Issues Board is a simplified approach to a complex problem. We built on
top of GitLab's existing issue-tracking functionality and leverage the power of
GitLab issue labels by utilizing them as lists on a Kanban board. You can construct different
views of your issue board while maintaining the same filtering and sorting abilities
you see across the issue tracker. You can create multiple boards to capture every
layer of visibility you need, and define the scope of the board by milestone,
labels, assignee, and weight.
An Issue Board is based on its project's label structure, therefore, it applies
the same descriptive labels to indicate placement on the board, keeping
consistency throughout the entire development lifecycle. And, you can click
directly into an issue from the board to get started on your work.
4 uses for the GitLab issues board
An Issue Board shows you what issues your team is working on, who is assigned to
each, and where in the workflow those issues are.
1. Workflow tracking with GitLab issues
Whether you are a project manager trying to stay on top of a project's status, or
a manager of a product who needs to report on progress, workflow visibility is critical.
To create a workflow issue board, simply create labels for each stage of your workflow
and add them as lists on a board. Once you've labeled an issue, it will automatically
appear on the list. When the issue is ready to move on to the next stage, simply drag
and drop it into the next list. You can also update the labels directly in the issue
and your changes will automatically appear on the board.
For example, your workflow might look something like this:
- Development
- Design
- Review
- Test
- Deploy
To see this on a board, simply create a label for each stage. Create a new board
and add a list for each stage. You can drag and drop lists to put them in the
desired order.
2. Cross-functional planning with different categories
Similar to the workflow view, you can create a GitLab issues board based on categories.
When working on a particular product or feature, you might want a high-level view
of what each team is working on. You might create a label and a list for each team,
or, perhaps you want to see what's being worked on across many projects or product lines.
In the example above, we have three label lists: time tracking
, portfolio management
,
and description templates
. Each list represents a particular product area. So
with this one board, you'll be able to see what open issues belong to those three
areas. If you further scope the board to a particular milestone, you'll be able
to see which of those issues are targeted to be worked on in that milestone.
This is just one example of how you can use an issue board for planning your work.
Again, because the issue board is created using labels, your options are unlimited!
3. Team visibility with assignee lists
You can easily monitor what has been assigned to individuals on your team with
assignee lists. Assignee lists show issues that are assigned to a specific user,
and you can create a board to display a list for everyone on your team for a
quick view of who is working on what.
4. GitLab Issues and milestone planning
As part of our project management capabilities, we've built in milestones.
Milestones are used to track issues and merge requests associated with a specific goal
to be accomplished within a specific time frame.
Similar to our assignee lists, you will be able to quickly create a milestone view directly from your board. This is particularly
useful for those leveraging an Agile workflow. With the milestone list, you can
easily move issues (stories) between different milestones (i.e. sprints, iterations).
Adding a milestone list | Milestone list |
---|---|
Of course, this is just the tip of the iceberg. Stay tuned for the our next post on
using GitLab for portfolio planning and management where we will cover a few of other favorite GitLab features like Epics, Roadmaps, and Milestones.
Update as of June 26 2020: Removed the "Coming Soon" label on Milestones since it has been released as of 11.2