1 Software Project Management

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 52

SOFTWARE PROJECT

MANAGEMENT

Lecturer: Sayed Wasiullah “Sadat”


Email address: [email protected]
SOFTWARE PROJECT MANAGEMENT
CONCEPTS

2
CONTENTS OF THIS CHAPTER
 Goal of Project Management
 Project Management

 What is Management?

 What is a Project?

 Brain Storming

 Activities in project management

 Difficulties

 Work break down structure

3
SOFTWARE PROJECT MANAGEMENT:

The Goal of Project Management is to ensure


that a software product that meets the quality
specifications of the requirements definition is produced on
schedule and at an economically justifiable cost within the
planned resources ( e.g . Personal, equipment, tools etc)
By (Royce 1998)

4
SOFTWARE PROJECT MANAGEMENT:

Project Management is a series of activities


embodied in a process of getting things done on a
project by work with member of the project team
and with other people in order to reach the project
schedule ,cost and technical performance
objectives.

5
SOFTWARE PROJECT MANAGEMENT:
Software manager do the same kind of job as Other
engineering project mangers. However, software
Engineering is distinct from other types of engineering in
a number of ways that can make the software
management particularly difficult
Some differences are:
The software product is intangible.
 it cannot be touched.

 Software project managers can’t see the progress and rely On


others to produce the documentation needed to review progress.
6
WHAT IS MANAGEMENT?
 Basically, the management involves the following activities:
 Planning- deciding what is to be done?
 Organizing- making arrangements
 Staffing- selecting the right people for the job
 Directing- giving instructions
 Monitoring- checking on progress
 Innovating- coming up with new solutions
 Representing- liaising(act between parties) with users, etc.

7
WHAT IS A PROJECT?

A project is an activity with specific goals which takes place over


a finite period of time.

“A temporary organization that is needed to produce a unique and


pre-defined outcome or result at a pre-specified time using pre-
determined resources”

8
WHAT IS A PROJECT?

 A project is a planned activity.

 A project is any work that happens only once, has a clear


beginning and end, and is intended to create a unique product or
knowledge.
 It may involve only one person, or thousands.
 It may last several days, or many years.
 It may be undertaken by a single organization,
 or by a coalition of several stakeholders.
 A project may be as simple as organizing a
one-day event or as complex as constructing a dam on a 9
river.
WHAT IS PROJECT MANAGEMENT?
Project Management is the art of maximizing the
probability that a project delivers its goals on Time, to
Budget and at the required Quality.
Project management is the application of knowledge, skills, tools,
and techniques to project activities to meet project requirements.
Project management is accomplished through the use of the
processes such as: initiating, planning, executing, controlling, and
closing. It is important to note that many of the processes within
project management are iterative in nature. This is in part due to
the existence of and the necessity for progressive elaboration in a
project throughout the project life cycle; i.e.the more you know
about your project, the better you are able to manage it. 10
WHAT IS PROJECT MANAGEMENT?
Almost any human activity that involves
carrying out a non- repetitive task can be a project.
So we are all project managers! We all practice
Project management (PM). But there is a big difference
between carrying out a very simple project involving one
or two people and one involving a complex mix of
people, organizations and tasks.

11
SOFTWARE PROJECT MANAGEMENT
BRAIN STORMING

 What should be done? logically speaking!


Generally, to start, find out:
 What is the project!
 What are the requirements!
 Who will benefit!
 Who are the stake holders, customers,……..

12
WHAT IS SOFTWARE PROJECT
MANAGEMENT?

A sub-discipline of project management in which


software projects are planned, monitored and
controlled
Is called software project management.

13
SOFTWARE PROJECT MANAGEMENT

 The software development life cycle (SDLC) is the


entire process of formal, logical steps taken to develop a
software product.

14
SOFTWARE PROJECT MANAGEMENT:
There is no standard process.

 There is no clear understanding of the relationship


between the software process and product types.
 Understanding of the process has developed significantly in the
past few years.
 However , we still can’t predict with certainty when
particular software process is likely to cause
development problems.

15
SOFTWARE PROJECT MANAGEMENT:
Large software projects are often ‘one-off ’ projects.

 New system that are different from previous projects are


common.
 There doesn’t exist any large body of previous experience that
can be used to greatly reduce uncertainty in plans.

16
ACTIVITIES IN PROJECT MANAGEMENT
The following are the major activities in project
management.( six Ps)
 Proposal Writing

 Project Planning

 Project Scheduling

 Project Tracking

 Personal Selection and Evaluation

 Project Report Writing

17
ACTIVITIES IN PROJECT MANAGEMENT
 Proposal Writing:
Is a skill that is acquired by experience. Proposal are
written in order to get a project. In proposal an organization
mentions it’s ability to fulfill customer requirement.

 Project Planning:
Is concerned with identifying the activities, milestones
produced by a project. A plan must be drawn up to guide the
development towards the project goals.

18
ACTIVITIES IN PROJECT MANAGEMENT
 Project scheduling:
Is one of the most difficult tasks of project management.
It involves separating the total work involved in a project
into separate tasks and assessing when these tasks will be
completed.
 Project tracking:
Is a continuing project activity. This activity is also
known as project monitoring. The manager must keep track
of the progress of the project and compare actual and
planned progress and costs. Skilled managers can often
monitor the project activities by informal discussion with
19
project staff.
ACTIVITIES IN PROJECT MANAGEMENT
 Personal selection and evaluation:
is a very challenging task. Project managers usually
have to select people to work on their project. Ideally , skilled
staff with appropriate experience will be available to work on
the project. However , In most cases managers have to settle
for a less than ideal project team.
 Project report writing:
The project manager is usually responsible for project
report writing to both the client and contractor organizations.
Project managers must write concise, coherent document that
abstract critical information from detailed project report.
20
SOFTWARE PROJECT MANAGEMENT
DIFFICULTIES

Possibility of Multiple Solutions:

 There are particularly an unlimited number


of possibilities for solving a given problem.

 The development of software products is not subject to


the strict constraints that apply for other technical
products.

21
SOFTWARE PROJECT MANAGEMENT
DIFFICULTIES
Individuality( Capability ) of programmers:
 Software engineers are individualists with large differences in
capability, this makes it Particularly difficult to estimated personal
costs.

Speed of Technological Advancements:


 The speed of technological development in hardware and software
hinders(resist) both planning and organization of software projects.
 Sometimes during the development of a large software system, new
more powerful components appear in the market that render(give)
the conception(idea) of the system obsolete(out of date) after its
design and force redesign. This can completely overturn existing 22
planning.
WHAT IS SOFTWARE PROJECT
PLANNING?

Software Project planning:

To establish reasonable plans for performing the


software engineering, and managing software project.

23
ACTIVITIES OF SOFTWARE PROJECT
PLANNING

 The software engineering groups initiates software


project planning in the early stages.

 The software engineering groups participates with other


effected groups in the over all project planning in the
project life.

 Software project commitments to individual and external


groups are consulted with senior managements according
to documentation. 24
ACTIVITIES OF SOFTWARE PROJECT
PLANNING

 A software life cycle with predefined stages of


manageable size is identified.

 The software development plan is developed to a


documented procedure.

 The size of the software products are derived according


to the documentations.

25
ACTIVITIES OF SOFTWARE PROJECT
PLANNING
 Project efforts and costs are derived according to
documentation.

 Computer resources are also derived according to the


documentation.

 Software schedule also derived according to documentation.

 The facility and support related to the project are also


prepared.
26
 The software planning data are recorded.
SOFTWARE PROJECT SCHEDULING

Project:
Perform a specific task with in a given specific time.

Scheduling:
Perform a specific task by specific individual in a
specific time.

27
SOFTWARE PROJECT SCHEDULING

What is Software Project Scheduling?

To perform a specific task by specific individuals to achieve a


common goal to be achieved in a given Span of time.
Estimating the time and resources required for a development
project are almost always optimistic.

28
PROJECT SCHEDULING ACTIVITIES

Project Scheduling involves the following


Activities.

 Identify all the tasks and activities within the project.

 Identify dependencies among the activities i.e a unit must be


tested before it can be integrated into the system.

 Estimates the resource(time) required for each activity.


29
PROJECT SCHEDULING ACTIVITIES

 Allocate people to activities.

 Determine the order of activities

 Estimate the resources(time) required for the entire


development project.

30
SOFTWARE PROJECT SCHEDULING
TECHNIQUES
The following are the important software project
scheduling techniques.

 Work Breakdown Structure(WBS).


 Activity Charts.
 Project Evaluation Review Technique(PERT).
 Gantt Charts
 Critical Path Method.

31
1.WORK BREAK DOWN STRUCTURE
A work Break Down Structure(WBS) is a hierarchic decomposition
or
breakdown of a project or major activity into successive levels, in
which each level is a finer breakdown of the preceding one.
In final form, a WBS is a very similar in structure and layout to a
document outline. Each item at a specific level of a WBS is numbered
consecutively(e.g 10, 20, 30, 40, 50).
Each item in the next level is numbered within the number
of its parent item(e.g 10.1,10.2,10.3).

32
1.WORK BREAK DOWN STRUCTURE
Major Features of WBS:
Structure:
* WBS diagram is drawn like the organization chart.

Description:
* Each WBS element should be described with a title.
* The meaning of each title should be clear.

Coding:
* One of the main features of WBS is the ability to uniquely code or
Number the different elements of the work.
* The coding system can be alphabetic, numeric or alphanumeric.
33
1.WORK BREAK DOWN STRUCTURE
Major Features of WBS:

Depth:
1. The recommended depth of a WBS diagram is
three to four levels.
2. If deeper hierarchies are required the division into
subprojects can be used and one element would then
present one subproject. This can be useful for example in a
situation where a subcontractor handles some part of the
project. Each project manager could then have his/her project
presented in one diagram.
3. The problem of adding too many levels is firstly the readability
of the diagram and secondly the fact that larger the diagram,
34
the more troublesome it is to update when major changes occur
in the project.
WBS DIAGRAM
. Project
1

Tesing
Design Coding
1.3
1.1 1.2

Intregration
UI Desing Data Design Unit Testing
Teshing
1.1.1 1.1.2 1.3.1
1.3.2

Three levels WBS diagram based on project phases.


35
2. ACTIVITY CHART OR ACTIVITY
NETWORK
The foundation of this approach originated from the special
projects office of the US Navy in 1958. they developed this
technique for evaluating the performance of large development
project. The technique can be broken down into three stages.
Planning:
* identify tasks and estimate duration of times.
* arrange in feasible sequence.
* Draw diagram
Scheduling:
* Establish timetable of start and finish times.
Analysis: 36

* Evaluate and revise as necessary.


2. ACTIVITY CHART OR ACTIVITY
NETWORK
The activity network of tasks needed to complete a project , showing
The order in which the tasks need to be completed and the
Dependencies between them. This is represented graphically

17-09-12
2

3 1

9-9-12 18-09-12 20-09-12


1
3-09-12 3 6 7 8
1

2 4 5 2

7 10-9-12 13-09-12
4 5

3
37
Solid line Represent Critical Path
2. ACTIVITY CHART OR ACTIVITY
NETWORK
The diagram consists of a number of circles, represented
Events within the development lifecycle, Such as the start
or completion of a task, and lines, which represent the tasks
themselves. Each task is additionally labeled by its time
duration. Thus the task between events 4 & 5 is planned to
take 3 time units. The primary benefit is the Identification of
the critical path.
The Critical Path = Total time for activities on this path is
greater than any other path through
the network. delay in any task on the
38
critical path leads to a delay in the
project.
3. CRITICAL PATH METHOD
( A FORM OF ACTIVITY DIAGRAM)
CPM is acts as basis both for preparation of a schedule, and
Of resource planning. They were developed in the 1950s to
Control defense project, and have been used routinely since
Then.
In a CPM chart, the critical path is indicated. Critical path
Is the path of longest duration as determined on a project
Network diagram. The critical path is determines the total
Duration of the project. If a task on the critical path is
delayed, the final completion of the project will likely be delayed.
The critical path is “crucial” because tasks that follow a
Critical task cannot be started until all of the previous tasks on
the critical path are completed. Thus , if a task on the critical
path is delayed, all tasks following the delayed critical task will be 39

pushed out in time.


3. CRITICAL PATH METHOD

The critical tasks will have starting and finishing times


that are fixed relative to start of the project. Tasks not on
the critical path will usually have some flexibility relative
to when they can start and finish. This flexibility is called
“float” or sometimes “slack”.

40
3. CRITICAL PATH METHOD
Critical Path Analysis:
Critical path analysis is an effective and powerful method of
assessing:
 What tasks must be carried out?

 Where parallel activity can be performed?

 The shortest time in which you can complete a project.

 Resource needed to execute a project.

 The sequence of activities, scheduling and timing

involved.
 Task priorities.
41
 The most efficient way of shortening time on urgent project.
3. CRITICAL PATH METHOD

17-09-12
2

3 1

9-9-12 18-09-12 20-09-12


1
3-09-12 3 6 7 8
1

2 4 5 2

7 10-9-12 13-09-12
4 5

3
42
Solid line Represent Critical Path
4. PROJECT EVALUATION AND REVIEW
TECHNIQUE ( PERT)

PERT chart is a project management tool used to schedule , Organize


and coordinate tasks within a project.

PERT is similar to Critical Path Method (CPM), which was developed


For project management in the private sector , at about same time, has
Become synonymous with PERT, so that the technique is known by
Any variation on the names: PERT,CPM. or PERT/CPM.

43
4. PROJECT EVALUATION AND REVIEW
TECHNIQUE ( PERT)
PERT is designed for research and development type projects
When activity completion times are uncertain. The heart of
Any PERT chart is a network of tasks needed to complete the
Project, showing the order in which the tasks need to be
Completed and the dependencies between them.
PERT chart starts with an initiation node from which the first
task or tasks originates. If multiple tasks begin at the same
Time, they are all started from the node or fork out from
Starting point.
44
4. PROJECT EVALUATION AND REVIEW
TECHNIQUE ( PERT)

Each task is represented by a line, Which states its name or


Other Identifier, its duration, the number of people assigned
to it or the initials of the personal assigned. The other end
of the task line is Terminated by another node, which
identifies the start of another task.

45
4. PROJECT EVALUATION AND REVIEW
TECHNIQUE ( PERT)
STEPS IN DRAWING A PERT CHART.
 Make a list of the project tasks.

 Assign a task identification letter to each task.

 Determine the duration time for each task.

 Draw PERT network, number each node, label each task with its

Task identification letter, connect each node from start to finish,


And put each task’s duration on the network.
 Determine the earliest completion time for each task node

 Determine the latest completion time for each task node

 Verify the PERT network for correctness.


46
4. PROJECT EVALUATION AND REVIEW
TECHNIQUE ( PERT)

47
5. GANTT CHARTS
A Gantt Charts is a horizontal bar chart developed as a production
Control in 1917 by Henry L. Gantt, an American engineer . It is
Frequently used in project management.
Gantt Charts is useful for tracking and reporting progress, as well
As for graphically displaying a schedule , track specific task in a
project. Gantt Charts are often Used to report progress because they
represent an easily understood picture of project status.
Gantt Charts may be simple versions created on graph paper or more
Complicated, automated versions created using project management
tools like, Mac Project , Microsoft project and Microsoft Excel. 48
5. GANTT CHARTS

Gantt Charts is used to represent the relationship of the tasks and


Time required to complete the tasks. Because it is very simple to
Understand and easy to construct, it is used by most project
Managers for all but the most complex project.

49
SOFTWARE PROJECT TRACKING
The purpose of software project tracking is to provide
sufficient visibility into actual progress so that management
Can take effective actions when the software project’s
Performance deviate(diverge) significantly from the software
plan.
Software Project tracking involves tracking and
Reviewing the software accomplishments and results against
Documented estimates, commitment, plan and adjusting
These plans based on the actual accomplishments and
results. 50
SOFTWARE PROJECT TRACKING
ACTIVITIES
 A documented software development plan is used for tracking the
software activities.
 The project’s software development plan is revised according to a
documented procedure.
 Software project commitments and change to commitments made
to
Individuals and external group are reviewed with senior
management according to a documented procedure.
 Approved changes to commitments that affect the software project
are communicated to the members of the software engineering
group and other software-related groups. 51
SOFTWARE PROJECT TRACKING
ACTIVITIES
 The project’s software effort and costs are tracked, and corrective
Actions are taken as necessary.
 The project’s critical computer resources are tracked, and corrective
actions are taken as necessary.
 The project’s software schedule is tracked.
 Software engineering technical activities are tracked.
 The software risks associated with cost, resource , schedule are
tracked.
 Formal reviews to address the accomplishments and results of the
Software project are conducted at selected project milestone 52
according to a documented procedure.

You might also like