Finding the Solution to Crappy Software

Example 2: A food service company had begun deployment of a customized standard foodservice distribution system ($400+ million project), and were experiencing significant quality issues that threatened to derail the entire project. This system was to be placed in over 50 distribution centers, but the project was hampered in technical and functional quality issues that put a hold on the entire project. Users revolted and remaining distribution centers refused to accept the system.

The solution was to focus our efforts on stabilizing the application, utilizing a standard ALM with built in quality control checks. Then we established and trained two implementation teams utilizing the same QA implementation process for installing and quality testing the system to ensure user satisfaction before going live.

The result was the successful creation of a standard system in all locations across the country. Subsequently, the development organization matured and reached a Level 5 where quality was totally integrated into the ALM and utilized through every aspect of IT services.

Operational Lifecycle Quality Management (LQM): The principles of LQM are applied to cross-project and/or cross-departmental improvement programs. There is executive level commitment to upstream quality, plus cross-organizational initiatives, such as requirements based testing (RBT), to ensure that testing is supporting business objectives. At this stage of the evolution path there is some level of integration with ALM. Processes are in place to facilitate the sharing of best practices across geographically distributed teams. The organization will have implemented a form of process re-engineering to make software development and testing more effective.

Example: The software development function within General Dynamics was clearly at this level. Operational LQM was universally applied cross projects and across departments, and even across the different divisions of the company. It was common to find integrated development “red” teams, formed from the aerospace, electronics and submarine divisions. We operated using LQM principles and a standard ALM. A single human resources system was developed and implemented in this environment, as well as several common data center management and service center systems. Proceeding along this path naturally evolved General Dynamics up to Level 5.

Enterprise LQM: Testing is tightly integrated with other lifecycle functions. There is full integration with ALM, and a systemic approach to cost and risk reduction. CIO-driven programs implement further and continuous improvement through initiatives such as standardization of testing process and technology; the use of virtualization techniques for resource sharing; and the establishment of a center of excellence for QA to provide quality services to other parts of the organization, including system, integration, regression, platform/environmental and load/performance testing.

Example: General Dynamics software development function evolved to operate at this level. When General Dynamics divested itself of its IT organization this corporate department subsequently became part of Computer Science Corp. The company had a robust, but flexible, ALM with a quality management program fully integrated throughout the process. A QA function worked in close harmony with all the development and operational units to ensure the latest quality tools and services were made available and applied. The QA function was an active participant in all project reviews, which included budget, schedule and quality performance.