You are on page 1of 22

Chapter- 5

Software Project Management


Software Project Management
• Software Project Management is to be done in
scientific way.
• It involves the knowledge, techniques and tools
necessary to manage the software development.
• It starts before any activity starts.
• The Software Project Management includes
basic function such as scoping, planning,
estimating, scheduling, organizing, directing,
coordinating, controlling and closing.
Management Spectrum
• The management spectrum describes the
management/hierarchy of people associated with
a software project.
• How to make a software project successful.
• Effective Software Project Management focuses
on the four P’s:
– People
– Product
– Process
– Project
• The order is not arbitrary.
The People
• People factor is very much important in the
process of software development.
• There are following areas for software people like,
recruiting, performance management,
training, compensation, career development,
workgroup development, and team/culture
development.
• Organizations achieve high levels of maturity in
the people management area.
Stakeholders
• Senior managers who define the business issues that often have
significant influence on the project.
• Project (technical) managers who must plan, motivate, organize,
and control the practitioners who do software work.
• Practitioners who deliver the technical skills that are necessary to
engineer a product or application.
• Customers who specify the requirements for the software to be
engineered
• End-users who interact with the software once it is released for
production use.
Project Manager
The following characteristics defines an effective
project manager
1. Problem solving: An effective software manager
can diagnose the technical and organizational
issues and systematically structure a solution or
motivate other practitioners to apply the solution.
2. Managerial Identity: A good manager must take
charge of the project and must have confidence to
assume control when necessary.
3. Achievement: To optimize the productivity of a
project team, a manager must reward initiative
and accomplishment of the practitioners.
4. Influence and Team Building: An effective
project manager must be able to read people, to
understand verbal and non verbal signals and
react to the needs of the people sending these
signals. The manager must remain under control
in high stress situation.
Software Teams
How to lead?
How to organize?
How to collaborate?

How to motivate? How to create good ideas?


Product
1. Before a project can be planned, the product
objectives and scope should be identified.
2. Objectives identify the overall goals for the
product without considering how these goals will be
achieved.
3. Scope identifies the primary data, functions and
behaviors that categorize the product.
4.It identifies cost, risk and realistic break downs of
project task.
Process
• The process model is the plan to be selected
depending on following factors
– a) Customers and developers.
– b) Characteristics of product itself.
– c) Project environment of software team.
• Regardless of the size and type of project, there
are small number of framework activities that
are applicable to all of them.
• There are also umbrella activities like SQA, that
occur throughout the system.
Project
• We conduct planned and controlled software
projects for one primary reason-it is the only
known way to manage complexity.
• A software project manager, 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.
Project Scheduling
1. In project management, a schedule consist of a list of
project terminal elements, with intended start date and
finish date.
2. The s/w project scheduling distributes estimated efforts
across the planned project period by allocating the
effort to particular s/w engineering tasks.
3. There are many tasks in a s/w project. The project
manager defines all the task and generates the
schedule.
4. Initially a macroscopic schedule is developed,
identifying all major process framework activities and then
the detailed schedule of specific tasks are identified and
scheduled.
Factors that delay Project
Schedule
Although there are many reasons why software is
fail, most can be traced to one or more of the
following root causes:
1. An unrealistic deadline established by
someone outside the software team and forced on
managers and practitioners.
2. Changing customer requirements that are not
reflected in schedule changes.
3. An honest underestimate of the amount of
effort and/or the number of resources that will be
required to do the job.
4. Predictable and/or unpredictable risks that
were not considered when project commenced.
5. Technical difficulties that could not have been
foreseen in advance.
6. Human difficulties that could not have been
foreseen in advance.
7. Miscommunication among project staff that
results in delays.
8. A failure by project management to recognize
that the project is falling behind schedule and a
lack of action to correct the problem.
Principles of Project Scheduling
i. Compartmentalization: The project must be
compartmentalized into a number of manageable
activities and tasks.
ii. Interdependency: The interdependency of each
compartmentalized activity or task must be
determined.
iii. Time allocation: Each task to be scheduled
must be allocated some number of work units
(e.g., person‐days of effort).
iv. Effort validation: the project manager must
ensure that no more than the allocated number
of people have been scheduled at any given
time.
v. Defined responsibilities: Every task should be
assigned to a specific team member
vi. Defined outcomes: Every task should have a
defined outcome.
Vii. Defined milestones: Every task or group of
tasks should be associated with a project
milestone.
viii. A milestone is accomplished when one or
more work products has been reviewed for
quality and has been approved.
Project schedule can be tracked by using different
scheduling tools and techniques.
Program Evaluation Review Technique (PERT)
i. PERT, is used in projects that have unpredictable
tasks and activities such as in research and
development projects.
ii. It utilizes three estimates of the time to complete
the project: the most probable, the most
promising, and the most unfavorable.
iii. It is a probabilistic tool.
iV) It
uses several estimates to determine the time
completion of the project and controls activities so
that it will be completed faster and at a lower cost.
Critical Path Method (CPM)
i. CPM is a technique that is used in projects that
have predictable activities and tasks such as in
construction projects.
ii. It allows project planners to decide which aspect
of the project to reduce or increase when a
trade-off is needed.
iii. It is a deterministic tool and provides an
estimate on the cost and the amount of time to
spend in order to complete the project.
iv. It allows planners to control both the time and
cost of the project.
Difference PERT Vs CPM
1. The Program Evaluation and Review Technique (PERT)
is suitable for projects that have unpredictable activities
while the Critical Path Method (CPM) is suitable for
projects that have predictable activities.
2. CPM uses a single estimate for the time that a project
can be completed while PERT uses three estimates for
the time that it can be completed.
3. CPM is a deterministic project management tool while
PERT is a probabilistic project management tool.
4. CPM allows project management planners to determine
which aspect of the project to sacrifice when a trade-off is
needed in order to complete the project while PERT does
not.
Time-Line Charts or Gantt chart
• A time-line chart can be developed for the
entire project or separate charts can be
developed for each project function or for
each individual working on the project.
• All project tasks (for concept scoping) are listed
in the left-hand column.
• The horizontal bars indicate the duration of each
task.
• When multiple bars occur at the same time on
the calendar, task concurrency is implied.
• The diamonds indicate milestones.
Work tasks week 1 week 2 week 3 week 4 week 5

I.1.1 Identify need and benefits


Meet with customers
Identify needs and project constraints
Establish product statement
Milestone: product statement defined
I.1.2 Define desired output/control/input (OCI)
Scope keyboard functions
Scope voice input functions
Scope modes of interaction
Scope document diagnostics
Scope other WP functions
Document OCI
FTR: Review OCI with customer
Revise OCI as required;
Milestone; OCI defined
I.1.3 Define the functionality/behavior
Define keyboard functions
Define voice input functions
Decribe modes of interaction
Decribe spell/grammar check
Decribe other WP functions
FTR: Review OCI definition with customer
Revise as required
Milestone: OCI defintition complete
I.1.4 Isolate software elements
Milestone: Software elements defined
I.1.5 Research availability of existing software
Reseach text editiong components
Research voice input components
Research file management components
Research Spell/Grammar check components
Milestone: Reusable components identified
I.1.6 Define technical feasibility
Evaluate voice input
Evaluate grammar checking
Milestone: Technical feasibility assessed
I.1.7 Make quick estimate of size
I.1.8 Create a Scope Definition
Review scope document with customer
Revise document as required
Milestone: Scope document complete
Timeline Charts
Tasks Week 1 Week 2 Week 3 Week 4 Week n

Task 1
Task 2
Task 3
Task 4
Task 5
Task 6
Task 7
Task 8

Task 9
Task 10
Task 11
Task 12

You might also like