IV.25.1 Refine analysis model to reflect application maintenance information.
Intent: The intent of these tasks is to review and refine the existing analysis model and/or requirements specification to reflect changes implied by the application maintenance. The goal is to establish a basis from which a revised analysis model can be derived.
Mechanics: The developer reviews the changes proposed for the software data domain, software functions and behavior. Ambiguity, inconsistency or omissions are investigated and corrected.
Application of Formal Methods: none
Application of CASE Tools: t.b.d.
Deliverables: Refined Analysis Model
IV.25.2 Modify the analysis model.
Intent: The intent of this task is to create a revised analysis model for the software to be enhanced. The analysis model defines all requirements and provides a standardized representation of data, function and behavior.
Mechanics: Use an analysis modeling notation such as structured analysis or object-oriented analysis along with heuristics that guide you in the application of the notation.
Application of Formal Methods: structured analysis, object-oriented analysis or another formal method
Application of CASE Tools: t.b.d.
SQA Checklist:
1. Has the original requirements model been reviewed to ensure that it conforms to the current design and the current code implementation?
2. Have all changes associated with the maintenance been integrated into the model?
3. Has each model been reviewed for completeness, consistency and correctness?
4. Have errors been found and corrected in each model?
5. Have models/classes that have undergone significant change been given additional attention during review?
6. Have the analysts been trained in the analysis method that has been applied?
7. Has change control been applied as parts of the model have been baselined (large projects only)?
Do's & Don'ts
Do: Modify the graphical representation of the analysis model. In most cases, it will be easier to present and review.
Do: Use CASE tools to assist you in the subtasks listed above.
Don't: Enhance an analysis model that doesn't conform to the current operational application. The model must be brought into compliance before maintenance activities can begin.
Don't: Rush through this task. The work that you do here will serve as an important foundation for design.
Deliverables:
1. Modified Analysis model
2. Modified Software Requirements Specification (if required)
IV.25.3 Modify the design model.
Intent: The intent of this task is to modify the design model for the software to accommodate maintenance requirements. The design model represents data, function and behavior in the context of data, architectural, procedural and interface designs.
Mechanics: Use a design modeling and transformation approach such as structured design or object-oriented design along with heuristics that guide you in the application of the approach.
Application of Formal Methods: structured design, object-oriented design or another formal method
Application of CASE Tools: t.b.d.
SQA Checklist:
1. Has the original design model been reviewed to ensure that it conforms to the the current code implementation?
2. Have all changes associated with the maintenance been integrated into the model?
3. Has each model been reviewed for completeness, consistency and correctness?
4. Have errors been found and corrected in each model?
5. Have models/classes that have undergone significant change been given additional attention during review?
6. Have the designers been trained in the analysis method that has been applied?
7. Has change control been applied as parts of the model have been baselined (large projects only)?
Do's & Don'ts
Do: Create a graphical representation of the design model. In most cases, it will be easier to present and review.
Do: Use CASE tools to assist you in the subtasks listed above.
Don't: Rush through this task. This is the place where quality is built!
Deliverables:
1. Modified Design model
2. Software Architecture Specification
3. Software Detailed Design Specification
IV.25.4 Create a revised test plan and procedure for maintenance.
Intent: The intent of this task is to create a revised test plan and procedure using information obtained from the data, architectural, procedural and interface design models.
Mechanics: Each of the design models provides information that is useful in deriving a revised test plan. The data and architectural design will assist in the derivation of black box tests for integration and validation testing. The procedural design and interface design will assist in the derivation of white box and black box tests for unit and integration testing. The emphasis here is twofold: (1) to uncover errors in any new or revised software and (2) to uncover side effects caused by changes.
Application of Formal Methods: test case design methods, see Testing references
Application of CASE Tools: t.b.d.
Do's & Don'ts
Do: Treat test case design with as much care as you treat the design of the software itself.
Do: Recognize that most software tests can be developed before any source code exists - as long as the design model is complete.
Don't: Forget regression testing to uncover side effects due to the maintenance.
Deliverables:
1. Preliminary Integration Test Plan and Strategy
2. Test cases
Use Browser "back" arrow or return to APM Process Design Language Description