Chapter 5. Assessing and analyzing applications

You can use the Migration Toolkit for Applications (MTA) user interface to both assess and to analyze applications.

Assessing applications refers to estimating the risks and costs involved in preparing applications for containerization, including time, personnel, and other factors. The results of an assessment can be used as the basis for discussions between stakeholders to determine which applications are good candidates for containerization, which require significant work, and which are not suitable for containerization.

Analyzing applications refers to using rules to determine which specific lines in an application must be modified before the application can be migrated or modernized.

5.1. Assessing applications

You can use the Migration Toolkit for Applications (MTA) user interface to determine the risks involved in containerizing an application.

Procedure

  1. In Development view, click Application inventory.
  2. Select the application you want to assess.

    Note

    Only one application can be assessed at a time.

  3. Click Assess.
  4. Select Stakeholders and Stakeholder groups from the lists to track who contributed to the assessment for future reference.

    Note

    You can add Stakeholder Groups or Stakeholders on the Controls screen of Developers view.

  5. Click Next.
  6. Answer each question and then click Next.
  7. Click Save and Review to view the assessment.

5.2. Applying assessments to other applications

Many applications are similar enough to each other that you might want to apply a completed assessment of one application to another application. This can save time and provide consistent answers to assessment questions for similar applications.

Procedure

  1. In Development view, click Application inventory.
  2. Select the application with the completed assessment to copy.
  3. Click the Options menu kebab at the right of the selected application.
  4. Select Copy assessment or Copy assessment and review.
  5. Select the application(s) to which you want to apply the completed assessment.
  6. Click Copy.

5.3. Configuring and running an application analysis

You can analyze more than one application at a time against more than one transformation target in the same analysis.

Procedure

  1. In Development view, click Application inventory.
  2. Click the Analysis tab.
  3. Select the applications you want to analyze.
  4. Review the credentials assigned to the application.
  5. Click Analyze.
  6. Select the Analysis mode from the list. Valid options are:

    • Binary.
    • Source code.
    • Source code and dependencies.
    • Upload a local binary. This option only appears if you are analyzing a single application.
  7. If you choose Upload a local binary, a window opens and you are prompted to Upload a local binary. Either drag and drop a file into the area provided or click Upload and then select the file to upload.
  8. Click Next.
  9. Select one or more target options for the analysis:

    • Application server migration to:

      • JBoss EAP 7
      • JBoss EAP 6
    • Containerization
    • Quarkus
    • OracleJDK to OpenJDK
    • OpenJDK - upgrades to one of the following JDK versions:

      • OpenJDK 11
      • OpenJDK 17
    • Linux - ensures there are no Microsoft Windows paths hard-coded into your applications
    • Jakarta EE 9 - for migrating from Java EE 8 to Jakarta EE 9
    • Spring Boot on Red Hat Runtimes
    • Open Liberty
    • Camel - for migrating from Apache Camel 2 to Apache Camel 3
    • Azure

      • Azure App Service
  10. Click Next.
  11. Select one of the following Scope options to better focus the analysis:

    • Application and internal dependencies only.
    • Application and all dependencies, including known Open Source libraries.
    • Select the list of packages to be analyzed manually. If you choose this option, type the file name and click Add.
    • Exclude packages. If you choose this option, type the name of the package name and click Add.
  12. Click Next.
  13. In Advanced, set Custom rules by typing a name or by searching and clicking Add Rules.
  14. Set any of the following options, if needed:

    • Target
    • Source(s)
    • Excluded rules tags: Rules with these tags are not processed. Add or delete as needed.
    • Enable transaction report: Select the checkbox to generate a DIVA report that displays the call stack, which executes operations on relational database tables.

      Note

      The Transactions report is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.

      Note

      Analysis engines use standard rules for a comprehensive set of migration targets, but if the target is not included or is a customized framework, custom rules can be added. Custom rules files are validated.

  15. Click Next.
  16. In Review, verify the analysis parameters.
  17. Click Run.

    Analysis status is Scheduled as MTA downloads the image for the container to execute. When the image is downloaded, the status changes to In-progress.

    Note

    Analysis takes minutes to hours to run depending on the size of the application and the capacity and resources of the cluster.

    Tip

    MTA relies on Kubernetes scheduling capabilities to determine how many analyzer instances are created based on cluster capacity. If several applications are selected for analysis, by default, only one analyzer can be provisioned at a time. With more cluster capacity, more analysis processes can be executed in parallel.

  18. When analysis is complete, you can click the Report link to see the results of the analysis.

5.4. Reviewing an analysis report

An MTA analysis report contains a variety of sections, including a listing of the technologies used by the application, the dependencies of the application, and the lines of code that must be changed to successfully migrate or modernize the application.

For more information on the contents of an MTA analysis report, see the Reviewing the reports

Procedure

  1. In Development view, click Application inventory.
  2. Expand the application with a completed analysis.
  3. Click Report.
  4. Click the dependencies or source links.
  5. Click the tabs to review the report.