Migration Application Assessment Questions – DZone

Most of the existing applications/projects are being moved to cloud/on-premises platforms using microservices architectures. Assessing the existing application is critical relative to the complexity and risk of the application. An appropriate strategy for analyzing the current application must be defined to determine the risk and complexity of the existing application landscape. The assessment considers factors such as the overall architecture, presentation layer, business layer, data layer, security, implementation, technology, infrastructure, performance, and monitoring of existing applications. Gather the information from the different parameters and decide which is the best option for migration strategies like Rehost, Refactor, Rearchitect and Rebuild. For each parameter, the architect completes the information by studying the existing application/collecting the information from the application stack holders. The application evaluation helps the Organization to understand the following:

  • Understanding of existing application architecture and critical findings.
  • Integration points between applications (upstream and downstream).
  • Infrastructure, Use of software
  • Problem areas related to business users.
  • Roadmap for the target system platform using any of the migration strategies.

There are a number of evaluation criteria for which information will need to be collected in order to provide an evaluation of applications, as follows:

  • Contributions of commercial and technical value such as; Reliability, scalability and flexibility
  • Risk exposures such as; Strategic, operational and technological risks
  • Cost of operations with respect to the application, the project and the business.
  • The attractiveness of the system, the business and the delivery.

Each and every application evaluation team creates a template to prepare and identify the appropriate questionnaire related to the above criteria. Based on the assessment report, the application owner can decide to migrate the application to cloud/on-premises. The following diagram shows a very high-level process flow for evaluating applications.

The following table outlines questions for each of the assessment parameters listed above. The application architect’s score should be based on their experience. For each and every question, the architect has to assign a score and finally decide if the evaluation application can be moved to the target architecture or not. The application architect should answer the following questions before proposing the target architecture in the evaluation phase.

Evaluation parameter

Questions to ask as part of the Migration assessment

Application architecture

  • Is it distributed architecture?
  • Follow the architectural model in layers.
  • loosely coupled.
  • Required level of abstraction with no provider lock on any layer.
  • Appropriate integration techniques between different systems for synchronous and asynchronous operations.
  • Does the architecture follow SOA/Microservices design principles?

presentation layer

  • GUI screens are more attractive in appearance and easier to navigate with context sensitive help enabled.
  • The website is a portal based on standard products with ready-to-use portal functions.
  • The GUI layout is based on templates, such as Apache tiles, which can be applied to GUI screens to speed screen creation and deployment.
  • The GUI uses reusable rendering components.
  • Supports cross-browser compatibility.
  • Do you support mobile enabled services?
  • View exercises any caching techniques to cache static content to improve performance.

business layer

  • Is the business layer loosely coupled with the presentation layer?
  • Do you use any separation of concerns and loose coupling?
  • Does the business layer invoke remote objects/APIs that run in a distributed environment? What is the way to invoke?
  • Does the business layer use any workflows?
  • Does the business layer integrate with external systems? What is the mode of integration?
  • Does the business layer consider network latency and bandwidth when invoking remote objects?
  • Does the business layer use any ESBs for service orchestration or message transformation?

data layer

  • Does the architecture use any DAO pattern?
  • Does this layer take advantage of the out-of-the-box feature of the application server’s database connection pool?
  • Does this layer use the ORM tool to persist Java objects?
  • Does this layer use application server transaction management?
  • Does this layer use JPA for portability?
  • Does the application use the database per company/single database for all microservices?
  • Is there any downtime while the application changes are deployed to the production environment?

Security

  • Does the system allow a single sign-on capability?
  • Does wired communication allow SSL encryption?
  • Is user role management controlled by a separate management pack?
  • Does the system grant role-based access to various system screens and menus?

Deployment

  • Are the firewalls protected?
  • Does the system use a load balancer?
  • Are the application servers started in a cluster configuration?
  • Is the system deployed in a container? please elaborate

The conclusion is that the questionnaire is not limited to the above. Questions can be expanded and values ​​assigned to each question to arrive at a proper assessment of the existing application. Then, according to the report, the application owner can make the appropriate migration decisions. Finally, provide the application migration conclusions and recommendations as part of the migration roadmap document.

source

Scroll to Top