Program Test Architect
What Is a Program Test Architect?
The Program Test Architect is a true expert in agile testing and end-to-end testing who has the knowhow and skillset to enable teams to bring software testing to the next level. It is a central role in agile organizations at scale or in organizations undergoing a testing transformation. With a strong agile mindset, a Program Test Architect can create awareness in the organization and share the vision of testing within the program.
The Architect focuses on:
- Developing a testing strategy around continuous testing
- Driving testing transformation and agile transition
Challenges to Testing in an Agile Transformation
Modern agile development teams draw their team members from both IT and the business side. A shared focus on quality keeps the team together. This quality-first mindset puts the customer in the center, encourages the whole team to work efficiently, and creates great value for stakeholders.
Typically, this change starts with independent teams, pilots, or projects. In that phase, the Program Test Architect is accountable to overcome the following challenges:
- Testing gets overlooked and becomes a bottleneck
Many agile journeys begin with the question, “How can we become more responsive and competitive on the market?”, and therefore focus on speed and delivering features. Underestimating testing complexity, effort and scope can make testing a bottleneck. An unbalanced relation between development and testing resources can create a big testing backlog.
- Testing slows down the software development life cycle (SDLC)
Legacy testing approaches will slow down the software development life cycle (SDLC) if not optimized to the new delivery model. Testing needs to keep up the speed of an accelerated software development life cycle – and therefore accelerated continuous testing must be implemented throughout all of the stages.
- Losing knowledge
During transitions from centralized testing organizations to distributed testing organizations there is a risk that knowledge is lost due to changing responsibilities.
- Ensuring a smooth testing transformation
Breaking down a Test Center and shifting the whole testing scope to agile teams can have a negative impact on existing processes - embracing failure is important so that teams can grow and learn from their experiences, but it is crucial to ensure that the business does not get interrupted.
By addressing these challenges, the Program Test Architect has a big impact on the testing transformation that ensures thorough testing.
How The Program Test Architect Drives Testing Transformation
The Program Test Architect builds a bridge between the team level where they focus on day-to-day tactical execution and the enterprise level that provides the overall testing strategy:
- Defining and refining the target vision
On a high level, the target vision that includes the boundaries for testing transformation and continuous testing has already been set. The Architect combines technical view and testing knowhow, takes business requirements into account, and aligns with the roadmap of the Enterprise Test Architect.
The Architect needs to achieve:
- Alignment with the business to meet their business goals such as:
- Reduced time to market
- Increased quality
- Increased Net Promoter Score
- Alignment with Enterprise Test Architect to make sure they follow the overall strategic direction, including factors such as:
- Operating model
- Implementation roadmap
- Continuous Integration & Delivery
- Metrics & Dashboards
- Non-functional testing
All these alignments will have a huge impact on goals such as time to market and reduced business risk. Thus, it is important to get the complete picture and have the Program Test Architect provide expertise to the decision-making process.
- Implementing the strategy
To bring the testing strategy from theory to reality, the Program Test Architect must make sure it is implemented within the team levels, combining the target vision with the specific situations of each team. How can the test strategy be implemented with the systems under test or testing cycle? Which metrics should be measured? The Program Test Architect must clarify these points by working with Test Analysts and Automation Specialists.
The Program Test Architect can help building the fundament and provide guidance. Technical or strategical decisions may be too big or complex for single teams because it is outside their core business and could slow down the whole development process. At the same time, nobody wants to compromise quality.
- Ensuring the proper execution of the strategy
Once the target vision is in place and the strategy has been implemented, they have to ensure that teams are executing the strategy. The Program Test Architect needs to review metrics, checks with the Automation Specialist and Test Analysts to confirm that they support the overall testing strategy and meet its criteria.
The goal of the Program Test Architect is to ensure that continuous tests are integrated into the build pipeline and provide fast feedback by following one agile principle: satisfying the customer through early and continuous delivery of valuable software.
To support this, they should frequently assess teams by using standardized questionnaires to find strengths and weaknesses. Even more importantly, the Architect should gather the insight to define a roadmap and drive continuous improvement so that the team can meet the goal of delivering high-quality software quickly and efficiently.
Based on the information from the assessment, it is important to start outlining and improving the test strategy. Based on input from the Enterprise Test Architect, the business, and the assessments, the Program Test Architect can begin to define entry and exit criteria in the agile testing cycle. In collaboration with Test Analysts, Automation Engineers, and Enterprise Enablement, they define the rule set for continuous testing.
Qualities of a Program Test Architect
It is crucial to ensure and transfer existing knowhow, therefore, someone who has served well as a Test Manager would be a good candidate to become a Program Test Architect. This transition involves much more than just a change in title for the Test Manager—it requires a change in mindset for the whole team.
It is a core value of agile development and in The ACT Framework that quality is everyone’s responsibility. Rather than having the Program Test Architect continue to create detailed reports and provide them to the team as he or she may have done as a Test Manager, organizations should instead make team members responsible for keeping track of these metrics themselves as they develop and test.
The reason why a Program Test Architect must be a visionary, not just a skilled technician, is the potential for a mindset shift as the organization begins to look at quality from an end-to-end perspective. The Architect role interacts extensively with the team and enterprise levels, which helps organizations break down silos and increase transparency.
A Program Test Architect who is in the right place and has the right connections in the organization can tackle all the above challenges and more. But they should also have the right skillset. They should have a deep understanding of agility and the testing methodology that the organization needs. Because the Architect looks at testing from a more businesslike angle, it will be essential for them to have a deep understanding of the business processes and business risks of the organization.
Because the Architect is a thought leader and visionary within the realm of continuous testing, they will focus on high-value activities such as:
- Governance of continuous testing within the program
- Implementing the test strategy defined with the Enterprise Test Architect
- Ensuring that business and non-functional requirements are covered
- Acting as a stakeholder for System Integration Testing
- Defining and revising testing metrics and KPIs for the program
- Constantly reviewing standards of testing artifacts (such as test scenarios, modules, and testing metrics) with teams
The Architect can add considerable value if the plan is to scale the existing organization or launch a testing transformation.
Why Hire a Program Test Architect
Even for organizations that are convinced of the value of implementing the Program Test Architect, it can be difficult to know where and when to deploy this new role.
Bundling various responsibilities into the single role of a Program Test Architect can help teams streamline and steer quality in the program, get deeper and more accurate insights in a domain on various testing levels, and increase cross-team and cross-department collaboration.
Furthermore, organizations can facilitate a smoother transition from current testing knowhow to a new agile testing cycle. This, in turn, helps teams and the overall organization to focus on what matters and increase efficiency by reducing redundancy, duplicates, and waiting time.
- Managing testing transformation from a quality perspective:
- Ensuring the proper execution of the strategy
- Removing redundancy
- Increasing efficiency
- Bridging gap between team level and enterprise level
- Governing the test strategy
- Guiding teams
- Enabling continuous testing
It is key to remember that a Program Test Architect will provide invaluable testing insights throughout the testing cycle—from unit to system integration tests — and will be a true driver in running an effective testing program in the future.