Earlier we covered how to implement the concept of Programs in JIRA. Each Program can aggregate multiple projects at a time, to surpass the limitations of bare bones Atlassian software and give you more space to organize things. This time we will ascend even beyond and see how we can cover the portfolio level!
The portfolio level’s main purpose is to give the highest-level view of the organization, showing the work from all Programs. It is extremely useful for shareholders and the highest rankings of any company, for the people who need a way to keep track of EVERYTHING at once without losing their sanity in the process.
The Program list
The list of Programs is much more than a simple directory. It provides not only advanced filtering and categorizing, but allows users to have a quick peek at how Programs relate to each other using 2 convenient views – the Gantt:
Which we might call “the Gantt of all Gantts”. Another view is the eye-candy timeline:
Now, you might have noticed that these views are somewhat rudimentary. That’s true! The Program list will soon be completely redesigned to resemble a Scrum board. All Programs will be shown as cards, each card displaying the health of a Program, indicating any risks or problems, and the exact progress.
However, you can already achieve a similar, fully functional result using a simple trick.
When creating new Programs, you have the option to use a JQL filter:
Now, you Programs most likely are based on a few selected projects each. However, since filters are based on JIRA Query Language, their customization options are endless and nothing stops you from creating an uberfilter, that will pull in every.single.thing at once!
For example, let’s say our organization has 10 projects running. They are aggregated into multiple Programs, and we would like to have the most comprehensive portfolio layer possibly available for our instance. We can create a JIRA filter first:
project=”Alpha” OR project=”Beta” OR project=”Charlie…”.and so on. Essentially, project=….OR project… all the way from here to Boston.
You will notice the small “Save as” button on the screen above – using it, you can name the filter so that it is easily recognizable, which will come in handy once we create the Program (it will be easier to spot).
Now, here’s the magic: since our new Program pulled in all the projects from all Programs, its modules (Gantt, Resources, Roadmap, Risks) automatically represent the overview of literally everything our example company is doing. By including what every Program contains, we have created a multi-Program view.
Protip: You can add some artificial tasks to the structure to clearly represent Programs if needed.
When we open the Gantt, we will see a multi-project Gantt. It is recommended to turn on the following settings in the portfolio Program’s configuration, Synchronization tab:
This will make tasks appear under their respective projects – not just once, but whenever a new task is added, it will also go exactly where it belongs. No need to manually move things. The end result is as follows (the black bars represent different projects):
Now, in the Programs coverage we already established that:
- A task (Epic, Version, etc.) can be in any number of Programs at the same time, they sync all changes with each other
- There is no limit to how many Programs you can have at a time
This means that not only is the portfolio program self-updating, any changes made on it will also affect other Programs and no conflicts will ever happen.
We also recommend adding a few Quick Filters that will allow you to easily turn on and off the visibility of selected projects or Programs:
BigPicture is a rather smart beast. For instance, the Enterprise edition automatically sums up the work from all Programs to calculate resource availability. However, it also detects duplicates – in the case of our portfolio Program, it will not count the same task twice if it appears in the portfolio and any Program, but rather only once, as it’s a single task, just visible in 2 different Programs.
Some of you might ask “But hey, there is a plugin literally called Portfolio”. That’s true, and also why we started “portfolio” with a lowercase earlier – so that you can distinguish them! The “big P” -ortfolio is an optional add-on to JIRA. While a very cool tool, Portfolio focuses on a very specific chunk of work, of Agile teams only to boot.
If you think about it, Portfolio is radically different from BigPicture in approach. Things like Themes and Initiatives are separate from your existing projects (creating a separate Initiative project is the actual recommended approach). Even logging vacations is done as a workaround, with the part-time feature and setting the work manually to 0. Portfolio 2.0 also has no sample data (the only sample plan is in legacy mode). Dependencies between issues are not clearly marked on the visualization. Quick Filters are not available.
It is also worth noting that Portfolio relies heavily on releases (Versions).
In short, BigPicture:
- has a Gantt module for Waterfall and hybrid processes
- has a clear-cut task hierarchy with infinite levels (WBS)
- is Scaled Agile Framework® – compliant
- features a risk management module
- shows over and under allocation of resources
- can clearly show dependencies
- has Quick Filters
- is more cost-effective
In the next iteration, we will cover in detail how to apply large-scale management in JIRA to Agile principles, with Sprints, Story Points, daily stand-ups, and so on. In particular, we will look into how to make them work on the Team level, as well as to how they tie into Programs and our new portfolio Program.