Practical Software Measurement

13
Practical Software Measurement (PSM) Process Practical Software Measurement (PSM) Process By Ali Raza September 27, 2008 CPSC – 547 Dr. Chen

Transcript of Practical Software Measurement

Page 1: Practical Software Measurement

Practical Software Measurement (PSM) Process

Practical Software Measurement (PSM) Process

ByAli Raza

September 27, 2008

CPSC – 547

Dr. Chen

Page 2: Practical Software Measurement

Practical Software Measurement (PSM) Process

Table of Contents PSM - Introduction...................................................................................................................3

Software Measurement for managing a Software-Intensive Project........................................4

Elements of the Software Measurement Process.....................................................................4

Tailoring Software Measures...................................................................................................6

Applying Software Measures...................................................................................................6

Implementing a Measurement Process.....................................................................................7

Conclusion and Comments.......................................................................................................7

Page 3: Practical Software Measurement

Practical Software Measurement (PSM) Process

PSM - Introduction

Measurement is an important component of successful management in every engineering

discipline. PSM (Practical Software Measurement) is the foundation for objective project

management. PSM present a verified approach for tailoring and implementing an effective

measurement process for software product. Also the purpose of PSM is to provide project

managers with software information needed to make informed decisions that impact project cost,

schedule, and technical objectives.

PSM has developed to meet today’s software technical and management challenges.

PSM describe software measurement as a methodical, but adaptable process which is a key

element of the overall project measurement structure. Project issues drive the PSM measurement

process. The process is flexible to meet the specific information needs and characteristics of

each individual project. PSM measurement process is an information-driven measurement

process that addresses the unique technical and business goals of an organization. It is an

objective process for analyzing project issues, risk and financial measurement, which focus on

software project measurement. PSM process is based on the proven set of software measurement

principles derived from real world experience on government (DoD) and industry projects.

These principles actually represent measurement “best practices”. These best practices used by

measurement professionals within the software acquisition and engineering communities.

This essay is based upon the Practical Software Measurement (PSM) Part I. And also an

overview of PSM principles and techniques for tailoring, applying and implementing an efficient

software measurement process. In addition to the PSM principles, this essay will also describe

the activities related to PSM measurement process.

Page 4: Practical Software Measurement

Practical Software Measurement (PSM) Process

Software Measurement for managing a Software-Intensive Project

Successful output is very important in an enterprise environment, therefore software

management play a key role in a project life cycle. For successful outcome, project managers

need to apply proven software process which provides techniques and tools for planning,

monitoring and controlling.

Software measurement has established to be an effective technique in helping to manage

software-intensive projects. Project managers make software decisions based on the software

measurement tools. Therefore software measurement is critical to project success and as a result

it helps managers to do a better job. Project managers implement more realistic software plan

and monitor the progress against those plans by using the software measurements technique.

Also software measurements provide help to the managers so that they communicate effectively

throughout the project organization, identify and correct problems early, make the key trade off,

track specific project objectives and define and justify decisions.

Measurement also provides a baseline quantitative process for implementing risk management

and financial performance on a project. Measurement supports the quantitative discipline of risk

management and financial performance management. Those three disciplines have parallel

activities that define exceptions and concerns, establish associated project plans, and provide

appropriate information and feedback.

Elements of the Software Measurement ProcessPSM process defines three fundamental measurement activities; 1) tailor measures (the selection

of an effective and economical set of measures, 2) apply measures (which involves collecting

Page 5: Practical Software Measurement

Practical Software Measurement (PSM) Process

analyzing and acting upon the data defined in the tailoring process) and 3) implement process

(organizational changes necessary to establish measurement process). The measurement process

must be included into developers’ software process. And since software process is dynamic

therefore, the measurement process must also change and adapt as the project evolves.

Each project has different software issues and objective. Therefore to address measurement

requirement; PSM defines nine software measurement principles and also describe the

characteristics of an effective measurement process.

1) Project issues and objectives which drive the measurement requirement.

2) Developers’ software process. For the software measurement, we need to consider the

software process of the developer and the management process of the acquirer.

3) PSM process depends on the periodic collection, processing and analysis of measurement

data rather than on the review of pre-packaged analysis reports.

4) In PSM, it is recommended that both the acquirer and the developer establish and

maintain an independent measurement capability.

5) PSM process uses a systematic analysis process to trace the measures to the decisions.

There are three types of systematic analysis such as estimates, feasibility and

performance.

6) Interpret the measurement results in the context of other project information.

7) Integrate software measurement into the project management process throughout the

software life cycle

8) Use of the measurement process as a basic for objective communication

9) Focus initially on project-level analysis.

Page 6: Practical Software Measurement

Practical Software Measurement (PSM) Process

We can find issue-driven measurement approach and flexible analysis process in PSM guide Part

I. These processes have applied thorough out the project life cycle. PSM guide Part I discuss

three phase software life-cycle model consisting of Project Planning, Development and

Sustaining Engineering. Sustaining engineering continues to increase the focus on the issue of

product quality and away from growth and stability.

As we discussed that software measurement process is an integral part of software development,

support and acquisition process. Therefore appropriate resources must be allocated for the

measurement process to work-effectively. The most important roles would be executive

manager, project or technical manager, measurement analyst and project development team.

Tailoring Software MeasuresThe objective of the measurement tailoring process is to define the set of measures that provides

the greatest insight at the lowest cost. The basic concern in this activity is indentifying the

software issues that have the greatest potential impact on the project. The next tailoring activity

is to define appropriate project-specific measures. The measures are selected by applying the

PSM defined measurement tailoring mechanisms of common software issues, measurement

categories and measures. The main objective in this activity is to select measures most

appropriate to the issues. The final activity is integrating the measures into developer’s software

process. For tailoring software measures, PMS defines tailoring activities in detail. Such as

indentify and prioritize project issues, select and specify project measures, integrate measures

into the software process and organization software measurement.

Applying Software MeasuresIn this section of the guild, major activities have been discussed. Data is collected and converted

into the information that provides a basis for action by the project manager. During the

Page 7: Practical Software Measurement

Practical Software Measurement (PSM) Process

measurement application, the particular measures are collected and analyzed to provide the

feedback on the issue needed for effective decision-making.

Collecting and understanding measurement data is the first activity in analyzing project issue.

The key task in collecting and processing data are accessing the data, verifying the data and

normalizing the data.

Second activity is analyzing issues. During the analysis activity measurement indicators are

generated from the data collected activity as part of a systematic analysis process. The three

types of analysis include estimation, feasibility and performance.

Finally the last activity is making decisions. This last activity in the PSM measurement

application process encompasses three major tasks. Such as reporting information, selecting

alternative course of action and taking appropriate action based on that information.

Implementing a Measurement ProcessWe can implement measurement process with an organization the same way as we implement

new initiative or function. However, measurement represents a significant change in an

organization therefore, there are six key activities have describe by PSM. Such as obtain

organizational support, define measurement responsibilities, define measurement responsibilities

and provide measurement resources, initiate the measurement process, make use of measurement

result. For the measurement resources activity, we need to ensure that we have measurement

tools for instance, database, graphing and reporting tools, software analysis and modeling tools,

and measurement application tools etc. Measurement training required to the project personal

for implantation of measurement process.

Page 8: Practical Software Measurement

Practical Software Measurement (PSM) Process

Conclusion and CommentsOne of the most challenging tasks in developing and maintaining a software or system is to meet

critical project cost, schedule and technical objectives. Therefore PSM process play key role in

an enterprise environment. PSM is a foundation for objective project management which was

developed to meet today’s software and system technical and management challenges.

PSM process describes an information-driven measurement process that will address the unique

technical and business goals of a company. This guidance in PSM represents the best practices

used by measurement professionals within the software and system acquisition and engineering

communities.

By the help of Practical Software Measurement process activities, we would come to know how

we can start the measurement process which is most difficult task in my option. As per PSM

guide Part I we need to implement only a few measures to address the key issue. We need to

ensure that everyone in the organization understands both capabilities and limitations of the PSM

measurement process. We need to ensure that only the required measures are implemented

based on the issues and objectives of the organization. The unavailability of data may indicate a

low level of maturity in the developer’s software process. We may use basic commercially

available database, spreadsheet, and presentation graphics for the initial measurement process.

More advance and sophisticated tools can be added as required. Also all users must understand

what the measurement data represents.

At the end of PSM process we will get the measurement results. Those measurements should be

made an integral part of the project or organization. The project managers must be willing to

understand all kind of feedback positive or negative result from the measurement analysis.

Page 9: Practical Software Measurement

Practical Software Measurement (PSM) Process

PSM measurement process provides substantial benefit in addressing the original issues. By

using the PMS process we can clearly address the majority of the project issue and it can provide

information to support project management decisions. Most importantly, the upper management

can get the better understanding of the project.