0% found this document useful (0 votes)
23 views22 pages

SW - Chapter 4 - Software Project Management

Uploaded by

gebresilasie777
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views22 pages

SW - Chapter 4 - Software Project Management

Uploaded by

gebresilasie777
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

CHAPTER FOUR

SOFTWARE PROJECT MANAGEMENT

By: Senbetu Abebe


Dec, 2022
JKU, Jinka, Ethiopia
Software project management
• Concerned with activities involved in ensuring that software is delivered on
time and on budget 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.
• Software project management is an essential part of software engineering
Experienced professional, Plenty of time, Enough budget
These all will leads to success if there would be good management.
Good management can not guarantee project success, however bad
management usually results in project failure.
Bad management may result: Late delivery, Increased cost, To fail to meet
customer requirement
The project managers are responsible :
• For planning and scheduling the development process.
What to do
When to do
How to do
Who will do
What to use
• For supervision to ensure that the project is going on
To the required standard
According to the schedule
Within budget
Basics of software engineering 12/22/2024 3
Software project management is a bit challenging than
managing other types of projects because :
• The product is intangible: - It is hard to claim a bridge is 90%
complete if there is not 90% of the bridge there.
It is easy to claim that a software project is 90% complete, even
if there are no visible outcomes.
• There are no standard software process: The technology
changes very quickly.
We don’t have much experience on large software projects.
• Large software projects are often "bespoke”.
Most large software systems are never-to-be-repeated, with
Basics of software engineering 12/22/2024 4
Management activities
• Project managers take responsibility for some or all of the
following activities according to the situation.
Proposal writing
Project scheduling and planning
 project cost estimation
Project monitoring and reviews
Personnel selection and evaluation
Report writing and presentation

Basics of software engineering 12/22/2024 5


Project planning
• The biggest single problem that afflicts software developing
is that of underestimating resources required for a project.
• Developing a realistic project plan is essential to gain an
understanding of the resources required, and how these
should be applied.

Basics of software engineering 12/22/2024 6


Types of plan
• Software development plan: The central plan, which describes how the
system will be developed.
Specifies the order of work to be carried out, resources, responsibilities,
and so on.
• Quality assurance plan: Specifies the quality procedures & standards to be
used.
• Validation plan: Defines how a client will validate the system that has been
developed.
• Configuration management plan: Defines how the system will be
configured and installed.
• Maintenance plan: Defines how the system will be maintained.
• Staff development plan: Describes how the skills of the participants will be
Basics of software engineering 12/22/2024 7
Development plan should contain

1. Introduction: brief introduction to project


2. Project organization: intro to organizations, people, and their
roles
3. Risk Analysis: what are the key risks to the project?
4. Hardware and software resources: what h/ware and s/ware
resources will be required for the project and when
5. Work breakdown: the project divided into activities, milestones,
deliverables; dependencies between tasks etc
6. Project schedule: actual time required - allocation of dates
7. Reporting and progress measurement: mechanisms to monitor
Basics of software engineering 12/22/2024 8
Activity organization
• Activities in a project should be organised to produce
tangible outputs for management to judge progress.
• Milestones are the end-point of a process activity.
• Deliverables are project results delivered to customers.
• The waterfall process allows for the straightforward
definition of progress milestones.
Milestones in requirement process

ACTIVITIES

Feasibility Require ments Prototype Design Require ments


study analy sis development study specifica
tion

Feasibility User Evaluation Architectur


al System
report requirements report design requirements

MILESTONES
Software Engineering Concepts

Project

*
Activity

is produced by * consumes

WorkProduct * Task * Resources

System Participant

Model Time

Document Equipment

Basics of software engineering 12/22/2024 11


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.
The project scheduling process

Identify Identify activity Estimate resources Allocate people Create project


activities dependencies for activities to activities charts

Software Activity charts


requirements and bar charts
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.
(+30% for anticipated possible problems, and +20% for
unexpected)
Bar charts
• 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 critical path.
• Bar charts show schedule against calendar time.
Task durations and dependencies
Activity Duration (days) Dependencies
T1 8
T2 15
T3 15 T1 (M1)
T4 10
T5 10 T2, T4 (M2)
T6 5 T1, T2 (M3)
T7 20 T1 (M1)
T8 25 T4 (M5)
T9 15 T3, T6 (M4)
T10 15 T5, T7 (M7)
T11 7 T9 (M6)
T12 10 T11 (M8)
Activity timeline (Gantt chart)
4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

Star
t
T4
T1
T2
M1

T7
T3
M5
T8
M3
M2
T6
T5
M4
T9
M7
T10
M6
T11
M8
T12
Finish
Staff allocation
4/7 11/7 18/7 25/7 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

Put dependable staff on critical tasks


Risk management
• Involves anticipating risks that might affect the project schedule
or the quality of the software being developed and taking action
to avoid these risks.
• The results of risk analysis should be documented in the project
plan along with an analysis of the consequences of a risk
occurring.
• There are three categories of risks
Project risks: risks that affect the project schedule or resources
Product risks: risks that affect the quality or performance of the
software being developed.
Business risks: risks that affect the organization developing the
Basics of software engineering 12/22/2024 19
Risk management activities
• Risk identification: possible project, product and business
risks are identified.
• Risk analysis: consequences of the risks are identified
• Risk planning : plan then to address the risks by avoiding or
minimizing its impact on the project
• Risk monitoring: the risk is constantly assessed and plans
for risk mitigation are revised as more information about the
risk is gained.

Basics of software engineering 12/22/2024 20


• When planning a project, it is critically important to know what
the key risks are, and is possible plan for them:
 Staff turnover
 Management change
 Hardware unavailability
 Requirements change
 Specification delays
 Size underestimate
 Technology change
 Product competition

Basics of software engineering 12/22/2024 21


End of the Thank you!
Chapter!

22

You might also like