Gen AI in Business - Global Trends Report 2024.pdf
SAP consulting results
1. CAST Application Intelligence Platform (AIP)
L’Oreal – Technical Review – SAP D60
SAP Analysis on ABAP
I gave this presentation
to a client recently.
Parts have been
redacted
3. 3CAST Confidential
Confidential
High Level Results – D60
CAST Quality Score Scale
Description Grade
Low Risk 4
Moderate Risk 3-4
High Risk 2-3
Very High Risk 1-2
Industry Benchmark - ABAP
Low
Risk
High
Risk
Health Factors Current Grade Since Last Delivery Since Baseline
Performance 2.34 -0.5% -0.6%
Robustness 2.82 -0.2% -0.4%
Security 3.15 -0.1% 0.2%
Changeability 3.24 -0.1% -0.4%
Transferability 2.75 -0.2% -0.3%
Consortium for IT
Software Quality
Above: app is graded
over 5 health factors,
similar to a GPA.
Below: app compared
to industry benchmarks
4. 4CAST Confidential
Confidential
Transaction Name Database Time (client report) CPU Time (client report) TwRI (CAST number)
1 ZSDASNCREDIT 854,858 32,236 563
2 ZWTRKPLAN 119,874 26,600 243
3 ZM16 55,959 593 224
4 ZF35 44,653 248 251
5 ZWMR04N 35,022 4,152 1,040
6 ZPA 27,243 849 1,158
7 ZB51 24,081 512 1,161
8 ZMONI 22,369 2,370 636
9 ZF11 20,268 295 1,051
10 ZMAP 20,193 335 703
11 ZTMSIN 19,768 18,489 4,534
12 ZFRFX 18,594 4,771 394
13 ZS04 17,323 15 60
Slow Transaction (ST03N) and Transaction Risk (TwRI)
The mean database execution time and CPU execution time have been extracted for
each transaction from the client’s ST03N report.
The CAST TwRI identifies the riskiest transactions based on the number of violations
which impact performance and their severity along the entire transaction call-path.
This data has been correlated to static analysis results in order to pin-point root cause of
performance issues
I took the client’s slow
transaction data and
mapped our metrics to it.
The next slides go into
more detail
5. 5CAST Confidential
Confidential
Database Time (s) CPU Time (s) TwRI
27,243 849 1,158
#6 ZPA - High Execution and TwRI Rating
Several programming practices associated with performance issues are found across
multiple objects
High possibility of a multiple full table scans
Using our platform, I
(1)took a slow
transaction, (2) mapped
it out, and (3) identified
ways to improve it
6. 6CAST Confidential
Confidential
#7 ZB51 - High Execution and TwRI Rating
Remediating SELECT … INTO CORRESPONDING FIELDS OF by explicitly listing the
columns is straight-forward (aka “quick win”)
OpenSQL queries inside of loops require more engineering but reducing them has a large
impact of performance
Database Time (s) CPU Time (s) TwRI
24,081 512 1,161
Open SQL queries in loops
can cause serious
performance issues when
dealing with large tables.
They can be hard to find
7. 7CAST Confidential
Confidential
#5 ZWMR04N - High Execution and TwRI Rating
This option creates additional overhead and
should be avoided.
All field values from each table row are selected
and transported to the application server first.
Then the fields that are required are copied to
the work area fields with the same name1
1. Enhancing the Quality of ABAP Development, Meijs-Krouwels-Heulmans-Sommen, SAP Press, ISBN 1-
59229-030-2, Page 302
Database Time (s) CPU Time (s) TwRI
35,022 4,152 1,040
Pinpointing the issue
in the code helped the
client correct the
problem quickly
8. 8CAST Confidential
Confidential
#1 ZSDASNCREDIT - Highest DB & CPU Execution Time
Database Time (s) CPU Time (s) TwRI
854,858 32,236 563
A query that retrieves all columns of a table can potentially be the source of important
performance problems
Such performance problems may arise when the execution of the query returns a large
result sets (many rows with all columns may then become a huge amount of data to
transport over the network)
Proactively going after
this risk ensures less
fires in the future for
this client
9. 9CAST Confidential
Confidential
Database Time (s) CPU Time (s) TwRI
19,768 18,489 4,534
#11 ZTSMIN – Transaction with Performance Violations
This helped the client
grasp what their
complex transaction
looks like