Sen Unit Iv
Sen Unit Iv
Unit-IV
Software Project Estimation
S.A.Sarwade
Lecturer in Information Technology
Government Polytechnic, Jalgaon
Learning Objectives
By watching this presentation students will be able to
• Estimate the size of the software product using the given method.
• Estimate the cost of the software product using the given empirical
method.
• Apply the RMMM strategy in identified risks for the given software
development problem.
for(i=0;i<50;i++)
{
printf (“LOC”);
}
//Number of LOC
There are
• 5 physical line of code.
• 2 logical line of code
• 1 comment line.
Disadvantages of LOC
• There is no definite clear picture of how to count number of lines because the
length and complexity of the code is different in different languages.
• It only depends on the length but not on complexity and functionality.
• The conceptual idea behind the function point metric is that the size
of a software product is directly dependent on the number of
different functions or features it supports.
• External Inquiries(EQ): They leads to data retrieval from system but don’t change the system.
• Ex. In library database system, determine what books are currently checked out to a
student.
• Internal Logical Files(ILF): Logical files maintained within the system. Log files are not included here.
• External interface Files(EIF): These are logical files from other applications which are used by
our system.
• Ex.In Library database system, the file that contains transactions in the library's billing
system.
• Multiply count of each function type with its weighting factor and
find the weighted sum. The weighting factors for each type based
on their complexity are as follows:
Semi-detached –
• Team size required is medium.
• The projects comparatively less familiar and difficult to develop compared to the organic ones.
• require more experience and better guidance and creativity.
Example- developing a new operating system (OS), a Database Management System (DBMS), and
complex inventory management system.
Embedded –
•requires a larger team size than the other two models.
•the highest level of complexity, creativity, and experience requirement.
•the developers need to be sufficiently experienced and creative to develop such complex models.
Example - ATM, Air Traffic control.
Intermediate Model
• The basic COCOMO model assumes that the effort is only a function of the number of
lines of code and some constants evaluated according to the different software system.
• However, in reality, no system’s effort and schedule can be solely calculated on the basis
of Lines of Code. For that, various other factors such as reliability, experience,
Capability are also important.
• These factors are known as Cost Drivers and the Intermediate Model utilizes 15 such
drivers for cost estimation.
28/05/2021 S.A.Sarwade, Lecturer in IT, G.P.Jalgaon 36
Detailed Model
Detailed COCOMO incorporates all characteristics of the
intermediate version with an assessment of the cost driver’s impact on
each step of the software engineering process.
• The detailed model uses different effort multipliers for each cost driver
attribute.
Software
Projects a b d
Organic 2.4 1.05 0.38
Semi
Detached 3.0 1.12 0.35
N = E/Tdev
N - Number of persons required
Productivity = KLOC/E
Productivity is measured as KLOC/month
For the three classes of software products, the formulas for estimating
the development time based on the effort are given below:
E = 3.0 * (400)1.12=2462.79 PM
Effort E = 3.0(200)1.12=1133.12PM
Development time Tdev = 2.5(1133.12)0.35=29.3 M
Staff Size = E/ Tdev
= 1133.12/29.3= 38.67 persons
Productivity = KLOC/E
= 200/1133.12
= 0.1765 KLOC/MONTH
= 176 LOC/MONTH
• It is the model that allows one to estimate the cost, effort and
schedule when planning a new software development activity.
It consists of four stages:
Effort = NOP/PROD
• Various techniques or models are available for cost estimation, also known
as Cost Estimation Models as shown below :
• Two popular empirical estimation techniques are: Expert judgment technique and
Delphi cost estimation.
• Expert judgment is one of the most widely used estimation techniques. In this
approach, an expert makes an educated guess of the problem size after analyzing
the problem thoroughly.
• An expert making an estimate may not have experience and knowledge of all
aspects of a project. For example, he may be conversant with the database and
user interface parts but may not be very knowledgeable about the computer
communication part.
28/05/2021 S.A.Sarwade, Lecturer in IT, G.P.Jalgaon 71
Expert Judgment Technique
• A more refined form of expert judgment is the estimation made by group of
experts. Estimation by a group of experts minimizes factors such as individual
oversight, lack of familiarity with a particular aspect of a project, personal bias,
and the desire to win contract through overly optimistic estimates.
• However, the estimate made by a group of experts may still exhibit bias on issues
where the entire group of experts may be biased due to reasons such as political
considerations. Also, the decision made by the group may be dominated by
overly assertive members.
Estimator 1 ESTIMATE
ESTIMATE
Estimator 2
Iterated
Coordinator
ESTIMATE
Estimator n
N^ = n1 log2n1 + n2 log2n2
• Language Level (L) – Shows the algorithm implementation program language level. The
same algorithm demands additional effort if it is written in a low-level program language. For
example, it is easier to program in Pascal than in Assembler.
L=V/D/D
• Loss – the risk becomes a reality and unwanted consequences or losses occur.
• Technical risks
• They threaten the quality and timeliness of the software to be produced.
• If they become real, implementation may become difficult or impossible.
• Business risks
• They threaten the viability of the software to be built.
• If they become real, they jeopardize the project or the product.
28/05/2021 S.A.Sarwade, Lecturer in IT, G.P.Jalgaon 94
Risk Categorization – Approach #1 (continued)
• Sub-categories of Business risks
• Market risk – building an excellent product or system that no one really wants.
• Strategic risk – building a product that no longer fits into the overall business
strategy for the company.
• Sales risk – building a product that the sales force doesn't understand how to sell.
• Predictable risks
• Those risks that are extrapolated from past project experience (e.g., past turnover)
• Unpredictable risks
• Those risks that can and do occur, but are extremely difficult to identify in advance
• By identifying known and predictable risks, the project manager takes a first step toward avoiding
them when possible and controlling them when necessary
• Generic risks
4) Note the overall accuracy of the risk projection so that there will be
no misunderstandings.
• Assess the impact of each risk based on an averaging of the four risk components
to determine an overall impact value.
• Draw a horizontal cutoff line in the table that indicates the risks that will be given
further attention.
• Those individuals who are leaving are asked to stop all work and spend their
last weeks in knowledge transfer mode.
• Once RMMM has been documented and the project has begun, the
risk mitigation, and monitoring steps begin
• Risk mitigation is a problem avoidance activity.