Sunteți pe pagina 1din 6

Review Checklist

CR / PR: Review Date:

Feature / Module / Report


name:
Release #:

Transport No:

Author of the Code: Reviewer:

Review Reference Documents:


Sl# Document

Code Review Checklist

Sl# Checklist Item Yes / Actions to be


No / NA taken/ Remarks
Is the development done on the correct landscape? Has check
1.
been done with landscape mentioned in FS, TDS & Progman?
2. Has proper impact analysis been done?

3. Is it related to eGFS? If yes, has Java side testing done?


Does the ABAP program developed/changed give the following
details:

 Name of the program


 Purpose of the report
4.
 Name of the developer
 Name of the Functional Contact
 Date of development
 Transport Request Number
 Revision History
Have the function parameters used for input or output clearly
identified?
a) Are Function modules and related logic included in separate
Forms, wherever necessary
5. b) Do parameter declarations include parameter type
c) Is SY-SUBRC checked after each call to a function module
d) Are correct parameters used (field lengths and data types)
while using CALL FUNCTION
e) Are all exceptions handled during CALL FUNCTION
6. Are the comments appropriate?

7. Are the data types and declarations (size, position etc.) proper?
Are all the variables initialized before they are used? Are all the
pointers initialized properly?
8.
a) Are the variables fully declared?
b) Is keyword Constant used for non modifiable declarations?
Are the error conditions handled appropriately? If related to
9.
eGFS, is the return structure properly populated?
Code Review Checklist Wipro Technologies
4/28/2020
Page 1 of 6
Review Checklist
Sl# Checklist Item Yes / Actions to be
No / NA taken/ Remarks
Are the error messages prompts and understandable? Is
translation required?
a) Are ‘divide by zero’ errors checked, by checking value of the
divisor to be nonzero before each division
10. b) Are size errors being checked, by ensuring that the sizes of
variables used for storing totals and additions are large
enough to hold anticipated maximum values
c) Is SY-SUBRC checked after CALL, OPEN, READ, and SQL
statements
Has it been ensured that there are no unreachable portions in
11.
the code?
Are assertions used wherever data is expected to have a valid
12.
value or range?
13. Are errors properly handled each time a function returns?
14. Have all the unwanted debug messages been removed from
Code?
a) Are all the active break points removed from the code
15. Is the code free of unintended infinite loops?

16. Are all conditions covered in if-else blocks?


Do recursive functions run within a reasonable amount of stack
17.
space?
18. Does the code have an impact on size, speed, or memory use?

19. Does the bug fix correct all the occurrences of a bug?

Object Development (SAP / ABAP)


Yes /
Sl# Checklist Item Remarks
No / NA
Has a transaction code been assigned to the ABAP program? Is
20.
it the same as that specified in the Technical specifications?
21. Has the program been properly commented?
Are authorization parameters incorporated in the report
development?
a) What type of Authorization Checks are implemented in ABAP
22.
to prevent unauthorized access for execution – for example,
Usage of Std. / Custom Authority Objects, Std. Authority
Check FMs, etc.
Are the selection parameters as per the agreed Functional
23.
specifications?
Is the report output as per that mentioned in the agreed
24.
functional specifications?
Are default values provided in the report to reduce the user
25.
inputs?
26. Are selection screen entries framed and logically grouped?
27. Are changes marked with the Correction Number? (adding
Code Review Checklist Wipro Technologies
4/28/2020
Page 2 of 6
Review Checklist
additional information to the change tag is acceptable)
Have Naming Conventions been followed?
28. a) Is coding sequence of events in appropriate order?
b) Are events described in development approach are used?
Have the internal tables header been cleared after every delete
29.
and whenever needed?
Has ‘Free <itab>’ been used after their usage?
30.
a) Is clearing of work areas done wherever appropriate?
31. Is selection screen data validated at time of entry?

32. Is hard coding of values avoided?

33. Are nested loops avoided?


Has the message class been declared?
34.
a) Are appropriate message class and types used?
Have all the text elements been properly assigned?
35. a) Are text elements being maintained in required languages
and hard coded information removed
Have internal tables been checked for number of entries before
36.
using FOR ALL ENTRIES IN?
Is DESCRIBE used to determine number of entries in internal
tables?
a) Has the clause ‘INTO TABLE <Internal table>’ been used
instead of INTO CORRESPONDING FIELDS OF
INTERNAL TABLE
b) Has the clause ‘APPENDING TABLE <Internal table>’ been
used instead of APPENDING CORRESPONDING FIELDS
OF internal table
37.
c) Have the internal tables been sorted by appropriate keys
before being looped at or being used in a read statement
d) Has ‘DELETE from internal table’ been used instead of
deleting the records inside a loop?
e) Has the transporting clause been used along with the
‘MODIFY internal table ‘ statement
f) In case of mass updation has the modify table from itab been
used instead of using modify statement inside a loop?
Are the target work areas of SELECT SINGLEs cleared before
use?
a) SELECT * has NOT been used
38. b) Aggregate clauses are NOT used in SELECT. (viz. SUM,
COUNT, ORDER BY, GROUP BY)
c) Are all the keys specified while using SELECT SINGLE
d) Are there any duplicate select statements?
Is SELECT single used instead of SELECT…ENDSELECT for
retrieving single records?
39.
a) CHECK statement is not used in SELECT – ENDSELECT
loop
40. Is NOT in WHERE clauses of SELECTs avoided?
Are nested SELECTs avoided?
41. a) Has the clause ‘FOR ALL ENTRIES’ been used instead of a
nested select
42. Is the HAVING clause specified when the GROUP-BY clause of
Code Review Checklist Wipro Technologies
4/28/2020
Page 3 of 6
Review Checklist
the SELECT is used?
43. Are joins or views used wherever applicable?
Are SELECTs inside LOOPS and LOOPS inside SELECTS
avoided?
44.
a) Have implanted loops been used instead of implanted
selects?
Are fields in the WHERE clause of a SELECT specified in the
45. same order as they appear in the key of the database table or
the desired index?
Is BINARY SEARCH option used on READ TABLE for
46.
SORTED and STANDARD tables?
47. Are all Extended Program Check items corrected or excluded?
Is there only one transport request for all objects in the
48.
program?
Has the CT been created with proper transport # and
49.
description in Progman
50. Are prerequisite transports listed in CT
Is extended program check completed and all errors/warnings
removed

51.

Is Code Inspector check completed and necessary actions


52.
taken
Is formatting of amount and quantity fields done by using
53.
CURRENCY and UNIT options
54. Proper error handling is done for BDC

Have the user default settings been taken into account while
55.
posting numeric values and dates through BDC
Does the program check for the emptiness of the file and hence
56.
terminate without proceeding further?
Have following been removed :
a) Unused variables
b) Unused text elements
57.
c) Unused tables from TABLES statement
d) Commented out parts of the code
e) Code segments which do nothing
Code Alignment, Spacing and Formatting :
a) Are ‘=’ and ‘TO’ aligned
b) Are ‘TYPE’ and ‘VALUE’ in variable declarations aligned
c) Are Internal Comments aligned
d) Are logically different Coding Blocks separated by blank
58. lines
e) Is each variable and function coded on a separate line for
MOVE and CALL statements
f) Is the format for SQL statements correct
g) Are ‘ENDIF’, ‘ENDLOOP’, ‘ENDAT’ etc. commented (if
necessary) to indicate the IF, LOOP etc. they belong to
Code Review Checklist Wipro Technologies
4/28/2020
Page 4 of 6
Review Checklist
Has the delete where clause been used instead of delete
59.
statement inside a LOOP-ENDLOOP
In case of SMARTFORM have all SELECT statements are
60.
coded in the INITIALIZATION block
Does the program comply with requirements of the Workbench
61.
Organizer
Forms and Modules :
62. a) Are names of the forms and modules self explanatory
b) Are Forms and Modules ordered

UTP Review Checklist

All ‘no’s should be substantiated

Sl# Checklist Item Yes / Actions to be


No / NA taken/ Remarks
1. Have test cases been documented properly for testing
Do the test cases cover all the necessary scenarios
2.
a) Covers Positive and Negative Testing scenarios
3. Have the screenshots and results been added

4. Is the impact of code create/change measured


Is there traceability between test cases, results and the problem
5.
as described in the FS, TDS and Progman?
6. Exclusion conditions, if any have been documented

7. Are test cases repeatable


8. Is manual intervention (e.g. Value change in debug mode)
Code Review Checklist Wipro Technologies
4/28/2020
Page 5 of 6
Review Checklist
Sl# Checklist Item Yes / Actions to be
No / NA taken/ Remarks
necessary? If yes substantiate
Do the tests bring out performance results? If yes, is it within
9.
limits specified.
10. Does UTP have tester, landscape information
Has miscellaneous documentation been updated in Additional
11.
information for reference

Code Review Checklist Wipro Technologies


4/28/2020
Page 6 of 6

S-ar putea să vă placă și