WRICEF Code Review Checklist
WRICEF Code Review Checklist
WRICEF Code Review Checklist
Follows Convention Mark 'YES' if the document is created by following conventions else mark it 'NO'.
Object Name Write Program Name in this column
Worksheet Name Name here should match with the actual worksheet
Reviewer Write Name of the reviewer. Fill in this column even in case of self review
Review Status Mark this 'YES' for review, other than 'Self Review', done OR 'NO' if not done
Worksheet Name Review_Checklist (All other)
Heading Description / Meaning
Title or Description Write Title as written in program attributes
Self Review Write either 'YES' OR 'NO' for this heading - To be filled in by developer
Self Review Comment if
reqd. While doing self review, give comments to support 'Self Review' heading
Quality Review Write either 'YES' OR 'NO' for this heading - To be filled in by Quality reviewer
Quality Reviewer's CommenQuality Reviewer will write comments / remarks
Customer review Write either 'YES' OR 'NO' for this heading - To be filled in by customer
Customer comments Customer will write comments / remarks
Worksheet Description
Worksheet 1 & 2 Always to be 'Help' & 'Review Summary'
Name of worksheet = 'Report_Description': This name to be same as there in
Report_Review_Checklist 'Review Summary' work sheet - 'Worksheet Name'
Name of worksheet = 'FORM_Description': This name to be same as there in
FORM_Review_Checklist 'Review Summary' work sheet under heading 'Worksheet Name'
Name of worksheet = 'FM_Description': This name to be same as there in
FM_Review_Checklist 'Review Summary' work sheet under heading 'Worksheet Name'
Qaaq
Document List
Document Type Document Name
Functional Specification
Technical Specification
Test Document
Object List
Object Type Object Name
Report ZDR485_MASS_EMAIL_SMS_EXT
SmartForm
Class/Method
Review Details
Reviewer
Date of Review
Total Time Spent(in Hrs)
Review Status
Comments
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: CL/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Follows Convention
Worksheet Name
Report_Review_Checklist
Page 1 of 1
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01
©Invenio Business Solutions
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5
Program Attributes
Is the Title or Program Description concise
and adequate? Yes
Is Type specified correct? Yes
Is the Authorization Group needed? No
Is Editor lock Switched OFF? Yes
Modularization
Is program Modularized? Are Forms created
for modularization? Yes
Comments
Is Inline Documentation done? Yes
Internal commenting has been done
sufficiently enough to ease program
maintenance and reliability of the ABAP
Program Yes
Language
Is everything in English? Yes
Authority Check
Is the program according to the project
specific authority concept? Yes
Programming Standards
Event Structure
Has the standard structure sequence been
followed?
SY-SUBRC Check
Internal tables
Performance
Column Selection
Error Logs
Has the proper methods used for logging the
possible errors like while processing the
form/final submit(master data errors, BAPI
errors, etc)?
Method to be used:
ZDC_FORM_PROCESS-
ADD_BRF_MESSAGE
Notifications
Has the methods used for sending notification
in form of SMS and Emails after updating the
master data?
Page 1 of 1
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01
©Invenio Business Solutions
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5
Yes
NA
No
Page 1 of 1
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01
©Invenio Business Solutions
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5
Review Check
(Developer)
Interface Attributes
Is the Short Text of the idoc type concise
and adequate?
Is the Short Text of the message type
concise and adequate?
Idoc Header
Has the mapping been done properly?
Is Assumptions/Exceptions specified ?
Is objective of the Idoc is clearly specified?
Comments
Is Inline Documentation done?
Internal commenting has been done
sufficiently enough and reliability of the
ABAP
Language
Is everything in English?
Programming Standards
SY-SUBRC Check
Performance
Column Selection
Is the Column Selection defined
appropriately
Use of NON-KEY fields
Avoid using non-key fields. They are going
to kill performance. If you need to use more
than one table to get KEY fields Still it has
far better performance. Have non-key fields
been avoided?
Use of Partial KEY
Using the total key is preferred.
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Yes
NA
No
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Include Attributes
Is the Type specified correct - Type I for
Include Program, Screen Type: Subscreen for
Screen Exits
Is the Short Text of the Include Program or
the SubScreen Program concise and
adequate?
Editor lock Switched OFF
Overall check
Is the CMOD Project activated?
Are the Enhancements assigned to CMOD
Project?
Are the implemented Components of the
Enhancements in CMOD Project active?
Is the BADI Implementation Active?
Code inspector / EPC check conducted ?
Have the coding guidelines been followed?
(0=no, 1=rouhgly,2=nearly,3=yes)
Has Pretty Printer been used?
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Comments
Is Inline Documentation done?
Internal commenting has been done
sufficiently enough to ease program
maintenance and reliability of the ABAP
Program
Language
Is everything in English?
Authority Check
Is the project specific authority concept being
followed?
Programming Standards
SY-SUBRC Check
SQL
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Where VS CHECK
Is CHECK statement avoided?
Have conditions in the Where clause been
specified?
SELECT INTO preferred to SELECT
APPEND ENDSELECT
Has Select Endselect been used in the
Program?
Primary Key Used
Full table key is specified for all SELECT and
SELECT SINGLE statements.
The ordering of the WHERE statements
match the arrangement of the keys in the
table records
UP TO 1 ROWS
This must be used only for data existence
check with SELECT / ENDSELECT UP TO 1
ROWS with not full key if full key available
then use SELECT SINGLE
Nested SELECTS and LOOPS
Internal tables
Internal Tables with header is used or
occours is used?
Check Vs Where
LOOP…WHERE is used instead of
LOOP/CHECK
Copying of Internal tables
Has the appropriate function for the copying
of internal tables been used?
Delete Itab lines
delete ITAB WHERE Field1 = …... is
preferred to
Loop at ITAB WHERE Field1 = …....
delete ITAB.
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
ENDLOOP.
Describe Vs count = count + 1
To find out how many entries are in an nternal
table use the DESCRIBE verb.
Performance
Column Selection
Yes
NA
No
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Modularization
If a block of code is executed more than once, it
should be placed in a subroutine at the bottom
of the code. This makes the code more
readable, requires less indentation, and is
easier to debug.
Comments
Is Inline Documentation done?
Internal commenting has been done sufficiently
enough to ease program maintenance and
reliability of the ABAP
Language
Is everything in English?
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Programming Standards
SY-SUBRC Check
SY-SUBRC is checked after every READ,
SELECT, INSERT and after FUNCTION CALL.
Appropriate warnings/errors are issued when
sy-subrc <> 0
Obsolete Statement
As per guidelines obsolete statements are not
allowed
Check for obsolete statement done?
Translation
Is translation done to all required languages?
Internal Checks
Is Page Numbering done correctly?
Has Data Overflow condition checked?
Is Outline Printing needed?
Are Margin and Line spacing done?
Is Use of Address window done?
Use of standard SAP data /structure/table types
in form interface?
Global definitions as per standards.
Is Alignment & Resolution correct as per
requirement?
Performance
Column Selection
Yes
NA
No
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Comment in case of
Review Check No
Workflow Template
Short Text for the Workflow is concise and
adequate?
If developing workflow for standared
transaction,check is there any standard Workflow is
available?
Is triggering event for workflow is active?
Is Workflow Binding contain any error?
Is User assignment dynamic?
Is General task active?
Business Object
Short Text for the BO is concise and adequate?
Naming convention for BO is followed?
If developing workflow for standared
transaction,check is there any standard BO is
available?
Business object is realesed,implemented and
generated properly?
Key field for that BO is specified Properly?
Comments
Is Inline Documentation done?
Internal commenting has been done sufficiently
enough to ease readability of the ABAP
Language
Is everything in English?
Authority Check
Is the project specific authority concept being
followed?
Authority Check Followed when Calling another
Transaction
Programming Standards
SY-SUBRC Check
SY-SUBRC is checked after database activities to
ensure proper inputs when dealing with tables (for
example: READ, SELECT, INSERT) and after
FUNCTION CALL. Appropriate warnings/errors are
issued when sy-subrc <> 0
IF vs. Case
if CASE statement used, check if WHEN OTHERS
is used to capture unexpected errors.
SQL
Where VS CHECK
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Performance
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Column Selection
Is the Column Selection defined appropriately
Use of Partial KEY
Using the total key is preferred.
If you can not give total key and you can give
former part of key, still the select is effective. If you
are specifying later part of key then it is equivalent
to non-key field, which is not effective.
Pool or Cluster Tables should be accessed with Full
Primary Key
Secondary Index Usage
Yes
NA
No
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Review
Check Comment in case of No
FM Attributes
Is the Short Text of the FM concise and
adequate?
Is the Short Text of the Function Group
concise and adequate?
FM Overall check
Is the Function Group activated?
Is the FM activated?
Do you have the Code inspector / EPC check
conducted ?
Have the coding guidelines been followed?
(0=no, 1=rouhgly,2=nearly,3=yes)
Has Pretty Printer been used?
Modularization
IS program Modularized? Are Forms created
for modularization
Comments
Is Inline Documentation done?
Internal commenting has been done
sufficiently enough to ease FM maintenance
and reliability of the ABAP
Language
Is everything in English?
Authority Check
Is the FM according to the project specific
authority concept?
Programming Standards
SY-SUBRC Check
Performance
Column Selection
Yes
NA
No
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Review
Check Comment in case of No
Class Attributes
Is the Short Text of the Method concise and
adequate?
Is the Short Text of the Class concise and
adequate?
Is Class Type specified correct?
Check Package with Class specification
Method Header
Is the Header maintained?
Is Assumptions/Exceptions specified ?
Comments
Is Inline Documentation done?
Language
Is everything in English?
Authority Check
Is the Method according to the project specific
authority concept?
Programming Standards
SY-SUBRC Check
Performance
Column Selection
Aggregates
Error Logs
Has the proper methods used for logging the
possible errors like while processing the
form/final submit(master data errors, BAPI
errors, etc)?
Method to be used:
ZDC_FORM_PROCESS-
ADD_BRF_MESSAGE
Notifications
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Yes
No
NA
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
The following features in this workbook are not supported by earlier versions of
Excel. These features may be lost or degraded when opening this workbook in
an earlier version of Excel or if you save this workbook in an earlier file format.
One or more cells in this workbook contain data validation rules which refer to 5
values on other worksheets. These data validation rules will not be saved.
Report_Review_Checklist'!B27
Report_Review_Checklist'!B7:B
FORM_Review_Checklist'!B6:B
FunctionModule_Review_Check
Enhancement_Review_Checklis
ISSUE DATE: 10.12.2015; ISSUE: 02 REF ID: FM/CRC/01 Page 1 of 1
REV DATE: 10.12.2015; REV: 00 ISO 9001: 2008; CL 7.5 ©Invenio Business Solutions
Version
Excel 97-2003
Excel 97-2003
Excel 97-2003
Excel 97-2003