Академический Документы
Профессиональный Документы
Культура Документы
Phase/Activity Task/Subtasks Potential Deliverables Lifecycle Definition This version of an Incremental Release Lifecycle Model is a combination of Traditional Waterfall and Spiral Development. The Business Requirements and Conceptual Design are established for the entire system. Based on the Implementation Strategy each System Function (Product Component) is cycled through Functional Design, Construction, and Implementation. When all Functions for a Release are complete, the system is assembled and following successful Acceptance Tests by the customers is moved into Production. Implementation Cycles overlap and the process is improved through each iteration. This model was intentionally created to be consistent with the other DHS OIS lifecycle models. Note: The numbering starts at 3 to enable integration into the project management lifecycle Execution Phase which is the third of five project phases. The following activities, tasks and deliverables should be reviewed for each project on a case-by-case basis. Projects may utilize this model and adapt or tailor to the specific needs of the project. This means that not all activities and tasks are necessary for every project, and that additional activities and tasks may need to be included. Specific deliverables depend on the tools and techniques used by the development staff and on the existing documentation. The deliverables listed are examples of possible deliverables. 3. Execution
3.1 Feasibility Study Note: Requirements definition is an extension of the process started in the Feasibility Study. Please see the Feasibility Lifecycle model to determine if all or some of the steps are necessary. 3.2 Define Requirements The purpose of this phase is to establish a common understanding between the customers and the software project of the customers requirements that will be addressed by the software project. All system development work should be traceable to the various levels of requirements, i.e. product description, project objectives, hi-level requirements. Changes to the Requirements should be managed according to their impact on the projects cost, schedule, and quality (scope). Note: Requirements definition is an extension of the process started in the feasibility study, if one was performed. 3.2.1 Identify Refine the Feasibility Study with Updates Feasibility and describe the increasing detail to: Study business area(s) to be Identify additional Stakeholders Updated affected by the new groups impacted by the system Requirements system development. Traceability Matrix or Stakeholder List Define the current business processes Context Diagram Define the current technology infrastructure, applications and Procedure flow databases diagrams Define the external system interfaces and primary data exchanges. Identify the sources and destinations of each primary data exchange. Identify and prioritize candidates for procedural change and automation. Descriptions of existing reports and documents Candidates for procedural change Business Rules Business Use Cases Business Actors 3.2.2 Develop Follow the projects requirement Requirements
1 Incremental Development /var/www/apps/conversion/current/tmp/scratch27207/95340241.doc
Decision point for the Steering Committee: For approval of the work completed To authorize continued work on the project.
3.3 Conceptual Design The purpose of this phase is to develop the high-level Conceptual Design and Implementation Strategy. The Conceptual Design is developed based on applicable standards and best practices and is used to incorporate the business requirements into the system design. The Implementation Strategy identifies the potential release strategies for the Steering Committee decision on how to deliver the system. 3.3.1 Develop the Conceptual Design Identify best practices for the system being developed Define the systems basic functionality
Incremental Development /var/www/apps/conversion/current/tmp/scratch27207/95340241.doc
3.3.3 Define environmental controls (e.g., security, contingency planning, restart recovery)
Specifications for security, contingency and back-up/restart requirements Use Case definition Audit and control specifications Audit trail capture and reporting requirements Use Case definition Common routine/ software tool specifications Identification of existing reusable code to use Product delivery plan Implementation Strategy Release Strategy Hardware and communications resource acquisition requirements. Updates to Technology
3
Identify the requirements to be automated Identify the software functions that will be developed as common routines or software tools. Identify the functions to be delivered in the planned versions of the system. Note: This activity is included for use in large development efforts in which there is need to deliver the product in phases or versions instead of as the result of a single project. Determine the impact of processing and storage volumes on the hardware (data storage, processor capacity) and on communications resources. Note: If the system requires the acquisition of new hardware and
Decision point for the Steering Committee: For approval of the work completed Conceptual Design Report & Implementation Strategy Collect concurrence agreements from Major OIS Sections and Business To authorize continued work on the project.
3.4 Functional Design The purpose of this phase is to define the detailed functional and technical design aspects of a release. The work completed in this phase should be sufficiently detailed to provide the construction team with specific information for how the application should work. It is essential that business customers define the necessary detail for system functionality rather than relying on the technical teams interpretation of how to implement the business requirements. Object Oriented Analysis & Design Tasks & Deliverables are used in the rest of this model. Structured Analysis & Design techniques can be used in place of these, with minor changes to descriptions. Note: The use of prototyping and Joint Application Design (JAD) are recommended for the design of reports, screens and documents. See the RAD template to use activities related to prototyping. 3.4.1 Plan for Develop Business Reengineering Plan Business Implementation to plan for and guide the changes in Reengineering Plan business processes that are necessary to Implementation Plan implement the system/release. Security Model Define the Implementation Plan that specifically describe how the Support Plan system/release will be transitioned into Production (i.e., training, data conversion, switchover) Define the post production user support (Help Desk, etc.).
Incremental Development /var/www/apps/conversion/current/tmp/scratch27207/95340241.doc 4
Installed hardware and software ready for use in the development process.
System prototypes Screen designs Form designs Report designs Design Model (that describes the realization of the Use Cases) UML Diagrams, Class Diagrams, Activity Diagrams,
Define test cases (started early so that during Test Cases the development of the use case the each test Installed hardware and case is being defined). software ready for use in Ensure that the test environment is ready for the test process. use Identify the data required to support the system functionality. Normalize the data model. Identify data segments or records based on the way data will be used in the system. Logical Data Model fully attributed with relationships, roles, cardinality, and optionality. Physical data base design
3.4.9 Refine the Conceptual Data Model into a logical, application data model
Map the logical data base design to the specific data base or file management system(s) to be used. Describe the data as it will be stored on the physical media.
Update Conceptual Design data, process, and technology Update Project Plan, Schedule, Budget Reevaluate technical infrastructure storage utilization, capacity estimates, hardware acquisition
Plan for file/database conversions identify conversion requirements and the programs and controls required for conversion. Identify required user, support staff and/or operator documentation and training
Updates to Implementation Plan data conversion plan and schedule, training plan and schedule Issues, Risks, Defects, Change Requests
Validate the designs (logical and physical) to ensure that they adequately fulfill requirements. Validate that all requirements have been addressed
Decision point for the Steering Committee: For approval of the work completed To authorize continued work on the project. To confirm commitment of the implementation plan by all effected groups.
3.5 System Construction The purpose of this phase is to build and unit test the system components application code, database definition language (DDL), user procedures, and test plans. 3.5.1 Build Test Define test cases, create test data, identify System Test Plans Environment test criteria include platforms and data validation. 3.5.2 Write System Documentation Write on-line help files Write user procedures, compile into user Operator Manual Administrator Manual
6
Decision point for the Steering Committee: For approval of the work completed To authorize continued work on the project. Ensure that the production environment (including users, operations personnel, and support staff) is prepared for the start of production. Install required new hardware, system software, and communications systems. Perform data conversions Perform environment tests Note: For applications to be run by computer operations all forms must be filled out and submitted, as required by current procedures.
Operations schedules (batch schedule and online availability) Programs transferred to production libraries Production job control or command lists available New or changed security data (passwords, etc.) in the proper tables Users and support staff of systems that may be effected by the new system advised of the transition System in Production
3.6.5 System
Deploy
Move system into production use Performance tune application/database as necessary Evaluate project performance Evaluate system performance to measure how well it meets user expectations
Updates to Project Plan, Schedule, and all previous work Lessons Learned