Archives of Directives

Archive

DOE G 200.1-1, Software Engineering Methodology TOC

Functional areas: Information Technology, Software Engineering

Table of contents for the guide
g2001-1.pdf23.30KB
Version history and related documents

Superseded by

A newer version replaces this document.

View full version history

Document text

Text extracted from the attached file. Refer to the original document for the authoritative version.

Section 1

Department of Energy (DOE) Software Engineering Methodology March 1996 U. S. DEPARTMENT OF ENERGY Assistant Secretary for Human Resources and Administration Office of the Chief Information Officer Date: March 1996 Page Rev Date: i TITLE PAGE Document Name: Department of Energy Software Engineering Methodology Publication Date: March 1996 Contract Number: DE-AC01-95AD34277 Project Number: Task: 26-433-08-7-01 CDSI: 4001 Approval: __________________________ Wayne Jones, HR-433 U.S. DEPARTMENT OF ENERGY Assistant Secretary for Human Resources and Administration Office of the Chief Information Officer Acknowledgements Date: March 1996 Acknowledgements Page Rev Date: ii The compilation/development of the Department of Energy Software Engineering Methodology was performed as part of a continuing effort to improve the quality, performance, and productivity of Departmental information systems. Many Departmental and contractor personnel were involved in the development of the document as contributors or reviewers. The following team of Departmental and contractor personnel served on the Steering Committee for the project. They generated the philosophical framework for the lifecycle methodology and provided oversight and guidance during the initial development process. Paul Barkley Molly Jekel Brenda Coblentz Wayne Jones Roger Collins John Kramer Mark Gordy Kathy McGlaughlin Cheryle Greenaugh Philip Quarry William Greiner Richard Tittle The following individuals were the principal contributors to the document. Andrew Bicocchi Marilyn Morein Kathleen Canal Margaret Webber Denise Miller Credit must also be given to the many reviewers who provided invaluable input and feedback, and made useful suggestions for improving the content and presentation of information. Paul Asbury Ron Lauzon Lewis Bachman Fahy Low Lorin Beehler Michael Mullan Carl Brown Pam Pagnotta Jo Buxton Clif Quinn Alison Campbell Deborah Reynolds Ann Heeney Daniel Rupinski Kim Hunter Toni Russell Anne Imrie Pat A. Simmons Gail Kallmyer Sammy Slough William King Ruth Ann Smith Milton Kowalewski Kimberly Wandersee Robert Kuehne Harry Yocum Table of Contents Chapter Page Date: March 1996 Table of Contents Page Rev Date: iii 1.0 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.0-1 1.1 Implementation of Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1-1 1.2 Submitting Change Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2-1 2.0 Lifecycle Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.0-1 2.1 Project Sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1-1 2.2 Adapting the Lifecycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2-1 2.3 Development Methodologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3-1

Section 2

3.0 Planning Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.0-1 3.1 Analyze User Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1-1 3.2 Define Project Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2-1 3.3 Define Project Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3-1 3.4 Develop High-Level Project Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4-1 3.5 Establish Communication With Functional Areas . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5-1 3.6 Determine Project Feasibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-1 3.6.1 Investigate Software Alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-3 3.6.2 Investigate Hardware Alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-7 3.6.3 Formulate Platform Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-8 3.6.4 Conduct Feasibility Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-9 3.6.5 Conduct Analysis of Benefits and Costs . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-11 3.6.6 Conduct Feasibility Study . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-12 3.6.6.1 Analyze the alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6-14 3.6.6.2 Determine feasibility recommendations . . . . . . . . . . . . . . . . . 3.6-15 3.6.6.3 Develop feasibility study document . . . . . . . . . . . . . . . . . . . . 3.6-16 3.7 Develop Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7-1 3.8 Develop Software Quality Assurance Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8-1 3.9 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9-1 3.10 Conduct Planning Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10-1 4.0 Requirements Definition Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.0-1 4.1 Develop Software Configuration Management Plan . . . . . . . . . . . . . . . . . . . . . . . . 4.1-1 4.2 Select Requirements Analysis Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2-1 4.3 Define Project Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-1 4.3.1 Define Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-3 4.3.2 Define Input and Output Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-5 4.3.3 Define Performance Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-6 4.3.4 Define User Interface Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-7 4.3.5 Define System Interface Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-8 4.3.6 Define Communication Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-9 4.3.7 Define Computer Security and Access Requirements . . . . . . . . . . . . . . . 4.3-10 4.3.8 Define Backup and Recovery Requirements . . . . . . . . . . . . . . . . . . . . . . 4.3-13 4.3.9 Define Data Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-16

Section 3

Table of Contents Chapter Page Date: March 1996 Table of Contents Page Rev Date: iv 4.3.10 Define Implementation Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3-17 4.4 Compile Project Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4-1 4.4.1 Develop Requirements Traceability Matrix . . . . . . . . . . . . . . . . . . . . . . . 4.4-2 4.4.2 Develop Software Requirements Specification . . . . . . . . . . . . . . . . . . . . . 4.4-4 4.5 Establish Functional Baseline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5-1 4.6 Develop Project Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6-1 4.6.1 Identify Test Methodologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6-3 4.6.2 Identify Test Phases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6-4 4.6.3 Identify Test Environment Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 4.6-6 4.7 Develop Acceptance Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7-1 4.8 Select Design Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8-1 4.9 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.9-1 4.10 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.10-1 4.11 Conduct Requirements Definition Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.11-1 5.0 Functional Design Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.0-1 5.1 Determine Software Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1-1 5.1.1 Identify Design Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1-2 5.1.2 Identify Design Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1-4 5.2 Design Content of System Inputs and Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2-1 5.3 Design User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-1 5.3.1 Design Menu Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-3 5.3.2 Design Data Entry Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-5 5.3.3 Design Display Screens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-6 5.3.4 Design Online Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-8 5.3.5 Design System Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.3-10 5.4 Design System Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4-1 5.5 Design System Security Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5-1 5.6 Build Logical Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6-1 5.7 Build Data Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.7-1 5.8 Develop Functional Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8-1

Section 4

5.8.1 Develop Functional Design Document . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8-2 5.8.2 Conduct Functional Design Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8-3 5.9 Initiate Procurement of Hardware and Software . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.9-1 5.10 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.10-1 5.11 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.11-1 5.12 Conduct Functional Design Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.12-1 Table of Contents Chapter Page Date: March 1996 Table of Contents Page Rev Date: v 6.0 System Design Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.0-1 6.1 Select System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1-1 6.1.1 Evaluate System Architecture Alternatives . . . . . . . . . . . . . . . . . . . . . . . . 6.1-2 6.1.2 Recommend System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1-5 6.2 Design Specifications for Software Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2-1 6.3 Design Physical Model and Data Base Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3-1 6.4 Develop Integration Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4-1 6.5 Develop System Test Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5-1 6.6 Develop Conversion Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6-1 6.7 Develop System Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7-1 6.7.1 Develop System Design Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7-2 6.7.2 Conduct Critical Design Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7-3 6.8 Develop Program Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.8-1 6.9 Define Programming Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.9-1 6.10 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.10-1 6.11 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.11-1 6.12 Conduct System Design Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.12-1 7.0 Programming Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.0-1 7.1 Develop Acquisition Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1-1 7.2 Develop Installation Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2-1 7.3 Establish Programming Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.1 7.4 Write Programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4-1 7.5 Conduct Unit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5-1 7.6 Establish Development Baselines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6-1 7.7 Plan Transition to Operational Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7-1 7.8 Generate Operating Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.8-1

Section 5

7.8.1 Produce Users Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.8-3 7.8.2 Produce Programmers Reference Manual . . . . . . . . . . . . . . . . . . . . . . . . . 7.8-5 7.9 Develop Training Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.9-1 7.10 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.10-1 7.11 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.11-1 7.12 Conduct Programming Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.12-1 8.0 Software Integration and Testing Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.0-1 8.1 Conduct Integration Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.1-1 8.2 Conduct System Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.2-1 8.3 Initiate Acceptance Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.3-1 8.4 Conduct Acceptance Test Team Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4-1 8.5 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5-1 8.6 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.6-1 8.7 Conduct Software Integration and Testing Stage Exit . . . . . . . . . . . . . . . . . . . . . . . 8.7-1 9.0 Installation and Acceptance Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.0-1 Table of Contents Chapter Page Date: March 1996 Table of Contents Page Rev Date: vi 9.1 Perform Installation Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.1-1 9.2 Conduct Installation Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2-1 9.3 Conduct User Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3-1 9.4 Conduct Acceptance Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4-1 9.5 Conclude Acceptance Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.5-1 9.6 Transition to Operational Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6-1 9.7 Revise Project Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.7-1 9.8 Conduct In-Stage Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.8-1 9.9 Conduct Installation and Acceptance Stage Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.9-1 10.0 Software Maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.0-1 10.1 Problem/Modification Identification Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.1-1 10.2 Analysis Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2-1 10.3 Design Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3-1 10.4 Programming Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4-1 10.5 System Test Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.5-1 10.6 Acceptance Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.6-1 10.7 Delivery Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.7-1 Appendix A Glossary B List of Abbreviations C Conducting Structured Walkthroughs D In-Stage Assessment Process Guide E Stage Exit Process Guide F Computer System Retirement Guidelines G Site-Specific Information Systems Environment

Something wrong with this record? Tell us