Release Train

Problems Solving

I believe that the Release Train idea below can solve the issues below that I faced during work:

  • You work in the product company are being scaled and need to unify the release process.

  • Your organization has several development teams to build / release into 1 product.

  • If you are a Outsourcing / Product Consultant company, your client always push to release a new version ASAP although you already plan for it.

  • The Development Team feels nervous because they have to work over the weekend to release a tons of work then release without verification of QC.

  • Product Manager doesn't have time to review to make a decision which version should be release.

Agile Release Train

The Agile Release Train (ART) is a long-lived team of Agile teams, which, along with other stakeholders, incrementally develops, delivers, and where applicable operates, one or more solutions in a value stream.

Agile typically starts with small teams focused on contributing parts to a whole. Eventually, a need arises for long-standing, cross-functional teams, focused on delivering value in a particular value stream or set of value streams. Forming Agile Release Train (ART) – teams comprised of multiple Agile teams aligned to a common goal—is key to delivering value that scales at the enterprise level.

The ART includes all the people (expertise) needed to implement, test, deploy, and release to deliver software, hardware, firmware or other.

Common Principles

  • The Schedule is fixed: The train departs the station on a known, reliable schedule, as determined by the chosen Program Increment (PI) . If a feature misses a timed departure and does not get planned into the current PI, it can catch the next one.

  • A new system increment every 2 weeks: Each train deliver the new system increment every 2 weeks. The System Demo provides a mechanism for evaluating the working system, which is an integrated increment from all team.

  • Synchronization is applied: All teams on the train are synchronized to the same PI length.

  • The train has a known velocity: Each ART can reliably estimate how much new feature can be delivered in PI.

  • Agile teams: The team are embrace 'Agile Manifesto'. They applied Kanban / Scrum / XP,...

  • Dedicated people: Most of people needed by the ART are dedicated full time to the train, regardless of their functional reporting structure.

  • Face-to-Face PI Planning: Mostly face-to-face PI Planning events.

  • Innovation and Planning (IP): IP Iterations occur at the end of every PI and provide an estimating guard band (buffer) as well as dedicated time for PI planning, Innovation, Continuing education and Infrastructure work.

  • Inspect and Adapt (I&A): This event is a held at the end of every PI. The current of the solution is demonstrated and evaluated. Team and managements then identify improvement backlog items via a structure, problem-solving workshop.

  • Develop on Cadence, Release on Demand: ART apply cadence and synchronization to help manage inherent variability of research and development. However, releasing is typically decoupled from the development cadence

Organization

In such a functional organization, developers work with developers, and testers collaborate with other testers, architects, and operations work by themselves. It is the reason that leads to the things below:

  • Value deliver is inhibited

  • Political boundaries can prevent cooperation.

  • Silos encourage geographic distribution of functions.

  • Communication across silos (department) is difficult.

Instead, the ART organize to build a cross-functional organization that is optimized to facilitate the flow of value from ideation through deployment and release, and into operations

For example: The organization include Business - Product - Hardware - Software - Testing - Operations - Security team.

Agile Teams

ARTs include the teams that define, build, and test features and components, as well as those that deploy, release, and operate the solution. Individual teams have a choice of Agile practices, based primarily on Scrum, XP, and Kanban.

Each Agile team has five to eleven dedicated individual contributors, covering all the roles necessary to build a quality increment of value

Roles

Most teams apply a ScrumXp and Kanban hybrid, with 2 specialty roles:

  • Scrum Master: The Scrum Master is the servant leader for the team, facilitating events, fostering Agile behavior, removing impediments, and maintaining the team's focus.

  • Product Owner: The Product Owner owns the team backlog, acts as a customer proxy for developer questions, prioritized the work, and collaborates with Product Management to plan and deliver solutions.

  • Release Train Engineer: is a servant leader who facilitates program execution, impediment removal, risk and dependency management, and continuous improvement.

  • Product Management: as defined by the Product Vision, Roadmap, and new features in the Program Backlog. They work with customers and Product Owners to understand and communicate their needs, and also participate in solution validation.

  • System Architect defines the overall architecture of the system.

  • Business Owners are key stakeholders of the ARE and have ultimate responsibility for the business outcomes of the train.

  • Customers are the ultimate buyers of the solution.

Launching your 1st ART

Here is the roadmap to launch ART:

  1. Train the SAFe® Program Consultants (SPCs): Train your SPCs properly, the change agents responsible for transformation and connecting the Scaled Agile Framework to your organization. SPCs teach all the stakeholders & leaders to drive the ART to its destination.

  2. Train the Lean Agile Leaders:Lean Agile leaders are expected to understand and implement the principles of SAFe® Agile framework

  3. Identify Value Streams and ART: ART is a procedural system; therefore, you should make all the responsibilities of solution defining, building, validation, and deployment etc clear.

  4. Organize ART and Agile Teams:

    1. Well-defined 'product' with features / components

    2. Leadership support

    3. Collaboration

    4. Minimized dependencies

    5. Integration

    6. Well-managed DevOps activities

  5. Define and Fill All the Roles of ART Members: The critical roles of ART members must be well defined to help the Release Train Engineer. System Architect, Product Managers, Scrum Masters, Product Owners perform the best at par with customer's expectations.

  6. Prepare the Program Backlog: The practice of using launch date as the forcing function makes it more urgent to determine the scope and vision of PI. The scope of 'what is built' or PI is defined by Program Backlog informing about the upcoming features, architectural work.

  7. Train the Teams: Train the teams properly to deliver the maximum values at each sprint. It is the key part of ART readiness to ensure the on-the-time best quality 'product delivery'.

  8. Conduct PI Planning: PI planning is a face-to-face meeting event. It empowers the Agile Release Train to align all the SAFe® Agile teams for the shared mission & vision.

  9. Set the Program Calendar & Launch Date: Now you have ART definition. The next task is scheduling your 1st PI Planning event focused on the forcing functions and 'date-specific' launch with PI calendar. The PI calendar shows the scheduled activities including PI planning. System demos, ART sync. Inspect & Adapt workshop etc.

  10. Execute Innovation and Planning Iteration: Now, you are almost at the destination. Innovation and planning iteration is conducted to absorb the variances in estimates, allot time for innovation, refine backlog and to plan ‘Inspect & Adapt’ workshop.