This version of SWEHB is associated with NPR 7150.2B. Click for the latest version of the SWEHB based on NPR7150.2C
Topic 7.5 provides guidance on the development of a work breakdown structure (WBS) for software on projects. The WBS provides a common planning framework to use in estimating the scope of a project.
Per the NASA Systems Engineering Handbook 273(Section 184.108.40.206), a work breakdown structure is a hierarchical breakdown of the work necessary to complete a project. The WBS can be product- or process-oriented. A product-oriented WBS has work activities grouped by the product or service they support. A process-oriented WBS includes in the appropriate WBS element the work activities associated with the processes being used. 389The WBS provides the framework to plan, organize, and control a project. 388
Excellent information on the development and usage of the WBS can be found in NASA/SP-2010-3404, NASA Work Breakdown Structure (WBS) Handbook. 390 Additionally, both the NASA Systems Engineering Handbook 273and the "CMMI for Development, Guidelines for Process Integration and Product Improvement" 388 provide further guidance on the development of WBS structures containing software. The NASA Software Engineering curriculum, especially 389, addresses the use of the WBS for software on projects. These resources are cited in the Resources tab.
3. The Basic WBS
A project's software may be a stand-alone system or exist as part of a larger system or project. For example, for a space flight project, software may be shown under the Avionics subsystem. For both types, the WBS developer needs to be aware of the responsibilities required of his or her project.
As another example consider the following list-oriented approach to a WBS. Again, the use of NASA/SP-2010-3404, NASA Work Breakdown Structure (WBS) Handbook, 390 will help in the development of the lower levels of the WBS elements.
- SW Management (incl budget, schedule, contractor mgmt, risk, CM, training, IV&V coord, lesson learned, etc)
- SW Requirements Management
- SW Testbed Management
- CSCI Development
- CSCI Test
- CSC Test
- Sustaining Engineering
- Security (physical and IT)
The project's software may also be developed in the context of a product-driven structure. Lower level development of the WBS will include the approach to software development for the individual component or system to be produced in the sub-element. The following figure suggests several approaches for this type of WBS.
The WBS is updated iteratively over the project life cycle . The initial WBS is used for early estimating of cost and schedule. The detailed WBS helps organize and control the work done by populating the project's cost plans and schedule.
A companion WBS dictionary, which is also developed, fully describes the work being done including the title and objective of the element, expected products/services from each element, and the dependencies between elements.
The Software Development Plan (SDP-SMP) is a place to record the WBS of the life cycle processes and activities.
4. Common Issues
There are several work activities that are often forgotten in developing the WBS:
- Process planning and monitoring activities
- Requirement engineering activities
- Formal review activities
- Development activities
- Stakeholder activities
- Training activities
- Planning, documenting, and tracking of commitments from other organizations
- CMMI Development Team (2010). "CMMI for Development, Version 1.3: Improving processes for developing better products and services,"CMMI Development Team (2010). CMU/SEI-2010-TR-033, Software Engineering Institute.
Tools relative to this Topic may be found in the table below. You may wish to reference the Tools Table in this handbook for an evolving list of these and other tools in use at NASA. Note that this table should not be considered all-inclusive, nor is it an endorsement of any particular tool. Check with your Center to see what tools are available to facilitate compliance with this requirement.
No tools have been currently identified for this Topic. If you wish to suggest a tool, please leave a comment below.