You are on page 1of 8

Project Name Material Creation

Object ID TD_MM-IF-001
Object Name ZMATII_IA_SEL_MAT~IA_SEL_MAT
Object Description Material Creation in 720,730 & 750 client

DS6K907381,TSDK900558
Request Number in
Sequence
Checks Sr. No. Check Points
DOCUMENTS CHECK 1 Availability of Reviewed Functional Specification.
2 Version contorl maintained in Functional Specification
3 Availability of Reviewed Technical Specification.
4 Version contorl maintained in Technical Specification

NAMING 5 Is the program name consistent with Naming convention standard?


CONVENTIONS AND 6 Are names of internal tables, variables, include, structure and subroutines etc checked for
DECLARATIONS adherence to naming convention standard?
7 Comments are included after each field (tables, fields of internal tables, constants,
variables, etc.) to describe the meaning or purpose of the field
8 TYPE verb is used while declaring the fields whenever feasible?
9 Is keyword Constant used for non-modifiable declarations?

PROGRAM 10 Is PRETTY PRINTER used for formatting the code?


STRUCTURE 11 Are the events that appear in the program are in the order in which they are generally
executed?
12 Does program contain standard header pattern for modification log and documentation?

PROGRAM LOGIC 13 Is the system return code SY-SUBRC checked after every data access statement?

14 Are CHECK used instead of IF/ ENDIF whenever possible?


15 Are only required columns used instead of using SELECT *?
16 Has database SELECT for a particular database table been restricted to only once in the
program wherever possible?
17 Is Select single statement being followed by primary key in where clause.
18 Is Select statement being followed by proper index in where clause.
19 Is Select statement fields sequence is same as database tables field sequence.
20 GROUP BY, ORDER BY, and DISTINCT operations On SELECT statements are avoided
whenever possible.
21 Does every Select statement is being followed by comments on index used? (e.g. Primary
Index Used, Secondary index used(Index ID).)
22 No Hardocoded Selects , All the changeable and necessary HardCoded values must be
part of Custom Table
23 Is clearing of work areas done, wherever required?
24 Case statements use 'when others.'
25 Has the code been checked for the condition of division by zero?

INTERFACES / 26 Are Input/ Output file names correct (to be as per the Technical Specification)?
CONVERSIONS 27 Is each file being opened separately?(GUI_UPLOAD)
28 Are Control Report and Error log Report generated (if specified) for Interface Programs?

INTERNAL TABLES 29 Field Symbol has been used instead of work area wherever required?
30 Have Fields-symbols been assigned before using?
31 Have Fields-symbols been unassigned after using?
INTERNAL TABLES

32 MOVE-CORRESPONDING is used only when two internal structures have identical fields
and only a few records have to be moved from one to the other. Otherwise MOVE is used.

33 Is SELECT….INTO TABLE statement used to populate an internal table?


34 Is LOOP … WHERE used instead of using LOOP and then CHECK?

35 When filling an internal table, COLLECT is used instead of READ / INSERT when number
of entries greater than 1000, because COLLECT uses a hash algorithm which is
independent of the number of entries and does not need to maintain a table index.

36 To select a particular row from internal table use 'Read table .... with key' instead of 'loop at
table where ..'
37 Has an internal table been SORTED before doing a BINARY SEARCH on it?
38 Sort fields on the SORT statement should not be left as default (e.g., Use SORT ITAB BY
FLD1 instead of SORT ITAB).
39 All variants and fields should be explicitly specified when you use MODIFY statement to
modify the internal table (e.g., you should use MODIFY itab….TRANSPORTING fl f2…
WHERE…instead of MODIFY itab).
40 When appending itabl to itab2, use APPEND LINES OF itabl TO itab2 instead of APPEND
itab1 TO itab2.
41 Was the internal table sorted before using DELETE ADJACENT DUPLICATES?
42 When deleting a record from an internal table, use DELETE ITAB WHERE condition instead
of using LOOP AT <itab> / CHECK / DELETE ITAB
43 Has appropriate freeing of memory for Database/Internal table work areas been done?

44 Does the code have been checked for minimal use of Nested Selects and Nested Looping?

45 UPDATE statements only contain the columns whose values have changed.

INPUT VALIDATIONS 46 Are Select-options & Parameters validated?


47 Is proper search help provided for the parameters and select options?
48 Are Parameters and Select options texts in proper case?

REPORT OUTPUT 49 In ALV Output all the application toolbar button must confirm for proper functionality (E.g.
Sorting, Downloading, Summation, Filtration, etc.)
50 While using function module REUSE_ALV_GRID_DISPLAY importing parameter should
always be ‘A’.
ENHANCEMENT / 51 Has the project been created and activated?
SAP 52 Has the user exit been put in a separate include program?
MODIFICATIONS
53 Has the check been made that the enhancement shall not affect other areas?
54 Has purpose of change is mentioned in enhancement?

FUNCTION 55 Are Function modules and related logic included in separate Forms, wherever necessary?
MODULES
56 Is SY-SUBRC checked after each call to a function module?
57 The exceptions of the Function Module should not be deleted but trapped with appropriate
messages
ERROR HANDLING 58 Is message Class defined in the PROGRAM / REPORT statement?
59 Is appropriate message class used?
60 The messages used should be complete and meaningful, and not broad level. Please use
‘&’ for Document Nos., Plant Codes, Material Numbers etc. when error occurs at specific
value.

CODE ALIGNMENT, 61 Are Internal Comments aligned?


SPACING AND 62 Do blank lines separate logically different coding blocks?
FORMATTING
63 Is the format for SQL statements correct?

MODIFICATIONS & 64 The program package history correctly informs and consists of at least the name, the date,
CORRECTIONS the author and the change(s) made
MODIFICATIONS &
CORRECTIONS
65 The change history contains a general description of the modification
66 Is every modification documented with modification log?
67 Has dead code been removed from the program?
68 Have code changes been marked with inline comment?

EXTENDED CHECK 69 Is extended program check completed and all errors/warnings removed?
AND CLEAN UP 70 Is source code inspector completed and all errors/warnings removed?
71 Have following been removed:
a. Unused tables from TABLES statement
b. Unused variables
c. Unused text elements
d. Code segments which do nothing
e. Commented out parts of the code

72 Have ABAP code optimization guidelines been followed?


73 Is SELECT statements followed the proper primary index and secondary index? (If
applicable, attach the document)
TRANSPORT 74 Has the correct Development Class been assigned to the object?
REQUEST AND 75 Have all the components been saved under the same Transport Request number?
DEVELOPMENT
76 Does the Program Header Documentation contain the correct Transport Request No.?
CLASS
77 All hard coded breakpoint statements have been removed before production transport.

TEST PLAN CHECK 78 All input validation is tested.


79 Test data and Expected Results are present.

TECHNICAL TEST 80 Test plan was reviewed.


CHECK 81 Each test was executed.
82 Expected Result matched with Actual Result. No errors were found.

PERFORMANCE 83 Your document is quite exhaustive and will help in ensuring good coding?
CHECK POINTS 84 Is there a check whether the driver internal table is empty for each Select Query that has
‘For All Entries In ...’ clause?
85 Is there consider the Tips and Tricks under ABAR Runtime Analysis?
86 Check to remove duplicates from the driver internal table before a “Select ... For All Entries
In..”, but this should be done only if there are chances of considerable duplicate records.

Security – 87 A transaction code has been assigned to the main program. (See security team for details).
Standards
88 Appropriate authority-checks are used based upon security needs.
89 Authorization Objects , If any

Role Levels Not Applicable

Defect No.* Remarks


Defect Found
Self Reviewer Sunil Rana
Evaluated On 06.07.2020
Peer Reviewer Zubin Sadadiwala
Evaluated On 06.07.2020 First Level Review on Development objects
Quality Reviewer Self Review Count
Evaluated On Followed 61
Not Followed
CR17195
CR No. 2
Self Review Peer Review Comments Not Applicable 26
Followed Followed Percentage
Followed Followed Object Status Approved
Followed Followed
Followed Followed
Not Applicable Not Applicable Second Level Review on Development objects
Followed Followed Peer Review Count

Not Applicable Not Applicable Followed


61
Followed Followed Not Followed 2
Followed Followed Not Applicable 26
Followed Followed Percentage
Followed Followed Object Status Approved
Followed Followed
Followed Followed

Not Applicable Not Applicable Rejected Reason:


Followed Followed
Not Followed Not Followed

Followed Followed
Followed Followed
Followed Followed
Not Applicable Not Applicable

Followed Followed

Not Followed Not Followed

Followed Followed
Not Applicable Not Applicable
Not Applicable Not Applicable
Followed Followed
Not Applicable Not Applicable
Not Applicable Not Applicable
80
61
Followed Followed 60
Followed Followed 40 26
Followed Followed 20
2
0
Followed Not Followed Not Applicable
80
61
60
40 26
20
Followed Followed 2
0
Followed Not Followed Not Applicable
Followed Followed
Followed Followed

Followed Followed

Not Applicable Not Applicable

Followed Followed
Followed Followed

Not Applicable Not Applicable

Followed Followed

Followed Followed
Followed Followed

Followed Followed

Followed Followed

Followed Followed
Not Applicable Not Applicable
Not Applicable Not Applicable
Not Applicable Not Applicable
Not Applicable Not Applicable

Not Applicable Not Applicable

Not Applicable Not Applicable


Not Applicable Not Applicable
Not Applicable Not Applicable
Not Applicable Not Applicable
Followed Followed

Followed Followed
Followed Followed

Not Applicable Not Applicable


Followed Followed
Not Applicable Not Applicable

Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Not Applicable Not Applicable
Followed Followed

Followed Followed
Followed Followed

Not Applicable Not Applicable


Followed Followed
Followed Followed

Followed Followed

Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Followed Followed
Not Applicable Not Applicable

Not Applicable Not Applicable


Not Applicable Not Applicable

Followed Followed

Followed Followed
Followed Followed

Defect Severity Date when resolved


w on Development objects
Points
122

0
52
98
Approved

view on Development objects


Points

122
0
52
98
Approved

26
2

Not Followed Not Applicable


26
2

Not Followed Not Applicable

You might also like