|
|||||
Software
Project Management
(CS615)
LECTURE
# 9
2.
Software Development
Fundamentals
Management
Fundamentals
2.8
Managing
Processes
⇒ Managing
the Project Plan
Preparing
it project plan for a
software project helps you
ensure that the
specified
requirements
and objectives are met
successfully. It is a collation of all
planning
activities
that have happened for a
software project. This
includes activities
such
as design and
analysis, activity definition,
risk planning, and cost estimation.
To
create
the plan, you assess
all planning activities,
organizational policies
regarding
the creation of the project
plan and assumption and constraints
for the
project.
To implement the software
project plan, you require
management skills,
such as
leadership, communication, and problem
solving, along with the
basic
knowledge
about the software. You also
need to ensure that the
senior
management bf
the company has authorized
work on the software
project.
Knowledge
management techniques help you to make
informed decision
regarding
the project plan.
After
the project plan is
executed, you manage the
changes to it in such a way
that
the
performance measurement baselines are
not impacted, To manage the
project
plan
effectively you monitor the
project plan, periodic
performance status reports,
and
requests for change. The
primary tool that you can
use to control the
changes
in the
project plan is the change
control mechanism: This is a
set of formal
procedures
for changing the project
plan.
⇒ Managing
Quality
The
quality of software development
depends largely on the
understanding of
`quality'
and quality management within the
software development team. In
software
projects where each member
has a different understanding of
quality and
his or
her role in implementing it,
the software product is
usually not of the
required
quality.
Implementing
software quality is often
associated with the software
developer.
However,
the role of the project
manager is crucial in implementing
quality
awareness
and a quality-producing work environment.
When a software
project
starts
missing deadlines and is in danger of exceeding
the budget, project
managers
often lose the focus on
quality and lay stress on
meeting deadlines.
However,
the focus should be the
other way round. A focus on
delivering a
76
Software
Project Management
(CS615)
quality
product, even at the cost of
missing a deadline or two
ensures that your
customer
comes back for repeat orders. On
the other hand, the
price of non-
conformance
(PONC) on quality standards
simply translates into the
loss of
goodwill
and loss of business.
Modern
quality management techniques compliment
project management and
the
role of
the project manager. Quality management
techniques ensure that a
software
product conforms to the
customer requirements. Quality
management
further
ensures that errors are
prevented in the first round
itself. Checks for
errors
and
effort for removing the
errors consume much more
time, effort, and cost
than
it takes
to prevent the errors in the
first place. Therefore, maintaining
quality in a
software
project is the domain of all
team members.
However,
as the project manager you
have a critical role in
maintaining quality.
You
provide the resources
required to complete the
activities of the
software
project
and ensure that quality levels
are constantly
monitored.
You first
identify the areas that
must be monitored for
ensuring quality and
the
quality
measures to implement. Then,
consider the quality policy
of the
organization,
the scope of the project,
the applicable standards, and the
software
product
description. Next, use
tools, such as a cost-benefit
analysis and a
flowchart,
to identify the areas where
you need to monitor quality
and the
subsequent
actions for control. The
output of this exercise is the
quality plan for
the
software project. In addition,
this exercise allows you to
create checklists to
help
monitor quality.
As a
software project manager, you also
need to use a quality
control mechanism
so that
the quality of the software
product does not suffer.
The aim of the
quality
control
mechanism is to ensure compliance with
quality standards.
2.9
Project
Execution
You
already learned in the
beginning of the chapter
that a software project
is
divided
into different phases. This
division is done on the basis of
the activities
performed
in each phase. Similarly,
project management activities are
also
arranged in
phases. As a project manager, you
perform the activities that
map to
each of
these phases. The project
management phases can be broadly
categorized
as
follows;
Project
initiation
Project
closedown
Project
planning, control, and
tracking
Product
implementation
·
Project
Initiation
77
Software
Project Management
(CS615)
The
tasks performed for project
initiation are mentioned
below:
Requirement
gathering: The
first task is to gather the
customer requirements.
Customer
requirements may be spoken or unspoken.
Therefore, the challenge
for
the
project manager is to elicit the
requirements in such a way
that both the
spoken and
unspoken customer needs and
wants are gathered. After
collecting the
required
information, you need to
translate the customer
requirements into
technical
specifications for the
software project.
Scope
determination: The
scope of a software project can be
defined as the
combination
of the software product arid
services to be delivered to the
customer.
You carry
out the scope determination
exercise to define the scope of
the software
project.
The scope determination exercise
enables you to refine and
understand
the
customer requirements. You can refine
the scope definition further
by
breaking
down each deliverable into
smaller and more manageable
activities. The
scope
determination exercise also helps you
identify the technology for
creating
the
software product.
Resource
allocation: During
project initiation, you
identify the resources
required
and
allocate them to the
software project. The
resources identified may be
people,
reusable
software components, and hardware or
software tools. You allocate
the
resource to
the software project on the
basis of the activities
defined in the scope
determination
exercise. While allocating appropriate
resources for a
software
project,
you also need to calculate
the cost of each resource. The cost of
a
resource is
calculated according to the
duration of the resource in the
software
project.
Estimating the cost of resources also
helps you prepare a budget
for the
software
project.
Note:
Scope
determination and resource allocation are
discussed in more detail in
later
chapters.
Initial
project plan: Another
exercise that you carry out
during project
initiation
is the
creation of a rough project
plan. This plan is a draft
version and carries only
the
primitive project plan
features. This project plan
carries the initial
risk
analysis
of the software project, the
initial start and end dates,
the duration of the
activities
in the project, and the
sequencing of these
activities.
·
Project
Planning, Controlling, and
Tracking
This
activity of the project manager
involves detailed tasks. These tasks
are
mentioned
below:
Detailed
project plan: After
the scope for the
software project is determined
and
the
product design is ready, you
prepare a detailed project
plan. To create a
detailed
project plan, you define a
detailed list of all the
elements that make up
the
78
Software
Project Management
(CS615)
project
deliverables. Next, the
deliverables are further
broken up to help In
the
calculation
of durations, start dates and end
dates for each activity
mentioned in
the
plan. Roles and responsibilities
are assigned to people with
the appropriate
skills to
complete each activity
within specified
time.
Control
mechanism: These
are set up to control the
impact of changes on
the
software
project. The control
mechanism includes a detailed
risk management and
mitigation
plan, a detailed quality
plan, and quality assurance
activities. You also
implement
a review and audit system
for periodic assessment and measurement
of
the
software project activities.
The review and audit system
enables you to
evaluate
the progress of the software
project. It ensures that all
necessary data is
collected,
deviation from the planned
baselines is checked, and corrective
action
is taken
at all checkpoints. In this
way, the review and audit
system ensures
compliance
with the organizational
processes for software
development.
79
Table of Contents:
|
|||||