Test Environments – The Tracks for Agile Release Trains
by Niall Crawford
Definition: An Agile Release Train is basically a number of teams (a portfolio) responsible for the regular release of features and business benefits. All the teams are bound by a common set of goals, a program backlog, and a roadmap. ART is central to understanding and implementing a Scaled Agile Framework.
And why not? An Agile Release Train (or Enterprise Release Management) methodology is usually much better than the alternative chaos of different project teams running off in different directions (as “fast” as they can), competing for shared resources (service & systems), misaligning group priorities and ultimately causing collective delivery delays due to mismanaged dependencies & relationships with other teams.
If implemented correctly ART will help IT deliver on the necessary IT business transformations as quickly and safely as possible, and ultimately deliver timely solutions into production and to the end-customers.
Key Benefits of the Agile Release Train
- Increased Collaboration
- Improved Change (Feature) Throughput
- Controlled Velocity
- Cross Team Productivity
- Risk Cognizance / Awareness
- Circumvent Release Failure
- Delivery Streamlining
So, we get started by each team loading up the train carriages with Features & Change.
And we collectively commence out journey towards production.
Then the proverbial “wheels fall off”.
Delays in Development, System Test, Integration, UAT & Staging due to:
- Test environment unreadiness (i.e. engineering team is still building it)
- Test environment contention (i.e. BAU Team currently has it)
- Test environment instability due to too much unplanned change
- Test environment systems are not fit for purpose e.g. wrong scale or version or integrations
And the risk of overspend, for example:
- Need for more systems (infrastructure & licensing) to address contention
- Need for more support (services) to accelerate tasks & remediate
And suddenly our ART suddenly looks like something out of “Thomas the Tank Engine”.
The problem with trains, whether real or agile, is they must follow a rail track and delays & collisions will be inevitable if tracks (or the stations) are inappropriately sized, incorrectly built, mismanaged and not kept clear.
In the case of your Agile Release Trains, imagine the train stations as your lifecycle. The ART will travel through each station (Development, System Test, Integration, UAT & Staging) to allow the necessary on-boarding of fixes (good commuters) & offboarding of defects (bad commuters).
Oiling the Track
In IT, preparing the rail track is analogous to the task of IT & Test Environment Management. A multi-faceted set of discipline – refer to the EMMI (Environment Management Maturity Index) – that ensures appropriate:
- Understanding, Mapping & Modelling of Environments & Systems
- Capturing of Demand & Managing of Contention
- Planning & Coordination of Preparation Activities
- Lean Service Management
- Standardised & Repeatable Operations
e.g. Application Deployment & Configuration Activities, Data Masking etc.
- And Continual Analysis & Reporting for Improvement
Benefits to ART of implementing effective Test Environments Management
After bad requirements management, Test Environments are the number one reason for Project delays. Hardly surprising when you consider that is where Projects (and I guess the Agile Release Trains) spends 95% of their time.
By implementing a proper TEM framework (tracks), you ensure:
- Environments Readiness (systems prepared in advance)
- Environments Suitability (systems fit for purpose)
- Environment Stability (disruption/outage avoidance)
- Release Team Productivity (more time to Develop & Test)
- Release Streamlining (Maglev style) &
- Reduced IT Costs through better project sharing & post release housekeeping
So next time someone mentions the ART, ask them about the readiness of the tracks. As trains don’t go too far without them.
Learn More, or Share Ideas
If you’d like to learn more about Release or Environment Management or perhaps just share your own ideas, then feel free to contact the enov8 team. Enov8 provides a complete platform for addressing organisations “DevOps at Scale” requirements. Providing advanced “out of the box” IT & Test Environment Management, Release Management and Holistic Data Management capabilities.
Niall is the Co-Founder and CIO of Enov8. He has 25 years of experience working across the IT industry from Software Engineering, Architecture, IT & Test Environment Management and Executive Leadership. Niall has worked with, and advised, many global organisations covering verticals like Banking, Defence, Telecom and Information Technology Services.
24JUNE, 2021 by Omkar HiremathInformation technology and the digital world don’t exist without data. The data of an organization can contain a lot of unclassified, as well as classified information. Irrespective of that, only authorized personnel should have access to...
14JUNE, 2021 by Kathrin PaschenManaging releases at scale is daunting. It involves juggling dependencies, timelines, and requirements. The stakes can be pretty high, too. Not all failures are as spectacular as crashing a lunar lander or losing $440 million. Even so,...
28MAY, 2021 by Sasmito AdibowoThe benefits of using cloud environments to store and access data over the Internet has been highly beneficial for many businesses. Cloud environments help both start-ups and enterprises scale up conveniently. However, as with other major...
10MAY, 2021 by Eric GoebelbeckerImagine a technology that lets you focus on your business logic and that takes care of issues like reliability and scaling for you. What would it be like if you only had to pay for the computing time you use rather than pay by the day,...
21APRIL, 2021 by Zulaikha GreerWhat Is Privacy by Design? Millions of dollars go into securing the data and privacy of an organization. Still, malicious attacks, unnecessary third-party access, and other data security issues still prevail. While there is no definite...
31MARCH, 2021 by Ukpai UgochiSo, As the leader of a DevOps or agile team at a rising software company, how do you ensure that users' sensitive information is properly secured? Users are on the internet on a daily basis for communication, business, and so on. While...