Introduction
Imaging Advisor provides information about the status of your application (i.e., the level of "cloud readiness" of your application) with regard to a migration to a cloud provider such as AWS (Amazon Web Services) or Oracle Cloud. A series of checks are run against the application and the result of these checks is presented in a way which makes it easy to see which objects in your application may need work to ensure a smooth migration to the given cloud provider (for example, removal if they are not supported in a cloud environment).
Currently Imaging Advisor provides checks for:
- Move to AWS (Amazon Web Services)
- Oracle Server on premise to Amazon Aurora
- IBM z/OS Mainframe to Amazon EC2
- Move to Oracle Cloud
- Oracle Server on premises to Oracle Cloud
More details about checks are provided below.
Accessing the Imaging Advisor
Imaging Advisor is accessed directly from the User Guide - GUI - Welcome Page:
Click to enlarge
You are offered a choice of cloud provider - tiles that are displayed are dependent on the type of source code your application contains. Clicking the service provider will take you directly to the Imaging Advisor UI:
In Imaging ≥ 2.18, DB Migration tile supports the DB Migration rules.
Imaging Advisor not visible
If the Imaging Advisor option is not visible, this means that no checks have been run on the current application. In other words:
- the current application does not contain object types that are targeted by the currently available checks built into CAST Imaging.
- the current application has not been analyzed with the inclusion of a specific extension that provides checks for Imaging Advisor.
Upgrading the Imaging Advisor
Different versions of advisors are linked with a particular Rule JSON. By upgrading you will get access to new rules, so upgrading the Imaging Advisor Version is recommended.
You may upgrade the Imgaging Advisor for a selected application using the upgrade icon/feature available in the admin center. The icon to upgrade Advisor is enabled once you select an application. If you select more than one application the icon gets disabled.
Select an application and click the icon (Upgrade Advisor Version). The following pop-up message is displayed.
Click on Upgrade. The following confirmation message is displayed.
If the advisor upgrade fails, then the following notification is displayed.
Interface
≥ 2.19
In ≥ 2.19 screens for displaying intermediate branching steps are provided for smooth navigation to the checks. Information is provided in a method which lets you to explore. You may explore each rule, the branches under each rule are displayed depending on the type of selection/s you make.
Click on View Documentation, to view the Rationale,
In ≥ 2.19,
- Advisor Output Table Templates are provided for Object Inbound Calls.
- Advisor table is made dynamic based on templates provided by the “rules manager”. Inbound Template is integrated with the Default Template (In the default template, Object Type and Full Name are displayed. In the Inbound template, Link Type, Caller Full Name and Callee Full Name are displayed).
- Users can export the advisor table in CSV format for all templates.
≥ 2.18
Information is provided in a method which lets you to explore. You may explore each rule, the branches under each rule depending on the type of selection/s you make.
Selected row is persisted on reload and also the selected object in the graph is highligted.
Annotate and/or Tag Objects
You can either Annotate and/or Tag objects from advisor view. This helps if you plan for futher investigation. The Annotate and Tag icons (next to the Object Type) are enabled if they are associated with Annotate or Tag.
You need to select one or multiple objects to enable Annotate and Tag button.
≤ 2.17
Information provided is divided into three categories:
- Quick Wins - an inventory of items that require little or no changes to be compliant with cloud provider requirements
- Minor Cleanup - an inventory of items that require some minor refactoring
- Major Cleanup - an inventory of items that require major refactoring
Above categories/tiles will be enabled only when there are identified checks classified for the respective categories.
Get more insights
Clicking any of the Get more insights buttons will lead you to the following screen, which lists each Check (provided by CAST), associated with the selected application, which potentially need fixing or updating before a migration to a cloud provider. In the example below, for the "Quick wins" option, there are three "points of interest" (i.e. checks) which should be fixed before a migration, and for each of these the number of components that are impacted are also listed:
Click to enlarge
The following screen is displayed when you click on a Check. The screen provides an interactive list of the objects impacted by the specific criteria (on the left-hand side). Selecting an object in the left-hand panel shows all the other objects accessing the selected object on the right side. Object properties are also displayed when the object is selected:
Click to enlarge
Description | This section provides a more detailed description of the check? Click show more to view the entire description: |
---|---|
Left hand panel | Lists the objects impacted by the selected criterion as follows:
|
Right hand panel - map/investigate | Selecting an object in the left hand panel shows the selected object and, depending on the criteria, other objects as well. Selecting an object in the right hand panel will automatically display the object's "Properties": Use the Investigate button to move into a custom view directly on the selected object: |
Multiple Bookmarks
In ≥ 2.18.0, multiple bookmarks (with identified violations) on specific objects based on Imaging Advisor rules for "Moving to Oracle Cloud" are displayed/highlighted.
Click on View. Following screen is displayed in a new window with multiple bookmarks (with identified violations) on the selected objects based on Imaging Advisor rules for "Move to Oracle Cloud" (or AWS (Amazon Web Services)) along with the total number of occurrences of the violations.
Sharing Imaging Advisor information
In ≥ 2.18.0, RuleID is included in the advisor URL to make the link sharable. This helps you to get direct to a specific rule in Imaging Advisor, without having to click through all the steps from the Welcome Page. You can share the link in an email or in a message.
Checks provided in Imaging Advisor
The checks provided by the Imaging Advisor are as follows:
Built into CAST Imaging
These checks are currently triggered and executed when the application is imported into CAST Imaging:
Move to AWS
IBM z/OS Mainframe
Check ID | Step | Description | Introduced in | Updated in (both callers and procedures are displayed) |
---|---|---|---|---|
1202014 | Mainframe to AWS with Automated Code Refactor | PDS Files: Programs/Utilities manipulating Data | 2.18.0-beta1 | - |
1202015 | Mainframe to AWS with Automated Code Refactor | GDG Files: Programs/Utilities manipulating Data | 2.18.0-beta1 | - |
1202018 | Mainframe to AWS with Automated Code Refactor | Identify all Cobol Programs using APPC communication protocol | 2.17.0-beta4 | 2.17.1-funcrel |
1202019 | Mainframe to AWS with Automated Code Refactor | Identify all Cobol Programs using CTG communication protocol | 2.17.0-beta4 | 2.17.1-funcrel |
1202020 | Mainframe to AWS with Automated Code Refactor | Identify all Cobol Programs using IBM MQSeries communication protocol | 2.17.0-beta4 | 2.17.1-funcrel |
1202021 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identifying Cobol Statements Leading to security issues | 2.18.0-alpha1 | |
1202022 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identify all Cobol Statements and Synataxes that need to be reviewed before migration to the cloud | 2.18.0-alpha1 | |
1202030 | Mainframe to AWS with Automated Code Refactor | GDG Files defined but not used | 2.18.0-beta1 | - |
1202031 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedures calling CA-7 Scheduler Utilities and the Programs launched by these jobs | 2.17.0-beta4 | 2.17.1-funcrel |
1202032 | Mainframe to AWS with Automated Code Refactor | Identify all JCL Jobs and JCL Procedures calling Control-M Scheduler utilities and the Programs launched by these jobs | 2.17.0-beta4 | 2.17.1-funcrel |
1202033 | Mainframe to AWS with Automated Code Refactor | Identify all JCL Jobs and JCL Procedures calling EPS Scheduler Utilities and the Programs launched by these jobs | 2.17.0-beta4 | 2.17.1-funcrel |
1202034 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedures calling TWS Scheduler Utilities. Identify Programs launched by these jobs | 2.17.0-beta5 | 2.17.1-funcrel |
1202035 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedures calling CA-ACF2 utilities. Identify Programs launched by these jobs | 2.17.0-beta5 | 2.17.1-funcrel |
1202036 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedure calling EzSocket utilities | 2.17.0-beta5 | 2.17.1-funcrel |
1202037 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedures calling AR/CTL utilities. Identify Programs launched by these jobs | 2.17.0-beta5 | 2.17.1-funcrel |
1202038 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedures calling StreamWeaver Utilities. Identify Programs launched by these jobs | 2.17.0-beta5 | 2.17.1-funcrel |
1202039 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedure calling FTP utilities | 2.17.0-beta5 | 2.17.1-funcrel |
1202040 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedure calling NDM utilities | 2.17.0-beta5 | 2.17.1-funcrel |
1202041 | Mainframe to AWS with Automated Code Refactor | Identify JCL Jobs and JCL Procedure calling Co:Z SFTP utilities | 2.17.0-beta5 | 2.17.1-funcrel |
1202043 | Mainframe to AWS with Automated Code Refactor | For each ESDS VSAM dataset called by Cobol Program: LDS VSAM dataset + Calling Program + ACCESS MODE. For each ESDS VSAM dataset called by Any Utility: LDS VSAM dataset + Calling Any Utility + ACCESS MODE | 2.18.0-alpha1 | - |
1202048 | Mainframe to AWS with Automated Code Refactor | PDS Files Defined but not used | 2.18.0-beta1 | - |
1202049 | Mainframe to AWS with Automated Code Refactor | Identify Cobol Programs publishing Messages to queue | 2.17.0-beta4 | 2.17.1-funcrel |
1202050 | Mainframe to AWS with Automated Code Refactor | Identify Cobol Programs subscribing to an IBM MQ | 2.17.0-beta5 | 2.17.1-funcrel |
1202051 | Mainframe to AWS with Automated Code Refactor | For each ESDS VSAM dataset called by Cobol Program: RRDS VSAM dataset + Calling Program + ACCESS MODE. For each ESDS VSAM dataset called by Any Utility: RRDS VSAM dataset + Calling Any Utility + ACCESS MODE | 2.18.0-alpha1 | - |
1202057 | Mainframe to AWS with Automated Code Refactor | Green screen accessed by cobol program linked to database storage | 2.18.0-beta1 | - |
1202061 | Mainframe to AWS with Automated Code Refactor | Green screen accessed by cobol program linked to MQ utilities | 2.18.0-beta1 | - |
1202065 | Mainframe to AWS with Automated Code Refactor | VSAM files defined but not used | 2.17.0-beta5 | - |
1202075 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identify application's adherence to Assembler technology | 2.18.0-alpha1 | - |
1202076 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identify application's adherence to Easytreive technology | 2.18.0-alpha1 | - |
1202078 | Mainframe to AWS with Automated Code Refactor | Identify application's adherence to Assembler technology | 2.18.0-alpha1 | - |
1202079 | Mainframe to AWS with Automated Code Refactor | Identify application's adherence to Easytreive technology | 2.18.0-alpha1 | - |
1202080 | Mainframe to AWS with Automated Code Refactor | Identify application's adherence to Rexx technology | 2.18.0-alpha1 | - |
1202085 | Mainframe to AWS with Automated Code Refactor | Cobol Program accessing IMS Segement | 2.18.0-alpha2 | - |
1202086 | Mainframe to AWS with Automated Code Refactor | Missing IMS Segment | 2.18.0-beta1 | - |
1202087 | Mainframe to AWS with Automated Code Refactor | Access To IMS DB has been identfied | 2.18.0-alpha2 | - |
1202093 | Mainframe to AWS with Automated Code Refactor | Cobol Program accessing IMS GSAM | 2.18.0-beta1 | - |
1202095 | Mainframe to AWS with Automated Code Refactor | Identify application's adherence to Focus technology | 2.18.0-alpha1 | - |
1202097 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identify application's adherence to Rexx technology | 2.18.0-alpha1 | - |
1202098 | Mainframe to AWS by rehosting/replatforming your application on EC2 | Identify application's adherence to Focus technology | 2.18.0-alpha1 | - |
1202064 | Data Migration to AWS Services | CICS Data Set: Programs/utilities manipulating data | 2.18.0-beta2 | |
1202148 | Data Migration to AWS Services | Cobol Program using CICS transactions | 2.18.0-beta2 | |
1202149 | Data Migration to AWS Services | Unknown CICS Transactions | 2.18.0-beta2 | |
1202150 | Data Migration to AWS Services | Cobol Program using CICS Transient data | 2.18.0-beta2 | |
1202151 | Data Migration to AWS Services | Unknown Transient Data | 2.18.0-beta2 | |
1202181 | Data Migration to AWS Services | Cobol Programs candidate for AWS Lambda function conversion: No Data Access | 2.18.0-funcrel | |
1202001 | Data Migration to AWS Services | Cobol Programs candidate for AWS Lambda function conversion: Data-dependent Programs | 2.18.0-funcrel | |
1202027 | Data Migration to AWS Services | Cobol Programs candidate for AWS Lambda function conversion: Data-independent programs | 2.18.0-funcrel | |
1202178 | Data Migration to AWS Services | SQL Server Database to Amazon Aurora with PostgreSQL: Object Type Remediation | 2.19.0-alpha2 | |
1202207 | Data Migration to AWS Services | Green Screen access by program linked to database storage | 2.19.0-alpha2 | |
1202208 | Data Migration to AWS Services | Green screen accessed by program linked to MQ utilities | 2.19.0-alpha2 | |
1202209 | Data Migration to AWS Services | Green screen accessed by program linked to datafile storage | 2.19.0-alpha2 | |
1202212 | Data Migration to AWS Services | Missing Green Screens | 2.19.0-alpha2 | |
1202214 | Data Migration to AWS Services | Cobol Program using CICS transactions | 2.19.0-alpha2 | |
1202215 | Data Migration to AWS Services | Unknown CICS Transactions | 2.19.0-alpha2 | |
1106130 | Data Migration to AWS Services | Ensure DATETIMEOFFSET data type is not used | 2.19.0-alpha2 | |
1106128 | Data Migration to AWS Services | Ensure NCHAR data type is not used | 2.19.0-alpha2 | |
1106126 | Data Migration to AWS Services | Ensure NTEXT data type is not used | 2.19.0-alpha2 | |
1106124 | Data Migration to AWS Services | Ensure NVARCHAR data type is not used | 2.19.0-alpha2 | |
1106122 | Data Migration to AWS Services | Ensure ROWVERSION data type is not used | 2.19.0-alpha2 | |
1106120 | Data Migration to AWS Services | Ensure SMALLMONEY data type is not used | 2.19.0-alpha2 | |
1106118 | Data Migration to AWS Services | Ensure TIMESTAMP data type is not used | 2.19.0-alpha2 | |
1106116 | Data Migration to AWS Services | Ensure TINYINT data type is not used | 2.19.0-alpha2 | |
1106114 | Data Migration to AWS Services | Ensure VARBINARY data type is not used | 2.19.0-alpha2 | |
1106112 | Data Migration to AWS Services | Ensure FROM keyword is used in DELETE Statement | 2.19.0-alpha2 | |
1106144 | Data Migration to AWS Services | Ensure SQL Server SET/SELECT variable is not used | 2.19.0-alpha2 | |
1106140 | Data Migration to AWS Services | Ensure SQL server Scalar Function ISNULL is not used | 2.19.0-alpha2 | |
1106138 | Data Migration to AWS Services | Ensure SQL server Scalar Function GETDATE is not used | 2.19.0-alpha2 | |
1106136 | Data Migration to AWS Services | Ensure SQL server Scalar Function DATEDIFF is not used | 2.19.0-alpha2 | |
1106134 | Data Migration to AWS Services | Ensure SQL server Scalar Function DATEADD is not used | 2.19.0-alpha2 | |
1106132 | Data Migration to AWS Services | Ensure SQL server Scalar Function CONVERT is not used | 2.19.0-alpha2 | |
1106110 | Data Migration to AWS Services | Ensure MERGE statement is not used | 2.19.0-alpha2 |
Provided by extensions
The following extensions provide specific checks:
Prerequisites
The application must be analyzed with the inclusion of the extension listed below.
com.castsoftware.sql.movetocloud
- Targets Oracle Server (PL/SQL) objects only.
- For more information about the checks provided, see RDBMS Move to Cloud
- Move to AWS (Amazon Web Services) > Oracle Database to Amazon Aurora
- Move to Oracle Cloud > Oracle Database to Oracle Cloud
The following are available:
Check ID | Description | Introduced in |
---|---|---|
1106000 | Ensure unsupported PL/SQL packages are not used | 2.17.0-funcrel |
1106002 | Ensure MERGE statement is not used | 2.18.0-beta1 |
1106004 | Ensure CLOB data type is not used | 2.17.0-funcrel |
1106006 | Ensure PL/SQL package UTL_FILE is not used | 2.18.0-beta1 |
1106008 | Ensure PL/SQL package DBMS_SCHEDULER is not used | 2.18.0-beta1 |
1106010 | Ensure PL/SQL package DBMS_RANDOM is not used | 2.18.0-beta1 |
1106012 | Ensure PL/SQL package DBMS_OUTPUT is not used | 2.18.0-beta1 |
1106014 | Ensure PL/SQL package DBMS_AUTO_INDE is not used | 2.18.0-beta1 |
1106016 | Ensure PL/SQL packages UTL_HTTP and UTL_SMTP are not used | 2.17.0-funcrel |
1106018 | Ensure PL/SQL procedures DBMS_LOGMNR.ADD_LOGFILE and DBMS_LOGMNR.REMOVE_LOGFILE are not used | 2.17.0-funcrel |
1106020 | Ensure LOB data types are not used | 2.18.0-beta1 |
1106022 | Ensure you don't have unsupported option GENERATED BY DEFAULT for identity columns | 2.18.0-beta1 |
1106024 | Ensure SHARDED tables are not used | 2.17.0-funcrel |
1106026 | Ensure XMLType columns are not used | 2.17.0-funcrel |
1106028 | Ensure CLUSTER clause in CREATE TABLE statements is not used | 2.17.0-funcrel |
1106030 | Ensure INDEX-ORGANIZED TABLEs (IOT) are not used | 2.17.0-funcrel |
1106032 | Ensure ROWID data type is not used | 2.17.0-funcrel |
1106036 | Ensure Database Links are not used | 2.18.0-beta1 |
1106038 | Ensure Unused Column is not used | 2.18.0-beta1 |
1106040 | Ensure READ ONLY Table is not used | 2.18.0-beta1 |
1106042 | Ensure Invisible Inde is not used | 2.18.0-beta1 |
1106044 | Ensure PL/SQL packages UTL_MAIL and UTL_SMTP are not used | 2.18.0-beta1 |
1106052 | Ensure BLOB data type is not used | 2.18.0-beta1 |
1106054 | Ensure CLOB data type is not used | 2.18.0-beta1 |
1106058 | Ensure VARCHAR FOR BIT DATA data type is not used | 2.18.0-beta1 |
1106064 | Ensure NCHAR VARYING data type is not used | 2.18.0-beta1 |
1106066 | Ensure GRAPHIC data type is not used | 2.18.0-beta1 |
1106068 | Ensure FLOAT data type is not used | 2.18.0-beta1 |
1106070 | Ensure DECFLOAT data type is not used | 2.18.0-beta1 |
1106072 | Ensure DB2 Scalar Function DATE is not used | 2.18.0-beta1 |
1106074 | Ensure DB2 Scalar Function SMALLINT is not used | 2.18.0-beta1 |
1106076 | Ensure DB2 Scalar Function LCASE is not used | 2.18.0-beta1 |
1106078 | Ensure DB2 Scalar Function POSSTR is not used | 2.18.0-beta1 |
1106080 | Ensure DB2 Scalar Function RAND is not used | 2.18.0-beta1 |
1106082 | Ensure DB2 Scalar Function TIMESTAMP is not used | 2.18.0-beta1 |
1106084 | Ensure DB2 Scalar Function CHAR is not used | 2.18.0-beta1 |
1106088 | Ensure DB2 Scalar Function YEAR is not used | 2.18.0-beta1 |
1106090 | Ensure DB2 Scalar Function MONTH is not used | 2.18.0-beta1 |
1106092 | Ensure DB2 Scalar Functions DAY/DAYS are not used | 2.18.0-beta1 |
1106094 | Ensure DB2 Scalar Functions DECIMAL/DEC are not used | 2.18.0-beta1 |
1106096 | Ensure PARTITION is not used in ALTER TABLE statements | 2.18.0-beta1 |
1106100 | Ensure DECLARE cursor is not used | 2.18.0-beta1 |
1106102 | Ensure DB2 DECLARE variable is not used | 2.18.0-beta1 |
1106104 | Ensure SYSIBM.SYSDUMMY1 table is not used | 2.18.0-beta1 |
1106106 | Ensure VALUES statement is not used | 2.18.0-beta1 |
1106108 | Ensure DB2 SET variable is not used | 2.18.0-beta1 |