2. What is SPM
Software project management refers to
the process of planning, organizing,
coordinating, controlling, and delivering
software projects. It involves managing
various aspects of the project, including
the scope, schedule, budget, resources,
risks, and quality to ensure the successful
completion of the project.
Software project management requires
effective communication and
collaboration among team members,
stakeholders, and clients to ensure that
the project meets the needs and
requirements of the end-users. It also
involves the use of project management
methodologies, tools, and techniques to
streamline the project's workflow, identify
and mitigate risks, and deliver the project
on time and within budget.
In summary, software project
management is a crucial discipline that
helps to ensure the successful delivery of
software projects by managing resources,
schedules, and risks effectively, and
delivering high-quality software that
3. Cocomo
Model
The COCOMO (Constructive Cost
Model) is a popular software cost
estimation model developed by
Barry Boehm in the late 1970s.
The model provides a structured
and systematic approach for
estimating the effort, time, and cost
required to develop software
projects.
In this section of the presentation,
we will discuss the COCOMO model
in detail.
Basic Cocomo Model:
It is the simplest variant of the model and is used for estimating the effort required for
small and medium-sized software projects. It uses a simple formula to estimate the
effort required, which is based on the lines of code in the software.
Intermediate Cocomo Model:
This variant is used for estimating the effort required for medium to large-sized
software projects. It considers various factors such as the complexity of the software,
the experience of the development team, and the development environment, to provide
a more accurate estimate of the effort required.
Advance Cocomo Model:
This variant is used for estimating the effort required for large and complex software
projects. It considers a wide range of factors such as the size of the development team,
the complexity of the software, the use of modern programming languages and tools,
and the development environment, to provide a highly accurate estimate of the effort
required..
The COCOMO model is based on the
principle that the effort required to
develop software is directly
proportional to the size and
complexity of the software project.
The model consists of three variants:
4. Direct Cost:
These are costs that are directly related to the development of software, such as salaries of developers,
cost of software tools and licenses, and cost of hardware and infrastructure required to develop software.
Variable Cost:
In software project management,
variable costs refer to expenses that
are directly related to the amount of
work being performed or the level of
activity within a project. These costs
can vary based on factors such as the
size of the project, the number of team
members working on the project, and
the duration of the project.
Indirect Cost:
These are costs that are not directly
related to software development
but are required to manage the
project, such as salaries of project
managers, administrative costs,
and overheads.
Fixed Cost:
These are costs that are
directly related to the
development of software,
such as salaries of
developers, cost of
Sunk Cost:
sunk cost refers to the cost
that has already been
incurred and cannot be
recovered. Sunk costs are
expenses that have already
been spent on a project and
cannot be refunded or
reversed, even if the project
is cancelled or fails to meet
its objectives.
Types Of Cost
software tools and licenses, and cost of
hardware and infrastructure required to develop
software
5. Project Managment
Constraints :
In software project management, there are three main constraints that project managers need to balance in order to
deliver successful projects: scope, time, and cost. These constraints are often referred to as the "iron triangle" of project
management, and they represent the interdependent relationships between the scope, time, and cost of a project.
COST:
The cost constraint
represents the budget for
the project and the
resources required to
complete the project
activities. Cost constraints
include the costs of labor,
materials, software,
hardware, and other
project-related expenses.
SCOPE:
The scope of a software
project refers to the goals,
deliverables, features, and
functionality that are required
to meet the project objectives.
Scope constraints represent
the requirements and
expectations of the project
stakeholders, including the
client, end-users, and project
sponsors.
TIME:
The time constraint
represents the duration
of the project and the
timeline for completing
the project activities.
Time constraints are
often expressed in
terms of project
milestones, deadlines,
and delivery dates.
6. Kanban Methodology:
Kanban is a visual project management methodology that was originally developed in the
manufacturing industry and has since been adapted for software project management.
Kanban emphasizes the continuous delivery of small, incremental changes to the
software product, with a focus on improving the flow of work through the development
process.
In Kanban, work is represented on a visual board, which is typically divided into columns
that represent the stages of the development process. Each column on the board
represents a stage in the development process, such as backlog, analysis, development,
testing, and deployment. The work items, or tasks, are represented by cards, which are
moved across the board as they progress through the stages of the process.
.
The main principles of Kanban in software project management are:
Visualize the workflow
Limit work in progress
Manage flow
Make process policies explicit
Continuous improvement
7. WBS:
Work Breakdown Structure
The main benefits of WBS in software project management are:
Work Breakdown Structure, is a project management tool used
in software project management to break down a large project
into smaller, more manageable components. The WBS organizes
the work into smaller, more manageable sections, providing a
clear and comprehensive overview of the entire project.
• Clarity: A WBS provides a clear and concise overview of the entire project,
breaking down the work into manageable components.
• Organization: A WBS provides a structure for organizing and managing the
project
• Efficiency: By breaking down the project into smaller components, a WBS
can help to identify areas where work can be streamlined and efficiency
can be improved.
• Communication: A WBS provides a common language for discussing the
project
• Control: A WBS helps project managers to maintain control over the
project by identifying the critical path, tracking progress against the
schedule, and identifying potential risks and issues.