0% found this document useful (0 votes)
3 views

01 Lecture

Software Project Management (SPM) is crucial for delivering quality software within budget and schedule constraints, with key goals including timely delivery, cost management, and meeting customer expectations. Unique challenges in software management arise from the intangible nature of software, the one-off nature of large projects, and variable development processes. Project management activities encompass planning, risk management, people management, reporting, and proposal writing, which vary based on organizational factors.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

01 Lecture

Software Project Management (SPM) is crucial for delivering quality software within budget and schedule constraints, with key goals including timely delivery, cost management, and meeting customer expectations. Unique challenges in software management arise from the intangible nature of software, the one-off nature of large projects, and variable development processes. Project management activities encompass planning, risk management, people management, reporting, and proposal writing, which vary based on organizational factors.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

Sayed Jamaluddin Afghani University

Faculty of Computer Science


Department of Software Engineering

Software Project Management (SPM)


Overview

Semester:
Lecture No.: 1st
Lecturer: Zakirullah Ezam
1

Software Project Management

 Software project management is an essential part of software engineering. The


main goal of software project management is to develop a quality software with
in the given budget and schedule constraints.

 Good management cannot guarantee project success. However, bad


management usually results in project failure. The software may be delivered
late, cost more than originally estimated, or fail to meet the expectations of
customers.
2

Project Goals

 The success criteria for project management obviously vary from project to
project but, important goals for all engineering projects are as follows:
1) To deliver the software to the customer at the agreed time
2) To keep overall costs within budget
3) To deliver software that meets the customer’s expectations
4) To maintain a clear and well-functioning development team
3

Continue…

 These goals are not unique to software engineering but are the goals of all
engineering projects. However, software engineering is different from other
types of engineering in a number of ways that make software management
particularly challenging.

 Some of these differences are as follows:


1) The product is intangible
2) Large software projects are often “one-off” projects
3) Software processes are variable and organization-specific
4

The Product is Intangible

 A manager of a civil engineering project can see the product being developed.
Software is intangible. It means the software cannot be seen or touched.

 Software project managers cannot see progress by looking at the artifact that is
being constructed.
5
Large Software Projects are Often
“One-off” Projects

 Every large software development project is unique because every


environment where software is developed is, in some ways, different from all
others.

 Even managers who have a large body of previous experience may find it
difficult to anticipate problems.
6
Software Process are Variable
and Organization Specific

 The engineering process for some types of systems, such as bridges and
buildings, is well understood.

 However, different companies use quite different software development


processes. We cannot reliably predict when a particular software process is
likely to lead to development problems.
7

Project Factors

 Some of the most important factors that affect how software projects are
managed are as follows:
1) Company size
2) Software customers
3) Software development processes
4) Organizational culture
5) Software type
6) Software size
8

Company Size

 Small companies can operate with informal management and team


communications and do not need formal policies and management structures.
They have less management overhead than larger organizations.

 In larger organizations, management hierarchies, formal reporting and


budgeting, and approval processes must be followed.
9

Software Customers

 If the customer is an internal customer, then customer communications can be


informal and there is no need to fit in with the customer’s ways of working.

 If custom software is being developed for an external customer, agreement has


to be reached on more formal communication channels.

 If the customer is a government agency, the software company must operate


according to the agency’s policies and procedures.
10

Software Size

 Small systems can be developed by a small team, which can get together in the
same room to discuss progress and other management issues.

 Large systems usually need multiple development teams that may be


geographically distributed and in different companies.

 In large projects, the project manager has to coordinate the activities of these
teams and make arrangements for them to communicate with each other.
11

Software Type

 If the software being developed is a customer product, formal records of


project management decisions are unnecessary.

 On the other hand, if a safety-critical system is being developed, all project


management decisions should be recorded and justified as these may affect the
safety of the system.
12

Organizational Culture

 Some organizations have a culture that is based on supporting and encouraging


individuals, while others are group focused.

 Small organization are not usually official and formal whereas large
organizations are often official.

 Some organizations have a culture of taking risks, whereas others are risk
averse.
13

Software Development Processes

 A difficult decision that takes time for the project manager is to choose the
right method for the project because there are many methodologies for different
software development.

 If the project requirements are well understood and are not changing, they will
use traditional waterfall methodology. Otherwise, they will use agile software
development methodology.
14

Project Management Activities

 Project factors mean that project managers in different organizations may work
in quite different ways. It is impossible to write a standard job description for a
software project manager. The job varies tremendously depending on the
organization and the software being developed.

 However, a number of fundamental project management activities are common


to all organizations:
1) Project planning
2) Risk management
3) People management
4) Reporting
5) Proposal writing
15

Project Planning

 Project managers are responsible for planning, estimating, and scheduling


project development as well as assigning people to tasks.

 They supervise the work to ensure that it is carried out to the required
standards, and they monitor progress to check that the development is on time
and within budget.
16

Risk Management

 Project managers have to assess the risks that may affect a project, monitor
these risks, and take action when problems arise.

 You have to anticipate risks, understand their impact on the project, the
product, and the business, and take steps to avoid these risks.
17

People Management

 People management is also one of the important activities of project


management. Project managers are responsible for managing a team of people.

 They have to choose people for their team and establish ways of working that
lead to effective team performance.
18

Reporting

 Project managers are usually responsible for reporting on the progress of a


project to customers and to the managers of the company developing the
software.

 They have to be able to communicate at a range of levels, from detailed


technical information to management summaries.
19

Proposal Writing

 The first stage in a software project may involve writing a proposal to win a
contract to carry out an item of work. The proposal describes the objectives of
the project and how it will be carried out.

 It usually includes cost and schedule estimates and justifies why the project
contract should be awarded to a particular organization or team.

You might also like