iSiScan: Technical audit

Your stakes / issues

  • Guarantee the quality and homogeneity of developments
  • Simplify and reorganize the night processing (too long)
  • Quickly zero in on the source of program performance problems
  • Improve productivity to respect the development deadlines and reduce your maintenance costs
  • Take advantage of solutions developed for other companies and SAP experts’ best practices
 

Our solution

Developed by CODiLOG, iSiScan is a tool for SAP technical audit services (R/3, ECC, BW).

Specialized based on SAP and the specific characteristics of the ABAP language, our solution can be used to precisely measure the quality, reliability and compliance of developments made on an SAP system.

This solution is fully integrated in your SAP system and can be configured to adapt it to the conventions, rules and best practices in effect in your organization.
 

  • iSiScan covers the following scope:
    • The naming rules, based on the customer’s standards
    • The analysis of ABAP code:
      • programs
      • functions modules
      • classes
      • routines BI 3.x
      • BI 7.x transformations
         
  • Easy to use, the application includes:
    • a general statistical report on all or part of the developments
    • a detailed report on each object analyzed
    • a unit analysis program that can be used to identify errors precisely and where they are in the code (option)
    • the control of transports based on the analysis results (options)
 

Methodology and tools

In order to carry out effective and rigorous technical audits on short lead-times, we use a specific audit methodology, associated with automated analysis tools.

From the moment we take on the audit until we deliver the audit report, this process is built around 2 major analysis areas: the naming rules and the ABAP code

  • The naming rules for all of the system’s specific objects are verified.
  • The ABAP code audit breaks down into 5 checkpoints :

 

EXAMPLES OF CONTROLS CARRIED OUT FOR EACH AREA (NON-EXHAUSTIVE):
 

  • Legibility

    • Verify that the processing blocks are isolated (modularization) with comments (functional rule)
    • Verify that there is a program header
    • Verify that the code isn’t polluted by the presence of “dead” code (obsolete code or test code)
  • Maintainability

    • Check for the presence of “hard” code: to be banned in favor of using a configuration table and additional criteria in the selection screen
    • Verify that the programs are Unicode compatible
  • Ergonomics

    • Check that the program has a selection screen in order to secure runs
    • Check that run errors are retrieved in a report
  • Reliability

    • Verify that the SELECT … FOR ALL ENTRIES are used correctly
    • Check that the standard tables are not updated “directly”
    • Check that the BINARY SEARCH function is preceded by a sort
  • Performance

    • Verify that there is no SELECT* instruction on the application tables, INTO CORRESPONDING FIELDS, etc.: costly instructions to be replaced by an explicit definition of the selected zones
    • Verify that no selection is made in a loop
    • Verify embedded loops