PROJECT MANAGEMENT
• Software Project Management (SPM) is a
proper way of planning and leading software
projects.
• It is a part of project management in which
software projects are planned, implemented,
monitored and controlled.
Advantages of Software Project Management:
• It helps in planning of software development.
• Implementation of software development is
made easy.
• Monitoring and controlling are aspects of
software project management.
• It overall manages to save time and cost for
software development.
ACTIVITIES
• Project planning
• Project scheduling
• Risk management
• Managing people
PROJECT PLANNING
• It is the continuous activity for initial concept
through to system delivery.
• Project planning is a procedural step in project
management, where required documentation is
created to ensure successful project
completion.
Types of project plan
• Quality plan
• Validation plan
• Configuration plan
• Maintenance plan
PROJECT SCHEDULING
• The project is split into number of tasks and
time and resources.
• How to Schedule a Project
• Project scheduling occurs
during the planning phase of the project. You
have to ask yourself three questions to start:
1. What needs to be done?
2. When will it be done?
3. Who will do it?
RISK MANAGEMENT
• It is an activity in which risk in the software
project are identified.
• There are three main classifications of risks
which can affect a software project:
• Project risks
• Technical risks
• Business risks
• Project risks: Project risks concern differ
forms of budgetary, schedule, personnel, res
• Technical risks: Technical risks concern
potential method, implementation, interfacing,
testing, and maintenance issue.
• Business risks: This type of risks contain risks
of building an excellent product that no one
need, losing budgetary or personnel
commitments.
Other risk categories
• 1. Known risks
• 2. Predictable risks
• 3. Unpredictable risks
Risk management process
• Risk identification
• Risk analysis
• Risk planning
• Risk monitoring
MANAGING PEOPLE
• People is an important asset of any software
project.
• Good project management cannot guarentee
success but poor management on significant
project always leads to failure.
• The main activities which comes under
software project planning
• Estimation
• Scheduling
• Risk analysis
• Quality management planning
• Change management planning.
ESTIMATION
• Estimation determines how much money,
effort, resources, and time it will take to build
a specific system or product.
• The 3 Major Parts to Project Estimation
• Effort estimation
• Cost estimation
• Resource estimation
ESTIMATION TECHNIQUE
1.Algorithmic cost modeling
2.Expert judgement
3.Estimation by analogy
4.Parkinsons law
5.Pricing to win
Approaches
• Top down
• Bottom up
Methods
• LOC
• Functional point Analysis
LOC
• Source lines of code (SLOC), also known as
lines of code (LOC)
• It is a software metric used to measure the
size of a computer program by counting the
number of lines in the text of the program's
source code.
• It is any line of program that is not comments
or blank lines.
Units
• KLOC-Thousand lines of code
• NLOC-Non- comment lines of code
• KDSI-Thousand of delivered source
instruction
FUNCTIONAL POINT ANALYSIS
• A Function Point (FP) is a unit of
measurement to express the amount of
business functionality, an information system
provides to a user.
• FPs measure software size.
PARAMETERS
• External Inputs(EI)
• External Outputs(EO)
• External Inquiries(EQ)
• Internal files(ILF)
• External interface(EIF)
• FP Counting Process involves the following steps −
• Step 1 − Determine the type of count.
• Step 2 − Determine the boundary of the count.
• Step 3 − Identify each Elementary Process (EP) required by the user.
• Step 4 − Determine the unique EPs.
• Step 5 − Measure data functions.
• Step 6 − Measure transactional functions.
• Step 7 − Calculate functional size (unadjusted function point count).
• Step 8 − Determine Value Adjustment Factor (VAF).
• Step 9 − Calculate adjusted function point count.
COCOMO model
• Constructive cost model
• These are types of COCOMO model:
– Basic COCOMO Model
– Intermediate COCOMO Model
– Detailed COCOMO Model
Basic COCOMO Model
• Effort estimation
• Cost estimation
• Duration estimation
• (i) Product attributes –
• Required software reliability extent
• Size of the application database
• The complexity of the product
• (ii) Hardware attributes –
• Run-time performance constraints
• Memory constraints
• The volatility of the virtual machine environment
• Required turnabout time
• (iii) Personnel attributes –
• Analyst capability
• Software engineering capability
• Applications experience
• Virtual machine experience
• Programming language experience
• (iv) Project attributes –
• Use of software tools
• Application of software engineering methods
• Required development schedule
COST DRIVERS VERY LOW LOW NOMINAL HIGH VERY HIGH
Product
Attributes
Required
Software
Reliability 0.75 0.88 1.00 1.15 1.40
Size of
Application
Database 0.94 1.00 1.08 1.16
Complexity of
The Product 0.70 0.85 1.00 1.15 1.30
Hardware
Attributes
Runtime
Performance 1.00 1.11 1.30
Constraints
Memory 1.00 1.06 1.21
Constraints
Volatility of the
virtual machine 0.87 1.00 1.15 1.30
environment
Required turnabout 0.94 1.00 1.07 1.15
time
Personnel attributes
Analyst capability 1.46 1.19 1.00 0.86 0.71
Applications experience 1.29 1.13 1.00 0.91 0.82
Software engineer 1.42 1.17 1.00 0.86 0.70
capability
Virtual machine experience 1.21 1.10 1.00 0.90
Programming language 1.14 1.07 1.00 0.95
experience
Project
Attributes
Application of
software 1.24 1.10 1.00 0.91 0.82
engineering
methods
Use of software 1.24 1.10 1.00 0.91 0.83
tools
Required
development 1.23 1.08 1.00 1.04 1.10
schedule