0% found this document useful (0 votes)
15 views39 pages

Software Project Management Essentials

Software project management involves planning, scheduling, and monitoring software projects to ensure they are delivered on time and within budget constraints. Key activities include project planning, risk management, scheduling, and monitoring progress. Project scheduling involves breaking the project into tasks, estimating durations, and organizing tasks to minimize dependencies while making optimal use of resources. Critical path method (CPM) analysis uses network diagrams to identify critical tasks whose delays could impact the entire project schedule. Gantt charts visually depict the schedule and allocation of resources over time.

Uploaded by

sheheryar
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views39 pages

Software Project Management Essentials

Software project management involves planning, scheduling, and monitoring software projects to ensure they are delivered on time and within budget constraints. Key activities include project planning, risk management, scheduling, and monitoring progress. Project scheduling involves breaking the project into tasks, estimating durations, and organizing tasks to minimize dependencies while making optimal use of resources. Critical path method (CPM) analysis uses network diagrams to identify critical tasks whose delays could impact the entire project schedule. Gantt charts visually depict the schedule and allocation of resources over time.

Uploaded by

sheheryar
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Software Project

Management

SEN-269 : Software Engineering


Tazeen Muzammil
Project management
Organising, planning and
scheduling software projects
Software project
management
Concerned with activities involved in ensuring
that software is delivered on time and on
schedule and in accordance with the
requirements of the organisations developing
and procuring the software

Project management is needed because software


development is always subject to budget and schedule
constraints that are set by the organisation developing
the software
MANAGEMENT ACTIVITIES

S/W Design 4
Topics covered

Management activities
Project planning
Project scheduling
Risk management
Management activities

Proposal writing
Project planning and scheduling
Project costing
Project monitoring and reviews
Personnel selection and evaluation
Report writing and presentations
Project staffing
May not be possible to appoint the ideal people to
work on a project
Project budget may not allow for the use of
highly-paid staff
Staff with the appropriate experience may not
be available
An organisation may wish to develop employee
skills on a software project
Managers have to work within these constraints
especially when (as is currently the case) there is
an international shortage of skilled IT staff
Project planning

S/W Design 8
Project planning
Probably the most time-consuming project
management activity
Continuous activity from initial concept through
to system delivery. Plans must be regularly
revised as new information becomes available
Various different types of plan may be developed
to support the main software project plan that is
concerned with schedule and budget
Types of project plan
Plan Description
Quality plan Describes the quality procedures and
standards that will be used in a project.
Validation plan Describes the approach, resources and
schedule used for system validation.
Configuration Describes the configuration management
management plan procedures and structures to be used.
Maintenance plan Predicts the maintenance requirements of
the system, maintenance costs and effort
required.
Staff development plan. Describes how the skills andexperience of
the project team members will be
developed.
Project Plan Structure
Introduction
Project organisation
Risk analysis
Hardware and software resource
requirements
Work breakdown
Project schedule
Monitoring and reporting mechanisms
Project scheduling

S/W Design 12
Project scheduling
Split project into tasks and estimate time and resources
required to complete each task

Organize tasks concurrently to make optimal


use of workforce

Minimize task dependencies to avoid delays


caused by one task waiting for another to complete

Dependent on project managers intuition and experience


Scheduling problems
Estimating the difficulty of problems and
hence the cost of developing a solution is
hard
Productivity is not proportional to the
number of people working on a task
Adding people to a late project makes it
later because of communication
overheads
The unexpected always happens. Always
allow contingency in planning
Bar charts and activity
networks
Graphical notations used to illustrate the
project schedule
Show project breakdown into tasks. Tasks
should not be too small. They should take
about a week or two
Activity charts show task dependencies
and the the critical path
Bar charts show schedule against
calendar time
Task durations and
dependencies

Tas
T1
Activity network
14/7/99 15 days
15 days
M1 T3
8 days T9
T1 5 days 4/8/99 25/8/99
25/7/99
T6 M4 M6
4/7/99 M3
start 20 days 7 days
15 days
T7 T11
T2

25/7/99 10 days 11/8/99 5/9/99


10 days
M2 M7 M8
T4 T5 15 days
T10 10 days
18/7/99
T12
M5
25 days
T8 Finish
19/9/99
Critical Path Method
(CPM)
Critical Path Method (CPM), is a procedure for using network
analysis to identify those tasks which are on the critical path: i.e.
where any delay in the completion of these tasks will lengthen
the project timescale, unless action is taken.

Network charts and CPM analysis used to be carried out by hand.


Software is now available which requires the user only to enter
the tasks, duration of each task and dependencies upon other
tasks; a network chart and CPM is then automatically created.
PlanBee Pro.(CPM,PERT and Gantt charts)
The Power Angle Software Critical Path Method Project
Scheduler is currently available completely FREE.

18
Why the CPM?
The CPM formally identifies tasks which must be
completed on time for the whole project to be
completed on time.
Identifies which tasks can be delayed for a while if
resource needs to be reallocated to catch up on
missed tasks
It helps you to identify the minimum length of time
needed to complete a project
The CPM determines both the early start and the
late start date for each activity in the schedule.

19
How to use CPM
D

ES-Earliest Start
EF-Earliest Finish
LS-Latest Start
LF-Latest Finish
D-Duration
F-Float (Slack)

20
Formula for Forward and
Backward Pas
ES(current)+D=EF(successor)
Use highest values on a join
LS(current)-
D(predecessor)=LS(predecessor)
Use lowest values on a join
Float=LS-ES

21
Critical Path
Float=0 are the critical tasks.

Series of events with no slack time.

Shortest path to finish.

22
Task durations and
dependencies

23
Forward Pass

24
Backward Pass

25
Calculating the
Float/Critical Path

26
Task durations and
dependencies

Critical Path
A-B-C-F-I-J-K-L
Tas
A
Timeline Chart/ Gantt
Chart
4
/7 11
/7 1
8/7 2
5/7 1
/8 8
/8 1
5/8 2
2/8 2
9/8 5
/9 1
2/9 1
9/9
S
tart
T4
T
1
T2
M
1
T
7
T
3
M5
T8
M
3
M
2
T
6
T
5
M
4
T
9
M
7
T
10
M
6
T
11
M
8
T
12
F
in
ish
Staff allocation
4/7 11/7 18/7 25/ 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

Fred T4
T8 T11
T12
Jane T1
T3
T9
Anne T2
T6 T10

Jim T7

Mary T5
Risk management

30
Risk management
Risk management is concerned with
identifying risks and drawing up plans to
minimise their effect on a project.
A risk is a probability that some adverse
circumstance will occur.
Project risks affect schedule or resources
Product risks affect the quality or performance
of the software being developed
Business risks affect the organisation
developing or procuring the software
Categories of Risks
Project Risk: That affect the
project schedule or resources.
Product Risk: That affect the
quality or performance of the
software.
Business Risk: That affect the
organization developing or
procuring the software.
32
Possible Software Risks
Risk Risk Type Description
Staff turnover Project Experienced staff leave the project
before it is finished
Management change Project Change of organizational
management with different priorities.

Hardware Project Hardware essential for project not


unavailability delivered on time.
Requirements change Project and Large number of changes to the
Product requirements that can be
anticipated.
Specification delays Project and Specification of essential interface
Product are not available on time

Size underestimate Project and The size of the system has been
Product underestimated.

CASE tool under- Product CASE tools which support the project
performance do not perform as anticipated.
33
The risk management
process
Risk identification
Identify project, product and business risks
Risk analysis
Assess the likelihood and consequences of these
risks
Risk planning
Draw up plans to avoid or minimise the effects of
the risk
Risk monitoring
Monitor the risks throughout the project
Risk analysis

Assess probability and seriousness


of each risk
Probability may be very low, low,
moderate, high or very high
Risk effects might be catastrophic,
serious, tolerable or insignificant
Risk analysis

Risk
Organisatio
in the proje
It is impos
Risk planning
Consider each risk and develop a strategy to
manage that risk
Avoidance strategies
The probability that the risk will arise is reduced
Minimisation strategies
The impact of the risk on the project or product
will be reduced
Contingency plans
If the risk arises, contingency plans are plan to
deal with that risk
Risk Monitoring
Involves regularly assessing each of
the identified risks.

Plan for the risk mitigation are


revised.

Risk monitoring should be the


continuous process .

38
Risk factors

R is k t y p
T e c h n o lo

Common questions

Powered by AI

Continuous project planning is crucial as it accounts for the dynamic nature of software projects, where new information can emerge throughout the project lifecycle. A comprehensive project plan should include an introduction, project organization, risk analysis, hardware, and software resource requirements, a work breakdown structure, project schedule, and monitoring and reporting mechanisms. This ensures that the project adapts to changes efficiently and remains aligned with its objectives .

Bar charts and activity networks complement each other in scheduling by providing different perspectives. Bar charts represent the schedule against calendar time, helping visualize task durations and overall timelines, whereas activity networks illustrate task dependencies and the critical path, emphasizing relationships and potential bottlenecks. Together, these tools enable comprehensive schedule management by enhancing visibility into timelines and task coordination .

The Critical Path Method (CPM) benefits project scheduling by formally identifying tasks that must be completed on time to ensure the project is finished as scheduled. It helps determine the minimal time required to complete the project and identifies tasks that can be delayed without affecting the project's timeline. CPM aids in showing early and late start dates for tasks, allowing managers to allocate resources efficiently to maintain the project timeline .

Risks in software project management fall into three categories: project risks, product risks, and business risks. Project risks can affect the schedule or resources, product risks can impact software quality or performance, and business risks affect the developing or procuring organization. Risk management addresses these by identifying possible risks, analyzing their probabilities and consequences, and planning to avoid or minimize their impact. This involves ongoing monitoring and revising risk mitigation plans to respond to the risks if they materialize .

Software tools for CPM analysis streamline the identification and management of critical tasks by automating calculations of task durations and dependencies, reducing manual effort, and increasing accuracy. However, potential limitations include reliance on accurate initial data entry, which affects outcome reliability, and the complexity of the tools, which might necessitate training. Despite these limitations, the automation and precision offered by these tools significantly enhance project management efficiency .

High staff turnover impacts a software project by potentially delaying schedules and increasing resource costs as new personnel require time to become productive. Strategies to mitigate this risk include investing in staff development and continuity planning, where knowledge transfer and documentation processes are strengthened to ensure minimal disruption when staff changes occur. Risk monitoring and planning also minimize adverse effects by preparing contingency strategies .

Project risk, affecting schedules and resources, typically leads to delays and budget overruns, while product risk impacts the quality and performance of the software, potentially resulting in suboptimal software that fails to meet user needs. Implications include needing to reallocate resources to address delays for project risks and possibly extending development cycles or incurring additional costs to rectify or enhance quality for product risks, impacting stakeholder satisfaction .

Project scheduling involves organizing a project into tasks and estimating the required time and resources for each task. Challenges include estimating task difficulty and associated costs, where productivity is not directly proportional to the number of people on a task. Communication overheads can increase with additional people, particularly when a project is behind schedule. To mitigate these challenges, project managers should utilize scheduling tools like bar charts and activity networks to visualize tasks and dependencies. Adequate contingency should be planned for unexpected delays .

To reduce dependencies and optimize workforce use, a project manager should decompose tasks into independent units where possible, apply parallel processing to enable tasks to run concurrently, use modular approaches to development, and employ flexible resource allocation to adjust swiftly as tasks progress or if delays arise. Using agile methodologies can also facilitate minimizing dependencies by promoting iterative development and continuous integration .

It is not always possible to appoint ideal personnel due to budget constraints, availability of skilled staff, and organizational goals to develop employee skills. Project managers tackle this by working within constraints, often integrating less experienced staff while providing training and support to develop the necessary skills for the project, thereby balancing resource availability with project requirements .

You might also like