Lecture 1
Lecture 1
2
Department of computer Science
3
Software Project Planning
4
Need of Software Project
Management
• Software development is a sort of all new streams in world business,
and there's next to no involvement in structure programming items.
• Most programming items are customized to accommodate customer's
necessities.
• The most significant is that the underlying technology changes and
advances so generally and rapidly that experience of one element
may not be connected to the other one.
• All such business and ecological imperatives bring risk in software
development; hence, it is fundamental to manage software projects
efficiently.
5
Software Project Manager
6
Software Project Manager
To plan a successful software project, we must understand:
• Scope of work to be completed
• Risk analysis
• The resources mandatory
• The project to be accomplished
• Record of being followed
7
Software Project Manager
8
Software Project Manager
9
Responsibility of Software Project
Manager
Managing People :
• Act as project leader
• Liaison with stakeholders
• Managing human resources
• Setting up reporting hierarchy etc.
10
Responsibility of Software Project
Manager
Managing Project
• Defining and setting up project scope
• Managing project management activities
• Monitoring progress and performance
• Risk analysis at every phase
• Take necessary step to avoid or come out of problems
• Act as project spokesperson
11
Software Management Activities
12
Project Planning
13
• Software Project planning starts before technical work start. The
various steps of planning activities are:
14
Scope Management
• It defines the scope of project; this includes all the activities, process
need to be done in order to make a deliverable software product.
• Scope management is essential because it creates boundaries of the
project by clearly defining what would be done in the project and
what would not be done.
• This makes project to contain limited and quantifiable tasks, which
can easily be documented and in turn avoids cost and time overrun.
15
Scope Management
16
Project Estimation
18
Project Estimation
• 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.
19
Project Estimation
• Project manager can estimate the listed factors using two broadly
recognized techniques –
• Decomposition Technique
• This technique assumes the software as a product of various
compositions.
• There are two main models -
• Line of Code Estimation is done on behalf of number of line of codes in
the software product.
• Function Points Estimation is done on behalf of number of function
points in the software product.
21
Project Estimation Techniques
22
Project Estimation Techniques
23
Project Estimation Techniques
24
Estimation Accuracy
• The important project parameters that are estimated include: project size, effort
required to develop the software, project duration, and cost.
28
Delphi cost estimation
• Delphi estimation is carried out by a team comprising of a group of experts and a coordinator.
• In this approach, the coordinator provides each estimator with a copy of the software
requirements specification (SRS) document and a form for recording his cost estimate.
• Estimators complete their individual estimates anonymously and submit to the coordinator. In
their estimates, the estimators mention any unusual characteristic of the product which has
influenced his estimation.
• The coordinator prepares and distributes the summary of the responses of all the estimators,
and includes any unusual rationale noted by any of the estimators.
• Based on this summary, the estimators re-estimate. This process is iterated for several rounds.
No discussion among the estimators is allowed during the entire estimation process.
• After the completion of several iterations of estimations, the coordinator takes the responsibility
of compiling the results and preparing the final estimate.
29
Heuristic techniques
• Heuristic techniques assume that the relationships among the different project parameters can be modeled
using suitable mathematical expressions. Once the basic (independent) parameters are known, the other
(dependent) parameters can be easily determined by substituting the value of the basic parameters in the
mathematical expression.
• Different heuristic estimation models can be divided into the following two classes:
• Single variable estimation model: It provide a means to estimate the desired characteristics of a
problem, using some previously estimated basic (independent) characteristic of the software product
such as its size. A single variable estimation model takes the following form:
Estimated Parameter = c1 * ed1
• multivariable cost estimation model: takes the following form: Multivariable estimation models are
expected to give more accurate estimates compared to the single variable models, since a project
parameter is typically influenced by several independent parameters.
Estimated Resource = c1*e1d1 + c2*e2d2 + ...
30
Department of computer Science
References
• https://www.tutorialspoint.com/software_engineering/software_proj
ect_management.htm
• https://www.javatpoint.com/software-project-planning
• https://www.tutorialspoint.com/estimation_techniques/estimation_t
echniques_overview.htm
31
THANK YOU
32