Version 5.1
Date
Purpose
This document details CAST’s Agile Onboarding Process along with the checklist templates used. Agile process is recommended to implement in measurement program with .management visibility – it helps in quick onboarding with minimal technical documents needed from the application team.
Applicability
Iterative Agile process is recommended to implement measurement program with management visibility – it helps in quick onboarding with minimal technical documents needed from app teams and helps to avoid tunnel effect. Agile onboarding will have three iterations and will not have any custom solution implemented.
Prerequisites for Onboarding
- CAST Application Intelligence Portal (AIP core) is installed, Imaging console & CAST Imaging is installed
- Supported Technologies/Frameworks
- Extension to be used if required
- Admin / Super Admin has access to Console and node
Out of Scope
- Rescan and rescan automation
- Unsupported technologies
- Cleanup and retention
Target Audience
- All Admins and Super Admin who would be onboarding an application.
Process Flow with Imaging Console
Agile Onboarding Process Overview
Agile onboarding process consist of three iterations -
- 'Discover' is applicable to all applications
- 'Onboard' is applicable only to those applications where the feedback is received from the application team on the gaps identified during rapid onboarding
- 'Integrate' is applicable only if there are customized measurement required by the application team based on the identified use case
Objective
The objective of Agile process are:
- Minimizing initial questions to app teams
- Avoiding tunnel effect and maintaining exchanges with app teams on progress of the analysis
- Bringing visibility and speed in the early stages for the CAST programs at customers
Approach Detail
Deck is available @ Iterative Agile Process for Onboarding with Imaging console V5.0_Imaging (only).pptx
Key inputs required
App Survey / Profiler & MSREQ Essential (If applicable ) - CAST App Survey_v1.0.xlsx
Architecture Context Diagram (Good to have): Architecture_Context_Diagram_appName
Steps in Agile Onboarding Process
1. Discover
This iteration consists of three main activities i.e.
- Qualification of the application
- Acceptance of the software components provided by the customer and delivering initial measurement
- Technology and transaction understanding of CAST consultant/architect to the customer.
As a precondition of a CAST AIP analysis and to qualify the application from a technical and value perspective, CAST recommends gathering high level technical and non-technical information to help and qualify the target application for the analysis. The technical qualification will be used to establish what level of "out of the box" support CAST has for the application, identify any showstoppers such as the use of unsupported technologies or frameworks. It describes guidelines on delivering application source code, packaging source code with CAST DMT, validating alerts, analyzing application first time, discovering application's boundaries (Entry/Endpoints), technology, and missing software components and delivering the relevant reports and initial measurement to the customer.
AIP Product Documentation
- Application Qualification process overview: https://doc.castsoftware.com/display/DOC83/Qualification
- Application Acceptance process overview: https://doc.castsoftware.com/display/DOC83/Delivery+acceptance
- Initial Analysis Configuration overview: https://doc.castsoftware.com/display/DOC83/Review+Technology+and+Dependency+settings
Entry Criteria
- Approval to move forward either internally or from the customer, if CAST is onboarding customer
- Application identified by the customer should have only CAST supported technologies available at https://doc.castsoftware.com/display/DOC83/Covered+Technologies
- Technical Survey Essential / ADP Essential
Process Steps
- Kickoff Meeting: A formal meeting (preferably) has to be conducted - Agenda should be application technologies, availability of software components and introduction to CAST AIP Program
- App Qualified:
- FO has to verify whether the software components (source code, database and context diagram) are in line with the technical survey essential
- Service Engagement Sheet has to be prepared to define scope of the application
- Add application ( Click on Onboard application button)
- Run the Fast scan:
- Source code can be provided as a zip or as a folder: Provide the source code and click on fast scan.
- Validate the fast scan results: Validate the delivered source code, check if all the source code is present, make the exclusions in the source code (id any), check project exclusions, check code readiness
- Check and configure extensions: Imaging Console automatically determines the extension which should be installed and used as a part of the deep analysis, in additional to extension which are set as force install.
- to ensure that all required extensions are set for installation.
- to check that the correct release of all extensions will be installed.
- to check if any extensions are missing, add them manually to the list.
- to remove any extensions that are not required.
- Run Initial Deep Analysis:
- The deep analysis process in the onboarding with Fast Scan workflow automatically includes all of the following steps:
- Application analysis
- Generation and publishing of results to CAST Imaging and CAST Dashboards (if configured)
- When using onboarding with Fast Scan, Console does not expose the advanced configuration options BEFORE an initial analysis has been completed. Therefore the following analysis workflow should be followed:
- Initial analysis is run with all options and settings as "discovered" by Console during the fast scan step and results of the initial analysis should then be validated.
- If results are not satisfactory or need tweaking, advanced configuration options can then be modified and a subsequent analysis actioned.
- The deep analysis process in the onboarding with Fast Scan workflow automatically includes all of the following steps:
- Post Initial deep analysis, the different analysis phases can be run individually (run analysis only, run snapshot only, upload to imaging, publish the dashboard)
- Completeness Check: Check if we are good to proceed further based on the Analysis Completeness Report (if more than 10% of the software components are not analyzed then make go to step 4. 'Run Analysis & Snapshot') To Do
- Share Initial Results with customer
- App Boundary Definition:
- Validate the technologies and frameworks
- Validate missing software components
- Identify and validate the Entry and Endpoints
- Identify and document impact of missing software components
- Validate the technologies and frameworks
- Rapid Discovery Report:
- Share the Rapid Discovery Report (FERC) with the FO/Customer ( Enclosed the Rapid Discovery Template Here )
Exit Criteria
- Initial measurement delivered to the customer
- Rapid discovery report delivered to the customer
Deliverable
- Initial Measurement
- Rapid Discovery Report (Template Link - Sample Report)
- Note : The guidelines to prepare the report are updated Here
2. Onboard
This iteration is applicable if and only if the gaps identified as part of the rapid discovery report are filled or we have the complete source code and there is no gap identified during Discover phase. Main activities in this iteration are fine-tuning of the analysis configuration, transaction configuration, review of transaction completeness and validation of dashboard results.
AIP Product Documentation
- Fine-tuning of Analysis Configuration - https://doc.castsoftware.com/display/DOC83/Run+and+validate+the+analysis
- Transaction Configuration - https://doc.castsoftware.com/display/DOC83/TCC+-+CAST+Transaction+Configuration+Center
- Review of transaction completeness - https://doc.castsoftware.com/display/DOC83/Transaction+management
- Validation of dashboard results - https://doc.castsoftware.com/display/DOC83/Engineering+Dashboard & https://doc.castsoftware.com/display/DOC83/Health+Dashboard
- Link to refer while loading Imaging and validating results - https://doc.castsoftware.com/display/IMAGING/
Entry Criteria
- Completion of Discover iteration
- Customer's inputs on the gaps identified as part of the rapid discovery report
Process Steps
- Gaps Addressed:
- Check whether the open questions as identified in the transaction report has been addressed by the customer?
- Ensure that the missing software components are delivered by the application team
- In case of gaps that are still open, contact the application team to receive the inputs or take an Informed exception
- Upload the new code again
- Reject the current version
- Upload the code again with the gaps addressed . Best Practices for code folder:
For Java
The folder structure should be the same as it is there in the SCM which project team is using. Including complete hierarchy of ALL .pom and parent .pom files. These files will allow the automated discovery and analysis configuration.
In the case of maven project: a copy of the local maven repository should be provided in the code folder .
Library files for Java technology should be present in the code folder
- For .NET
- Usually, the source code is versioned using tools like SVN or Git.
- The best way to deliver source code is to use the CMS and check out the source code of the version that has been selected for analysis. Make sure to NOT include the ".git" or ".svn" folders
- Include the "bin" folders that contain binaries (debug and/or release assemblies) that are created at build time. They should also contain third-party assemblies.
- For Mainframe
- PDS can not be included in case of Imaging console
- Each application must be delivered in a single folder. 1 file per object type.
- 1 file per program, 1 file per copybook, 1 file per JCL job, etc in the folder structure as shown in the image below
- Modify the code file/folder and upload, Run analysis again
- Follow all the steps that is identified as applicable in step-6 (Setup CMS, Run analysis and snapshot) of Discover phase
Setup Environment & Analysis configuration
Source code “File Adjustments” (Optional)
“Preprocess” Source Code (Optional) - In some situations, the source code cannot be parsed and must be preprocessed. A study should be done first to identify the pre processing rules which must be applied to the source code. Add Pre processor batch file ‘Tools Before Analysis’ under Content Enrichment tab
Verify Framework Settings if there is any issue identified during log / result validation.
Ensure that correct versions of technologies and frameworks are selected
Adding dependencies – add the dependencies between analysis units (if required)
Fine-tune settings
Choose an Environment Profile if needed (Only Product supported profiles)
Configure include/classpaths according to the technology
Enable User Input Security if it is within the scope of the analysis
- KB Inventory Validation:
- Check if all the technologies/frameworks have been analyzed properly
- Check if all the files have been analyzed properly ( Files in DMT vs files in KB )
- Validate for the check on 'Unexpected Objects Count
- Log Validation :
- Follow the troubleshooting process to remediate warning and errors by referring to product documentation available at https://doc.castsoftware.com/display/DOC83/Validate+analysis+based+on+log+messages
- Document the log validation results: Number of alerts, type of alerts, and tickets raised (if any).Incase if any alert is remediated, put up the process of remediation of the alert.
- Review Dynamic Links: ( AALV )
- Create application-specific DLM rules to resolve the dynamic links
- Guidelines to validate the dynamic links are available in https://doc.castsoftware.com/display/DOC83/Validate+Dynamic+Links
- Module Configuration :
- Set up the module content according to the client’s requirement
- Validate the check on 'Overlapping Objects count'
- If no recommendation, retain the Full Content
- Guidelines to create user-defined modules are available in https://doc.castsoftware.com/display/AIPCONSOLE/Application+-+Config+-+Modules
- Architecture Checker Flow:
- If the app team has provided the information then configure the Architecture Flows
Transaction Configuration (FERC):
Entry point configuration / Data Entity configuration / End of transaction configuration
Trace the transactions based on the entry and endpoints given on the rapid discovery report
Validate the empty transactions under Incomplete transactions report which will help in the identification of missing links. Document any broken transactions and missing links in Confluence
Create specific entry/endpoints for transactions which have not been identified in the Rapid Discovery Report
Review Transactions
Verify if there are artifacts with high Data Element Types (DET) / Record Element Types (RET) values. If there are then check the objects with issues and remediate them - Use Snapshot indicator Large SCC count to identify large SCC group. (If the issue still exists, raise a support ticket)
Check the code coverage i.e., validate that all artifacts are covered in the transactions - Use Snapshot Indicator Artifacts in transactions to validate the artifact coverage
If there are a few artifacts which do not belong to any transaction, investigate if they are in scope of module definition
- Load Imaging and validate results .
- All Checks Passed: A list of checks are executed at this step to ensure the quality of results - if any check fails then it will lead to a exception review
- QA - Onboard phase:
- Review the Analysis results, entry and endpoints as defined in the transaction report, validate the smell test results justification, dashboards and delivery report as per the checklist
- QA checks to review the process followed so far and give the go-ahead to deliver the refined dashboard to the customer
- Imaging Discovery Report: ( PRRC and FENF)
- Upon the GO recommendation , the refined measurement and Consumption Report is delivered to the application team
- Extensions PRRC and FENF can be used for preparing consumption report
- Report for Expected Content of zip File : Take a screenshot of the delivered source folder structure .
Exit criteria
- Imaging Discovery Report delivered to the customer
Deliverable
- Imaging Discovery Report (Sample Link) - Sample Discovery Service Report - v1.2.pptx
- Refined Measurement (Engineering and Health dashboard)
3. Integrate
This phase is applicable only if there are customized measurement required by the application team based on the identified use case, after the onboard phase. If there are no customization required by the application team then the results delivered as part of onboard phase are the baseline results.
AIP Product Documentation
- Snapshot generation and validation: https://doc.castsoftware.com/display/DOC83/Snapshot+generation+and+validation
Entry Criteria
- Refined measurement delivered to the application team
- An additional requirement from the application team
Process steps
- Additional Inputs
- Check if there are additional inputs provided by the application team to make any adjustment in the Assessment model, Dashboard and Action Plan
- Inputs for Automation of rescans
- Customization of Imaging results :
- Create use case based views
- Adjust Automation for Rescans
- Validate the Automation set up during the previous iterations
- Check the Automation Adjustment needed as per Customer's requirement and make necessary changes
- Report for zip content for the next release
- The report should be prepared in order to get the same format of zip files in the next releases also
- It should contain the folder structure which we have got during the onboarding phase
- QA - Integrate phase
- Review the dashboards and updated delivery report as per the checklist
- PQM has to review the process followed so far and give the go-ahead to deliver the refined dashboard to the customer
- Baseline Measurement
- Upon the go recommendation of PQM, deliver the baseline measurement and provide updated delivery report/preliminary findings to the customer
Exit criteria
- Application baselined in Imaging console and automated for future rescans ( If applicable )
Deliverable
Final Imaging Discovery Report
Support Process:
As explained in the documentation, only approved workarounds can be applied in Agile onboarding approach and to get an approved workaround, we need to raise a Zendesk ticket and ensure that the subject of the ticket is prefixed with [AGILE].
Extensions Needed in Agile Approach:
Extension for Rapid Discovery Configuration - FERC
- Link to download - Click here
- Overview Deck - Click here
- Extension to identify potential nuggets in the analysis results - FENF
Link to download - Click here
Product Extensions Needed in Agile Approach:
Automatic Links Validator - AALV : This extension will automatically validate DLMs
- Link to download - Click here
2. Report Generation for Consumption - PRRC
- Link to download Click here
Training Material:
Agile Onboarding Process Training Deck: Onboarding_Process 5.0_Training_Deck _Imaging use case only.pptx
Agile Onboarding - Customer Facing Deck: CAST Agile Adoption V1.0.pptx