Enterprise Enablement Team

 

What Is an Enterprise Enablement Team?

Enterprise EnablementAn Enterprise Enablement Team functions as a slim version of a testing center of excellence. The Team serves as a shared service, working across the teams in the enterprise to ensure that the testing strategies are followed and executed. The Enterprise Enablement Team is a critical component for scaling agile testing across the enterprise.

 

Who Is Part of the Enterprise Enablement Team?

The Enterprise Enablement Team is usually made up of experts taken from various teams throughout the organization. These experts can include Test Analysts, Enterprise or Program Test Architects, Enterprise or Program Automation Engineers, and similar roles. Together, these professionals provide testing expertise in a shared services model / shared team, often through a service catalogue that is available to any team that needs assistance.

 

What Is the Impact of an Enterprise Enablement Team?

The qualitative benefits of an Enterprise Enablement Team are that it helps define an organization’s testing strategy on the enterprise level and then verifies that it is being implemented and executed effectively in teams. In the process, the Team will:

  • Resolve conflicts between the team test strategy and the enterprise test strategy
  • Identify and address gaps in the continuous integration environment
  • Provide teams with expertise and insights for decision-making on tooling and infrastructure
  • Handle transitions that are beyond the capabilities of an individual team due to sheer scope, cross-team dependencies, ripple effect on the enterprise, or other factors
  • Resolve challenges that are outside the core business of individual teams, including licensing or testing budget

There is a wide range of possible metrics for measuring the value of an Enterprise Enablement Team. Most of them revolve around cost reductions derived from optimizing testing tasks. Some other can be:

enterprise_enablement_text

 

How to Leverage Enterprise Enablement Teams in Testing Transformations

Looking at the Enterprise Enablement Team from a testing transformation perspective, the team is responsible for covering the following aspects:

  • Collaborate with teams to define best practices
  • Enable new teams in testing methodologies and technologies
  • Orchestrate decision-making on testing tools and infrastructure
  • Initiating and facilitating Community of Practice
  • Represent QA in strategic discussions

A more detailed view shows, that the top priority of any Enterprise Enablement Team is to empower individual teams throughout the organization to perform their day-to-day testing activities effectively. This can be achieved by:

  1. Test StrategyHelping teams executing their testing strategy, for example
    1. Performing a risk analysis
    2. Plan the test coverage
    3. Map out requirements and tests
    4. Decide on which tests to be performed: functional, non-functional
    5. Definition of Regression- & Progression Tests Suites
    6. How, what and when to report
  2. Setting up new testing infrastructure such as:
    1. Order or configure testing server or dedicated environments
    2. Review and order permissions for build pipeline, networks, and databases.
  3. Tools IntegrationTool integration for continuous testing
    1. Requirements to test case
    2. Build pipeline and test automation tool
    3. Test automation Tool and Test Management
  4. Creating dashboards for viewing testing metrics
    1. Test Coverage
    2. Test Results
    3. Bugs/Defects
  5. WorkshopsPerforming proofs of concept for new tools and methods
    1. Identify and map pain points to solutions
    2. Set up prototypes
    3. Provide insights and recommendations
    4. Loop back to testing strategy
  6. Driving the Community of Practice
    1. Facilitating community of practice
    2. Sharing best practices
    3. Leverage know-how sharing between teams and professionals
  7. Aligning the test strategy across the enterprise, program and team levels

In some cases, the Enterprise Enablement Team will serve as a SWAT team that enables testing transformations, onboarding of new teams, or short-term projects. These SWAT teams will typically include Test Architects, Automation Engineers, and Automation Specialists in addition to the roles already mentioned.

 

The Service Catalogue Ensures Standardizations and Efficiency

Because the Enterprise Enablement Team performs the same services for any group throughout the organization, it offers them through a service catalogue. This way, managers know up front what the Team can do and how long it will take them to do it. For example, they can see that it will take the Team five man-days to set up a testing server and three days to provision and implement the testing environment on it.

These services are especially valuable for teams that are new to testing and are unsure how to proceed with unit testing, system testing, and continuous integration.

Often the challenges these teams face have already been addressed elsewhere in the organization. It is the job of the Enterprise Enablement Team to leverage this knowledge and apply it to each specific new case.

In addition to providing a wide range of services through a service catalogue, the Enterprise Enablement Team ensures that there is integration between these services. The Team will make sure that teams throughout the organization are making the best use of all their build servers, repositories, and automation test suites in support of their testing strategies.

 

Enabling the Testing Transformation

With their wide range of know-how and experience, the Enterprise Enablement Team should be capable of improving and transforming testing regardless of starting from manual testing or automated testing.

Remember, the Enterprise Enablement Team adds value not primarily through the work it performs, but through the work it enables other teams to perform. The Team will leverage this by:

  • Provide training and enablement. The Team trains new resources through online and classroom training on testing tools, best practices, and processes.

For example:

In some scenarios, organizations may already have Automation Specialists and Test Analysts additional to manual testers. But although these professionals may know what to test, they do not always know how to test—or how to test more quickly.

The Enterprise Enablement Team can then step in and train them in automation techniques and best practices—plus provide short-term resources to perform hands-on testing that jump-starts a project, for example by a SWAT team.

  • Perform proofs of concept (PoC)

For example: In some scenarios, teams are highly experienced and capable but want to try a new approach or technology. They can call on the Enterprise Enablement Team to help execute on their innovation. Suppose a team wants to implement machine learning for testing, but can’t resolve dependencies around implementation—or simply lacks the manpower. The Enterprise Enablement Team can run a proof of concept to help the team determine the feasibility of their plans and makes sure it is aligned with the overall enterprise continuous testing strategy.

  • Enforce standard processes. The Team will ensure that teams across the organization follow a standard framework around tools, testing strategies, reporting.
  • Provide knowledge transfer. Ensure that teams are not reinventing the wheel and share lessons learned across the organization for example by facilitating a Community of Practice.
  • Execute on an enterprise test framework. The ACT Framework defines accountability and responsibility for testing within teams, across teams, and across the enterprise (such as which teams are responsible and accountable for unit, system, integration, and end-to-end testing).


Engagement at All Levels in the Agile Testing Cycle

The Enterprise Enablement Team works with testing professionals at all levels of an organization. Because the Enterprise Enablement Team includes a wide range of skillsets, its members will naturally form connections throughout a company.

Because their input is in such high demand across the organization, members of the Enterprise Enablement Team must have deep expertise with testing methodology and tools as well as a thorough understanding of the entire software development and testing lifecycle.

With their deep understanding of the test strategy, they ensure:

  • That unit tests of the affected areas will be executed and reported after every build
  • That system regression tests portfolio for functional and non-functional verifications are designed, integrated, executed and reported.
  • That the artefacts for the System Integration Tests and end-to-end tests are reusable

To enable continuous testing on an enterprise level (System Integration Testing, end-to-end, user acceptance, production), this team needs to work closely with the System Team to understand their requirements and to ensure they are able to build their test scenarios based on reusable tests.

 

Testing Cycle

Summary: Facilitate Teams and Leverage Continuous Testing

The Enterprise Enablement Team drives innovation by providing proofs of concept for new testing tools and methods. As an organization adopts continuous testing across all its teams, it is essential to establish an Enterprise Enablement Team that will own the overall continuous testing strategy and processes.

From a strategic standpoint, the Team is responsible for encouraging collaboration and alignment by building a community and by creating guidelines for testing and automation strategies. From a tactical standpoint, the Team helps new testing teams to get started, builds initial automation, coaches and guides new users, and conducts periodic reviews and assessments to ensure compliance with the overall strategy.

The Team will also set up and maintain best practices and help teams across different lines of business collaborate through knowledge sharing sessions, meetups, and community building. The ultimate goal of the Enterprise Enablement Team is to facilitate teams to be able to move quickly and make decisions autonomously, while still staying within the defined boundaries of the overall testing strategy.