Migration Workbench for Refactoring SaaS Database Layouts
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Migrating an existing customer base from a previous software product version to a new software product version is difficult, costly, and results in significant downtimes, posing a risk to the continued success of the software product during re-architecting processes.
Innovation Solution
A data migration architecture workbench (DMAW) that enables refactoring application persistency with early migration impact analysis, providing a toolset for software product development to minimize migration cost and downtime by generating migration code for early testing and optimizing the migration process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If re-architecting is performed to move to a new platform or restructure microservice layout, then software product architecture is improved, but migration downtime is extended
Solution Approach 1:
The system performs migration impact analysis early in the development process, before the migration is executed. This allows potential migration issues to be identified and resolved in advance, preventing extended downtimes during actual migration. The migration assessment is conducted as a preliminary action to evaluate the impact of architectural changes on the customer base.
Solution Approach 2:
The migration process is divided into separate phases: development phase with migration impact analysis, testing phase with migration tests, and execution phase. By segmenting the migration into manageable parts and analyzing each separately, the system can identify and address issues without causing extended downtime during the actual migration execution.
2Adaptability or versatility
If re-architecting is performed to clean up architectural debt or restructure microservice layout, then software product architecture is improved, but migration cost is increased
Solution Approach 1:
The system performs migration impact analysis early in the development process, allowing potential migration issues to be identified and resolved in advance. This preliminary assessment prevents costly rework during actual migration by detecting architectural problems before they become expensive fixes.
Solution Approach 2:
The system provides migration impact assessments and test results as feedback to developers during the development phase. This feedback loop allows architects and developers to adjust the re-architecting plan to minimize migration costs while still achieving the desired architectural improvements.
3Reliability
If migration test is executed to assess migration impact, then migration reliability is improved, but migration time is extended
Solution Approach 1:
Migration tests are executed early in the development process, well before the actual migration is needed. This preliminary testing ensures migration reliability is validated in advance, so when the actual migration occurs, it can proceed quickly with confidence that issues have already been identified and resolved.
Data Source
AI summary
The disclosure generally describes methods, software, and systems for re-architecting an existing software product provided as a service. A user input specifying current databases used for an old software product version is received. The user input includes a definition of a target persistency layout including databases assigned for storing a new software product version, the old software product version including one or more database tables and the new software product version including an adjustment to the one or more database tables to generate one or more target database tables. Sizes of the one or more database tables are read from a catalog of a database. A migration assessment of the new software product version is generated based on the sizes of the one or more database tables. A migration test of the one or more database tables is executed using the migration assessment to generate migration test results. An updated adjustment to the one or more database tables is provided based on the migration test results.


