SAP_ABAP_CODE REVIEW CHECKLIST_REPORTS
1. Check List |
| Objects |
1.1. Program Description |
| A Program Description Adequate: |
1.2. Base Program Usage |
| A Prescribed base Program Used: |
1.3. Naming Convention Correct |
| A Program Name: |
| B Development Class: |
| C Tables: |
| D Internal Table: |
| E Work Fields (Global/Local): |
| F Parameters: |
| G Selection Options: |
| H Includes: |
| I Types: |
| J Field-Groups: |
| K Field-Symbols: |
| L Constants: |
| M Forms: |
| N Statics: |
| O Objects/Classes: |
| P Methods: |
1.4. Modification Change Management |
| A Change History In Program Header: |
| B Begin of Modification Line Included: |
| C End of Modification Line Included: |
| D Inserted Line History: |
| E Commented Line History: |
| F Suitable Comments Include: |
1.5. Program Elements Sequence |
| Tables |
| Data (including Internal Table) |
| Work Fields |
| Field-Groups |
| Classes |
| Includes |
| Selection Options |
| Parameters |
| 1.6 Program Events |
| Load-of-program |
| Initialisation |
| At Selection-Screen Output |
| At Selection-Screen on Help/Value Request |
| At Selection-Screen |
| Start-of-Selection |
| Get |
| End-of-Selection |
| At Line-Selection |
| At PFXX |
| At User-Command |
| Top-of-Page |
| End-of-page |
| Forms |
| Methods |
| Interfaces |
1.7. Indentation |
| A Indentation Proper (use of Pretty Printer) |
1.8. Includes (Specific to project) |
| A RVADTABL Included |
1.9. Function Modules Used |
| A TOP-OF-PAGE |
| B Y_BU_REPORT_HEADING (Specific to project) |
| 1.10. Text elements used: |
| A Title / heading line |
| B Selection texts with clear meaning |
| C Text symbols for literal texts |
| 1.11. Selection Screen / Other Screens: |
| A Easy to understand and not cluttered. (Define additional selection-screen, if the Screen looks crowded or cluttered) |
| B Screen elements placed in logical order |
| C Logically related elements in separate blocks |
| D Adequate info texts for correct selections |
| E Function Keys with info-texts / labels |
| F Icons with info-texts / labels |
| G Error messages meaningful |
| H Menu bar proper |
| 1.12. Report Output: |
| A Report Heading as per specs./ any suitable one |
| B Sequence of columns as per specified format |
| C Control breaks and sort order proper with color formats |
| D Check Date format specified or appropriate for the client |
| E Are there any amount Fields. If yes is there a total for the amount field displayed? If no, should it not be there ? |
| F Are there any Quantity Fields. If yes is there a total for the Quantity Field displayed? If no, should it not be there? |
| G " End of Report " at the end of output |
| 1.13. Performance Issues : |
| Database accesses |
| A "Select where Please Insert ‘ Mandt’ ’ and client specified in all Select statements |
| B Select single used where appropriate |
| C Select .. Into table.. used instead of append (Try to avoid appending records and processing in a Select.. Endselect loop) |
| D Select * avoided wherever possible |
| E Nested select avoided if possible |
| F For mass modifications based on a condition, use " Update in place of " Select .. Where ..update |
| G Select aggregate records directly from the database tables rather than selecting individual records into an internal table and then obtaining aggregate values |
| Internal Table accesses |
| H Tables defined as sorted types with keys, wherever possible |
| I Key fields for sorting are at the beginning of the table structure |
| J " Loop at |
| K Tables filled directly by "Select from |
| L Tables modified with " Modify |
| M Tables sorted in proper order of fields before reading for final output |
| N Access a specific record by " Read table with key f1 = k1 binary search " instead of " Loop at |
| O Table work area cleared before copying records / fields between internal tables |
| P Use " Collect |
| Q For mass modifications based on a condition, use " Modify |
| 1.14. Test data: |
| A Test data available |
| 1.15. Documentation |
| A Documentation Complete |
| 1.16. Exceptional Handling |
| A Is sy-subrc being checked after every select statement. In case it fails , any steps? |
| 1.17. Modularization |
| A Forms created for modularization |
1.18. Messages (Specific to project) |
| A 398(00) with Text-Mnn used |
1.19. External Calls |
| A Programme Contains External Calls |
| 1.20. General |
| A. “Extended Check done ? |
| B. Code Inspector check done? |
No comments:
Post a Comment