Smart Impact app

The Smart Impact app may be used to assess the impact of support packs or custom development changes. It identifies an optimal or most-at-risk set of executables, which when tested will execute each of the changing objects.

The depth used by the app to search for referenced objects may be set by an Administrator in the Configuration - Impact Analysis screen’s ImpactAnalysisDepth field. If this field is not set, 10 is used as the default value.

By default, table content changes are included in the changing objects analyzed by the Smart Impact app. However, an Administrator may exclude table content changes from the analysis by setting the DisableTableContentAnalysis field to X in the Configuration - Impact Analysis screen.

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 requirements and test execution lists in the specified Test Repository.

If a Comparison system is specified, the app may be configured to compare impactful changing objects and table data on the Analysis and Comparison systems.

The 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 app identifies an optimal or most-at-risk set of used executables which when tested will exercise each of the changing objects. It also identifies the screens, users and roles impacted by 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. Note that table content changes are not processed when identifying the most-at-risk objects.

  • Only changing Function (FUNC) objects that are remote-enabled are considered used.

  • Only changing Class (CLAS) objects that call Web Services are considered used.

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
SPRX SPROXREG Service
SSFO Smart Form
TCOD Transaction
WAPA BSP Application
WDYN Web DYNPRO

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 app produces a Dashboard report and an associated Excel report.

DevOps categories

Testing

Prerequisites

The Smart Impact app uses a Pipeline to identify:

  • The Analysis, Comparison, Usage and SAP Solution Manager systems.

  • An External Data Source with TYPE and NAME columns containing a list of business critical objects. This will be identified as most-at-risk if they are impacted by one or more changing objects. If the Business Critical Objects field in the Pipeline is not set, the Smart Impact app will use the Business Critical Objects External Data Source.

  • One or more Most-at-risk Search Test Repositories that will be searched to find test assets that match the most-at-risk executables.

  • A Most-at-Risk Gaps Test Repository, in which test requirements are to be created for most-at-risk objects that do not have matching test assets in the specified search Test Repositories.

  • One or more Most-at-risk Hits Execution Test Repositories, in which tests that match most-at-risk objects are to be created and executed.

Tester Business Critical

If the Pipeline’s Tester Business Critical checkbox is checked, the Pipeline’s Search Test Repositories are searched to find used objects that have associated tests. These objects are treated as business critical, so that impacted objects that have associated tests will be identified as most-at-risk.

Before the Smart Impact app is run, you must create a Pipeline that includes the RFC Destinations and Test Repositories to be used in the analysis.

If a support pack or transport has not been applied to the Analysis system, it must be disassembled before the Smart Impact app can analyze it. 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 be up to date on the Analysis system.

A LiveCompare Editor will need to run the Create Object Links Cache workflow from the Prerequisites templates folder to create an object links cache database for the Analysis System in the Pipeline. 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.

A LiveCompare Editor will need to make sure that performance history data is available on the Usage System specified in the Pipeline. 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.

If you plan to use the app to identify test hits and gaps in a Test Repository, a LiveCompare Editor must run the Create Test Repository Cache workflow from the Prerequisites template folder must be run first in order to populate the Test Repository’s cache.

If you plan to use the app to identify impacted IDocs, a LiveCompare Editor must run the Cache IDoc Impact Data workflow from the Prerequisites templates folder in order to populate the IDoc Impact Cache External Data Source.

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. Note that the Business Critical Objects External Data Source is not used if a different External Data Source is specified in the Pipeline’s Business Critical Objects field.

  • The ChangingObjectsToIgnore External Data Source removes tables whose names begin with ENH or AGR from the set of changing objects.

  • The TransportsToIgnore External Data Source contains regular expressions which are used to filter out transports containing custom objects.

  • The UsedObjectsToIgnore External Data Source contains used objects that are to be ignored during the analysis.

If required, these External Data Sources may be edited in the LiveCompare Studio using the ‘Replace Data File’ option.

Run 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:

  • Set the ‘Pipeline’ field to the Pipeline that contains the RFC Destinations, Test Repositories and Business Critical Objects External Data Source to be used by the app.

  • If required, edit the ‘Transports’ table to provide a list of transports to be analyzed.

  • If required, edit the ‘ChaRM Change Requests’ string list to provide a list of ChaRM change requests to be analyzed.

  • If required, edit the ‘Objects’ table to provide a list of objects to be analyzed.

  • Set the ‘Compare ABAP?’ switch to specify whether the most-at-risk objects will be compared on the Analysis and Comparison systems.

  • Set the ‘Compare Data?’ switch to specify whether the table keys for changing tables will be compared on the Analysis and Comparison systems. If this switch is set, up to 20 table keys will be compared for each changing table.

  • If required, edit the ‘Execution List Configuration’ table to provide one or more configuration entries to be associated with the test execution in Tosca Test Repositories, for example /Configurations/Environment1/TDS.

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

App results

The Smart Impact app generates the following reports:

Smart Impact Analysis Dashboard

The Smart Impact app generates a Dashboard which 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 Dashboard’s Additional Resources section includes links to the following Excel reports:

Function Details Report

The Function Details Excel report includes the following spreadsheets:

Dashboard

This spreadsheet 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 Changed Object Summary doughnut chart summarizes the changed 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.

  • The Top 5 Application Areas bar chart lists the top 5 Application Areas, in terms of the number of most-at-risk objects in each Application Area.

  • The All, Covering and Optimal Tests column chart lists the number of found tests in each Application Area, the number of tests that cover at least one most-at-risk object, and the optimal number of tests that cover each of the most-at-risk objects.

  • 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 number of change IDs and changed objects are also shown.

Home

The Home spreadsheet provides a summary view of all the Application Areas found during the analysis. It has the following columns:

APP_AREA

The name of the Application Area in which the objects were found. (None) is used for objects that do not have an Application Area.

NOT_IMPACTED

The number of used objects in the Application Area that are not impacted by a changing object.

IMPACTED

The number of used objects in the Application Area that are impacted by a changing object, but not most-at-risk.

MOST_AT_RISK

The number of used objects in the Application Area that are impacted and most-at-risk; these are recommended for testing.

TEST_HITS

The number of most-at-risk objects in the Application Area that are covered by at least one test in the Pipeline’s Most-at-risk Test Repository.

TEST_GAPS

The number of most-at-risk objects in the Application Area that are not covered by any tests in the Pipeline’s Most-at-risk Test Repository.

IMPACTFUL_CHANGES

A count of the distinct impacting objects for each Application Area’s most-at-risk objects.

App Area Details

This spreadsheet lists the most-at-risk, impacted and not impacted objects, and their associated Application Areas and descriptions. 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 APP_AREA column displays the name of the Application Area in which the objects were found. (None) is used for objects that do not have an Application Area.

The STATUS column displays the status of each object, either Most-at-risk, Impacted or Not Impacted.

The usage count and number of users for each object is listed, obtained from the available performance history data. Click a hyperlink in the USERS column to display the users in the Impacted Users spreadsheet. Note that the USERS column is blank for objects whose status is ‘Used’.

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 hyperlink 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.

The TESTS column lists the number of optimal tests chosen for the object in the TYPE and NAME column in the specified Test Repository. Click a hyperlink in this column to display the matching tests in the Test Hit Details spreadsheet.

The CUSTOM column is set to Y for custom used, impacted and most-at-risk objects.

The BUSINESS_CRITICAL column is set to Y for objects included in the Business Critical Objects External Data Source.

Impactful Objects

This spreadsheet lists the changing objects introduced by the transports, ChaRM change requests or objects analyzed by the Smart Impact app. The 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 DEPTH column indicates the search depth at which the impacted object was found.

The CHANGE_ID column identifies the transport or ChaRM request that includes the impacting object. This column is set to ‘Objects’ if the changing object was specified in a list of objects.

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 impacted screens in the Impacted DYNPs spreadsheet.

If a Comparison system has been specified and the Compare ABAP? switch has been set, the CHILD_STATUS column lists the comparison status for the object on the Analysis and Comparison systems specified in the Smart Impact app’s Pipeline. Click a hyperlink in the CHILD_NAME column to display comparison details for the selected object.

Impacted DYNPs

This spreadsheet lists changing objects in the CHILD_NAME and CHILD_TYPE columns, their used impacted objects in the NAME column, and their associated screens, screen numbers and descriptive text in the DYNP_PROG, DYNP_NUM and DTXT columns.

Click a hyperlink in the NAME column to display tests that include the object 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 the type and name of each impacted object, and its usage count for each user according to the available performance history data. Each user’s type is also shown. 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 object 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 in a specified Most-at-risk Search Test Repository that matched a most-at-risk object, including the test name, test path, and tested object. If the spreadsheet is accessed via a hyperlink, it displays the details for the linked test asset.

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.

Each test is given a rank, either H (High), M (Medium) or L (Low), based on how recently it was last run, its passes and fails, the number of runs per day, and the number of test steps. More highly ranked tests should be prioritized over tests with a lower rank.

Test Data

If a Comparison system has been specified, and the Compare Data? switch has been set, this spreadsheet lists the SAP tables referenced in tests that match the most-at-risk objects recommended for testing. The type and name of each Most-at-risk Search Test Repository is listed, along with the matching test’s name and ID.

The name of the referenced table is displayed in the TABLE_NAME column. Click a hyperlink in this column to display an Object Differences report showing data differences for the table on the Analysis and Comparison systems specified in the Smart Impact app’s Pipeline.

Help

This spreadsheet provides help for each of the spreadsheet reports.

Testing Details Report

The Testing Details Excel report includes the following spreadsheets:

Dashboard

This spreadsheet 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.

  • The Top 5 Application Areas bar chart lists the top 5 Application Areas, in terms of the number of most-at-risk objects in each Application Area.

  • The All, Covering and Optimal Tests column chart lists the number of found tests in each Application Area, the number of tests that cover at least one most-at-risk object, and the optimal number of tests that cover each of the most-at-risk objects.

  • 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.

Home

The Home spreadsheet summarizes the tests found in the Pipeline’s Most-at-risk Search Test Repository by Application Area. It has the following columns:

APP_AREA

The Application Area associated with the tests. Click a link in the APP_AREA column to display the App Area Details spreadsheet filtered to display the optimal tests in the selected Application Area.

ALL

The number of distinct test IDs associated with any tested object belonging to the Application Area. Test IDs are found in the Test Repository cache generated for the Smart Impact app’s Pipeline.

COVERING

The number of distinct test IDs in the set of test hits that are associated with any tested object belonging to the Application Area. A test hit is a test asset in the Pipeline’s Most-at-risk Search Test Repository that matches a most-at-risk object.

OPTIMAL

The number of distinct test IDs in the set of optimal test hits that are associated with any tested object belonging to the Application Area.

TEST_GAPS

The number of objects in the test gaps set that are associated with the Application Area. A test gap is a most-at-risk object that does not have a matching test in the Pipeline’s most-at-risk Search Test Repository.

App Area Details

This spreadsheet lists tests that match objects that have been identified as most-at-risk. It includes the Application Area in which the object was found, the type and name of each Most-at-risk Search Test Repository where a matching test was found, including the path, name and ID of each matching test.

The STATUS column is set to ‘Optimal’ if the test is in the set of optimal tests to run, or to ‘Covering’ if the test covers at least one most-at-risk object.

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 TEST_DATA column lists the number of SAP tables referenced in tests that match the most-at-risk object recommended for testing. Click a hyperlink in this column in this column to display the table names in the Test Data spreadsheet.

The TESTED_OBJECTS column lists the number of objects that are covered by the test. Click a hyperlink in this column to display the tested objects in the Test Hit Details spreadsheet.

Test Data

If a Comparison system has been specified in the Smart Impact app’s Pipeline, and the Compare Data? switch has been set in the app, this spreadsheet lists the SAP tables referenced in tests that match the most-at-risk objects recommended for testing. The type and name of each Most-at-risk Search Test Repository is listed, along with the matching test’s name and ID.

The name of the referenced table is displayed in the TABLE_NAME column. Click a hyperlink in this column to display an Object Differences Reports showing data differences for the table on the Analysis and Comparison systems specified in the Smart Impact app’s Pipeline.

Test Hit Details

This spreadsheet includes the details for each test asset in a specified Most-at-risk Search Test Repository that matched a most-at-risk object, including the Application Area associated with each test, the test name, test path and tested object. If the spreadsheet is accessed via a hyperlink, it displays the details for the linked test asset.

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.

Each test is given a rank, either H (High), M (Medium) or L (Low), based on how recently it was last run, its passes and fails, the number of runs per day and the number of test steps. More highly ranked tests should be prioritized over tests with a lower rank.

Test Hits & Gaps

This spreadsheet indicates whether each most-at-risk object 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.

Changes

This spreadsheet lists the changing objects introduced by the transports, ChaRM change requests or objects analyzed by the Smart Impact app. The spreadsheet lists used impacted objects in the NAME and TYPE columns, and the changing objects that impact them in the CHANGE_NAME and CHANGE_TYPE columns. The DEPTH column indicates the search depth at which the impacted object was found.

Click an object link in the CHANGE_NAME column to display a comparison report for the object on the Pipeline’s Analysis and Comparison systems.

The CHANGE_ID column identifies the transport or ChaRM request that includes the impacting object. This column is set to ‘Objects’ if the changing object was specified in a list of objects.

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 impacted screens in the Impacted DYNPs spreadsheet.

If a Comparison system has been specified and the Compare ABAP? switch has been set, the CHANGE_STATE column lists the comparison status for the object on the Analysis and Comparison systems specified in the Smart Impact app’s Pipeline. Click a hyperlink in the CHANGE_NAME column to display comparison details for the selected object.

Help

This spreadsheet provides help for each of the spreadsheet reports.

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

LiveCompare Dashboard