unit seven

content

A set of twelve review checklists is also given as templates for use in the software life cycle review process.

REVIEW CHECKLISTS

The following list is a suggested checklists for reviews that could be use in the life cycle development process:

  1. Requirements Review Checklist
  2. High-Level Design Review Checklist
  3. Domain Analysis Review Checklist
  4. Interface Design Review Checklist
  5. Detailed Design Review Checklist
  6. Code Walkthrough Review Checklist
  7. Test Plan Review Checklist
  8. Test Procedure Design Review Checklist
  9. Test Procedure Review Checklist
  10. Information Plan Review Checklist
  11. Document Outline Review Checklist
  12. Draft Document Review Checklist

In the body of some of the review checklists are abbreviations for the suggested roles that could be assigned to particular staff members in order to contribute to the review. The abbreviations are:

  1. TW Technical Writer
  2. JSE Junior Software Engineer
  3. SE Software Engineer
  4. SSE Senior Software Engineer
  5. TE Test Engineer
  6. JTE Junior Test Engineer
  7. STE Senior Test Engineer
  8. QA Quality Assurance Representative
  9. QTE Quality Test Engineer

Requirements Review Checklist

Date:____________________

Project Id:________________

Document Id(s):____________

(Yes)(No)

1. Has a complete product been specified (TW)?

 

(Yes)(No)

2. Are all of the specified requirements within the scope of the current statement of work (JSE)?

 

(Yes)(No)

3. Are all requirements traceable to system concept statements (JSE)?

 

(Yes)(No)

4. Are goals/objectives for the software consistent with goals for the system (SE)?

 

(Yes)(No)

5. Does the document contain enough information to stand alone (TW)?

 

(Yes)(No)

6. Has each major function been adequately described (SSE)?

 

(Yes)(No)

7. Have all major system interfaces been described (SSE)?

 

(Yes)(No)

8. Are all of the requirements specified clear and unambiguous (SE)?

 

(Yes)(No)

9. Are all diagrams clear and able to stand alone without supplementary text (TW)?

 

(Yes)(No)

10. Does the specification address (SE, SSE)?

 

(Yes)(No)

   a. Hardware and software constraints?

 

(Yes)(No)

   b. System performance?

 

(Yes)(No)

   c. Storage and memory constraints?

 

(Yes)(No)

   d. I/O channel usage constraints?

 

(Yes)(No)

   e. System states or modes of operation supported?

 

(Yes)(No)

   f. System failure/recovery?

 

(Yes)(No)

   f. System failure/recovery?

 

(Yes)(No)

   f. System failure/recovery?

 

(Yes)(No)

   g. System expansion?

 

(Yes)(No)

   h. Business area data model?

 

(Yes)(No)

   i. Appropriate Enterprise Model, if needed?

 

(Yes)(No)

   i. Appropriate Enterprise Model, if needed?

 

(Yes)(No)

   j. Appropriate Process Model (is use of IDEF required?)

 

(Yes)(No)

   k. Initial Data Dictionary, using approved standard data elements, if required?

 

(Yes)(No)

11. Does the specification clearly describe the problem the system is to solve (SE)?

 

(Yes)(No)

12. Do requirements answer the question "what" and not "how" (SE)?

 

(Yes)(No)

13. Has the risk associated with development been identified (SSE)?

 

(Yes)(No)

14. Have alternative software requirements been considered (SE)?

 

(Yes)(No)

15. Do specified requirements affect project plans/estimates (SSE)?

 

(Yes)(No)

16. Have system acceptance criteria been defined (TE)?

 

(Yes)(No)

16. Have system acceptance criteria been defined (TE)?

 

(Yes)(No)

17. Have all assumptions and dependencies been considered(SE)?

 

 

High-Level Design Review Checklist

Date:____________________Project Id:________________Document Id(s):____________

(Yes)(No)

1. Does the design trace to the requirements specification (JSE)?

 

(Yes)(No)

2. Have any unnecessary requirements been added (SE)?

 

(Yes)(No)

3. Does the design satisfy all software requirements (SSE)?

 

(Yes)(No)

4. Is the design fully implementable (SE)?

 

(Yes)(No)

5. Is the design modular (SSE)?

 

(Yes)(No)

6. Has reuse of appropriate existing materials been considered (SSE)?

 

(Yes)(No)

7. Has system maintainability been considered (SE)?

 

(Yes)(No)

8. Has performance been estimated and found acceptable (SE)?

 

(Yes)(No)

9. Has memory utilization been estimated and found acceptable (SE)?

 

(Yes)(No)

10. Have all external interfaces been defined (SE)?

 

(Yes)(No)

11. Are the system components functionally independent (SSE)?

 

(Yes)(No)

12. Is the overall design factored (i.e., top level modules decide program flow and bottom-level modules perform I/O and computational work) (SE)?

 

(Yes)(No)

13. Is the data structure consistent with the information domain (SSE)?

 

(Yes)(No)

14. Have all new techniques been successfully prototyped (SSE)?

 

(Yes)(No)

15. Has system usability been considered (SE)?

 

(Yes)(No)

16. If incremental development is planned, is the "build" plan reasonable, workable (SE)?

 

(Yes)(No)

17. Do data structures support the logical data architecture access and distribution requirements?

 

(Yes)(No)

18. Do system components support the logical process architecture user access needs?

 

(Yes)(No)

19. Does the implementation architecture support the organizational, geographic, processing, data access, communication and support requirements of the proposed design?

 

 

Domain Analysis Review Checklist

Date:____________________
Project Id:________________

Document Id(s):____________

(Yes)(No)

1. Have all categories of potentially reusable materials been identified?

 

(Yes)(No)

2. Have criteria been established for the selection of candidate reusable materials?

 

(Yes)(No)

3. Have all reasonable sources of reusable components been explored?

 

(Yes)(No)

4. Do candidate software materials adhere to required standards?

 

(Yes)(No)

5. Has the degree of support available for candidate materials been determined?

 

(Yes)(No)

6. Have licensing or other legal requirements been identified?

 

(Yes)(No)

7. Has the maturity of all candidate reusable non-COTS software components been verified?

 

(Yes)(No)

8. Is each candidate software component well documented?

 

(Yes)(No)

9. Are candidate reusable software components structured to be maintainable?

 

(Yes)(No)

10. Is the implementation of the candidate software components efficient?

 

(Yes)(No)

11. Do the candidate reusable software components perform their advertised functions correctly and completely?

 

(Yes)(No)

12. Has the amount of adaptation required of each candidate material been determined?

 

 

Detailed Design Review Checklist

Date:____________________
Project Id:________________
Module Id(s)______________
(Yes)(No)

1. Does the detailed design trace to the interface and high-level designs (JSE)?

 

(Yes)(No)

2. Are the interfaces consistent with the interface design (SE)?

 

(Yes)(No)

3. Does the design satisfy all allocated software requirements (SE)?

 

(Yes)(No)

4. Is the design fully implementable (SSE)?

 

(Yes)(No)

5. Is the design amenable to the implementation language (SSE)?

 

(Yes)(No)

6. Has information-hiding been fully utilized (SSE)?

 

(Yes)(No)

7. Are structured programming constructs used throughout (SE)?

 

(Yes)(No)

8. Is the logical complexity reasonable (JSE)?

 

(Yes)(No)

9. Have language/operating-system dependencies been minimized (SE)?

 

(Yes)(No)

10. Is compound logic minimized JSE)?

 

(Yes)(No)

11. Has inverse logic been eliminated, or at least minimized (JSE)?

 

(Yes)(No)

12. Are algorithms logically correct and produce the desired effect (SE)?

 

(Yes)(No)

13. Have all error and boundary conditions been specified (SE)?

 

(Yes)(No)

14. Is local data structure properly defined (SE)?

 

(Yes)(No)

15. Has maintainability been considered (SE)?

 

(Yes)(No)

16. Has performance been estimated and found acceptable (SSE)?

 

(Yes)(No)

17. Is the user interface usable, consistent across the system (SE)?

 

(Yes)(No)

18. In general, will the system be usable by the target user audience (SE)?

 

(Yes)(No)

19. Is the "build" plan doable (SSE)?

 

 

Code Walkthrough Review Checklist

Date:____________________

Project Id:________________

Module Id(s):____________

(Yes)(No)

1. Does the code adhere to established coding standards and guidelines (JSE, SE, SSE)?

 

(Yes)(No)

2. Is the code adequately and accurately commented (JSE)?

 

(Yes)(No)

3. Is the translation of the design into executable code complete and correct (SE)?

 

(Yes)(No)

4. Are all elements of the code traceable to the allocated requirements (JSE)?

 

(Yes)(No)

5. Are all error and boundary conditions properly handled (SE)?

 

(Yes)(No)

6. Is the associated unit test plan complete, correct and adequate (JSE, SE)?

 

 

Test Plan Review Checklist

Date:____________________
Project Id:________________
Module Id(s):____________
(Yes)(No)

1. Does the Test Plan identify the test organization and appropriate staffing (skills and skill-levels) (TW)?

 

(Yes)(No)

2. Does the Test Plan define a workable overall formal test approach (STE)?

 

(Yes)(No)

3. Does the test plan identify a standard naming convention for test conditions/variations and test procedures (JTE)?

 

(Yes)(No)

4. Does the test approach/schedule promote evaluation of software soon after its availability (STE)?

 

(Yes)(No)

5. Does the test plan address all relevant types of tests; e.g functional, regression, stress, performance, acceptance, etc. (TE, STE)?

 

(Yes)(No)

6. Does the Test Plan identify all relevant environmental factors and variants; e.g., hardware constraints, etc. (TE, STE)?

 

(Yes)(No)

7. Does the plan correctly interpret requirements (TE, STE)?

 

(Yes)(No)

8. Do all test conditions/variations trace back to the software requirements (JTE, STE)?

 

(Yes)(No)

9. Does the Test Plan identify a reasonable set of test conditions/variations for each requirement (STE, TE)?

 

(Yes)(No)

10. Do the test conditions/variations include tests of messages generated by the software (JTE)?

 

(Yes)(No)

11. Do the test conditions/variations identified provide adequate test coverage; error, as well as legitimate conditions (TE, STE)?

 

(Yes)(No)

12. Does the Test Plan identify all needed support software (i.e.,stubs, drivers, simulators, emulators, etc.), test equipment and responsibility for acquisition/development (TE)?

 

(Yes)(No)

13. Does the Test Plan describe hardware constraints, requirements (TE)?

 

(Yes)(No)

14. Does the Test Plan identify test data requirements and needed time frames (TE, STE)?

 

(Yes)(No)

15. Does the Test Plan identify all hard test problems and approaches to mitigation (TE,STE)?

 

(Yes)(No)

16. Does the Test Plan identify how tests will be verified (QA, TE)?

 

(Yes)(No)

17. Does the allocation of conditions/variations to test procedures minimize redundancy (JTE)?

 

(Yes)(No)

18. Is the allocation of test conditions/variations to test procedures reasonable, logical (TE)?

 

(Yes)(No)

19. Are all test conditions/variations allocated to at least one test procedure (ITE)?

 

(Yes)(No)

20. Does the Test Plan address configuration control of all test materials (JTE, QA)?

 

 

Test Procedure Design Review Checklist

Date:_______________

Project Id:______________

Test Procedure Design ld(s):__________

(Yes)(No)

1. Does each test procedure design trace to the test conditions/variations allocated in the Test Plan (JTE)?

 

(Yes)(No)

2. Does the test procedure design satisfy all allocated test conditions/variations (TE, STE)?

 

(Yes)(No)

3. Is each test procedure design fully implementable (TE, STE)?

 

(Yes)(No)

4. Is each test procedure design logically executable (TE, STE)?

 

(Yes)(No)

5. Does the test procedure design minimize duplication of steps/tests (JTE)?

 

(Yes)(No)

6. Is the test procedure design efficient (TE, STE)?

 

(Yes)(No)

7. Does the test procedure design minimize dependence on data/conditions generated in previous test steps (TE, STE)?

 

(Yes)(No)

8. Does each test procedure design minimize execution time (TE, STE)?

 

(Yes)(No)

9. Does the test procedure design minimize the effort required to restore the test environment if restart is necessary (TE)?

 

(Yes)(No)

10. Do the tests and method of execution truly test the associated software requirements and test conditions/variations (TE, STE)?

 

(Yes)(No)

11. Is there enough detail to fully implement the test procedure design (TE)?

 

(Yes)(No)

12. Has long term procedure maintenance been considered (TE)?

 

(Yes)(No)

13. Does each series of steps culminate in a pass/fail result (JTE, TE)?

 

(Yes)(No)

14. Are verification steps well documented (JTE, TE)?

 

 

Test Procedure Review Checklist

Date:_________
Project Id:_______
Test Procedure ld(s):
(Yes)(No)

1. Does each test procedure trace to the test conditions/variations allocated in the Test Plan(JTE)?

 

(Yes)(No)

2. Does the test procedure correctly implement all allocated test conditions/variations (TE, STE)?

 

(Yes)(No)

3. Is the test procedure fully executable (TE, STE)?

 

(Yes)(No)

4. Are test steps fully documented (QTE)?

 

(Yes)(No)

5. Are instructions for execution clear and concise (JTE)?

 

(Yes)(No)

6. Does the test procedure minimize duplication of steps/tests (JTE, TE)?

 

(Yes)(No)

7. Does the test procedure minimize dependence on data/conditions generated in previous test steps (TE, STE)?

 

(Yes)(No)

8. Does the test procedure minimize execution time (TE, STE)?

 

(Yes)(No)

9. Does the implementation of test procedure minimize the effort required to restore the test environment if restart is necessary (TE)?

 

(Yes)(No)

10. Does each logical series of steps in the test procedure culminate in an obvious pass/fail result (JTE)?

 

(Yes)(No)

11. Are expected results clearly documented and correct (TE, STE)?

 

 

Information Plan Review Checklist

Date:________________
Project Id:____________
Document ld(s):_______
(Yes)(No)

1. Does the Information Plan define a workable approach to document development (TW)?

 

(Yes)(No)

2. Have all resources required to produce the document(s) been identified (SSE)?

 

(Yes)(No)

3. Has the target audience been identified ((SE)?

 

(Yes)(No)

4. Has the correct target audience been identified (SSE)?

 

(Yes)(No)

5. Has the educational level of the target audience been identified (SE)?

 

(Yes)(No)

6. Does the Information Plan accurately and completely identify all functions the end users will need to perform (SE)?

 

(Yes)(No)

7. Does the Information Plan identify all of the scenarios in which end users will typically find themselves (SE, SSE)?

 

(Yes)(No)

8. Is the planned organization of the document(s) highly usable (SSE)?

 

(Yes)(No)

9. Has a provision been made for independent (end-user, etc.) draft document reviews for usability (SSE)?

 

(Yes)(No)

10. Are all typically requested topics included in the planned index (SE, SSE)?

 

(Yes)(No)

11. Have all of the needed graphics been identified (TW, SE)?

 

(Yes)(No)

12. Will the document(s) include a sufficient number of examples (TW)?

 

(Yes)(No)

13. Has a source of each example been identified (TW, SE)?

 

(Yes)(No)

14. Does the Information Plan describe how examples will be verified/validated (TE)?

 

(Yes)(No)

15. Does the Information Plan correctly interpret system requirements (SE, SSE)?

 

(Yes)(No)

16. Does the Information Plan address the configuration control of publications materials (SE)?

 

(Yes)(No)

17. Does the Information Plan call for the associated document(s) to be completed in the right time frame (SSE)?

 

(Yes)(No)

18. Has technical ownership been identified (e.g., appropriate author/developer) (SSE)?

 

 

 

Document Outline Review Checklist

Date:________________

Project Id:____________

Document Id(s):_______

(Yes)(No)

1. Does each outline trace to the requirements allocated in the associated Information Plan (TW)?

 

(Yes)(No)

2. Have all of the requirements identified in the associated Information Plan been addressed in the outline (TW, SE)?

 

(Yes)(No)

3. Is the outline sufficiently detailed to be implementable (SE, SSE)?

 

(Yes)(No)

4. Are topics covered in a logical/reasonable sequence (SE, TW)?

 

(Yes)(No)

5. Are specific procedures required identified (SE)?

 

(Yes)(No)

6. Are the major steps involved in each procedure documented (SE)?

 

(Yes)(No)

7. Is each documented procedure correct (SE, SSE)?

 

(Yes)(No)

8. Are the expected results of each procedure clearly defined and correct (SE, SSE)?

 

(Yes)(No)

9. Have any additionally required graphics been identified (SE)?

 

(Yes)(No)

10. Has responsibility for producing/obtaining the required graphics and/or examples been assigned (SSE)?

 

(Yes)(No)

11. Has responsibility for producing/obtaining the required examples been assigned (SSE)?

 

(Yes)(No)

12. Has responsibility for verifying required examples been assigned (TE)?

 

 

Draft Document Review Checklist

Date:____________________

Project Id:________________

Document Id(s):____________

(Yes)(No)

1. Does the draft document follow the approved outline (TW)?

 

(Yes)(No)

2. Are all software requirements (functionality) reflected in the document (SE)?

 

(Yes)(No)

3. Has a writing assessment (i.e., FOG index, created by Robert Gunning, serves as a practical yardstick for determining the degree of difficulty in any type of writing) been performed to ensure that the writing level is suitable for the target audience (TW)?

 

(Yes)(No)

4. Have all of the embedded examples and graphics been verified as correct (TE, SE)?

 

(Yes)(No)

5. Have all of the graphics and examples been appropriately collocated with the associated text (TW)?

 

(Yes)(No)

6. Are all of the procedures and examples easy to understand and follow (TW, SE)?

 

(Yes)(No)

7. Are expected results of procedures clearly documented (TW)?

 

(Yes)(No)

8. Does the organization of the document make it easy to locate specific information (TW, SE)?

 

(Yes)(No)

9. Does the table of contents match the document contents (TW)?

 

(Yes)(No)

10. Has a usability review been conducted (SE)?

 

 

Note: Please click Quiz on your left navigation and take Quiz 7.

 

© January 1, 2006 James C. Helm, PhD., P.E.