|
|||||
Software
Project Management
(CS615)
LECTURE
# 4
1.
Introduction &
Fundamentals
1.11
Costs
and Cost Management
Project
Cost Management includes the
processes required to ensure that
the
project
is completed within the
approved budget.
⇒ Resource
Planning--determining
what resources (people,
equipment,
materials
and what quantities of each
should be used to perform
project
activities.
⇒ Cost
Estimating--developing
an approximation (estimate) of the
costs of
the
resources needed to complete
project activities.
⇒ Cost
Budgeting--allocating
the overall cost estimate to individual
work
activities.
⇒ Cost
Control--controlling
changes to the project
budget.
These
processes interact with each
other and with the processes
in the other
knowledge
areas as well.
Each
process may involve effort
from one or more individuals or
groups of
individuals,
based on the needs of the
project.
Each
process generally occurs at least once in
every project phase.
Although
the processes are presented
here as discrete elements with
well-defined
interfaces,
in practice they may overlap
and interact in ways not
detailed here.
Project
cost management is primarily concerned
with the cost of the
resources
needed to
complete project
activities.
However,
project cost management should also
consider the effect of
project
decisions on
the cost of using the
project's product.
For
example, limiting the number
of design reviews may reduce the cost of
the
project
at the expense of an increase in
the customer's operating costs.
This
broader
view of project cost management is often
called life-cycle costing.
Life-
cycle
costing together with Value
Engineering techniques are
used to reduce cost
and time,
improve quality and performance, and
optimize the
decision-making.
In many
application areas, predicting and
analyzing the prospective
financial
performance
of the project's product is done
outside the project.
21
Software
Project Management
(CS615)
In others
(e.g., capital facilities
projects), project cost management also
includes
this
work. When such predictions
and analyses are included, project
cost
management will
include additional processes and
numerous general management
techniques
such as return on investment,
discounted cash flow,
payback analysis,
and
others.
Project
cost management should consider the
information needs of the
project
stakeholders--different
stakeholders may measure project
costs in different
ways
and at
different times. For
example, the cost of a procurement
item may be
measured
when committed, ordered, delivered,
incurred, or recorded for
accounting
purposes.
1.12
Project
vs. Program
Management
⇒ What
is a Program?
"A
coordinated portfolio of projects
that change organizations to achieve
benefits
of
strategic importance"
Program
management is the
process of managing multiple on
going projects. An
example would be that of
designing, manufacturing and
providing
support infrastructure for an
automobile make.
It can be argued
that Program Management has
evolved from the
complexities of
the
more intricate aspects of
Project Management.
As
projects became larger; more
interrelated; complex and
multidimensional, the
need
arose to have an approach that
controlled Project Management
whilst
remaining
focused on the strategic
objectives of the business. Whilst
Project
Management
focused on technical delivery,
Program Management engaged
on
relating
design concepts to the business strategic
vision of the future.
It is
very important that you
understand the concept of
Program Management as a
method.
Approaches may vary but
definitions are relatively
common. It is
appropriate
to understand the `mission, goals and
objectives' of Program
Management
and then relate these to the
Program you propose to
develop.
Definitions
will fall within each of
these headings and it is possible to
develop
your
own template which fits
your organizational program.
For example:
Mission:
To
co-ordinate a portfolio of projects to
harmonize communications in
order to
achieve a set of stated
business objectives: Provision
of strategy
alignment,
with design objectives, in order to
maintain control over
a
22
Software
Project Management
(CS615)
multiple
project environment; ensuring
quality end deliverables
which
meet
business operational
needs.
The above
is a fairly complex mission
statement but provides a
framework
to
develop an intricate set of goals in
order to utilize
Program
Management.
It is possible to develop an extensive
list of goals,
depending
upon the level of detail
you wish to acquire. The
following are
offered
as suggestions:
Goals:
1.
Clearly defined roles and
responsibilities
2.
Established baselines and Terms of
Reference statement
3. Type
of program defined
4. Future
business blueprint
5.
Recognition of business transformation
procedures
6.
Defined structure of the
Program
7. Route
Map
8.
Visible end deliverables -- vision of
the future
9.
Identification of future
benefits
10.
Risk
11.
Contingency planning
23
Software
Project Management
(CS615)
Each of
the goals would then be
analyzed for providing
objectives. For
example:
·
Managing
a program embraces functions,
risks and strategies outside of
what a
project
manager does.
·
A program
has goals beyond those of a project or
group of projects.
Program
outcomes
are usually service delivery
focused whereas a project is more
likely
to be
focused on the delivery of a
'product'.
·
A program
is more than a grouping of
projects (that's just a
program of works).
·
The
coordinated management of a portfolio of
projects to achieve a set
of
business
objectives
·
There
are many more meanings of
the term program management.
Here are the
more
common meanings:
The
Multi-Project Organization:
Program
Management is the directing of a
portfolio of projects that
benefit
from a
consolidated approach.
Jobbing
engineering companies; software
houses contracting for work;
and
many
other types of organization;
run many simultaneous
projects each of
which
may or not contribute
towards the corporate
goals.
Typically
the result of such a project
is a deliverable which is
eventually
delivered
to a client for payment.
After many delays the
payment arrives and
24
Software
Project Management
(CS615)
gets paid
into the company's bank
account thereby increasing
cash flow which
is
achieving one of the company's
objectives.
Sometimes
the projects are much
more directly aimed at corporate goals
-
opening a
new factory or launching a
new product - spring to
mind.
The
common elements of the
projects are that they
run simultaneously or at
least
overlap with each other,
they share resources and are
supposed to
generate
some income. One project
being cancelled does not
necessarily
change
the organization's general
direction. These types of programs
run for
ever and
need have no end date. The
projects are separate in
that there need
not be
logical links between
projects. Whilst they share
the same resources,
delays in
one project need not cause
delays in others.
The
Mega Project
The
management of a portfolio of projects
towards one specific
objective;
Program
management can also mean one very large
project.
The
USA's Man on the Moon
Project was such a program.
In this sense the
term
program indicates one very
large project which is made
up from a
number of
components. Within the Apollo
program there were many
projects:
the
Lunar Lander, the Orbiter, the
Launcher and the Control Systems
were all
projects
which were large, complex
and interesting. Polaris and
the
Manhattan
project (which resulted in the
nuclear bomb) are other
famous
projects
large enough to be called
programs. Therefore, particularly in
USA,
the
word program refers to a
series of projects which
make up one large
project.
The
program is usually reflected in
the management structure as
there will be
a program
manager to whom the project
managers will report. Said
program
manager or sometimes
program director will concern
himself with
recruiting
and
maintaining his project management
teams and on integrating
the
deliverables
of each project into one
overall program. In this
meaning of
program
management there is likely to be one
physical deliverable.
These sorts of
programs end. There will be a
time when the overall
objective
has
been achieved and the
program and all of its
constituent projects are
over.
The
projects within this type of
program are often linked.
Delays with one
project
often cause knock on effects
with others due to logical
links between
tasks in
both projects.
For
example if the moon rocket
launch pad project was
delayed, it would
delay
the testing of the moon
rocket itself. The Beirut
Shopping Mall will be
of little
use without the water
treatment plant and the new
sewer scheme. Such
25
Software
Project Management
(CS615)
projects
may not share the
same resources but there
are almost certain to
be
linked
through their logic.
1.13
Project
Success
Project
success is correlated with thorough
analyses of the need for
project
deliverables.
Our
research has shown that
when a project results in
deliverables
that
are designed to meet a thoroughly
documented need, then there
is a greater
likelihood
of project success. So managers
should insist that there is
a
documented
business need for the
project before they agree to
consume
organizational
resources in completing
it.
We
conduct planned and controlled
software projects for one
primary reason - it
is the
only known way to manage
complexity. And yet, we
still struggle. In
1998,
industry
data indicated that 26
percent of software projects
failed outright and 46
percent
experienced cost and schedule overruns
[REE99].
Although
the success rate for
software projects has
improved somewhat,
our
project
failure rate remains higher
than it should be.
In order
to avoid project failure, a
software project manager and the
software
engineers
who build the product
must avoid a set of common
warning signs,
understand
the critical success factors
that lead to good project management,
and
develop a
common sense approach for
planning, monitoring and controlling
the
project.
In order
to manage a successful software
project, we must understand
what can go
wrong (so
that problems can be avoided) and
how to do it right. In an
excellent
paper on
software projects, John Reel
[REE99] defines ten signs
that indicate that
an
information systems project is in
jeopardy:
1.
Software people don't understand
their customer's
needs.
2. The
product scope is poorly
defined.
3.
Changes are managed
poorly.
4. The
chosen technology changes.
5. Business
needs change (or are
ill-defined)
6.
Deadlines are
unrealistic.
7. Users
are resistant.
8.
Sponsorship is lost [or was
never properly
obtained).
9. The
project team lacks people with
appropriate skills.
10.
Managers [and practitioners)
avoid best practices and lessons
learned.
Jaded
industry professionals often
refer to the 90-90 rule
when discussing
particularly
difficult software projects:
The first 90 percent of a
system absorbs 90
percent
of the allotted effort and
time. The last 10 percent
takes the other 90
26
Software
Project Management
(CS615)
percent
of the allotted effort and
time [ZAH94]. The seeds
that lead to the
90-90
rule
are contained in the signs
noted in the preceding
list.
But
enough negativity! How does
a manager act to avoid the problems
just noted?
Reel
[REE99] suggests a five-part commonsense
approach to software projects:
1.
Start on the right foot. This is
accomplished by working hard
(very hard)
to
understand the problem that
is to be solved and then setting
realistic
objects
and expectations for everyone
who will be involved in the
project.
It is
reinforced by building the
right team (Section 3.2.3) and
giving the
team the
autonomy, authority, and technology
needed to do the job.
2.
Maintain momentum. Many
projects get off to a good start and
then
slowly
disintegrate. To maintain momentum,
the project manager
must
provide
incentives to keep turnover of
personnel to an absolute
minimum,
the team
should emphasize quality in every task it
performs, and senior
management
should do everything possible to stay
out of (the team's
way.
3.
Track progress. For a
software project, progress is
tracked as work
products
(e.g., specifications, source code,
sets of test cases) are
produced
and
approved (using formal
technical reviews) as part of a
quality
assurance
activation, software process and
project measures can be
collected
and used to assess progress against
averages developed for
the
software
development organization.
4.
Make smart decisions. In
essence, the decisions of
the
project manager
and the
software team should be to "keep it
simple." Whenever possible,
decide to
use commercial off-the-shelf
software or existing
software
components,
decide to avoid custom
interfaces when standard
approaches
are
available, decide to identify and
then avoid obvious risks,
and decide
to
allocate more time than
you think is needed to
complex or risky
tasks
(you'll
need every minute).
5. Conduct a
postmortem analysis. Establish
a consistent mechanism
for
extracting
lessons learned for each
project. Evaluate the
planned and
actual
schedules, collect and analyze software
project metrics, get
feedback
from team members and customers, and
record findings in
written
form.
Projects and
Strategy
Projects
are a means of organizing
activities that cannot be
addressed
within
the organization's normal
operational limits.
Projects
are therefore often utilized
as a means of achieving an
organization's
strategic plan, whether the
project team is employed by
the
organization
or is a contracted service
provider.
Projects
are typically authorized as a
result of one or more of
the
following
strategic considerations:
27
Software
Project Management
(CS615)
A market
demand (e.g., an oil company
authorizes a project to build
a
new
refinery in response to chronic
gasoline shortages)
A
business need (e.g., a
training company authorizes a
project to create a
new
course in order to increase its
revenues)
A
customer request (e.g., an electric
utility authorizes a project to
build a
new
substation to serve a new industrial
park)
A
technological advance (e.g., an
electronics firm authorizes a
new
project
to develop a new generation of
video game player after
the
introduction
of the corresponding new
game format)
A legal
requirement (e.g., a paint
manufacturer authorizes a project
to
establish
guidelines for the handling
of a new toxic
material).
No
project ever goes 100% as
planned, so project managers
must learn to adapt
to
change.
There are many things
that can go wrong with
project management.
These are
commonly called barriers. Here
are some possible
barriers:
1. Poor
Communication
Many
times a project may fail
because the project team
does not
know
exactly what to get done or what's
already been done.
2.
Disagreement
Project
must meet all elements in a
contract.
Customer
and project manager must agree on
numerous
elements.
Failure
to comply with standards and
regulations.
Inclement
weather.
Union
strikes.
Personality
conflicts.
Poor
management
3.
Poorly defined project
goals
1.14
Trade-Off
Triangle
Good
project management deals with
three factors: time, cost
and
performance.
Projects
are successful if they are
completed on time, within
budget, and to
performance
requirements. In order to bring
the many components of a
large
project
into control there is a
large toolkit of techniques,
methodologies, and
tools.
28
Software
Project Management
(CS615)
These
techniques provide the tools
for managing different
components
involved
in a project: planning and scheduling,
developing a product;
managing
financial and capital resources, and
monitoring progress. However
the
success of a project will always rest on
the abilities of a project
manager
and the
team members.
In
managing competing project
requirements Project managers
often talk of a
triple
constraint:
Project
scope
Time
and
Cost
Project
quality is affected by balancing
these three factors.
High
quality projects deliver the
required product or service
within scope, on
time and
within budget.
The
relationship among these
factors is such that if any
one of the three
factors
changes, at least one other factor must
change.
Simply
put: project success means
completing all project
deliverables on time,
within
budget,
and
to a level of quality
that is
acceptable to sponsors and
stakeholders.
The
project manager must keep
the team's attention focused
on achieving
these
broad goals. Most people still
want their projects to be on
time, meet
quality
objectives, and not cost more
than the budget. These form
the classic
time,
quality, cost triangle.
In fact
if you have an unlimited
budget and unlimited time,
project
management
becomes rather easy. For
most people, however, time and
money
are
critical and that is what
makes project management so important
today.
Project
management is often summarized in a
triangle. The three
most
important
factors are time, cost and
scope. These form the
vertices with
quality
as a central theme.
29
Software
Project Management
(CS615)
1.
Projects
must be delivered on
time.
2.
Projects
must be within cost
3.
Projects
must be within scope
4.
Projects
must meet customer quality
requirements
More
recently, this has given
way to a project management diamond,
with
time,
cost, scope and quality the
four vertices and customer
expectations as a
central
theme. No two customers'
expectations are the same so
you must ask
what
their expectations
are.
A project
goes through four phases
during its life:
1.
Project Definition: Defining
the goals, objectives and critical
success
factors
for the project
2.
Project Initiation: Everything
that is needed to set-up the
project before
work can
start
3.
Project Control: Ensuring
that a project stays on track and
taking
appropriate
action to ensure it does
4.
Project Closure: Disbanding of
all the elements that
were required to run
the
project
30
Software
Project Management
(CS615)
1.15
Project
Management Skills
The
role of the Leader in
project management is one of great
responsibility.
It's
the project manager's job to
direct and supervise the
project from
beginning
to end. Here are some
other roles:
(a)
Leadership
(b)
Communications
(c)
Problem
Solving
(d)
Negotiating
(e)
Influencing
the Organization
(f)
Mentoring
(g)
Process
and technical expertise
(a)
Leadership
Leadership
is a complex phenomenon involving
the leader, the
followers,
and the
situation. Perhaps the best
way for you to begin to
understand the
complexities
of leadership is to see some of
the ways leadership has
been
defined.
Leadership researchers have
defined leadership in the
following
different
ways:
The
creative and directive force of
morale. (Munson,
1921)
The
process by which an agent induces a
subordinate to behave in a
desired manner.
(Bennis,
1959)
The
presence of a particular influence
relationship between two
or
more persons.
(Hollander
& Julian, 1969)
Directing
and coordinating the work of group
members. (Fiedler,
1967)
An
interpersonal relation in which
others comply because they
want
to, not because they have
to.
(Merton, 1969; Hogan,
Curphy, &
Hogan,
1994)
Transforming
followers, creating visions of the goals
that may be
attained,
and articulating for the followers the
ways to attain
those
goals.
(Bass,
1985; Fichy & Devanna,
1986)
The
process of influencing an organized
group toward accomplishing
its
goals. (Roach
& Behling, 1984)
Actions
that focus resources to create desirable
opportunities.
(Campbell,
1991)
31
Software
Project Management
(CS615)
The
leader's job is to create
conditions for the team to be
effective.
(Ginnett,
1996)
Leading
and managing are
both essential management skills:
one
without
the other is likely to
produce poor results.
Managing is primarily
concerned
with "consistently producing
key results expected by
stakeholders,"
while leading
involves:
Establishing
direction--developing both a vision of
the future and
strategies
for producing the changes
needed to achieve that
vision.
Aligning
people--communicating the vision by
words and deeds to
all
those, whose cooperation may
be needed to achieve the
vision.
Motivating
and inspiring--helping people energize
themselves to
overcome
political, bureaucratic, and resource
barriers to change.
On a
project, particularly a larger
project, the project manager is
generally
expected to be
the project's leader as
well.
Leadership
is not, however, limited to
the project manager: it may
be
demonstrated by
many different individuals at
many different times
during
the
project.
Leadership
must be demonstrated at all levels of
the project (project
leadership,
technical leadership, and team
leadership).
(b)
Communicating
Communicating
involves
the exchange of information and
the ability to
transmit
and receive information with a
high probability that the
intended
message
is passed from sender to
receiver.
The
sender is responsible for
making the information
clear, unambiguous,
and
complete so that the
receiver can receive it correctly.
The receiver is
responsible
for making sure that the
information is received in its
entirety
and
understood correctly.
Few
skills are more vital to
leadership. Studies show that good
leaders
communicate
feelings and ideas, actively
solicit new ideas from
others,
and
effectively articulate arguments,
advocate positions, and persuade
others.
The
quality of a Leader's communication is
positively correlated
with
subordinate
satisfaction as well as with
productivity and quality of
services
rendered.
32
Software
Project Management
(CS615)
Effective
communication skills are also
important because they
provide
leaders
and followers with greater access to
information relevant to
important
organizational decisions.
Communicating
has many dimensions:
Written
and oral, listening and
speaking
Internal
(within
the project) and external
(to the customer,
the
media,
the public, etc.).
Formal
(reports,
briefings, etc.) and
informal (memos,
ad hoc
conversations,
etc.)
Vertical
(up and
down the organization) and
horizontal (with
peers
and
partner organization)
The
general management skill of communicating
is related to, but not
the
same
as, Project Communications
Management.
Communicating
is the broader subject and involves a
substantial body of
knowledge
that is not unique to the
project context, for
example:
Sender-receiver
models--feedback
loops, barriers to
communications,
etc.
Choice
of media--when to
communicate in writing, when
to
communicate
orally, when to write an
informal memo, when
to
write a
formal report, etc.
Writing
style--active
versus passive voice,
sentence structure,
word
choice, etc.
Presentation
techniques--body
language, design of visual
aids,
etc.
Meeting
management techniques--preparing
an agenda, dealing
with
conflict, etc.
Project
Communications Management is the
application of these broad
concepts to
the specific needs of a
project--for example, deciding
how;
when; in
what form; and to whom to
report project
performance.
(c)
Negotiating
Negotiating
involves
conferring with others to come to
terms with them or
reach an
agreement.
Agreements
may be negotiated directly or
with assistance; mediation
and
arbitration
are two types of assisted
negotiation.
Negotiation
is an approach that may help
resolve some conflicts.
Some
important
tips on negotiation include;
preparing for a negotiation
session;
33
Software
Project Management
(CS615)
keeping
people and problems separate; focusing on
issues, not positions
and seeking
win-win outcomes.
Negotiations
occur around many issues, at
many times, and at many
levels
of the
project.
During
the course of a typical project,
project staff is likely to
negotiate
for
any or all of the
following:
·
Scope,
cost, and schedule
objectives.
·
Changes
to scope, cost, or
schedule.
·
Contract
terms and conditions.
·
Assignments.
·
Resources.
(d)
Problem Solving
There
are three steps involved in
this important leadership
role; identifying
problem;
analyzing its cause; and
solving the problem.
Problem
solving involves
a combination of problem definition
and
decision-making.
Problem
definition requires
distinguishing between causes and
symptoms.
Problems
may be:
Internal
(a
key employee is reassigned to
another project)
External
(a
permit required to begin
work is delayed).
Technical
(differences
of opinion about the best
way to design a
product)
Managerial
(a
functional group is not
producing according to
plan)
or
Interpersonal
(personality
or style clashes).
(e)
Decision-making
Decision-making
includes
analyzing the problem to
identify viable
solutions,
and then making a choice
from among them.
Decisions
can be made or obtained (from
the customer, from the
team, or
from a
functional manager).
Once
made, decisions must be
implemented.
Decisions
also have a time element to
them--the "right" decision
may not
be the
"best" decision if it is made
too early or too
late.
34
Software
Project Management
(CS615)
(f)
Influencing the Organization
Influencing
the organization involves
the ability to "get things
done."
It
requires an understanding of both
the formal and informal
structures of
all
the organizations involved--the
performing organization,
customer,
partners,
contractors, and numerous others, as
appropriate.
Influencing
the organization also requires an
understanding of the
mechanics
of power and politics.
Both
power and politics are used
here in their positive
senses.
Power is
"the potential ability to
influence behavior, to change the
course
of
events, to overcome resistance, and to get people to
do things that they
would
not otherwise do."
In
similar fashion, "politics is
about getting collective
action from a group
of people
who may have quite
different interests. It is about
being willing
to use
conflict and disorder
creatively.
The
negative sense, of course, derives
from the fact that
attempts to
reconcile
these interests result in
power struggles and
organizational
games
that can sometimes take on a thoroughly
unproductive life of
their
own."
Influence
can be exercised in a: variety of ways. It
may be the 'bridge to
engine
room' approach, where the leader
commands and controls. Or
the
influence
can be exercised by guiding and facilitating
the group's behavior
so that
the goal is
accomplished.
Finally,
leadership implies that
a leader motivates the group to
spend
energy
in attaining the goals of the group.
Influence
without change or movement isn't
influence. Leaders make
change happen, a
difficult but vitally
important task.
(g)
Mentoring
Mentoring
or being a Transformational leadership is
more concerned with
engagement
between leaders and
followers.
Leaders
attempt to engage the full person of
the subordinate and
enthuse
them.
They arouse in their subordinates a
heightened awareness of the
key
issues
for the group or the
organization. They seek to
concern subordinates
with
achievement, growth and
development.
35
Software
Project Management
(CS615)
Creating
a new vision is
something that almost all
writers on
transformational
leadership emphasize.
The
vision points the way to a
new state of affairs. It is an
appealing
picture
of a more desirable future. It inspires
people to believe that
the
future is
worth the upheaval of
undoing the present.
A vision
needs to be a source of self-esteem and a
common purpose for
members of
the organization.
(h)
Technical Skills:
A project
manager must have technical
skills. This
relates to financial
planning,
contract management, and managing
creative thinking and
problem
solving techniques are
promoted.
36
Table of Contents:
|
|||||