Categories
QA&T – Our Approach Your Edge Blog

End-to-End Migration Testing

Discover a modern, agile approach to E2E Migration Testing, proven through successful bank migrations and adaptable for any business.

Our approach to E2E Migration Testing has been developed on successful migration engagements of major banking institutions. The article below describes the modern method to E2E Migration Testing, framed by an agile approach to migration. The article deals with a migration of a bank, but the approach may be equally applied for other companies as well.

Migration Organization

To deliver a complex migration project effectively, efficiently, and fast, under dynamic circumstances, it is advisable to apply a gradual approach. Such an approach is built on developing and conducting the migration gradually, for progressively more and more complex clusters of persons – i.e., sets of persons of similar characteristics, especially the consumed services in the „old bank“.

Before transitioning the migration of a cluster to its production operation (i.e., effectively migrating real persons), it is necessary to make sure the migration has been verified and validated. Migration Acceptance E2E Testing verifies and validates the migration process and provides the vital reporting for the management decision on the transition to the production.

Migration Architecture

The migration is orchestrated by the Migration Engine, managing the coordinated transfers, transformations, and changes across the landscape of the “old bank” and “new bank” systems. Migrated persons interact with the Migration Engine through various (digital or physical) channels – reviewing, deciding, accepting, and signing. The data transfers and transformation are facilitated by the integration layer – e.g., transactions and balances are transferred from the old Core Banking System to the new one.

E2E Testing Organization

It is advisable the migration in an agile organization of teams – each of them taking care of some systems, integrated in the migration – is managed by the central Core Team. The E2E Testing crew, a part of the Core Team, is responsible for planning, organization, directing, coordination, and reporting of the E2E Tests.

Migration E2E Testing

Migration E2E Testing Inputs:

  • Planning and Organization: The planning and organization of work for the given cluster is led by the Core Team, in tight cooperation with the individual teams delivering the components of the migration.
  • Business Analysis: The business analysis of the services to be included in the migration, together with the impacts on the “old bank”, “new bank”, and the Migration Process, is conducted, based on the cluster definition.
  • Migration Development: The components of the “new bank”, necessary for the migrated persons, temporary solutions for the “old bank”, and the Migration Engine need to be developed and tested (Unit Testing, System Testing, System Integration Testing) before the migration start.

Pre-Migration E2E Testing Activities:

  • Test Preparation
    • Based on the analysis, test scenarios and test cases are designed – happy path scenarios, error scenarios, alternative scenarios, and edge cases.
  • Test Data Preparation
    • The preparation of the test data is done across the systems and components; the multidimensional test data set is prepared to examine different paths of the workflow.
    • The preparation must be carefully coordinated to create a meaningful and correct representation of a person for the migrated cluster.

Migration E2E Testing Activities:

  • Test Coordination
    • The E2E Tests begin when the components of the “new bank”, necessary for the migrated persons, temporary solutions for the “old bank”, and the components of the migration have been developed and tested.
    • Since the approach is agile, the E2E Tests are conducted “as soon as they can be”, for already working parts of the whole solution; the E2E Testing Team coordinates the E2E Tests continuously.
  • Test Execution
    • The E2E Tests are conducted from the perspective of end users; the migration path is followed by interacting with the Migration Engine through various (digital or physical) channels – reviewing, deciding, accepting, and signing.The E2E Tests are conducted with the simultaneous technical inspections across the Migration Process (e.g., selected integrations and technical statuses across the Migration Process are monitored).When a defect is identified, the E2E Testing Team does their best to clearly identify the specific circumstances of the defect and collect the traces in the monitoring of the related components.
    • The defects are managed by the E2E Testing Team; a defect is passed over to the respective teams, it is collaborated with these teams on its analysis, and when the defect is fixed, its retest is planned by the E2E Testing Team.

Post-Migration E2E Testing Activities:

  • Test Execution
    • After the migration, checks are conducted to ensure the service works correctly in the “new bank”, i.e., the data has been migrated correctly, the test person may administer his services, and his access to the “old bank” has been limited appropriately.
    • The defects from this stage are again managed by the E2E Testing Team.
  • Providing Feedback
    • The E2E Testing Team provides feedback on the results of the E2E Tests to help identify situations that indicate problems or opportunities for service improvement (e.g., users not navigating the system smoothly due to an unclear migration wizard).
  • Overall Reporting
    • The role of E2E Test results in the decision-making process for deploying a new migration version to Production.