Adding Product Lines,
Architectures, and
Software Reuse to the Software Acquisition
Capability
Maturity Model
Tara Ragan, U.S. Army Space and Missile Defense Command
Donald J. Reifer, Reifer Consultants, Inc.
Under sponsorship of the Ballistic Missile Defense Organization's Small Business Innovative Research program, we have been actively developing and promoting changes to the Software Acquisition Capability Maturity Model that stimulate increased software reuse through revised and improved acquisition practices. Such practices are aimed at helping buyers incorporate product lines, architectures, and reuse considerations into their decision processes and products throughout the acquisition lifecycle. Such practices are not only aimed at improving the way government program offices do business, they are also directed at enhancing the manner in which contractors manage their suppliers, especially in acquisitions that involve commercial-off-the-shelf packages and strategic partnerships.
paradigm shift has occurred in the way systems are being built. As more systems
are developed to open system standards, products once constructed from scratch
using custom designs are being replaced by product lines that contain large
quantities of commercial-off-the-shelf (COTS) hardware and software components.
Commercial and aerospace firms, as part of their current best practices, have
adopted these changes in the way systems are being built. For example, Lucent
has modified its software process to review all projects before they are given
go-ahead to ensure they conform to their architectural standards. Aerospace
firms like Northrop Grumman have done the same for product lines they have
developed, promoting software reuse across weapons systems within the radar and
air defense application domains.
As the emphasis
has shifted to product lines and architectures, considerable changes have been
occurring in the area of software process. The Software Engineering Institute
(SEI) has been changing the frameworks many organizations use to assess the
maturity of their software processes to include product line, architecture, and
software reuse concepts. For example, the SEI is strongly considering including
a new key process area (KPA) at Level 4 of its Software Capability Maturity
Model (SW-CMM) [1] called "Organization Software Asset Commonality." This KPA
requires organizations to exploit commonality that exists among software
products using state-of-the-art techniques like domain engineering.
To exploit commonality, this KPA requires
organizations to identify the software product lines that constitute their core
business and to populate these with reusable assets when appropriate. Other
changes are also being incorporated into Levels 2 and 3 KPAs in the forthcoming
Version 2 of the SW-CMM to support reuse. For example, the Level 2 KPA on
subcontractor management is being broadened to encompass improved acquisition
management and software supplier management practices. These improvements focus
on improving the manner in which relationships with suppliers (subcontractors,
strategic partners, COTS package vendors, etc.) are managed.
Unfortunately, the Software Acquisition Capability
Maturity Model (SA-CMM)[2] has not kept pace with the advances of the SW-CMM in
the area of product lines, architectures, and software reuse. The SA-CMM is a
sister framework to the SW-CMM that can be used by organizations that purchase
development of their software from third parties to assess the maturity of
processes used for software acquisition management. Such organizations include
government program offices and commercial firms that contract for their
software, e.g., many banks and insurance firms outsource their software to third
parties, or buy it via strategic partnerships, e.g., the way firms like Boeing
buy software for their commercial aircraft. Most of the process community would
argue that these types of software acquisition organizations should be at the
same level of maturity as those software organizations they are trying to
manage.
This article summarizes the results of a
Ballistic Missile Defense Organization (BMDO)-sponsored Phase I effort conducted
to determine what changes to the SA-CMM are needed to exploit the advances being
made in the areas of product lines, architectures, and software reuse. Our Phase
I effort recommended over 30 changes to the SA-CMM [3] and confirmed that there
is a market for aligned products and services[4]. It also validated the promise
of these changes using pilot project appraisals and ensured that these proposals
are consistent with Version 2 of the SW-CMM. During Phase II, we will prototype
these products and services and demonstrate their value by continued beta
testing on trial projects.
The SA-CMM Framework
The SA-CMM describes the processes software buyers use to acquire,
sustain, and maintain software. It provides a framework to establish benchmarks
and improve an organization's software acquisition processes. It is a staged
model in which processes are organized into KPAs with an architecture similar to
the SW-CMM. There are five levels of process maturity through which software
acquisition organizations evolve:
| Level | Focus | Key Process Areas |
| 5. Optimizing | Continuous Process Improvement |
Acquisition Innovation Management, Continuous Process Implementation |
| 4. Quanitative | Quanitative Management |
Quanitative Acquisition Management, Quanitative Process Management |
| 3. Defined | Process Standardization |
Training Program, Acquisition Risk Management, Contract Performance Management, Project Performance Management, Process Definition and Maintenance |
| 2. Repeatable | Basic Acquisition Management |
Transition to Support Evaluation, Contract Tracking and Oversight, Project Management, Requirements Development Management, Solicitation, Software Acquisition Planning |
| 1. Initial | Competent People and Heroics |
Recommended Changes to the
Framework
As part of our Phase I efforts, we performed a detailed
analysis of the SA-CMM to scope the changes needed to take advantage of product
line, architecture, and reuse concepts. Our goal was to determine what changes
were needed to stimulate adoption of software reuse concepts as part of the
processes program offices use to manage the acquisition of their software.
Definitions for key terms, desired outcomes, and best practices were those
previously agreed to by Department of Defense (DoD) representatives, published
in 1995 as the DoD Software Reuse Initiative's Strategic Plan [5].
As a result of this analysis, 34 changes were
recommended to the existing SA-CMM framework. To develop our recommendations,
each of the framework's KPAs was analyzed, along with related change requests
submitted to the SEI during the past year. Based on discussions with the SEI
principals, our suggested changes were structured as examples, elaborations, and
extensions to existing material to minimize the impact of the changes on the
overall document.
We did not believe the existing
framework needed to be altered. Instead, we opted to provide its users with
guidance on how to make the existing framework work for reuse with product lines
and architectures in mind. For example, we suggested adding reuse considerations
to acquisition plans and recommended that owners of the architecture be
delineated in the software acquisition plan, with their roles and
responsibilities.
Validation by Experts
The proposed changes were peer-reviewed by a group of software
reuse experts from government and industry at the Reuse '97 Workshop held in
Morgantown, W. Va. in July 1997. We wanted to ensure that the software reuse and
process communities agreed with our changes. After reaching consensus, we
submitted the changes to the SEI for incorporation into the next release of the
SA-CMM. The experts who participated in the peer review included
Piloting the Results
We also wanted to ensure that our suggested changes stimulated
increased reuse. We sought out organizations within government and industry that
would let us prove the value of our ideas via what we called a "quick-look"
appraisal of their programs. It is interesting to note that few of the program
offices we approached were interested in conducting a complete, formal
appraisal. They were either too busy or did not have the staff to support the
formal appraisal process. They also were concerned about the increased workload
and scrutiny that could result from the appraisal's findings. As such,
appraisals turned out to be hard to sell.
We began
the piloting task by modifying the SEI-developed SA-CMM appraisal questionnaire
to incorporate product line, architecture, and software reuse considerations. We
soon concluded that it would be easier to replace the SEI-developed
questionnaire with a new one because software reuse concepts could not easily be
retrofitted into the document. In response to this need, we developed our own
appraisal questionnaire [6]. We also developed a briefing that provided an
overview of our Small Business Innovative Research (SBIR) effort and used it
several times to solicit acquisition organization participation in pilot
appraisals.
Using our questionnaire, we conducted a
series of "quick-look" appraisals of the acquisition processes used by two
Northrop Grumman and two U.S. Army program management offices. These appraisals
validated that the changes recommended to the SA-CMM are valuable and stimulate
increased reuse. They had the added benefit of providing the pilot projects with
constructive improvement recommendations in areas other than software reuse.
They also proved useful in helping us identify priorities for candidate products
and services we will provide during our Phase II effort to quicken the transfer
of reuse technology via acquisition process alignment.
The lessons we learned as we tried to get projects
to participate in appraisals helped us understand the issues software
acquisition managers have relative to the SA-CMM and reuse. Their concerns are
summarized in the following five questions:
Market Survey
In parallel with these activities, we conducted a market analysis
and developed a business plan and business case [8] to excite support among
potential investors for our Phase II SBIR activities. We began this activity by
scoping the market for prospective SA-CMM products and services. We wanted to
ensure that whatever we proposed to develop during our Phase II SBIR effort had
high commercialization potential. We developed a market survey questionnaire and
used it to canvass targeted organizations, both industry and government, to
determine the size and characteristics of the market for prospective SA-CMM
products and services. The results of the survey were extremely encouraging.
They indicated that the annual return on our projected Phase II investment
should be close to 58 percent. These high returns justified our plans to pursue
Phase II support.
We then used the results of the
survey to develop a business plan and business case. This plan was used to show
investors the potential returns if they elected to fund our future activities.
Based on the positive results we projected in this plan and during the pilot
appraisals, Northrop Grumman elected to partner with us to solicit Phase I
Interim and Phase II fast-track funding from our BMDO sponsors. Their cash
investments have been instrumental in helping us secure BMDO Phase I Interim and
Phase II funding.
Potential Phase II Products
and Services
Based on the results of our market survey and our
piloting efforts, we can conclude that a market seems to exist for the following
SA-CMM products and services:
Findings and
Conclusions
The four pilot appraisals proved beyond a doubt that
it is feasible to use the modified SA-CMM (based on our recommended changes) to
stimulate increased use of product line, architecture, and software reuse
concepts. These appraisals also helped us understand where acquisition
organizations need help, especially when they adopt the SA-CMM. These needs
translate into the following process requirements for our Phase II efforts.
About the Authors
Tara Ragan is a computer engineer with the Advanced
Technology Directorate of the U.S. Army Space and Missile Defense Command. She
has 14 years progressive software engineering experience in government and
industry, including involvement in all phases of the software acquisition and
development lifecycle. She has performed SW-CMM-based Software Capability
Evaluations for the Army and BMDO since 1991. She is currently the governmental
technical representative on several SBIR efforts, including the subject
BMDO-sponsored Phase II SBIR effort with RCI. She has a bachelor's degree in
computer science from the University of Alabama and has done postgraduate work
at the University of Alabama in Huntsville. She is an Army Acquisition Corps
Level III professional, a member of the Institute of Electrical and Electronics
Engineers (IEEE) Computer Society, and the Huntsville, Ala. area Software
Process Improvement Network.
U.S. Army Space and Missile Defense Command
ATTN: SMDC-TC-AS/Ragan
P. O. Box 1500
Huntsville, AL 35807-3801
Voice: 205-955-3515
E-mail: ragant@smdc.army.mil
Donald J. Reifer
is one of the leading figures in the fields of software engineering and
management, with over 30 years of progressive experience in government and
industry. From 1993 to 1995, he was chief of the Ada Joint Program Office,
technical adviser to the Center for Software, and director of the DoD Software
Reuse Initiative under an Intergovernmental Personnel Act assignment with the
Defense Information Systems Agency. He is president of RCI, which specializes in
helping clients improve the way they do business. He has a bachelor's degree in
electrical engineering from New Jersey Institute of Technology, a master's
degree in operations research from the University of Southern California, and a
certificate in business management (MBA equivalent) from University of
California at Los Angeles. His many honors include the Secretary of Defense's
Medal for Outstanding Public Service, the NASA Distinguished Service Medal, the
Frieman Award, and the Hughes Aircraft Fellowship. ReferencesReifer Consultants, Inc.
P.O. Box 4046,
Torrance, CA 90505
Voice and fax: 310-530-4493
E-mail: d.reifer@ieee.org