BAPI Quality Checklist

Definition

The check list below contains extracts from the BAPI Quality Checklist used internally in SAP to develop BAPIs.

You can refer to this check list during the entire development and implementation of a BAPI.

BAPI Quality Checklist

This checklist helps you to develop BAPIs in accordance with the programming guidelines and enables you to implement the best quality BAPIs right from the start. You should use this checklist to manage the development of all BAPIs in your integration scenario.

Scenario                                            
Person responsible:
Developer

BAPIs must be developed as part of an integration scenario. This will ensure that they complement each other, and that access to the SAP functionality is provided in a structured and practical way.

Scenario to be implemented

     [Name of the scenario]

-----------------------------------------------------------------------

Quality of Object Modeling     
Person responsible: Developer

[] Existing object model

Business object types used in the scenario and person responsible

  1. [Name of business object type] [Name of person responsible]

  2. [ ] [ ]

  3. [ ] [ ]...

BOR methods to be implemented

  1. [Name of business object type] [BAPI name]

  2. [ ] [ ]

  3. [ ] [ ]...

Name of the function module

  1. [Name of function module]

  2. [ ]

  3. [ ]...

 ----------------------------------------------------------------------

Specification                                       
Person responsible:
Quality assurance/central development department

    [ ] BAPI concept or specification has been checked by the central development department and by the responsible quality manager.

       [Name of the contact person in the central development department]

       [Name of the quality manager]

You must mark the checkbox for all the BAPIs in this development request.

----------------------------------------------------------------------

Quality of the Method Concept    
Person responsible:
Developer

You must mark the checkbox for all the BAPIs in this development request.

Fields and Parameters

     [ ] All field and parameter names must be in English

     [ ] All the quantity fields must have units of measurement fields

     [ ] All currency amount fields must have currency indicator fields

     [ ] All key fields in GetDetail() and GetList() BAPIs must be displayed in a text field.

     [ ] All BAPI structures begin with the prefix “BAPI” and all foreign keys are defined.

Data conversion

     [ ] Only internal data formats are used, with the following exceptions: (mark these exceptions):

        [ ] All the date fields must have the format JJJJMMTT

        [ ] All currency amounts are based on the domain BAPICURR

        [ ] PSP elements and similar fields use external keys

        [ ] Additional fields are provided for ISO codes

     [ ]  Currency amounts with decimal places are displayed with decimal points in the interface,
          For example, 10.12 is displayed as 10.12 and not as 1012.

Security issues

     [ ] All BAPIs contain authorization checks

     [ ] All F4 possible entries have authorization checks

Updates

Database changes can only be made through updates.

Commit Work

   BAPIs containing the COMMIT WORK command (exceptions only)

     [Name of business object type] [BAPI name]

     [ ] [ ]

     [ ] [ ]....

       [ ] No COMMIT WORK in asynchronous BAPIs that are sued in the context of ALE/BAPI Integration

----------------------------------------------------------------------

Quality of the BOR Definition            
Person responsible:
Developer

[ ] Table parameters are marked in the BOR "Imp. and Exp." only if they have to be imported as well as exported. Otherwise either the indicator Imp or Exp is used.

Person responsible: Central development department

[ ] Instance-dependency/instance-independency checked

[ ] BAPI name(n) OK (agree name with person in development department)

       [Name of person]

A cross in a checkbox applies to all the BAPIs in this development request.

------------------------------------------------------------------------

Quality of Documentation and Functionality
Person responsible:
QM

A cross in a checkbox applies to all the BAPIs in this development request.

Documentation

    [ ] BAPIs and all the associated parameters are fully documented

    [ ] Documentation on the parameter RETURN contains all the important return codes and messages

    [ ] The comprehensibility and user friendliness of the documentation has been checked

    [ ] Documentation describes the use of the COMMIT WORK command (if applicable)

         [ ] Documentation on the function module has been saved to the active version

         [ ] Business object type has been documented

    [ ] BAPI scenario (ALE Business Process) has been documented

Tests

    [ ] Individual tests OK

    [ ] Integration tests OK

    [ ] Calling from external programs OK

        [Name of quality manager responsible]

------------------------------------------------------------------------

Authorization to Release
Person responsible:
Quality assurance/central development department

    [ ] Authorized by member of central development department

        [Name of person]

    [ ] Authorized by quality manager

        [Name of the quality manager]

A cross in a checkbox applies to all the BAPIs in this development request.

------------------------------------------------------------------------

If all the fields have been marked are filled, you can release your BAPI(s) and the development request. Thank you for your cooperation.