Software Development and Professional Practice
Software Development and Professional Practice
L03: Software Project Management
Dr. Nora Shoaip
Damanhour University
Faculty of Computers & Information Sciences
Department of Information Systems
2023
1
Software Project Management (SPM)
► Software Project Management (SPM)
is a proper way of planning and leading software
projects. It is a part of project management in which
software projects are planned, implemented,
monitored, and controlled.
2
Need of software project management
► It is necessary for an organization to deliver quality
product, keeping the cost within client’s budget constrain
and deliver the project as per scheduled.
3
Fields of Management
1-Requirement Management:
It is the process of analyzing, prioritizing, tracing and
documenting on requirements and then supervising change and
communicating to pertinent stakeholders. It is a continuous
process during a project.
2- Change Management:
The purpose of change management is to execute strategies for
effecting change, controlling change and helping people to adapt
to change.
3- Risk Management:
Risk management is the analysis and identification of risks that is
followed by synchronized and economical implementation of
resources to minimize, operate and control the possibility or effect
of unfortunate events or to maximize the realization of
opportunities.
4
Fields of Management (2)
4- Software Configuration Management:
Software configuration management is the process of controlling
and tracing changes in the software, part of the larger cross-
disciplinary field of configuration management. Software
configuration management include revision control and the
inauguration of baselines.
5-Release Management:
Release Management is the task of planning, controlling and
scheduling the build in deploying releases. Release management
ensures that organization delivers new and enhanced services
required by the customer, while protecting the integrity of existing
services.
5
Project Planning
► Software project planning is task, which is performed
before the production of software actually starts.
► It is there for the software production but involves no
concrete activity that has any direction connection with
software production; rather it is a set of multiple
processes, which facilitates software production.
6
Project Estimation (1)
► Software size estimation Software size may be estimated either in terms of
KLOC (Kilo Line of Code) or by calculating number of function points in the
software. Lines of code depend upon coding practices and Function points
vary according to the user or software requirement.
► Effort estimation The managers estimate efforts in terms of personnel
requirement and man-hour required to produce the software. For effort
estimation software size should be known. This can either be derived by
managers’ experience, organization’s historical data or software size can be
converted into efforts by using some standard formulae.
► Time estimation Once size and efforts are estimated, the time required to
produce the software can be estimated. Efforts required is segregated into sub
categories as per the requirement specifications and interdependency of
various components of software. Software tasks are divided into smaller tasks,
activities or events by Work Breakthrough Structure (WBS).
► The tasks are scheduled on day-to-day basis or in calendar months.
► The sum of time required to complete all tasks in hours or days is the total time
invested to complete the project.
7
Project Estimation (2)
► Cost estimation This might be considered as the most
difficult of all because it depends on more elements than
any of the previous ones. For estimating project cost, it is
required to consider -
► Size of software
► Software quality
► Hardware
► Additional software or tools, licenses etc.
► Skilled personnel with task-specific skills
► Travel involved
► Communication
► Training and support
8
Key Terms
► Resources are a source of supply or support, such as
money, people, materials, technology and space.
► Human resources are all personnel involved in a
project, including project team members and
support staff
► Capital resources are the tools and infrastructure
used to produce other goods and services
► Opportunity cost is the measure of the alternative
opportunities forgone in the choice of one good or activity
over others.
9
PLANNING
► The systematic arrangement of tasks to accomplish an
objective
► Lays out what needs to be accomplished and how it is to
be accomplished
► Involves people who will be involved in performing the
work
10
Two Approaches in Making the Lists
► Project team brainstorm
only suitable for small projects
► Work breakdown structure (WBS)
suitable for larger and complex projects
11
Work Breakdown Structure (WBS)
► Breaks a project down into manageable pieces, or items,
to help ensure that all of the work elements needed to
complete the project work scope are identified
► It’s a hierarchical tree of end items that will be
accomplished or produced by the project team during the
project
12
WBS- Example 2 (https://pmbasics101.com/work-breakdown-structure-guide/)
13
WBS Concepts
► Work items graphic structure that subdivides the
project into smaller pieces.
► Work Package the lowest-level work item for any
given branch of the WBS
The WBS usually indicates the organization or individual
responsible for each work item.
14
Work Breakdown Structure
► Represents the scope of the project into smaller,
manageable hierarchy of components
► Enables allocation of resources and assignment of
responsibilities at granular levels
► Improves the accuracy of Cost Estimation
► Improves Performance Measurement & Control
► Two Types:
Top-Down
Bottom-Up
15
Example Work Breakdown Structure
16
Type 1-Top-down Approach
► Start at the project goal, and keep breaking down activities
until you get to the smallest task
► Involve the team for identifying the tasks or the Sub team
approach (agree on level 1 activities, then have sub
teams tackle each activity in detail; then check for
duplication and missed tasks)
► The top-down approach is more effective for generating a
detailed WBS
17
Type 2- Bottom-up Approach
► Agree on the top level activities using the top-down
approach
► Then break into teams and brainstorm all the activities you
think are within that overall activity
► Organize the activities, and check for missed tasks and
redundancies
18
Planning > WBS > Points To Remeber
► Do not make it too detailed – Results Micro-Management
► Do not make it less detailed too – Tasks too large to
manage
► 8/80 Rule – Thumb Rule says Work Package should be
more than 8 and less than 80 hours in duration
► Consider appropriate milestones نواتج (أو أحداث) لبعض المراحل
as Control points as well as for Status Reporting
► Maintain Standard WBS for the organization based on
project types
19
Responsibility Matrix
► A method used to display, in tabular format, the
individuals responsible for accomplishing the work items in
the WBS.
► Emphasizes who is responsible for each work items and
shows each individual’s role in supporting the over-all
project
► Two Main Role Symbols can be used:
► (P = primary responsibility S = support )
20
Example: Responsibility Matrix
Andrea
Steve
WBS
keith
Lynn
Jeff
Jim
Joe
Work Item
Item
1 Task 1 P S S
2 Task 2 P
3 Task 3 P S
4 Task 4 P S
5 Task 5 P
6 Task 6 P
21
Example: Responsibility Matrix (Boolean)
Andrea
Steve
WBS
keith
Lynn
Jeff
Jim
Joe
Work Item
Item
1 Task 1 * * *
2 Task 2 *
3 Task 3 * *
4 Task 4 * *
5 Task 5 *
6 Task 6 *
This matrix can be Boolean (true/false) assignment only
22
Point to Remember
► It is a good idea to show only one individual as the lead, or
primary, person responsible for each work item.
► Designating two individuals as co-chairpersons increases
the risk that certain work will “fall through the cracks”
because each person assumes that the other person is
going to do it.
23
Defining Activities
► ACTIVITY defined piece of work that
consumes time
can also be defined by the person or
team responsible for each work
When all detailed activities have been identified for each of the
work packages, the NEXT STEP is….
to graphically draw them in a network diagram that shows the
appropriate sequence and interrelationships needed to accomplish
the over-all project scope.
24
Developing the Network Plan
Network Planning (Pert Chart)
► PERT (Program Evaluation & Review Technique) chart is a
tool that depicts project as network diagram. It is capable
of graphically representing main events of project in both
parallel and consecutive way. Events, which occur one
after another, show dependency of the later event over the
previous one.
► Events are shown as numbered nodes. They are
connected by labeled arrows depicting sequence of tasks
in the project
25
Gantt Chart
► Gantt charts was devised by Henry Gantt (1917). It represents
project schedule with respect to time periods. It is a horizontal
bar chart with bars representing activities and time scheduled
for the project activities.
26
Example: Sample Project
Tasks Duration Start End Predecessor
12 days 6-Oct-08 21-Oct-08
Task A 1 day 6-Oct-08 6-Oct-08
Task B 3 days 7-Oct-08 9-Oct-08 A
Task C 2 days 7-Oct-08 8-Oct-08 A
Task D 5 days 10-Oct-08 16-Oct-08 B,C
Task E 3 days 9-Oct-08 13-Oct-08 C
Task F 3 days 17-Oct-08 21-Oct-08 D,E
27
Resource Histogram
► This is a graphical tool that contains bar or chart
representing number of resources (usually skilled staff)
required over time for a project event (or phase).
Resource Histogram is an effective tool for staff
planning and coordination.
28
Critical Path
► The path in a project with the longest duration. The
duration of the Critical Path is earliest completion date for
the project
► Critical Path Method (CPM)
► Forward Pass calculates Early Start and Early
Finish dates
► Backward Pass calculates Late Start and Late
Finish dates
29
Scheduling > Early & Late Dates
► Early Start (ES)- The earliest date a task can start
► Early Finish (EF)- The earliest date a task can be
completed
► Late Start (LS)- The latest date a task can start without
delaying the projects end date
► Late Finish (LF)- The latest date a task can finish without
delaying the projects end date
ES EF
A 2
LS LF
ES EF
30
Float
► Each activity in Network Diagram is represented as below
► Also, remember that Float can be calculated with these
start and finish values using the formula below (2 Forms)
Float = Late Start – Early Start
=Late Finish – Early Finish
31
Float Example
32
Schedule Network Analysis
► Schedule network analysis is the process of calculating
expected, early, and late start and finish dates of a project.
► Helps managers in determining when activities can be
performed, given resources and constraints.
► Critical path method (CPM) is a commonly used
technique. A project’s critical path is the longest path
through the network diagram that illustrates the shortest
amount of time in which a project can be completed.
33
Critical Path: Example
2 C=1 4
A=2 H=5
D=1
1 6 I=3 7
E=5
G=2
B=3 J=4
3 5
F=2
All durations are in days.
Path 1: A, C, H Length = 2+1+5 = 8 days
Path 2: A, D, I Length = 2+1+3 = 6 days
Path 3: A, E, G, I Length = 2+5+2+3 = 12 days
Path 4: A, E, J Length = 2+5+4 = 11 days
Path 5: B, F, G, I Length = 3+2+2+3 = 10 days
Path 6: B, F, J Length = 3+2+4 = 9 days
The critical path is the longest path through the network diagram. In this case, Path 3, A-E-
G-I, is the longest path so it is the critical path for this project.
34
How to Find the Critical Path in a Network Diagram (1)
► The first step is to collect all project activities
► find the task dependencies among the activities. Find which activity
will follow what activity
► Now, draw the network diagram and assign durations to each activity.
► Identify all paths in the network diagram.
► Find the duration of each path.
► The path with the largest duration is the critical path.
► Use forward pass the calculate the earliest start or early start, and
earliest finish or early finish of each activity.
► Use backward pass the calculate the latest start or late start and the
latest finish or late finish for each activity.
► Now you can calculate the float for all activities.
► Note that on a critical path, a late start will be equal to a late finish,
and an early start will be equal to a late start. Also, all critical path
activities will have no float.
35
Critical Path Method Example
The above network diagram has five paths. The paths and their durations are as
follows:
1.Start -> A -> B -> C-> End {duration: 31 days.}
2.Start ->D -> E ->F -> End {duration: 18 days.}
3.Start -> D -> B -> C -> End {duration: 26 days.}
4.Start -> G ->H ->I -> End {duration: 13 days.}
5.Start -> G -> E ->F -> End {duration: 16 days.}
Since the duration of the first path is the longest, it is the critical path. The float
on the critical path is zero.
36
Critical Path Method Example
The float for the second path “Start ->D -> E ->F -> End” = duration of the critical
path – duration of the path “Start ->D -> E ->F -> End”
= 31 – 18 = 13
Hence, the float for the second path is 13 days.
37
Critical Path Method Example
Using the same process, we can calculate the float for other paths as well.
Float for the third path = 31 – 26 = 5 days.
Float for the fourth path = 31 – 13 = 18 days.
Float for the fifth path = 31 – 16 = 15 days.
38
Schedule Compression
► Schedule compression techniques are used to shorten the
project schedule while adhering to the overall project
scope.
► Crashing means dedicating extra resources to a particular
activity in an attempt to finish the activity sooner than the
scheduled completion date.
► Fast-tracking means performing activities in parallel that
would normally be performed in sequence, in an attempt to
shorten the duration of the project.
39
Schedule Compression: Examples
40
Resource Estimation
► Estimate the resource requirement for each activity
► The information from previous projects will be helpful
► The dependency between tasks should be considered for
estimating the resources
41
Duration Estimation
► People who are familiar with the work can estimate better
► Organizational Process Assets (Historical Info, Productivity
Data etc.) will be helpful as a reference
► Estimation will be more accurate if it is obtained from more
than one source and averaged
42
Milestones
► A Milestone is an event specifically designated to represent
some meaningful or specified goal that shows progress
► Good Reference for Management Reporting
► Types of Milestones
► Key Milestones – Phase Gates
► Schedule Milestones – Any significant event in the
schedule
43
Things to be asked when deciding on the sequence of the activities
► Which activities must be finished immediately before this
activity can be started?
► Which activities can be done concurrently with this activity?
► Which activities cannot be started until this activity is
finished?
44
Project Management Software
► A software that allow the project manager and the project
team to plan and control projects in a completely
interactive mode.
45
Common Features of a Project Management Software
► Create lists of tasks with their estimated durations
► Establish interdependencies among tasks
► Work with a variety of time scales, including hours, days,
weeks, months, and years
► Handle certain constraints
► Track team members including their pay rates
46
Common Features of a Project Management Software (continuation)
► Incorporate company holidays, weekends, and team
member vacation days into calendaring systems
► Handle shifts of workers نوبات العمل
► Monitor and forecast budgets توقع لحساب الميزانية
► Look for conflicts
► Generate a wide variety of reports
► Interface with other software packages تبادل
► المعلومات مع برامج أخرى
► Sort information in a variety of ways ( by team, member,
work package)
47
Project Management Software
1. Microsoft Project is an example of a project management
software.
2. ProjectLibre is a free alternative to Microsoft project:
http://www.projectlibre.com/
48
References
► planning”, Alvin G. Niere , MBA-, Misamis University,
http://s3.amazonaws.com/ppt-
download/projectmanagementplanning-111218042421-
phpapp02.ppt
► http://s3.amazonaws.com/ppt-
download/projectplanningscheduling-091101120512-
phpapp02.ppt
49