Similarly, it may sound nice for management to say there are “Agile teams” doing great things on the floor, but making the necessary changes in mindset and practice to actually become an Agile organization may be more than they can imagine.
As organizations work through a complete Agile transformation, they come to realize that Agile at the program and portfolio levels are extensions of the successes they enjoyed at the team level.
One of the main reasons for that similarity is the continuous collaboration that occurs between all three levels in a truly Agile organization.
Let’s take a look at that collaboration at the Program Level:
Program Level: The Middle Man
In a SAFe (Structured Agile Framework) system, the teams on the program level serve as a middle layer between the teams doing production work and the executives at portfolio level dealing with long-term strategic and financial planning.
As such, their roles involve translating the portfolio’s strategic vision into workable business stories, which in turn provide a basis for the teams’ user stories to be developed.
Their position also facilitates a vital connection between the overarching strategic vision of the portfolio level with the practical end-user mindset of the production teams. At times, that may require pushing back and working with executives to adjust some aspect of the strategy involved when feedback from teams makes it necessary.
The interplay that goes on within the program level and between the other two levels can be grouped in three main categories:
- • Value
- • Teams
- • Timebox
Teams making up the program level in an Agile organization must collaborate to communicate the strategic and business decisions filtering down from the portfolio level into features that help make up the program backlog.
This program backlog is also made up in part by feedback coming from customers and production teams that may have an effect on the ultimate direction the program takes.
True value is achieved when this three-way collaboration is focused on providing a high-quality product for the end user and creating revenue (or in some other way achieving business goals as a result).
To achieve the above-mentioned value at the program level, three basic teams are required:
- • Product Management
- • System Team
- • Release Management
The product management team serves as the main go-between for the purposes described above and uses information from all surrounding teams to accomplish this.
The system team compiles the work of various Agile production teams and serves an end-to-end testing and QA role to ensure the product being completed is truly achieving program and portfolio goals.
The release management team coordinates releases; therefore setting the cadence and release schedules that will satisfy Agile methodologies and (more importantly) the marketplace while maintaining high quality.
The timebox refers to the schedule that is set up for each unique program to coordinate the production team’s Sprint cadence with a more fluid release schedule (releasing when the market demands) and a much longer-term strategic iteration of 6-12 months.
Coordinating those schedules effectively falls on a role within the program level, the Release Train Engineer, whose primary job is to keep the release train on the tracks from the program’s start to finish.
Once again, collaboration between teams at all three levels is necessary to make this a smooth operation.
If your organization is currently looking to scale Agile to the program and portfolio levels, and any of the above sounds challenging from where you stand, you may want to consider some professional SAFe transformation assistance. We’d be delighted to help.