Implementation Stages For The Integrated Paper
Essay Preview: Implementation Stages For The Integrated Paper
Report this essay
Implementation Stages for the Integrated Training Suite Paper
Brian Kozma
BSA 375. Fundamentals of Business Systems Development
Facilitator D. Sitek
December 11, 2005
University of Phoenix
Implementation Stages for the Integrated Training Suite Paper
The Integrated Training Suite implementation plan provides a single set of performance, controls across the program that apply to prime and subcontractor alike. Every integrated product team provides all engineering, development, installation, documents, test skills and efforts necessary to deliver their total product. Software required for a product is designed, developed, and integrated within that integrated product team. The integrated product team integrates the total product: hardware, software, and data before delivering the product to the next higher integrated product team for integration with other products. Thus, each integrated product team has total performance responsibility for the assigned product.
Documents
Table 1 lists the most common documents that were used in order to develop the Integrated Training Suite.
Title
Description
Ada 95 Quality and Style and Coding Standards Document
Guidelines for Professional Programmers / Software Productivity Consortium.
Code and Unit Test process
Use by programmers to identifies the process flow, the work products, and the reviews to be held to ensure code is being developed and tested accurately and effectively
Configuration Management installation and checkout procedure
Used to identify the process and functional area interfaces required for successful installation and checkout
Human-Computer Interface Style Guide
Software Development Plan
Describes the processes, controls, and tools applied to the management, design, and development, of the Integrated Training Suite software
Qualification Test Procedures
Describes the process to develop test procedures to evaluate system level requirements
Table 1 Applicable Documents
From Lockheed Martin Software Development Plan
Code and Unit Test
Coding
This activity converts the detailed design into source code and ensures that the resulting source code operates as designed. Software engineers use the software design model or the Software Design Document as the basis for coding. Requirements allocated to software units will be stated such that there is no ambiguity during the coding process as to which object, module, and procedure will satisfy the associated software requirement. Specifying the requirements in this manner will aid the requirements traceability process. In addition, requirements mapped to software will be stated in such a manner as to not conflict with the design and coding standards established for the integrated training suite program. Design reviews will be held prior to the start of coding for each object to ensure that no associated requirements are missing or incorrect and that each requirement is traceable backwards to the next higher level of requirements. If requirements are not clear enough for coding implementation, the software engineer assigned contacts systems engineering for further clarification.
Coding standards are defined for the integrated training suite program in the Ada 95 Quality and Style Guide, C++ Quality and Style Guide, Human Computer Interfaces Guide, Structured Query Language, and the Object Database Standards. The Ada 95 Quality and Style Guide were produced-based on the Ada 95 Quality and Style Guide published by the Software Productivity Consortium. The C++ Quality and Style Guide, was produced consistent with the ANSI C++ standards with the exception of machine-generated code. The Human Computer Interfaces guide was developed using the Recommended Practice for Human-Computer Interface for Space System Operations and the OSF/Motif Style Guide. The Structured Query Language, SQL, products are designed to be compliant with the American National Standards Institute, as implemented and documented by the Sybase relational database management system (Lockheed Martin, 2005).
During this phase, detailed unit test cases are developed to demonstrate that the units perform their intended functions. These test cases combine to show requirements coverage for normal operational conditions, abnormal operational conditions, and low-level requirements compliance. Completed units are analyzed for requirements and structural coverage to ensure all requirements are addressed and that all code has been tested. Some requirements coverage may be deferred to subsequent software and system integration testing to complete full requirements coverage. Peer reviews are performed as defined in the peer review plan to examine compliance to design and standards. The primary products of this activity are source code, unit test procedures, and unit test reports. At the completion of the software implementation, the software engineer updates the appropriate software development file and completes a development release notice, a build request, and provides these documents to the software librarian to indicate that the unit is ready for integration.
Unit Test
Software peer reviews are conducted on new or modified code as defined in the peer review plan. Unit level testing is performed on each software component upon completion of the peer review for the component. The testing is primarily at the source code level to ensure all logic paths are covered and is compared where possible to analytical models or simulations for correctness. All newly developed or modified software units are unit tested. The unit test plan is reviewed using the standard peer review process with the specific unit test peer review checklist. The software engineer then conducts unit tests in the engineers directory. The unit test plan identifies the inputs and expected outputs of the unit tests. The software engineer saves the unit test results in the software development file to support future analyses, modifications and regression test.
Revision and Re-testing
If the unit does not successfully complete the unit tests, the software engineer is responsible for