Quality of Technology Management
The Race for Quality has no finish line

Software Acquisition Capability Maturity

What is Software Acquisition Capability Maturity? Why is it needed?

The phrase ‘Capability Maturity’ is generally associated with software companies and seen as a certificate of quality, thanks to promotional phrases like ‘A CMM (now CMMI) level 5 company’. This is similar to ‘This product confirms to BS:nnnn’. General users of products or services do not know what the BS standard says or the meaning of CMM level 5. What does the phrase ‘Capability Maturity’ mean? Does it exclusively belong to software companies? Let us analyse.

Capability is the ability to perform designated activities and to achieve results, which fulfil specified requirements (ISO9000-2000 definitions). Maturity means ‘Fully grown or developed’ (Chambers dictionary).

Let us put the words together and try to figure out the meaning of ‘Capability Maturity Level’. It means ‘The level or degree of growth or development of the ability to perform designated activities to achieve results, to fulfil specified requirements’.

Let us ponder. Can you delegate the phrase to the exclusive jurisdiction of software companies? To organizations alone? Definitely not. The phrase equally applies to any individual or organization performing any activity to achieve designated results.

Software can be acquired by various means such as acquire ready to use software (for a price or free), develop in-house or outsource development. For this, one has to perform designated activities. There is at least one specified requirement. The level of such capability, like any other capability, varies across individuals, organizations.

Let us analyse this threadbare. The key phrases are ‘perform designated activities’ and ‘specified requirements’. If becomes obvious that first and foremost step is to specify the requirements followed by defining the specified activities.

Let us consider two requirements definitions for the same activity.


  1. I want to computerise accounts receivable.
  2. I want to ensure that 95% of the receivables are realised on or before the due date. To facilitate this I want to inform all sales representatives, who are geographically dispersed, details of outstanding receipts at least ten days before the due date. This will enable them to plan their activities well in time.

The very act of requirements definition shows obvious differences in the level of capability maturity. Effectiveness of the solution will not be the same for these two targets.

Shall we now take it as settled that Software Acquisition Capability needs to be nurtured, developed for better performance?

Software Engineering Institute of Carnegie Mellon University has developed assessment models for that capability. The model describes various levels of maturity. See the table below.

 

Level

Focus

Key Process Areas

5
Optimizing

Continuous
process
improvement

. Acquisition Innovation Management
. Continuous Process Improvement

4
Quantitative

Quantitative
management

. Quantitative Acquisition Management
. Quantitative Process Management

3
Defined

Process
standardization

. Training Program
. Acquisition Risk Management
. Contract Performance Management
. Project Performance Management
. User Requirements
. Process Definition and Maintenance

2
Repeatable

Basic
project
management

. Transition to Support
. Evaluation
. Contract Tracking and Oversight
. Project Management
. Requirements Development and Mgt
. Solicitation
. Software Acquisition Planning

1
Initial

Competent people and heroics

Source: SA-CMM of Carnegie Mellon Software Engineering Institute

More information and the standard itself can be obtained from here.

Does every organization need to get assessed? Definitely not. Depending upon the size of the organization and level of software acquisition we may have to take one or more steps.


  • Be aware that the capability has to be developed. (This is a must. By now you have already taken the step).
  • Strive to achieve at least level 2. It may be too expensive for small and medium enterprises to go in a formal way. At least engage a knowledgeable person to coordinate software acquisition activities. Depending upon the size and needs of the organization he may be a full time or part time employee or a consultant on per project basis.
  • If your organization is large enough and have continuous software acquisition activities, form a full fledged team.

Happy Software Acquisition!

©Upendran KR - Ver 1.0 Rev 07.08.21  http://www.upendran.com
CC Logo
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License