SPM Unit-4
SPM Unit-4
A software Project Manager is responsible for meeting the requirements of a contract or some
other project compliance standard
Software Engineering Environment Authority( SEEA )
The SEEA is responsible for automating the organization’s process, maintaining the organization’s
standard environment, Training projects to use the environment & maintaining organization-wide
reusable assets
The SEEA role is necessary to achieve a significant ROI for common process.
Infrastructure
An organization’s infrastructure provides human resources support, project-
independent research & development, & other capital software engineering assets.
2) Project organizations:
Software Management
Artifacts Activities
• The above figure shows a default project organization and maps project-level roles and
responsibilities.
• The main features of the default organization are as follows:
• The project management team is an active participant, responsible for producing as well as
managing.
• The architecture team is responsible for real artifacts and for the integration of components,
not just for staff functions.
• The development team owns the component construction and maintenance activities.
• The assessment team is separate from development.
• Quality is everyone’s into all activities and checkpoints.
• Each team takes responsibility for a different quality perspective.
3) EVOLUTION OF ORGANIZATIONS:
Software Software
Management Management
50% 10%
Inception Elaboration
Software Software
Management Management
10% 10%
Transition Construction
Inception: Elaboration:
Software management: 50% Software management: 10%
Software Architecture: 20% Software Architecture: 50%
Software development: 20% Software development: 20%
Software Assessment Software Assessment
(measurement/evaluation):10% (measurement/evaluation):20%
Construction: Transition:
Software management: 10% Software management: 10%
Software Architecture: 10% Software Architecture: 5%
Software development: 50% Software development: 35%
Software Assessment Software Assessment
(measurement/evaluation):30% (measurement/evaluation):50%
The Process Automation:
Introductory Remarks:
The environment must be the first-class artifact of the process.
Process automation & change management is critical to an iterative process. If the change is expensive then
the development organization will resist it.
Round-trip engineering & integrated environments promote change freedom & effective evolution of
technical artifacts.
Metric automation is crucial to effective project control.
External stakeholders need access to environment resources to improve interaction with the development team
& add value to the process.
The three levels of process which requires a certain degree of process automation for the corresponding process
to be carried out efficiently.
Metaprocess (Line of business): The automation support for this level is called an infrastructure.
Macroproces (project): The automation support for a project’s process is called an environment.
Microprocess (iteration): The automation support for generating artifacts is generally called a
tool.
Change management
II. Configuration Baseline
A configuration baseline is a named collection of software components &Supporting documentation
that is subjected to change management & is upgraded, maintained, tested, statuses & obsolesced a
unit There are generally two classes of baselines
External Product Release
Internal testing Release
Three levels of baseline releases are required for most Systems
1. Major release (N)
2. Minor Release (M)
3. Interim (temporary) Release (X)
Major release represents a new generation of the product or project
A minor release represents the same basic product but with enhanced features, performance or
quality. Major & Minor releases are intended to be external product releases that are persistent &
supported for a period of time.
An interim release corresponds to a developmental configuration that is intended to be transient.
Once software is placed in a controlled baseline all changes are tracked such that a distinction must be
made for the cause of the change. Change categories are
Type 0: Critical Failures (must be fixed before release)
Type 1: A bug or defect either does not impair (Harm) the usefulness of the system or can be worked
around
Type 2: A change that is an enhancement rather than a response to a
defect Type 3: A change that is necessitated by the update to the
environment Type 4: Changes that are not accommodated by the other
categories.
Change Management
III Configuration Control Board (CCB)
A CCB is a team of people that functions as the decision
Authority on the content of configuration baselines
A CCB includes:
1. Software managers
2. Software Architecture managers
3. Software Development managers
4. Software Assessment managers
5. Other Stakeholders who are integral to the maintenance of the controlled software
delivery system?
Infrastructure
The organization infrastructure provides the organization’s capital assets including two
key artifacts - Policy & Environment
I Organization Policy:
A Policy captures the standards for project software development processes
The organization policy is usually packaged as a handbook that defines the life cycles & the
process primitives such as
Major milestones
Intermediate Artifacts
Engineering repositories
Metrics
Roles & Responsibilities
Infrastructure
II Organization Environment
The Environment that captures an inventory of tools which are building blocks from which
project environments can be configured efficiently & economically
Stakeholder Environment
Many large scale projects include people in external organizations that represent other
stakeholders participating in the development process they might include
Procurement agency contract monitors
End-user engineering support personnel
Third party maintenance contractors
Independent verification & validation contractors
Representatives of regulatory agencies & others.
These stakeholder representatives also need to access to development resources so that they can
contribute value to overall effort. These stakeholders will be access through on-line
An on-line environment accessible by the external stakeholders allow them to participate in the
process a follows
Accept & use executable increments for the hands-on evaluation.
Use the same on-line tools, data & reports that the development organization uses to
manage & monitor the project
Avoid excessive travel, paper interchange delays, format translations, paper * shipping costs &
other overhead cost
PROJECT CONTROL & PROCESS INSTRUMENTATION
INTERODUCTION: Software metrics are used to implement the activities and products of the
software development process. Hence, the quality of the software products and the achievements in
the development process can be determined using the software metrics.
1.1 INDICATORS:
An indicator is a metric or a group of metrics that provides an understanding of the software
process or software product or a software project. A software engineer assembles measures and
produce metrics from which the indicators can be derived.
Two types of indicators are:
(i) Management indicators.
(ii) Quality indicators.
1.1.1 Management Indicators
The management indicators i.e., technical progress, financial status and staffing progress are
used to determine whether a project is on budget and on schedule. The management indicators that
indicate financial status are based on earned value system.
1.1.2 Quality Indicators
The quality indicators are based on the measurement of the changes occurred in software.
The below figure shows expected progress for a typical project with three major releases
SPCP:
To implement a complete SPCP, the following are necessary.
Metrics primitives - trends, comparisons and progressions
A graphical user interface.
Metrics collection agents
Metrics data management server
Metrics definitions - actual metrics presentations for requirements progress, implementation progress,
assessment progress, design progress and other progress dimensions.
Actors - monitor and administrator.
Monitor defines panel layouts, graphical objects and linkages to project data. Specific monitors called roles
include software project managers, software development team leads, software architects and customers.
Administrator installs the system, defines new mechanisms, graphical objects and linkages. The whole display
is called a panel. Within a panel are graphical objects, which are types of layouts such as dials and bar charts for
information. Each graphical object displays a metric. A panel contains a number of graphical objects positioned
in a particular geometric layout. A metric shown in a graphical object is labelled with the metric type, summary
level and insurance name (line of code, subsystem, server1). Metrics can be displayed in two modes – value,
referring to a given point in time and graph referring to multiple and consecutive points in time. Metrics can be
displayed with or without control values. A control value is an existing expectation either absolute or relative
that is used for comparison with a dynamically changing metric. Thresholds are examples of control values.
The basic fundamental metrics classes are trend, comparison and progress.
The format and content of any project panel are configurable to the software
project manager's preference for tracking metrics of top-level interest. The basic
operation of an SPCP can be described by the following top - level use case.
i. Start the SPCP
ii. Select a panel preference
iii. Select a value or graph metric
iv. Select to superimpose controls
v. Drill down to trend
vi. Drill down to point in time.
vii. Drill down to lower levels of information
viii. Drill down to lower level of indicators.
10 Mark Questions
1. Define metric. Discuss seven core metrics for project control
and process instrumentation with suitable examples?
2. List out the three management indicators that can be used
as core metrics on software projects. Briefly specify
meaning of each?
3. Explain the various characteristics of good software metric.
Discuss the metrics Automation using appropriate example?
4. Explain about the quality indicators that can be used as core metrics on software
projects.
5. Explain Management Indicators with suitable example?
6. Define MTBF and Maturity. How these are related to each other?
7. Briefly explain about Quality Indicators?
8. Write short notes on Pragmatic software metrics?