Is there any smartest and fastest impact analysis tool for SAP applications? The answer is “BPCA” i.e. Business Process Change Analyzer.
How many of us are aware of this smart tool? Well!! We have implemented this tool in our project and it works in very wonderful way.
In SAP, change is the constant thing which may occur by support package upgrades, custom releases, etc. So it is important to assess the impact of change.
Many times we have common questions during production movement of the new change that BPCA answers automatically:
- What’s changing?
- What’s the impact of change?
- How do we identify what are the impacted business processes to be tested as part of no-negative impact testing?
- Can we get recommendation for regression tests?
SAP centric solutions are changed on a regular basis by SAP or customers, which require customers to test their business processes thoroughly. Sometimes it becomes difficult to identify critical business processes where ‘BPCA’ comes into picture. BPCA helps to find out list of all impacted business processes for solution manager project.
In simple terms process follows as: 1. Capture the impacted steps. 2. Validate the steps. 3. Mitigate the risk and impact by performing regression testing. 4. Confirm the results
This blog will help in understanding the concept of Business Process Change Analyzer (BPCA).
Pre-requisite: Basic knowledge of SAP Solution Manager Concepts.
To get answers for questions on BPCA: What and how BPCA does the change impact analysis? How it works? What are the prerequisites to implement this? Let us see detailed steps.
What we will cover in this blog?
- Introduction: What is BPCA?
- Technical Prerequisites for BPCA
- BPCA Preparation: Identify and mark critical business processes
- What are TBOMs and TBOM Generation Ways?
- Results Interpretation with Change Impact Analysis.
- Test Scope Optimization
1. 1. Introduction: What is BPCA?
In day to day scenarios, SAP solutions are changed either by SAP or by customers when there is need for enhancement. In such scenarios, customers require to test their business processes thoroughly to ensure the particular change does not have any negative impact on other or existing business processes. Test scope identification is the important activity which helps to determine time and effort required to perform testing.
Before we start the actual testing it is important to differentiate between the types of SAP solution change.
Types of SAP solution change could be:
- Maintenance or Enhancement to SAP support packages
- Configuration changes
- Custom developments, etc.
For these types of changes standard test management approach is depicted below in picture:
Standard test management approach:
- Perform initial risk assessment on the effects of change on critical business processes.
- Based on impact analysis results, plan for testing.
- Once Test Planning is done, execute the test cases either manually or by automated test scripts.
During all this process there is major pain point: Which business processes are affected by this planned change?Let me explain the situation by giving project scenario:
In any project, whenever there is planned change which needs to be moved to production system specific approvals needs to be taken for production movement.So if there is a change to existing functionality then complete testing needs to be performed and business approval needs to be taken.For getting the change approved, change needs to be presented in front of approver board who will take decision to approve or reject the change. In such meetings, questions will be asked about Integration testing, business acceptance tests and non-negative testing. Based on the answers from change owner change will be approved but there will not be exact proof on impact assessment and testing performed for it.
So major challenges faced in this process are:
- How to identify which business processes are impacted by this change?
- How to get the test recommendations?
In order to address these pain points SAP introduced a new type of analysis application called “Business Process Change Analyzer” which is capable of performing change impact analysis.
We can perform this analysis based on the transport request number result of which will be the list of business process steps impacted by that particular change.
2. 2. Technical Prerequisites for BPCA:
Let us see prerequisites for BPCA implementation:
- Adequate Business Process Repository in Solution Manager: Business process repository should be adequate in solution manager with all Business Scenarios/Business Processes and Business process steps.
- Business Process Steps with Transactions or Programs: Business process steps should be assigned with relevant ABAP object e.g. transaction code or report program.
- Test Cases Defined per Business Process: Test cases should be defined per business processes
- Test Cases uploaded in Solution Manager: Test cases should be uploaded to solution manager.
- TBOM Creation: TBOMs should be created for each business process step.
3. BPCA Preparation: Identify and mark critical business processes:
BPCA uses a SAP solution manager project as basis for analysis and for structuring the results as well.
1. First project needs to be created in solution manager using SOLAR_PROJECT_ADMIN transaction code. Once project creation is complete, Business Blueprint needs to be configured via t-code SOLAR01. Business blueprint function enables to design, document and hierarchically catalogue all the business processes into Business Scenarios/Business Processes and Business Process Steps.
As shown in the below picture business blueprint comprises the following elements in a hierarchy:
2. 2. Business processes must be defined in SAP solution manager within project. Below is one sample project where Material Creation and change are business processes.
Fig: Sample blueprint structure
3. 3. Managed systems i.e. the system landscape where that particular transaction/program will be executed must be assigned with logical component which will connect SAP solution manager to that system landscape. A logical component is an administrative entity which assigns logical systems, in the entire system landscape and across projects. e.g. We want to test ‚‘MM01‘ t-code in specific system landscape then to connect to that system via SAP solution manager logical components will be used , in short it is the intermediate connection between SAP solution manager and managed system.
4. After the transactions are assigned make sure test cases are assigned to each business process or business process step.
- Identify and mark critical business processes: Let us see how to mark critical business processes. The criticality of business process can be set in the business blueprint of the project. The criticality setting will be helpful in prioritizing business processes during Test Scope Optimization and during BPCA analysis as well.
We can set Business Process Priority in attributes tab of business process, for this we need to configure customer attribute.
Let us see how to define customer attribute: Below is the path where we can define new attribute: Here we can define new customer attribute ‘Business
So to mark business process as critical process, we can set ‘Business Process Priority’ as 1.We can define business priorities e.g. if it is a critical
business process then priority would be ‘1’.
Let us see how we can mark the critical business process.In below example Material Creation is critical business process so that process is selected in
Then go to attributes of the business process and in customer attributes set Business Process Priority to ‘1’. So ‘Material Creation’ is marked as critical
4. 4. What are TBOMs and TBOM Generation Ways?
Till this step we have seen BPCA preparation first step that business process setup with marking critical business processes.
Let us see next step i.e. TBOM generation.
Users should run the business process transaction so that BPCA can collect the technical objects used during the execution of the business process. This collection of technical objects is called as technical bill of material or TBOMs. For example, if we want to create TBOM for’ Material Creation’ Business Process Step which is executed using the transaction “MM01” in the R/3 system. Execute the transaction in SAP solution manager which will connect to ECC system, give required input parameters and complete the creation of material. Same time BPCA will enable a trace in the ERP system and will collect all the objects such as data dictionary objects/includes/FMs, etc. This list of objects will become TBOM for transaction “MM01”.
Let us see what TBOM generation ways are:
BPCA TBOM Generation Ways:
- Static TBOM
- Semi-Dynamic TBOM
- Dynamic TBOM
TBOMs can be created using three methods, let us see in details.
1. Static TBOMs: Static TBOMs are created by scanning through source code of a transaction or report program. Statically it will note down all the list of technical objects used in that particular report or transaction. They have restriction on level of scan i.e. how deeper it will be able to scan the objects. Sometimes static TBOMs likely to be in accurate as they might miss few objects which are in deep levels of code. Static TBOMs are not recommended for productive use of impact assessment.
To create static TBOM select the business process step and go to attributes. In attributes go TBOM tab and click on create TBOM, pop up will come select Static then create tbom.
Step by step TBOM creation: 1. Go to business blueprint and select the process step for which TBOM needs to be created. Once step is selected go to Transactions tab and select Attribute button.
2. Then go to TBOM tab and click on ‘Create TBOM’. It will give 3 options static, dynamic and semi-dynamic. Select static and branching levels up to 5.
3. Click on ‘OK’, static TBOM generation will be started and pop up will come “TBOM Created”.
4. After creation we can see the contents of TBOM:
5. Below are the screenshots for TBOM contents and list of technical objects: Chart shows percentage of SAP components: e.g. ABAP objects percentage, etc.Below is TBOM example for transaction MM01 which contains total 373 objects. See that different types of objects have been collected program/code objects, table contents, data dictionary, business transactions, etc.
2. Dynamic TBOM: Dynamic TBOM is similar to taking ST05 trace; it will make the list of objects by enabling the trace. That means for creating dynamic TBOMs user has to execute that particular business process step or transaction either manually/automatically and dynamic TBOMs will record technical objects used during execution for that transaction. Dynamic TBOMs are more accurate than static TBOMs.
Let us see brief on creation of dynamic TBOMs: Once you select the ‘Dynamic’ option it will ask start recording option. Click on ‘Start Recording’ and complete the execution of transaction on managed system. Once done stop recording, dynamic TBOM will be created.
After creation of TBOM contents can be viewed.
· 3. Semi Dynamic TBOM: Semi-dynamic TBOMs are created using UPL data (usage procedure logging) from production system. UPL is kernel level logging. Solution Manager has to be 7.1 SP11 and managed system above SP9 and above to create Semi-dynamic TBOMs.
Semi-dynamic TBOMs are created in mass fashion using background job in BPCA. They are most accurate as they are based on usage data in production system.
UPL data is collected at OS or kernel in the managed system. Two main jobs are executed in production system for collection of UPL data:
- Collector Job – This job runs every 45 minutes to collect the UPL logs.
- Daily Job – This job runs on daily basis to extract usage statistics. We can execute the report /SDF/SHOW_UPL to see UPL data sample.
Let us see how to create semi-dynamic TBOMs:
1. To create semi-dynamic TBOM execute transaction SOLMAN_WORKCENTER and go to “Administration”.In Administration click on Go to TBOM Utilities.
2. Click on ‘Generation of Static and Semi-Dynamic TBOMs’ option.
3. Select option ‘create semi-dynamic TBOM’ and enter the period for which UPL data needs to be fetched.
4. Once this is done schedule a job and change the state to ‘Immediate’.
5. Once the job is finished, check the job log for semi-dynamic TBOM. Job log shows TBOM creation is finished.
These are the 3 ways to create TBOMs Static/Dynamic/Semi-Dynamic.
5. 5. Results Interpretation with Change Impact Analysis:
Let us see the process to find the results of change impact analysis and also find out how to interpret these details.
1. 1. Go to test Management work center by executing SOLMAN_WORKCENTER.
2. 2. Go to BP Change Analyzer View. This view shows us list of analysis which was done previously also allows us to create new analysis.Scroll down below the screen and we can see already done analysis.
3. Now let us see how to create new analysis:
1.In the initial screen enter all the details required for analysis as shown in below screenshot:
4. 2.After all the details are entered click the RUN button, this will run impact analysis for that transport request.
3.After execution check the analysis, analysis will list down all the affected business process steps:
4.Above is the output of impact assessment, it lists all the impacted business process steps because of the particular transport request.
6. 6. Test Scope Optimization:
While performing BPCA analysis for large or huge changes like support package upgrades, BPCA analysis gives lot many business process steps as result. That is to say, this analysis is technically correct as many objects are modified during these upgrades.
In such scenarios, we may look at the impact analysis in different way to optimize and reduce the test scope using different parameters.
BPCA helps users to optimize and reduce test scope using below criteria:
- Test Object Coverage: In test coverage, BPCA will use number of objects which are impacting certain business process. Example ‘Material Creation’ process step has large impact which is almost 40% of impacted objects. This technique will give users clear idea on which are the most impacted business process steps and accordingly how to optimize the test scope to test only those processes.
- Test Efforts: Another way to optimize the test scope is to use test efforts. In few cases there would be automated test cases assigned to business process steps. In such scenario testing would be more efficient and easier. So based on manual efforts required for testing test scope can be optimized.
- Business Process Attributes: We have already seen how to mark critical business processes for which user need to set ‘Business Process Priority’ in attributes of business process. This way of marking critical process helps BPCA to optimize the test scope.
Below are samples of Test Scope Optimization:
Also BPCA can be integrated with HP Quality Centre and there are few prerequisites for this integration.I can share more details on integration part once we implement this in our project 🙂
I hope this blog gave helpful insight on BPCA implementation and its benefits.