Smart Impact App

The Smart Impact App is provided with one or more of the following on the SAP system to be analyzed.

  • A set of transports
  • A set of objects
  • A set of ChaRM change requests

These provide the Smart Impact App with a set of changing objects. The Smart Impact App identifies an optimal (most-at-risk) set of used executables which when tested will exercise each of the changing objects. The analysis is driven by the changing objects and by a set of used objects obtained from a Performance History system. Typically, this will be your production system.

By default, the Smart Impact App reports the following object types as used, impacted and most-at-risk.

Object Type Description
CLAS Class
FUNC Function
IDOC IDoc
PROG Program
SSFO Smart Form
TCOD Transaction
WAPA BSP Application

However, a user with Administrator privileges may customize these defaults as follows:

  1. Select the Administration > Configuration > Impact Analysis folder in the LiveCompare hierarchy.
  2. In the TypesToFind section, deselect the object types to be excluded from the used, impacted and most-at-risk results. Note that if no items are selected, all the above object types will be used as the default.
  3. Click ‘Save’ to save your changes.

These changes affect all subsequent runs of the Smart Impact App and Smart Impact Analysis workflow, but they do not affect any existing App or workflow results.

The Smart Impact App also identifies the screens, users and roles impacted by the changing objects.

The Smart Impact App may be used to assess the impact of support packs, or the impact of custom development changes. The type of analysis performed depends on the number of changing objects.

  • If there are 1000 or more changing objects, a top-down analysis is performed beginning with the changing objects.
  • If there are fewer than 1000 changing objects, a bottom-up analysis is performed beginning with the used objects obtained from the Performance History system.

If there are fewer than 1000 changing objects and a Comparison System has been set, the most-at-risk objects are compared on the Analysis and Comparison Systems.

The Smart Impact App may be integrated with a Test Repository to identify Hits and Gaps.

  • ‘Hits’ are most-at-risk object names for which test assets have been found.
  • ‘Gaps’ are most-at-risk object names for which there are no available test assets.

If required, the Gap objects may be used to create test execution lists in the specified Test Repository.

The App produces a Dashboard report and an associated Excel report.

A user with LiveCompare Editor privileges must prepare this App by running the Create Object Links Cache workflow for the ‘Analysis System’ RFC Destination, and making sure that performance history data is available for the ‘Performance History System’ RFC Destination.

DevOps Categories

Testing

Prerequisites

If a support pack or transport has not been applied to the Analysis system, it must be disassembled before it can be analyzed by the App. This can be done in SAP by running the SAINT transaction and selecting ‘Disassemble OCS Package’ from the Utilities menu. Alternatively, the support pack or transport may be disassembled in LiveCompare using the Package Disassembler App.

The App requires that SAP’s Where Used indexes are up to date on the Analysis system. For further details, see the Step 1 (As-Is) - Checking the Integrity of the Where Used Indexes help topic.

Before running the Smart Impact App, you will need to run the Create Object Links Cache workflow from the Prerequisites templates folder to create an Object Links Cache database for the system that contains your changing objects. A system’s Object Links Cache database should be no older than 7 days; its run date may be checked in the RFC Destination’s OLC tab. The Create Object Links Cache workflow may be run incrementally to update the Object Links Cache database with any recent object dependency changes, and to refresh its run date.

If you plan to use the App to identify impacted IDocs, the Cache IDoc Impact Data workflow from the Prerequisites templates folder must be run first in order to populate the IDoc Impact Cache External Data Source. Refer to the template’s Help file for details.

If you plan to use the App to identify test hits and gaps in a Test Repository, the Create Test Repository Cache workflow from the Prerequisites template folder must be run first in order to populate the Test Repository’s cache. Refer to the template’s Help file for details.

You should make sure that performance history data is available on the RFC Destination selected for the ‘Performance History System’. Select the RFC Destination in the LiveCompare hierarchy and click the PHD tab. Select the source for performance history data, and if necessary the number of months of data to retrieve, then click ‘Update Data’. The performance history data may also be retrieved using a schedule. See the Retrieving Performance History Data help topic for details.

If required, the Business Critical Objects External Data Source should be populated with a set of business critical objects that are included in the set of most-at-risk executables if they are impacted by one or more changing objects. The External Data Source is populated from a .CSV file with TYPE and NAME columns. Use the External Data Source’s ‘Replace Data File’ option in the LiveCompare Studio to upload your own .CSV file.

The TransportsToIgnore External Data Source contains Regular Expressions which are used to filter out transports containing custom objects, and the ChangingObjectsToIgnore External Data Source removes tables whose names begin with ENH or AGR from the set of changing objects. If required, these External Data Sources may be edited in the LiveCompare Studio using the ‘Replace Data File’ option.

Running the App

To run the Smart Impact App, select the App from the Apps screen and create an App variant. Complete the variant screen as follows:

  • If required, edit the ‘Transports’ table to provide a list of transports to be analyzed.
  • If required, edit the ‘Objects’ table to provide a list of objects to be analyzed.
  • If required, edit the ‘ChaRM Change Requests’ string list to provide a list of ChaRM change requests to be analyzed.
  • Set the ‘Analysis System’ field to the RFC Destination for the system that contains the transports or objects to be analyzed.
  • Set the ‘SAP Solution Manager System’ field to the RFC Destination of an SAP Solution Manager system. The system is used to find transport objects associated with each of the specified ChaRM change requests.
  • Set the ‘Performance History System’ field to the RFC Destination for the system from which performance history data has been obtained.
  • Set the ‘Comparison System’ field to the RFC Destination for the system on which to compare the most-at-risk executables.
  • If required, select a Test Repository in the ‘Test Repository’ field to identify test asset hits and gaps using the names of the most-at-risk objects. Choose --Not Selected-- if required to clear your selection.
  • Set the ‘Test Search Paths’ string list to limit the search for test assets to one or more project folders in the specified Test Repository. Each path should begin with the Subject folder, and a backslash (\) should be used to separate path components, for example Subject\Release1.
  • Set the ‘Create test execution?‘ switch to specify whether the matching test assets will be used to create test execution lists in the specified Test Repository. The test execution lists will be stored in a time-stamped folder named LiveCompare_<YYYY-MM-DD HH:MM:SS>.
  • Set the ‘Execution Name‘ field to the name of the test execution to create. If this parameter is not set, a time-stamped name of the form LiveCompare_<YYYY-MM-DD HH:MM:SS> is used as the default.
  • Set the ‘Execution Path‘ field to the path of an existing folder in which to store the test execution, for example Execution/TestExecutions. If this field is not set, the test execution will be created in the default Executions folder.
  • Set the ‘Execute tests?‘ switch to specify whether test execution lists will be run in the specified Tosca Test Repository. If this switch is set to ‘Yes‘, the ‘Create test execution?‘ switch should also be set to ‘Yes‘. Executing tests requires Tosca to be configured using DEX.
  • Set the ‘Create test requirements?’ field to true to create test requirements for most-at-risk objects that do not already have requirements in the specified Tosca, qTest or ALM Test Repository. Requirement names have the format LiveCompare_Most-at-risk_Gaps <YYYY-MM-DD HH:MM:SS> <Object Name - Object Description>.
  • Set the ‘Requirements Path’ field to the name of the root requirements folder to be used in the specified Tosca Test Repository. If this field is not set, ‘Requirements’ is used as the default.

Click ‘Run’. When the variant has completed, its results may be accessed from the App Cockpit screen.

App Results

The Smart Impact App generates a Dashboard report which includes a treemap summarizing the not-impacted, impacted and most-at-risk objects, grouped by functional area. It also includes links to the following reports.

Smart Impact Analysis Dashboard

This report includes the following charts:

  • The Used, Impacted & Most-at-risk column chart provides a summary of the number of custom and standard used, impacted and most-at-risk objects.
  • The Most-at-risk & Test Coverage doughnut chart provides a summary of the number of hits and gaps found for the most-at-risk objects in the specified Test Repository.
  • The Changing Object Summary doughnut chart summarizes the changing objects by their change type.
  • The Most-at-risk & Test Coverage by Type column chart summarizes by type the most-at-risk objects, and the objects with hits in the specified Test Repository.
  • Dashboard tiles display the date of the analysis, the name of the Analysis system, the name of the Performance History system including the date range for which performance history data was obtained, and the name of the Test Repository that was searched to obtain matching test assets.

The Smart Impact Analysis Dashboard includes the following Excel report:

Smart Impact Analysis Details

This report includes the following spreadsheets:

Dashboard

This spreadsheet includes the charts shown on the Smart Impact Analysis Dashboard.

Help

This spreadsheet provides help for each of the spreadsheet reports.

Home

This spreadsheet lists the used, impacted and most-at-risk objects, and their associated Application Areas. It includes:

  • Impacted objects with one or more impactful changes (these objects are marked as most-at-risk).
  • Impacted objects with no impactful changes.
  • Used objects with no impactful changes.

The RISK column displays H, M, or L for most-at-risk objects. These values are a ranking of risk due to the depth of the impact and frequency of use of the object. H is for high risk, M is for medium risk, and L is for low risk.

The IMPACTFUL_OBJECTS column displays the number of changing objects that impact each object. Click a link in this column to display the impacting objects in the Impactful Objects spreadsheet.

New most-at-risk objects (that have no impactful objects and a usage count of 0) are set to have themselves as a single impactful object.

Impactful Objects

This spreadsheet lists used impacted objects in the NAME and TYPE columns, and the changing objects that impact them in the CHILD_NAME and CHILD_TYPE columns. The CHANGE_ID column identifies the transport that includes the impacting object. Details for the used impacted objects are listed in the DESCRIPTION, APP_AREA and DEVCLASS columns. Click a hyperlink in the CHILD_NAME column to display comparison details for the selected object. Click a hyperlink in the TEST_HITS column to display the associated test in the Test Hit Details spreadsheet.

For each used impacted object:

  • The DYNP column lists the number of impacted screens for the object in the most-at-risk results. Click a hyperlink to display the object’s screens in the Impacted DYNPs spreadsheet.
  • The USAGE column lists the object’s usage count according to the available performance history data.
  • The USERS column lists the number of users of the object according to the available performance history data. Click a hyperlink to display the object’s users in the Impacted Users spreadsheet.
  • The TEST_HITS column lists the number of matches found in the specified Test Repository. Click a hyperlink to display details for the matched token in the Test Hit Details spreadsheet.
Impacted DYNPs

This spreadsheet lists changing objects in the CHILD_NAME and CHILD_TYPE columns, used impacted objects in the TYPE and NAME columns, and their associated screens (including each screen’s descriptive text). Click a hyperlink in the NAME column to display the associated test in the Test Hit Details spreadsheet. If a hyperlink is selected in the Impactful Objects spreadsheet’s DYNP column, the Impacted DYNPs spreadsheet lists the impacted object’s associated screens.

Impacted Users

This spreadsheet lists each impacted object, and its usage count for each user according to the available performance history data. Click a hyperlink in the NAME column to display the associated test in the Test Hit Details spreadsheet. If a hyperlink is selected in the Impactful Objects spreadsheet’s USERS column, the Impacted Users spreadsheet lists the users of the impacted object.

Test Hits & Gaps

This spreadsheet indicates whether each most-at-risk executable is a hit or a gap in the specified Test Repository.

  • ‘Hits’ are most-at-risk object names for which test assets have been found.
  • ‘Gaps’ are most-at-risk object names for which there are no available test assets.
Test Hit Details

This spreadsheet includes the details for each test asset that matched a most-at-risk executable in the specified Test Repository. It also displays the total usage, top user and top usage details for each of the matched most-at-risk executables. If the spreadsheet is accessed via a hyperlink, it displays the details for the matching test asset.

The HAS_DATA column is set to ‘Y’ for Tosca test cases that match affected data, and to <blank> for test cases that do not match affected data. Affected data is defined by the key fields of table rows that are different, in the Analysis system only (added data), or in the Comparison system only (deleted data).

Test Data

If a Comparison System has been set and there are fewer than 1000 changing objects, this spreadsheet lists the changing SAP tables and includes links to Object Differences reports showing data changes.

Input table key (TABK) objects appear in the Test Data worksheet as table key table contents (TABB) objects if their contents are different in each of the compared systems. Each table name is a hyperlink to the compared table key table contents for each of the changed tables.

Note that ‘refresh’ table keys are excluded from the comparison results. These are defined as having a length of 31 and * as their last character.

Analysis Input Data

This Excel report contains a copy of the input parameters used to produce the App’s Dashboard report. The value of each input parameter is stored in a separate worksheet, which is named after the parameter whose value it contains.

Smart Impact Analysis Details

This Excel report includes the spreadsheets described here.

Analysis Input Data

This Excel report contains a copy of the input parameters used to produce the App’s Dashboard report. The value of each input parameter is stored in a separate worksheet, which is named after the parameter whose value it contains.

Standard Apps