SlideShare a Scribd company logo
1 of 52
EXP17467 
ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx 
SAP TechEd && d-code Las Vegas 2014 
Ivan Femia
‹#› 
Agenda 
ABAP Static Code Analysis & Tools
‹#› 
ABAP Static Code Analysis & Tools 
Number of objects Line of code 
Complexity 
Standards 
Alerts / Warnings
‹#› 
ABAP Static Code Analysis & Tools 
Metrics 
Number of objects Line of code 
Complexity 
Standards 
Alerts / Warnings
‹#› 
ABAP Static Code Analysis & Tools 
Metrics 
Number of objects Line of code 
Complexity 
Standards 
Alerts / Warnings 
Violations
‹#› 
ABAP Static Code Analysis & Tools 
Analysis 
Dashboard 
Integration in 
Lifecycle Management 
Scan 
Engine
‹#› 
ABAP Static Code Analysis & Tools
‹#› 
ABAP Static Code Analysis & Tools 
Doctor ZedGe 
SOLMAN CCMC/CCLM 
Hawkeye Monitor
‹#› 
Agenda 
Code Inspector 
Scan 
Engine
‹#› 
Code Inspector - Scan Engine 
Code Inspector 
The Code Inspector is a tool for checking 
static ABAP coding and generally all objects of the Object 
Repository under aspects of Performance, Security, Reliability, 
and Statistical Information 
Installation 
Included in SAP standard starting from SAP ECC 6.0 EhP 0 
(SAP BASIS 7.0)
‹#› 
Code Inspector - Scan Engine 
Transaction SCI
‹#› 
Code Inspector - Scan Engine 
Transaction SCI What to check
‹#› 
Code Inspector - Scan Engine 
Transaction SCI What to check 
Where to check
‹#› 
Code Inspector - Scan Engine 
examples 
SE38, SE37, SE24 … 
ABAP Workbench SE80 
Developers can execute the Code Inspector with the standard check variant 
contextually with their workflow process
‹#› 
Code Inspector - Scan Engine 
The output screen …
‹#› 
Code Inspector - Scan Engine 
What about the check done by the code inspector? 
Extended Program Check – called to analyze more than 300 rules about alerts and 
warnings 
Code Inspector’s rules - called to obtain Code Metrics and analyze more than 40 rules 
about Standards, Security, Performances and even HANA readiness 
Custom Check rules – can be plugged into Code Inspector without modification to the 
standard
‹#› 
Agenda 
ABAP Test Cockpit 
Integration in 
Lifecycle 
Management
‹#› 
Code Inspector - Scan Engine 
ABAP Test Cockpit 
The Powerful enterprise-ready tool to 
perform static program analysis of Custom ABAP Code (based 
on Code Inspector). 
Installation 
Included in SAP standard since SAP ECC 6.0 EhP6
‹#› 
Code Inspector - Scan Engine 
Enhance Code Inspector with: 
 Superior integration with ABAP Workbench (even ABAP in Eclipse) and Software 
Lifecycle (Change Request) 
 Landscape awareness that support result distribution from QAS to DEV 
 Superior User Interface that supports filters and statistics 
 Re-check 
 Powerful out-of-the box exemptions workflow (“4 eyes”) that helps conveniently 
suppressing “false-positives” findings 
 Ten time faster scanning engine thanks to the ABAP Parallel Processing 
 Customizable “Messages” priority
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
All configuration and settings about ABAP Test Cockpit are accessible via the 
transaction code ATC
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
ABAP Test Cockpit is integrated in transaction /nSE80, SE38, SE37 … 
Developers can execute ATC Inspections as much time as they like contextually 
with their workflow process
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
ABAP Test Cockpit is integrated in transaction /nSE80 - Repository Browser 
Developers can execute ATC Inspections on the selected set of objects (e.g. 
Package) 
Drag and Drop 
to add object!
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
Developers can access by a specific perspective all the ATC runs done and can 
browse the results in detail.
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
ABAP Test Cockpit is integrated in transaction /nSE80 – Transport Organizer 
Before releasing to QAS or just to monitor the deliverables, Team Leaders and Project 
Managers can execute ATC Inspections on the selected Change Request
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
ABAP Test Cockpit is integrated in ABAP in Eclipse (ADT) too
‹#› 
ABAP Test Cockpit - Integration in Lifecycle Management 
ABAP Test Cockpit results are well presented to the developer
‹#› 
Agenda 
Doctor ZedGe Hard!Code 
(Community Edition)
‹#› 
Code Inspector - Scan Engine 
Doctor ZedGe - Hard!Code 
A free tool to improve your Custom ABAP Code 
and save money during your next rollouts. It’s a new rule 
plugged into the Code Inspector to find hard code business 
values. 
Installation 
Available free-of-charge and installable via Copy & Paste into 
SAP ECC 6.0 EhP6 or above 
SCN Blogs 
STOP filling your ABAP with Business hard coding 
Doctor ZedGe - Hard!Code- a free Code Inspector rule
‹#› 
Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine 
The unique static code check developed by Techedge highlights usage of 
Business related Hard-coding 
Hard Code Company Code 
Company Code related hard 
code value not found in 
company code matser data, so 
they could be partial string 
(«IT*»)
‹#› 
Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine 
SAP standard never uses business related Hard-coding, customers does even 
too much. Probably SAP does not image how much this “Anti-pattern” is popular 
and dangerous, we do !
‹#› 
Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine 
METHOD busab_mandatory applies a specific business rule for the hard-coded 
set of company codes 
Who will remember to add the company code of the next roll-out? 
How much debug, and how many Change Requests and approvals will be required?
‹#› 
Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine 
METHOD address_controls_in applies a specific business rule company codes 
starting with IN (India ?) 
Who will remember to add the next Indian company ?
‹#› 
ABAP Static Code Analysis & Tools 
Analysis 
Dashboard 
Integration in 
Lifecycle Management 
Scan 
Engine 
Code Inspector 
ATC 
Business Hard!Code Finder
‹#› 
Agenda 
Doctor ZedGe
‹#› 
Code Inspector - Scan Engine 
Doctor ZedGe 
A new product that enhance ABAP Test Cockpit 
presenting results in beautiful and simply MS Excel reports 
designed for different PERSONA and adding Indexes like 
Quality and Maintainability. 
Installation 
Starting from SAP ECC 6.0 EhP 6 (SAP BASIS 7.31 SP05) 
Limited number of ABAP objects in the namespace Z3TG_DZG 
that can be imported in DEV and QAS via a simple Change 
Request
‹#› 
Idea 
Simplify ATC results! 
Combine metrics with violations to compute different ratios, 
combine indicators via formulas 
aggregate and generate nice looking dashboard 
Custom 
Code
‹#› 
Idea 
Simplify ATC results! 
Combine metrics with violations to compute different ratios, 
combine indicators via formulas 
aggregate and generate nice looking dashboard 
Custom 
Code 
Evaluations are 
proposed in nice 
looking MS Excel files 
generated via 
abap2xlsx
‹#› 
Doctor ZedGe - Analysis 
Doctor ZedGe is specifically designed for real-life scenarios to assist the different 
“Persona” 
Developers 
Team Leaders 
Quality Assurance Managers 
Project Managers 
AMS
‹#› 
Doctor ZedGe - Analysis 
Queries developed by Techedge aggregates ATC raw data in the best format for 
each “Persona” (Business Role)
‹#› 
Doctor ZedGe - Analysis [Persona: DEVELOPER] 
For each processing block (e.g. FORM, METHOD, FUNCTION), the Software 
Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 
complexity index. 
Developers are motivated to adopt modularization via refectory activities.
‹#› 
Doctor ZedGe - Analysis [Persona: DEVELOPER] 
For each processing block (e.g. FORM, METHOD, FUNCTION), the Software 
Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 
complexity index. 
Developers are motivated to adopt modularization via refectory activities. 
Maintainability Index 
The aim of the MI is to determine how easy it will be to maintain a particular body of code 
Designed at the University of Idaho in 1991 by Oman and Hagemeister and validated in 
the field by Hewlett Packard in a fairly extensive trial 
V = Halstead Volume 
G = Cyclomatic Complexity 
LOC = count of source Lines Of Code (SLOC)
‹#› 
Doctor ZedGe - Analysis [Persona: DEVELOPER] 
For each processing block (e.g. FORM, METHOD, FUNCTION), the Software 
Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 
complexity index. 
Developers are motivated to adopt modularization via refectory activities. 
Cyclomatic Complexity 
Cyclomatic complexity (or conditional complexity) is a software metric 
(measurement). It was developed by Thomas J. McCabe, Sr. in 1976 and 
is used to indicate the complexity of a program. 
It directly measures: 
• the number of linearly independent paths through a program's source 
code. 
• the number of test cases that are necessary to cover all path
‹#› 
Doctor ZedGe – Analysis [Persona: PM, TEAM LEADER] 
With ATC runs against Change Requests, Team Leaders and Project managers can 
monitor real progress (number of objects) and investigate about exceptions (e.g. 
higher MI, Cyclomatic2, lineCount - lower English comments ratio – any quality or 
metric Indexes)
‹#› 
Doctor ZedGe - Analysis 
Here how Change Requests to be approved by PM, QM and AMS look like
‹#› 
Doctor ZedGe - Analysis 
Here how Change Requests to be approved by PM, QM and AMS look like
‹#› 
Doctor ZedGe – Analysis [Persona: SYSTEM OWNER, QUALITY MANAGER] 
System owner, can weekly (at the CAB) discuss about trends impacting custom 
ABAP quality and in case launch new initiatives to address exceptions 
AFTER 
BEFORE 
Periodic external certifications can be very useful to 
audit behaviors of the different internal teams as well 
as those of the different suppliers
‹#› 
Doctor ZedGe – Analysis [Persona: AMS OWNER] 
During Hand-over and Knowledge Transfer (KT) phases, AMS owners can get a 
clear picture of the incoming software metrics and violations figures running the 
Techedge Software Analytics against the project Change Requests (or ChaRM 
documents)
‹#› 
Marketing and Sales 
Doctor ZedGe is used internally in 
Techegede Group to prove the 
quality of our projects and 
solutions
‹#› 
Doctor ZedGe - Analysis 
Limitations of current release 
 Historical data are not stored and simple trend analysis are possible comparing 
the weekly MS Excel reports 
 Integration with SAP Solution Manager ChaRM is productive on customer sites but 
yet to be generalized 
 Integration with SAP Solution Manager CCLM is currently under evaluation 
 In add, since Doctor ZedGe - Hard!Code leverages the power of ABAP Test 
Cockpit and Code Inspector, it also suffers of the same known limitations: 
it works only on workbench objects belonging to a custom main object. It can 
analyze BADIs and Customer Exits (CMOD) but cannot analyze ABAP code 
contained in user-exits includes (es. SAPMV45A is a SAP standard object thus 
MV45FZ01 cannot be analyzed that as from Best Practices should just call custom 
Customer Exits FUNCTION MODULEs or custom BADIs) 
it works on PROGRAMs (PROG), FUNCTION MODULEs (FUGR) and CLASSEs (CLASS) 
but not on SAPScripts and SMARTForms.
‹#› 
Doctor ZedGe - Analysis 
Current Release 
- ALV 
- XSLX Download 
- XLSX via Mail to (distribution list, user or email address) 
- Customizable threshold parameters used in the score and metrics 
calculation 
- ATC Exemptions evaluation 
- Storing in the INDX Data Base of the last analysis results 
- “Skip standard Include” option 
- Findings2XSLX 
Next Release 
- SAPUI5 Dashboard UI 
- SAPUI5 Trend Analisys 
- SAP CRM Hard!Code Support 
- Integration with SAP Solution Manager ChaRM 
- SAP SRM Hard!Code Support 
- SAP BW Hard!Code Support
‹#› 
Selling options 
http://www.techedgegroup.com/oursolutions/doctor-zedge
‹#› 
And don’t miss … 
https://www.facebook.com/doctorzedge 
https://twitter.com/doctorzedge

More Related Content

What's hot

Verification for system companies (LI) - value proposition
Verification for system companies (LI) - value propositionVerification for system companies (LI) - value proposition
Verification for system companies (LI) - value proposition
Hagai Arbel
 
The Four Hats of Load and Performance Testing with special guest Mentora
The Four Hats of Load and Performance Testing with special guest MentoraThe Four Hats of Load and Performance Testing with special guest Mentora
The Four Hats of Load and Performance Testing with special guest Mentora
SOASTA
 
Himansu-Java&BigdataDeveloper
Himansu-Java&BigdataDeveloperHimansu-Java&BigdataDeveloper
Himansu-Java&BigdataDeveloper
Himansu Behera
 

What's hot (20)

What’s New With DB2 Solutions; Administration, Utilities, Performance & Reco...
What’s New With DB2 Solutions;  Administration, Utilities, Performance & Reco...What’s New With DB2 Solutions;  Administration, Utilities, Performance & Reco...
What’s New With DB2 Solutions; Administration, Utilities, Performance & Reco...
 
SpiraTest Overview Presentation (2021)
SpiraTest Overview Presentation (2021)SpiraTest Overview Presentation (2021)
SpiraTest Overview Presentation (2021)
 
Tech Talk: Predictive Workload Analytics with CA Workload Automation iDash
Tech Talk: Predictive Workload Analytics with CA Workload Automation iDashTech Talk: Predictive Workload Analytics with CA Workload Automation iDash
Tech Talk: Predictive Workload Analytics with CA Workload Automation iDash
 
SpiraTest Overview Presentation (2019)
SpiraTest Overview Presentation (2019)SpiraTest Overview Presentation (2019)
SpiraTest Overview Presentation (2019)
 
Verification for system companies (LI) - value proposition
Verification for system companies (LI) - value propositionVerification for system companies (LI) - value proposition
Verification for system companies (LI) - value proposition
 
Meetup milano #4 Anypoint Monitoring and Titanium overview
Meetup milano #4   Anypoint Monitoring and Titanium overviewMeetup milano #4   Anypoint Monitoring and Titanium overview
Meetup milano #4 Anypoint Monitoring and Titanium overview
 
SpiraPlan Overview Presentation (2022)
SpiraPlan Overview Presentation (2022)SpiraPlan Overview Presentation (2022)
SpiraPlan Overview Presentation (2022)
 
The Four Hats of Load and Performance Testing with special guest Mentora
The Four Hats of Load and Performance Testing with special guest MentoraThe Four Hats of Load and Performance Testing with special guest Mentora
The Four Hats of Load and Performance Testing with special guest Mentora
 
Follow the evidence: Troubleshooting Performance Issues
Follow the evidence:  Troubleshooting Performance IssuesFollow the evidence:  Troubleshooting Performance Issues
Follow the evidence: Troubleshooting Performance Issues
 
CV_MD ASIF EQBAL
CV_MD ASIF EQBALCV_MD ASIF EQBAL
CV_MD ASIF EQBAL
 
SpiraTest Overview Presentation (2022)
SpiraTest Overview Presentation (2022)SpiraTest Overview Presentation (2022)
SpiraTest Overview Presentation (2022)
 
Alten calsoft labs analytics service offerings
Alten calsoft labs   analytics service offeringsAlten calsoft labs   analytics service offerings
Alten calsoft labs analytics service offerings
 
Mahesh Gadade CV
Mahesh Gadade CVMahesh Gadade CV
Mahesh Gadade CV
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Developer 1: Workflows And Code Management
Developer 1: Workflows And Code ManagementDeveloper 1: Workflows And Code Management
Developer 1: Workflows And Code Management
 
Software testing lab 7 & 8
Software testing lab 7 & 8Software testing lab 7 & 8
Software testing lab 7 & 8
 
Automating Test Maintenance
Automating Test MaintenanceAutomating Test Maintenance
Automating Test Maintenance
 
Is your SAP system vulnerable to cyber attacks?
Is your SAP system vulnerable to cyber attacks?Is your SAP system vulnerable to cyber attacks?
Is your SAP system vulnerable to cyber attacks?
 
TAG17 - O'Zapft is - Daten zapfen leicht gemacht?
TAG17 - O'Zapft is - Daten zapfen leicht gemacht?TAG17 - O'Zapft is - Daten zapfen leicht gemacht?
TAG17 - O'Zapft is - Daten zapfen leicht gemacht?
 
Himansu-Java&BigdataDeveloper
Himansu-Java&BigdataDeveloperHimansu-Java&BigdataDeveloper
Himansu-Java&BigdataDeveloper
 

Similar to ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx

Cognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an OverviewCognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an Overview
Dr. Bippin Makoond
 
Building A Product Assortment Recommendation Engine
Building A Product Assortment Recommendation EngineBuilding A Product Assortment Recommendation Engine
Building A Product Assortment Recommendation Engine
Databricks
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
tranquynh93
 

Similar to ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx (20)

ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx
ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsxABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx
ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx
 
Doctor ZedGe @InsideTrack Rome #sitROME
Doctor ZedGe @InsideTrack Rome #sitROMEDoctor ZedGe @InsideTrack Rome #sitROME
Doctor ZedGe @InsideTrack Rome #sitROME
 
ABAP_STD.pptx
ABAP_STD.pptxABAP_STD.pptx
ABAP_STD.pptx
 
ITCamp 2018 - Andrea Martorana Tusa - Failure prediction for manufacturing in...
ITCamp 2018 - Andrea Martorana Tusa - Failure prediction for manufacturing in...ITCamp 2018 - Andrea Martorana Tusa - Failure prediction for manufacturing in...
ITCamp 2018 - Andrea Martorana Tusa - Failure prediction for manufacturing in...
 
Sap Tips and Tricks Training for End user
Sap Tips and Tricks Training for End userSap Tips and Tricks Training for End user
Sap Tips and Tricks Training for End user
 
SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01
 
Dev ops presentation
Dev ops presentationDev ops presentation
Dev ops presentation
 
Case Study: Automating Code Reviews for Custom SAP ABAP Applications with Vir...
Case Study: Automating Code Reviews for Custom SAP ABAP Applications with Vir...Case Study: Automating Code Reviews for Custom SAP ABAP Applications with Vir...
Case Study: Automating Code Reviews for Custom SAP ABAP Applications with Vir...
 
Cognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an OverviewCognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an Overview
 
Building A Product Assortment Recommendation Engine
Building A Product Assortment Recommendation EngineBuilding A Product Assortment Recommendation Engine
Building A Product Assortment Recommendation Engine
 
Resume
ResumeResume
Resume
 
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
 
AI-accelerated CFD (Computational Fluid Dynamics)
AI-accelerated CFD (Computational Fluid Dynamics)AI-accelerated CFD (Computational Fluid Dynamics)
AI-accelerated CFD (Computational Fluid Dynamics)
 
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
 
Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
 
Cost xpert
Cost xpertCost xpert
Cost xpert
 
OSMC 2023 | Journey to observability: tracking every function execution in pr...
OSMC 2023 | Journey to observability: tracking every function execution in pr...OSMC 2023 | Journey to observability: tracking every function execution in pr...
OSMC 2023 | Journey to observability: tracking every function execution in pr...
 
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
 
Neotys PAC - Stijn Schepers
Neotys PAC - Stijn SchepersNeotys PAC - Stijn Schepers
Neotys PAC - Stijn Schepers
 
SANGEETHA S JADAV
SANGEETHA S JADAVSANGEETHA S JADAV
SANGEETHA S JADAV
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 

ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx

  • 1. EXP17467 ABAP Test Cockpit in action with Doctor ZedGe and abap2xlsx SAP TechEd && d-code Las Vegas 2014 Ivan Femia
  • 2. ‹#› Agenda ABAP Static Code Analysis & Tools
  • 3. ‹#› ABAP Static Code Analysis & Tools Number of objects Line of code Complexity Standards Alerts / Warnings
  • 4. ‹#› ABAP Static Code Analysis & Tools Metrics Number of objects Line of code Complexity Standards Alerts / Warnings
  • 5. ‹#› ABAP Static Code Analysis & Tools Metrics Number of objects Line of code Complexity Standards Alerts / Warnings Violations
  • 6. ‹#› ABAP Static Code Analysis & Tools Analysis Dashboard Integration in Lifecycle Management Scan Engine
  • 7. ‹#› ABAP Static Code Analysis & Tools
  • 8. ‹#› ABAP Static Code Analysis & Tools Doctor ZedGe SOLMAN CCMC/CCLM Hawkeye Monitor
  • 9. ‹#› Agenda Code Inspector Scan Engine
  • 10. ‹#› Code Inspector - Scan Engine Code Inspector The Code Inspector is a tool for checking static ABAP coding and generally all objects of the Object Repository under aspects of Performance, Security, Reliability, and Statistical Information Installation Included in SAP standard starting from SAP ECC 6.0 EhP 0 (SAP BASIS 7.0)
  • 11. ‹#› Code Inspector - Scan Engine Transaction SCI
  • 12. ‹#› Code Inspector - Scan Engine Transaction SCI What to check
  • 13. ‹#› Code Inspector - Scan Engine Transaction SCI What to check Where to check
  • 14. ‹#› Code Inspector - Scan Engine examples SE38, SE37, SE24 … ABAP Workbench SE80 Developers can execute the Code Inspector with the standard check variant contextually with their workflow process
  • 15. ‹#› Code Inspector - Scan Engine The output screen …
  • 16. ‹#› Code Inspector - Scan Engine What about the check done by the code inspector? Extended Program Check – called to analyze more than 300 rules about alerts and warnings Code Inspector’s rules - called to obtain Code Metrics and analyze more than 40 rules about Standards, Security, Performances and even HANA readiness Custom Check rules – can be plugged into Code Inspector without modification to the standard
  • 17. ‹#› Agenda ABAP Test Cockpit Integration in Lifecycle Management
  • 18. ‹#› Code Inspector - Scan Engine ABAP Test Cockpit The Powerful enterprise-ready tool to perform static program analysis of Custom ABAP Code (based on Code Inspector). Installation Included in SAP standard since SAP ECC 6.0 EhP6
  • 19. ‹#› Code Inspector - Scan Engine Enhance Code Inspector with:  Superior integration with ABAP Workbench (even ABAP in Eclipse) and Software Lifecycle (Change Request)  Landscape awareness that support result distribution from QAS to DEV  Superior User Interface that supports filters and statistics  Re-check  Powerful out-of-the box exemptions workflow (“4 eyes”) that helps conveniently suppressing “false-positives” findings  Ten time faster scanning engine thanks to the ABAP Parallel Processing  Customizable “Messages” priority
  • 20. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management All configuration and settings about ABAP Test Cockpit are accessible via the transaction code ATC
  • 21. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management ABAP Test Cockpit is integrated in transaction /nSE80, SE38, SE37 … Developers can execute ATC Inspections as much time as they like contextually with their workflow process
  • 22. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management ABAP Test Cockpit is integrated in transaction /nSE80 - Repository Browser Developers can execute ATC Inspections on the selected set of objects (e.g. Package) Drag and Drop to add object!
  • 23. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management Developers can access by a specific perspective all the ATC runs done and can browse the results in detail.
  • 24. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management ABAP Test Cockpit is integrated in transaction /nSE80 – Transport Organizer Before releasing to QAS or just to monitor the deliverables, Team Leaders and Project Managers can execute ATC Inspections on the selected Change Request
  • 25. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management ABAP Test Cockpit is integrated in ABAP in Eclipse (ADT) too
  • 26. ‹#› ABAP Test Cockpit - Integration in Lifecycle Management ABAP Test Cockpit results are well presented to the developer
  • 27. ‹#› Agenda Doctor ZedGe Hard!Code (Community Edition)
  • 28. ‹#› Code Inspector - Scan Engine Doctor ZedGe - Hard!Code A free tool to improve your Custom ABAP Code and save money during your next rollouts. It’s a new rule plugged into the Code Inspector to find hard code business values. Installation Available free-of-charge and installable via Copy & Paste into SAP ECC 6.0 EhP6 or above SCN Blogs STOP filling your ABAP with Business hard coding Doctor ZedGe - Hard!Code- a free Code Inspector rule
  • 29. ‹#› Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine The unique static code check developed by Techedge highlights usage of Business related Hard-coding Hard Code Company Code Company Code related hard code value not found in company code matser data, so they could be partial string («IT*»)
  • 30. ‹#› Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine SAP standard never uses business related Hard-coding, customers does even too much. Probably SAP does not image how much this “Anti-pattern” is popular and dangerous, we do !
  • 31. ‹#› Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine METHOD busab_mandatory applies a specific business rule for the hard-coded set of company codes Who will remember to add the company code of the next roll-out? How much debug, and how many Change Requests and approvals will be required?
  • 32. ‹#› Doctor ZedGe - Hard!Code– a new rule plugged into the Scan Engine METHOD address_controls_in applies a specific business rule company codes starting with IN (India ?) Who will remember to add the next Indian company ?
  • 33. ‹#› ABAP Static Code Analysis & Tools Analysis Dashboard Integration in Lifecycle Management Scan Engine Code Inspector ATC Business Hard!Code Finder
  • 35. ‹#› Code Inspector - Scan Engine Doctor ZedGe A new product that enhance ABAP Test Cockpit presenting results in beautiful and simply MS Excel reports designed for different PERSONA and adding Indexes like Quality and Maintainability. Installation Starting from SAP ECC 6.0 EhP 6 (SAP BASIS 7.31 SP05) Limited number of ABAP objects in the namespace Z3TG_DZG that can be imported in DEV and QAS via a simple Change Request
  • 36. ‹#› Idea Simplify ATC results! Combine metrics with violations to compute different ratios, combine indicators via formulas aggregate and generate nice looking dashboard Custom Code
  • 37. ‹#› Idea Simplify ATC results! Combine metrics with violations to compute different ratios, combine indicators via formulas aggregate and generate nice looking dashboard Custom Code Evaluations are proposed in nice looking MS Excel files generated via abap2xlsx
  • 38. ‹#› Doctor ZedGe - Analysis Doctor ZedGe is specifically designed for real-life scenarios to assist the different “Persona” Developers Team Leaders Quality Assurance Managers Project Managers AMS
  • 39. ‹#› Doctor ZedGe - Analysis Queries developed by Techedge aggregates ATC raw data in the best format for each “Persona” (Business Role)
  • 40. ‹#› Doctor ZedGe - Analysis [Persona: DEVELOPER] For each processing block (e.g. FORM, METHOD, FUNCTION), the Software Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 complexity index. Developers are motivated to adopt modularization via refectory activities.
  • 41. ‹#› Doctor ZedGe - Analysis [Persona: DEVELOPER] For each processing block (e.g. FORM, METHOD, FUNCTION), the Software Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 complexity index. Developers are motivated to adopt modularization via refectory activities. Maintainability Index The aim of the MI is to determine how easy it will be to maintain a particular body of code Designed at the University of Idaho in 1991 by Oman and Hagemeister and validated in the field by Hewlett Packard in a fairly extensive trial V = Halstead Volume G = Cyclomatic Complexity LOC = count of source Lines Of Code (SLOC)
  • 42. ‹#› Doctor ZedGe - Analysis [Persona: DEVELOPER] For each processing block (e.g. FORM, METHOD, FUNCTION), the Software Analytics can highlight number of statements, Maintainability Index and Cyclomatic2 complexity index. Developers are motivated to adopt modularization via refectory activities. Cyclomatic Complexity Cyclomatic complexity (or conditional complexity) is a software metric (measurement). It was developed by Thomas J. McCabe, Sr. in 1976 and is used to indicate the complexity of a program. It directly measures: • the number of linearly independent paths through a program's source code. • the number of test cases that are necessary to cover all path
  • 43. ‹#› Doctor ZedGe – Analysis [Persona: PM, TEAM LEADER] With ATC runs against Change Requests, Team Leaders and Project managers can monitor real progress (number of objects) and investigate about exceptions (e.g. higher MI, Cyclomatic2, lineCount - lower English comments ratio – any quality or metric Indexes)
  • 44. ‹#› Doctor ZedGe - Analysis Here how Change Requests to be approved by PM, QM and AMS look like
  • 45. ‹#› Doctor ZedGe - Analysis Here how Change Requests to be approved by PM, QM and AMS look like
  • 46. ‹#› Doctor ZedGe – Analysis [Persona: SYSTEM OWNER, QUALITY MANAGER] System owner, can weekly (at the CAB) discuss about trends impacting custom ABAP quality and in case launch new initiatives to address exceptions AFTER BEFORE Periodic external certifications can be very useful to audit behaviors of the different internal teams as well as those of the different suppliers
  • 47. ‹#› Doctor ZedGe – Analysis [Persona: AMS OWNER] During Hand-over and Knowledge Transfer (KT) phases, AMS owners can get a clear picture of the incoming software metrics and violations figures running the Techedge Software Analytics against the project Change Requests (or ChaRM documents)
  • 48. ‹#› Marketing and Sales Doctor ZedGe is used internally in Techegede Group to prove the quality of our projects and solutions
  • 49. ‹#› Doctor ZedGe - Analysis Limitations of current release  Historical data are not stored and simple trend analysis are possible comparing the weekly MS Excel reports  Integration with SAP Solution Manager ChaRM is productive on customer sites but yet to be generalized  Integration with SAP Solution Manager CCLM is currently under evaluation  In add, since Doctor ZedGe - Hard!Code leverages the power of ABAP Test Cockpit and Code Inspector, it also suffers of the same known limitations: it works only on workbench objects belonging to a custom main object. It can analyze BADIs and Customer Exits (CMOD) but cannot analyze ABAP code contained in user-exits includes (es. SAPMV45A is a SAP standard object thus MV45FZ01 cannot be analyzed that as from Best Practices should just call custom Customer Exits FUNCTION MODULEs or custom BADIs) it works on PROGRAMs (PROG), FUNCTION MODULEs (FUGR) and CLASSEs (CLASS) but not on SAPScripts and SMARTForms.
  • 50. ‹#› Doctor ZedGe - Analysis Current Release - ALV - XSLX Download - XLSX via Mail to (distribution list, user or email address) - Customizable threshold parameters used in the score and metrics calculation - ATC Exemptions evaluation - Storing in the INDX Data Base of the last analysis results - “Skip standard Include” option - Findings2XSLX Next Release - SAPUI5 Dashboard UI - SAPUI5 Trend Analisys - SAP CRM Hard!Code Support - Integration with SAP Solution Manager ChaRM - SAP SRM Hard!Code Support - SAP BW Hard!Code Support
  • 51. ‹#› Selling options http://www.techedgegroup.com/oursolutions/doctor-zedge
  • 52. ‹#› And don’t miss … https://www.facebook.com/doctorzedge https://twitter.com/doctorzedge

Editor's Notes

  1. Static Program Analisys on Custom ABAP Code
  2. Line of code = the weight of our custom solution that we can compare with the STANDARD SLOC http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/0005265f-e4f2-2a10-85ad-dced292c0c0d?QuickLink=index&overridelayout=true&27788438410701
  3. Line of code = the weight of our custom solution that we can compare with the STANDARD SLOC http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/0005265f-e4f2-2a10-85ad-dced292c0c0d?QuickLink=index&overridelayout=true&27788438410701
  4. Line of code = the weight of our custom solution that we can compare with the STANDARD SLOC http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/0005265f-e4f2-2a10-85ad-dced292c0c0d?QuickLink=index&overridelayout=true&27788438410701
  5. To implement a code analisys we need …
  6. We have to select the combination like a slot machine and tehcegd chouse this combination that includes two standard compoent and a comunnity product. To maximize the benefit of this combination Techedge build a brand new product called Doctor Zed that we will see in detail in the next slides.
  7. In this market there are a lot of non-SAP product that are uased to certify the code so with a main goal to produce a certification
  8. The Code Inspector is a tool for checking static ABAP coding
  9. The Code Inspector is a tool for checking static ABAP coding
  10. The Code Inspector is a tool for checking static ABAP coding
  11. The Code Inspector is a tool for checking static ABAP coding
  12. The Code Inspector is a tool for checking static ABAP coding