It introduces the planning phase, covering cost estimation, scheduling, staffing, and quality assurance. The document details cost estimation techniques like LOC and Function Points, and staffing models like the Rayleigh curve and Putnam's work. Team structures such as chief-programmer, democrat...
It introduces the planning phase, covering cost estimation, scheduling, staffing, and quality assurance. The document details cost estimation techniques like LOC and Function Points, and staffing models like the Rayleigh curve and Putnam's work. Team structures such as chief-programmer, democratic, and mixed organisations are also explored. Furthermore, it examines different quality management systems, including ISO 9000 certification. Finally, project scheduling methods like PERT and CPM are investigated.
Size: 1.78 MB
Language: en
Added: Mar 06, 2025
Slides: 178 pages
Slide Content
RAJIV GANDHI INSTITUTE OF PETROLEUM
TECHNOLOGY, JAIS, AMETHI
B.Tech. 3
rd
Year
Software Engineering (CS331)
By
Dr.Kalka Dubey
Department of Computer Science and Engineering
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 1
UNIT-III (Planning a Software Project)
Costestimation
Projectscheduling
Staffingandpersonnelplanning
Teamstructure
Softwareconfigurationmanagement
Qualityassuranceplans
Monitoringplans
Management.
Dr. Kalka Dubey AssistanttProfessor RGIPT Jais Amethi 2
Introduction
•Goal of software project management:
•enable a group of engineers to work efficiently towards successful
completion of a software project.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 3
Introduction
•A project manager’s activities are varied.
•can be broadly classified into:
•Project planning
•Project monitoring and control activities.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 4
Project Planning
•Once a project is found to be feasible,
•project managers undertake project planning.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 5
Project Planning Activities
•Estimation:
•Effort, cost, resource, and project duration
•Project scheduling:
•Staff organization:
•staffing plans
•Risk handling:
•identification, analysis, and abatement procedures
•Miscellaneous plans:
•quality assurance plan, configuration management plan, etc.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 6
Project planning
•Requires utmost care and attention.
•Commitments to unrealistic time and not proper estimation of resources
result in:
•Irritating delays.
•Customer dissatisfaction
•Adverse effect on team morale
•poor quality work
•Project failure.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 7
Responsibility of Project Managers
•Project proposal writing
•Project cost estimation
•Scheduling
•Project staffing
•Project monitoring and control
•Software configuration management
•Risk management
•Managerial report writing and presentations
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 8
Sliding Window Planning
•Involves project planning over several stages:
•Protects managers from making big commitments too early.
•More information becomes available as the project progresses.
•Facilitates accurate planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 9
SPMP Document
•After planning is complete:
•Document the plans:
•in a Software Project Management Plan(SPMP) document.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 10
Organization of SPMP Document
•Introduction(Objectives, Major Functions, Performance Issues, Management and Technical Constraints)
•Project Estimates (Historical Data, Estimation Techniques, Effort, Cost, and Project Duration Estimates)
•Project Resources Plan(People, Hardware and Software, Special Resources)
•Schedules(Work Breakdown Structure, Task Network, Gantt Chart Representation, PERT Chart Representation)
•Risk Management Plan (Risk Analysis, Risk Identification, Risk Estimation, Abatement Procedures)
•Project Tracking and Control Plan
•Miscellaneous Plans (Process Tailoring, Quality Assurance)
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 11
Software Cost Estimation
•Determine size of the product.
•From the size estimate,
•determine the effort needed.
•From the effort estimate,
•determine project duration, and cost.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 12
Size
Estimation
Effort
Estimation
Cost
Estimation
Duration
Estimation
Staffing
Estimation
Scheduling
Software Cost Estimation
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 13
Software Size Metrics
•LOC (Lines of Code):
•Simplest and most widely used metric.
•Comments and blank lines should not be counted.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 14
Disadvantages of Using LOC
•Size can vary with coding style.
•Focuses on coding activity alone.
•Correlates poorly with the quality and efficiency of code.
•Penalizes higher-level programming languages, code reuse, etc.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 15
Disadvantages of Using LOC (cont...)
•Measures lexical/textual complexity only.
•does not address the issues of structural or logical
complexity.
•Difficult to estimate LOC from problem description.
•So not useful for project planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 16
Function Point Metric
•Overcomes some of the shortcomings of the LOC metric.
•Proposed by Albrecht in early 80's:
•FPs measure software size.
•It is widely accepted as an industry standard for functional sizing.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 17
Function Point Metric
•Input:
•A set of related inputs is counted as one input.
•Output:
•A set of related outputs is counted as one output.
•Inquiries:
•Each user query type is counted.
•Files:
•Files are logically related data and thus can be data structures or physical files.
•Interface:
•Data transfer to other systems.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 18
Function Point Metric
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 19
Function Point Metric Calculation (
FP =UFP * CAF
•FP-Function Point
•UAF-Unadjusted Function Point
•CAF-Complexity Adjustment Factor
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 20
Function Point Metric Calculation (
•Step 1-: Calculate Unadjusted Function Point (UFP)
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
unction Units Low Avg High
EI 3 4 6
EO 4 5 7
EQ 3 4 6
ILF 7 10 15
EIF 5 7 10
21
Function Point Metric Calculation (
•Step-2: calculate the Complexity Adjustment Factor (CAF)
CAF = 0.65 + ( 0.01 * F )
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 22
Function Point Metric Calculation (
•Step-3:
F = 14 * scale
•Scale varies from 0 to 5 according to Complexity Adjustment Factor
(CAF) characteristics.
0 -No Influence
1 -Incidental
2 –Moderate
3 -Average
4 –Significant
5 -Essential
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 23
Function Point Metric Calculation (
•Step-4: Calculate Function Point
FP = UFP * CAF
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 24
Example 1
Giventhefollowingvalues,computethefunctionpointwhen
complexityweightingfactorsforI,O,E,FandNarehigh.Itis
alsogiventhat,outoffourteenvalueadjustmentfactorsthat
influencethedevelopmenteffortareModerate.
User Input = 50
User Output = 40
User Inquiries = 35
User Files = 6
External Interface = 4
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 25
Function Point Metric Calculation
•Solution:
FP = UAF * CAF
UAF = 50 * 6 + 40 * 7 + 35 * 6 + 06 * 15 + 04 * 10 = 920
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 26
Function Point Metric Calculation
•Solution:
F= 14*Scale
F= 14*2
F= 28
CAF= .65 +.01*F
CAF = .65+.01*28
CAF= .93
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 27
Function Point Metric Calculation
•Solution:
FP = UAF * CAF
FP= 920 * .93
FP= 855.6
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 28
Example 2
•Considerasoftwareprojectwiththefollowinginformationdomaincharacteristicsforthe
calculationoffunctionpointmetric.
•Number of external inputs (I) = 30
•Number of external outputs (O) = 60
•Number of external inquiries (E) = 23
•Number of files (F) = 08
•Number of external interfaces (N) = 02
•ItisgiventhatthecomplexityweightingfactorsforI,O,E,FandNare4,5,4,10and7,
respectively.Itisalsogiventhat,outoffourteenvalueadjustmentfactorsthatinfluencethe
developmenteffort,fourfactorsarenotapplicable,eachoftheotherfourfactorshavevalue3,
andeachoftheremainingfactorshavevalue4.Thecomputedvalueoffunctionpointmetricis?
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 29
Function Point Metric Calculation
•Solution:
FP = UAF * CAF
UAF = 30 * 4 + 60 * 5 + 23 * 4 + 08 * 10 + 02 * 7 = 606
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 30
Function Point Metric Calculation
F= 14*Scale
F = [4*0+ 4 * 3 + 6 * 4]
F= 36
CAF= .65 + .01*36
CAF = 1.01
•So, FP = 606 * 1.01 = 612.06
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 31
Function Point Metric(CONT.)
•Suffers from a major drawback:
•the size of a function is considered to be independent of its
complexity.
•Extend function point metric:
•Feature Point metric:
•considers an extra parameter:
•Algorithm Complexity.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 32
Staffing and Personnel Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 33
Halstead's Software Science
•An analytical technique to estimate:
•Size
•Development effort
•Development time
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 34
Halstead's Software Science
•Halstead’s Software metrics are a set of measuresproposed by Maurice Halstead to evaluate the complexity
of a software program
•Halstead used a few primitive program parameters
•number of operators and operands
•Derived expressions for:
•Overall program length (N)
•Vocabulary size (n)
•Program volume (V)
•Language level (L)
•Program Difficulty(D)
•Effort (E)
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 35
Halstead's Software Science
•Overall,Halstead’ssoftwaremetricscanbeausefultoolforsoftware
developersandprojectmanagerstoestimatetheeffortrequiredtodevelopand
maintainsoftwareprograms.
n1 = Number of distinct operators.
n2 = Number of distinct operands.
N1 = Total number of occurrences of operators.
N2 = Total number of occurrences of operands.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 36
Halstead's Software Science
•HalsteadProgramLength:Thetotalnumberofoperatoroccurrencesandthe
totalnumberofoperandoccurrences.
N = N1 + N2
•HalsteadVocabulary:Thetotalnumberofuniqueoperatorsandunique
operandoccurrences.
n = n1 + n2
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 37
Halstead's Software Science
•HalsteadEstimatedProgramLength:Estimatedprogramlengthisdenoted
byN^.
N^ = n1log2n1 + n2log2n2
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 38
Halstead's Software Science
•ProgramVolume:Proportionaltoprogramsize,representsthesize,inbits,of
spacenecessaryforstoringtheprogram.
•Thisparameterisdependentonspecificalgorithmimplementation.
•ThepropertiesV,N,andthenumberoflinesinthecodeareshowntobe
linearlyconnectedandequallyvalidformeasuringrelativeprogramsize.
V = N * log2(n)
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 39
Halstead's Software Science
•PotentialMinimumVolume:ThepotentialminimumvolumeV*isdefined
asthevolumeoftheshortestprograminwhichaproblemcanbecoded.
V* = (2 + n2*) * log2 (2 + n2*)
Here,n2*isthecountofuniqueinputandoutputparameters
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 40
Halstead's Software Science
•ProgramLevel:Toranktheprogramminglanguages,thelevelofabstraction
providedbytheprogramminglanguage,ProgramLevel(L)isconsidered.
•Thehigherthelevelofalanguage,thelesseffortittakestodevelopaprogram
usingthatlanguage.
L = V* /V
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 41
Halstead's Software Science
•ProgramDifficulty:Thisparametershowshowdifficulttohandlethe
programis.
D = 1 / L
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 42
Halstead's Software Science
•ProgrammingEffort:Measurestheamountofmentalactivityneededto
translatetheexistingalgorithmintoimplementationinthespecifiedprogram
language.
E = V / L = D * V = Difficulty * Volume
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 43
Halstead's Software Science
Example1:ObtainHalstead’slengthandvolumemeasureforaCfunction
whichhas5operatorswiththeoccurrenceof16and9operandswiththe
occurrenceof21.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 44
Halstead's Software Science
Solution: N=N1+N2
N=16+21=37
N=37
n=n1+n2
n=5+9=14
n=14
Estimatedlength=n1logn1+n2logn2
=5log5+9log9
=5*2.32+9*3.17=39.5
Estimatedlength=39.5
Volume=N*logn
=37*log(14)
=37*3.807
=140.85
Volume(V)=140.85
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 45
Halstead's Software Science
Example2:ObtainHalstead’slength,volume,difficulty,level,and
ProgrammingEffortmeasureforaCfunctionwhichhas14operatorswiththe
occurrenceof53whereas10operandswithhavetheoccurrenceof38.The
numberofuniqueinputandoutputis3.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 46
Halstead's Software Science
Solution: N=N1+N2
N=53+38=91
N=91
n=n1+n2
n=14+10=24
n=24
Estimatedlength=n1logn1+n2logn2
=14log14+10log10
=14*3.8+10*3.3=83.5
Estimatedlength=83.5
Volume=N*logn
=91*log(24)
=91*4.584
=417.1
Volume(V)=417.1
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 47
Halstead's Software Science
Solution:
Potential Minimum Volume V* = (2 + n2*) * log2 (2 + n2*)
=(2+3) * log2 (2 + 3)
= 5*log 2(5)
=5*2.32
Potential Minimum Volume V* = 11.6
Program Level L = V* /V
= 11.6/417.1
Program Level L= .027
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 48
Halstead's Software Science
Solution:
Program Difficulty D = 1 / L
D= 1/0.027
Program Difficulty D= 37.03
Programming Effort E = D *V
E= 37.03 * 417
Programming Effort E= 15441
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 49
NordenStaffing Level Estimation
•Number of personnel required during any development project:
•not constant.
•Nordenin 1958 analysed many R&D projects and observed:
•Rayleigh curverepresents the number of full-time personnel required at
any time.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 50
Rayleigh Curve
•Rayleigh curve is specified
by two parameters:
•td the time at which the curve
reaches its maximum
•K the total area under the
curve.
L=f(K, td)
Effort
Time
td
RayleighCurve
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 51
Rayleigh Curve
•Very small number of engineers are needed at the beginning of a project
•carry out planning and specification.
•As the project progresses:
•more detailed work is required,
•number of engineers slowly increases and reaches a peak.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 52
Rayleigh Curve
•Putnam observed that:
•the time at which the Rayleigh curve reaches its maximum
value
•corresponds to system testing and product release.
•After system testing,
•the number of project staff falls till product installation and delivery.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 53
Rayleigh Curve
•From the Rayleigh curve observe that:
•approximately 40% of the area under the Rayleigh curve is to the left of
td
•and 60% to the right.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 54
Putnam’s Work:
•In 1976, Putnamstudied the problem of staffing of software projects:
•observed that the level of effort required in software development
efforts has a similar envelope.
•found that the Rayleigh-Nordencurve
•relates the number of delivered lines of codeto effortand
development time.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 55
Putnam’s Work
•Putnam analyzeda large number of army projects,and derived the expression:
L=????????????∗??????
??????
�∗????????????
�
�
•L is the size in KLOC.
•K is the effort.
•td is the time to develop the software.
•Ckisthestateoftechnologyconstantthatreflectsfactorsthataffect
programmerproductivity.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 56
Putnam’s Work
•Ck=2 for poor development environment
•no methodology, poor documentation, and review, etc.
•Ck=8 for good software development environment
•software engineering principles used
•Ck=11 for an excellent environment
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 57
Effect of Schedule Change on Cost
•Using the Putnam's expression for L,
K=
??????
3
????????????
3
????????????
4
K=C1/????????????
4
•For the same product size, C1=
??????
3
????????????
3
is a constant.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 58
Effect of Schedule Change onCost(CONT.)
•Putnam model indicates extreme penalty for schedule compression
•and extreme reward for expanding the schedule.
•Putnam estimation model works reasonably well for very large systems,
•but seriously overestimates the effort for medium and small systems.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 59
Example
•If the estimated development time is 1 year, then in order to develop the
product in 6 months,
•The Efforts increased by 16 times.
•In other words,
•the relationship between effort and the chronological delivery time is
highly nonlinear.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 60
Effect of Schedule Change onCost(CONT.)
•Boehm observed:
•“There is a limit beyond which the schedule of a software
project cannot be reduced by buying any more personnel
or equipment.”
•This limit occurs roughly at 75% of the nominal time
estimate.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 61
Effect of Schedule Change on Cost(CONT.)
•Example1:Ifaprojectmanagerreceivesaprojectthathasacompletion
timeof01yearwith100peoplewhereasthecustomerdemandsto
compressthedevelopmenttimeto07months.Isitpossibletocompletethe
aboveproject?Ifpossiblecalculatetheextrapersonneededtocompletethe
projectin07monthduration.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 62
Effect of Schedule Change on Cost(CONT.)
•Solution:Noitisnotpossibletocompleteiton07Month.Themaximum
durationatwhichtheprojectiscompletedis09Month(25%)dueto:
•everyprojecthasonlyalimitedamountofparallelactivities.
•sequentialactivitiescannotbespeededupbyhiringanynumberof
additionalengineers.
•manyengineershavetositidle.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 63
Effect of Schedule Change on Cost(CONT.)
•Solution:
Effort = 1/ td^4
= 1/ (3/4)^4
= 256/81
=3.16
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 64
Jensen Model
•Jensen model is very similar to Putnam model.
•Attempts to soften the effect of schedule compression on effort.
•Makes it applicable to smaller and medium-sized projects.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 65
Jensen Model
•Jensen proposed the equation:
L=Cte* td *??????
1/2
•Where,
•Cteis the effective technology constant,
•td is the time to develop the software, and
•K is the effort needed to develop the software.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 66
Jensen Model
•Jensen proposed the equation:
L=Cte* td *??????
1/2
K= L^2 / Cte^2 *td^2
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 67
Organization Structure
•FunctionalOrganization:
•Engineersareorganizedintofunctionalgroups,e.g.
•specification,design,coding,testing,maintenance,etc.
•Engineersfromfunctionalgroupsgetassignedtodifferent
projects
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 68
Advantages of Functional Organization
•Specialization
•Ease of staffing
•Good documentation is produced
•different phases are carried out by different teams of engineers.
•Helps identify errors earlier.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 69
Project Organization
•Engineers get assigned to a project for the entire duration
of the project
•The same set of engineers carries out all the phases.
•Advantages:
•Engineers save time by learning the details of every project.
•Leads to job rotation.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 70
Team Structure
•Problems of different complexities and sizes require different team structures:
•Chief-programmer team
•Democratic team
•Mixed organization
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 71
Chief Programmer Team
•A senior engineer provides technical leadership:
•partitions the task among the team members.
•verifies and integrates the products developed by the members.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 72
Chief Programmer Team
Chief Programmer team
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 73
Chief Programmer Team
•Works well when
•the task is well understood
•also within the intellectual grasp of a single individual,
•importance of early completion outweighs other factors
•team morale, personal development, etc.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 74
Chief Programmer Team
•Chief programmer team is subject to single-point failure:
•too much responsibility and authority are assigned to the chief
programmer.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 75
Democratic Teams
•Suitable for:
•small projectsrequiring less than five or six engineers
•research-orientedprojects
•A manager provides administrative leadership:
•at different times different members of the group provide technical
leadership.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 76
Democratic Teams
Democratic Team
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 77
Democratic Teams
•Democratic organization provides
•higher morale and job satisfaction for the engineers
•therefore leads to less employee turnover.
•Suitable for less understood problems,
•a group of engineers can invent better solutions than a single individual.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 78
Democratic Teams
•Disadvantage:
•team members may waste a lot time arguing about trivial points:
•absence of any authority in the team.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 79
Mixed Control Team Organization
•Draws upon ideas from both:
•democratic organization and
•chief-programmer team organization.
•Communication is limited
•to a small group that is most likely to benefit from it.
•Suitable for large organizations.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 80
Mixed team organization
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 81
Summary
•Project teams can be organized in following ways:
•Chief programmer: suitable for routine work.
•Democratic: Small teams doing R&D type work
•Mixed: Large projects
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 82
Cost Estimation
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 83
Software Cost Estimation
•Three main approaches to estimation:
•Empirical
•Heuristic
•Analytical
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 84
Empirical Size Estimation Techniques
•An educated guess based on past experience
•Expert Judgement:
•Delphi Estimation:
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 85
Expert Judgement
•Experts divide a software product into component
units:
•e.g. GUI, database module, data communication module,
billing module, etc.
•Add up the guesses for each of the components.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 86
Delphi Estimation:
•Team of Experts and a coordinator.
•Experts carry out estimation independently:
•mention the rationale behind their estimation.
•coordinator notes down any extraordinary rationale:
•circulates among experts.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 87
Delphi Estimation:
•Experts re-estimate.
•Experts never meet each other
•to discuss their viewpoints.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 88
Heuristic Estimation Techniques
•The characteristics to be estimated can be expressed in terms of
some mathematical expression.
•Single Variable Model:
•Parameter to be Estimated=C1(Estimated Characteristic)d1
•Multivariable Model:
•Assumes that the parameter to be estimated depends on more than
one characteristic.
•Parameter to be Estimated=C1(Estimated Characteristic)d1+ C2(Estimated
Characteristic)d2+…
•Usually more accurate than single variable models.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 89
Analytical techniques
•Derive the required results starting from certain simple assumptions.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 90
COCOMO Model
•COCOMO (COnstructiveCOstMOdel) proposed by
Boehm in 1981.
•The key parameters that define the quality of any software
products, which are also an outcome of the Cocomoare
primarily:
Effort
Schedule
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 91
COCOMO Model (CONT.)
•For each of the three product categories:
•From size estimation (in KLOC), Boehm provides equations to predict:
•project duration in months
•effort in programmer-months
•Boehm obtained these equations:
•examined historical data collected from a large number of actual projects.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 92
COCOMO Product classes
•Roughlycorrespondto:
•Application,Utility,andSystemprogramsrespectively.
•Dataprocessingandscientificprogramsareconsideredtobe
applicationprograms.
•Compilers,linkers,editors,etc.,areutilityprograms.
•Operatingsystemsandreal-timesystemprograms,etc.aresystem
programs.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 93
Elaboration of Product classes
•Organic:
•Relatively small groups
•working to develop well-understood applications.
•Semidetached:
•Project team consists of a mixture of experienced and inexperienced staff.
•Embedded:
•The software is strongly coupled to complex hardware, or real-time systems.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 94
Function Point Metric Calculation
•Example: Compute the function point, and , cost for the following
data:
•Number of user inputs = 24
•Number of user outputs = 46
•Number of inquiries = 8
•Number of files = 4
•Number of external interfaces = 2
•Cost per function = $700
•Effort = 36.9 p-m
•Average weighting factors are: 4, 4, 6, 10, 5
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 95
Function Point Metric Calculation
•Solution:
FP = UAF * CAF
UAF = 24 * 4 + 46 * 4 + 8* 6 + 4* 10 + 2 *5 = 378
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 96
Function Point Metric Calculation
CAF = 0.65 + [.01*F]
F= 14*Scale
F = 14*3
F= 42
CAF= .65 + .01*42
CAF = 1.07
•So, FP = 378* 1.07 = 404.78
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 97
Function Point Metric Calculation
Cost = Cost per function * Productivity
Productivity = FP/ Efforts
= 404.78/36.9
= 10.96
Cost = 700*10.96
Cost = 7672.68 $
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 98
COCOMO Model (CONT.)
•Software cost estimation is done through three stages:
•Basic COCOMO
•Intermediate COCOMO
•Complete COCOMO
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 99
Basic COCOMO Model (CONT.)
•Gives only an approximate estimation:
•Effort = a1 * (KLOC) * a2
•Tdev= b1 * (Effort) *b2
•KLOC is the estimated kilo lines of source code
•a1,a2,b1,b2 are constants for different categories of software products
•Tdevis the estimated time to develop the software in months
•Effort estimation is obtained in terms of person months (PMs).
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 100
Development Effort Estimation
•Organic :
•Effort = 2.4 (KLOC)1.05 PM
•Semi-detached:
•Effort = 3.0(KLOC)1.12 PM
•Embedded:
•Effort = 3.6 (KLOC)1.20PM
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 101
Development Time Estimation
•Organic:
•Tdev= 2.5 (Effort)0.38 Months
•Semi-detached:
•Tdev= 2.5 (Effort)0.35 Months
•Embedded:
•Tdev= 2.5 (Effort)0.32 Months
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 102
Example
•Thesizeofanorganicsoftwareproducthasbeenestimatedtobe32,000lines
ofsourcecode.
•Effort=2.4*(32)1.05=91PM
•Nominaldevelopmenttime=2.5*(91)0.38=14months
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 103
Basic COCOMO Model (CONT.)
•Effort is somewhat
super-linear in
problem size.
Effort
Size
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 104
Basic COCOMO Model (CONT.)
•Development time
•sublinear function of product
size.
•When product size increases
two times,
•development time does not
double.
•Time taken:
•almost same for all the three
product categories.
Size
Dev. Time
60K
18 Months
14 Months
30K
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 105
Basic COCOMO Model (CONT.)
•Development time does not increase linearly with product size:
•For larger products more parallel activities can be identified:
•can be carried out simultaneously by a number of engineers.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 106
Basic COCOMO Model (CONT.)
•Development time is roughly the same for all three categories of products:
•For example, a 60 KLOC program can be developed in approximately 18 months
•regardless of whether it is of organic, semi-detached, or embedded type.
•There is more scope for parallel activities for system and application programs than
utility programs.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 107
Intermediate COCOMO
•Basic COCOMO model assumes
•effort and development time depend on product size alone.
•However, several parameters affect effort and development time:
•Reliability requirements
•Availability of CASE (Computer-aided software engineering) tools and modern facilities to
the developers
•Size of data to be handled
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 108
Intermediate COCOMO
•Foraccurateestimation,
•theeffectofallrelevantparametersmustbeconsidered:
•TheintermediateCOCOMOmodelrecognizesthisfact:
•refinestheinitialestimateobtainedbythebasicCOCOMObyusing
asetof15costdrivers(multipliers).
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 109
Intermediate COCOMO (CONT.)
•Ifmodernprogrammingpracticesareused,
•initialestimatesarescaleddownwards.
•Iftherearestringentreliabilityrequirementsontheproduct:
•initialestimateisscaledupwards.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 110
Intermediate COCOMO (CONT.)
•Rate different parameters on a scale of one to three:
•Depending on these ratings,
•Multiply cost driver valueswith the estimate obtained using the basic
COCOMO.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 111
Intermediate COCOMO (CONT.)
•Cost driver classes:
•Product: Inherent complexity of the product, reliability requirements of the product, etc.
•Computer: Execution time, storage requirements, etc.
•Personnel: Experience of personnel, etc.
•Development Environment: Sophistication of the tools used for software development.
•Other parameters:Meeting, proposal, etc.
*Reliabilityrequirementsaretypicallypartofatechnicalspecificationsdocument.They
canberequirementsthatacompanysetsforitsproductanditsownengineersorwhatit
reportsasitsreliabilitytoitscustomers.*
Dr. Kalka Dubey AssistanttProfessor RGIPT Jais Amethi 112
Shortcoming of basic and intermediate COCOMO models
•Both models:
•consider a software product as a single homogeneous entity:
•However, most large systems are made up of several smaller sub-systems.
•Some sub-systems may be considered as organic type, some may be considered embedded, etc.
•for some the reliability requirements may be high, and so on.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 113
Complete COCOMO
•Costofeachsub-systemisestimatedseparately.
•Costsofthesub-systemsareaddedtoobtainthetotalcost.
•Reducesthemarginoferrorinthefinalestimate.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 114
Complete COCOMO Example
•A Management Information System (MIS) for an organization having
offices at several places across the country:
•Database part (semi-detached)
•Graphical User Interface (GUI) part (organic)
•Communication part (embedded)
•Costs of the components are estimated separately:
•summed up to give the overall cost of the system.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 115
Project Scheduling
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
•SoftwareProjectSchedulingisanactivitythatdistributesEstimatedEffort
acrossthePlannedProjectDurationbyallocatingtheEfforttoaspecificSoftware
EngineeringTask.
•ProjectSchedulingestablishesa“RoadMap”fortheProjectManagerWhen
combinedwithEstimationMethodsandRiskAnalysis.
•ProjectSchedulingbeginswithProcessDecompositions.
•ThecharacteristicsoftheProjectareusedtoadaptanappropriatetasksetforthe
Worktobedone.
Project Scheduling
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Project Scheduling
•A software project manager needs to do the following
•Identify all the major activities that need to be carried out to complete the
project.
•Break down each activity into tasks.
•Determine the dependencyamong different tasks.
•Establish the estimatesfor the time durations necessaryto complete the
tasks.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 118
Activity Network
•Representtheinformationintheformofanactivitynetwork.
•Determinetaskstartingandendingdatesfromtheinformation
representedintheactivitynetwork.
•Determinethecriticalpath.
•Allocateresourcestotasks.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 119
•ATaskNetworkdepictseachengineeringtask,itsdependencyonothertasksand
itsprojectedduration.
•TheTaskNetworkisusedtocomputetheCriticalPath,aTimelineChart,anda
varietyofprojectinformation.
•UsingtheProjectScheduleasaguide,theProjectManagercantrackandcontrol
eachstepintheSoftwareprocess.
Task Network
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Task Network
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Project Scheduling Methods
•Schedulingtoolsandtechniquescanbeappliedwithlittlemodificationfor
SoftwareProjects.
•PERT(Program(Project)EvaluationandReviewTechnique)
•CPM(CriticalPathMethod)
•ThesearetwomostusefulProjectSchedulingMethodsthatcanbeapplied
toSoftwaredevelopment.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 122
NETWORK TECHNIQUES
PERT
CPM
-Program Evaluation and
Review Technique
-Developed by the US
Navyon the Polaris
Missile/Submarine
program 1958.
-Critical Path Method
-Developed by El Dupont
for Chemical Plant
Shutdown program.
Both use same calculations, almost similar
Main difference is probabilistic and deterministic in time
estimation
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 123
•Helpful in Scheduling and Planning.
•Inter-Relationship of various activities.
•Cost Control.
•Minimization of Maintenance.
•Reduction of time.
•Control on Idle Resources.
•Avoiding Delays , interruptions.
Objective Of Project Scheduling
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 124
1)Helpfulinplanning:Networkanalysisispowerfultoolforplanning,
schedulingandcontrolling.
2)Inter-Relationshipofvariousactivities:Networkanalysiscreatesinter-
relationshipandinterdependenceofvariousactivitiesofprojectora
programme.
3)CostControl:Incertaincaseswecanmeasurecostofdelayinthe
completionoftheproject.Thiscostcanbecomparedtothecostofthe
resourcesrequiredtocarryoutvariousactivitiesatvariousspeed.
Objective Of Networking
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
4)MinimizationofMaintenance:Networkanalysishelpsthemanagementto
minimizethetotalmaintenancetime.
5)Reductionoftime:Sometimewehavetoarrangeexistingresourceswitha
viewtoreducingthetotaltimefortheproject,ratherthanreducingcost.
6)ControlonIdleResources:Networkanalysisalsohelpstocontroltheidle
resources.Weshouldnotallowlargefluctuationintheuseoflimited
resources.Weadheretoourscheduledcostandtime.
Objective Of Networking
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
7)AvoidingDelays,interruptions:Networkanalysisdevelopsdiscipline
andsystematicapproachinplanningschedulingetc.thisnotthecasein
traditionalmethods.Ithelpsmanagerstoavoiddelays.
Objective Of Networking
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
128
Pert Chart
•One of the most difficult and most error prone activities when constructing a Project Schedule is the
determinationof the TIME DURATION for each task within a Work Breakdown Structure (WBS),
especially when there is a high degree of complexity and uncertainty about a task.
•PERT is a technique used to calculatethe Expected Duration for tasks.
•PERT is a technique that uses Estimates for:
•Optimistic time (O),
•Pessimistic time (P)
•Realistic Time (R)
•To calculate the EXPECTED DURATION (ED) of a particular task.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
129
Program Evaluation ReviewTechnique (Pert)
•TheOptimistictime(O)andPessimistictime(P)reflectstheminimumand
maximumpossibleperiodsoftimeforanactivitytobecompleted.
•TheRealistictime(R)ortheMostlikelytime,reflectstheProjectManager’s“Best
Guess”oftheamountoftimerequiredfortaskcompletion.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
130
•Calculating Expected Completion Time (Et)
ED = [O + (4* R) + P] / 6
•Expected Duration should be closer to the Realistic Time (R).
•It is typically weighed Four times more than the Optimistic time (O) and the Pessimistic
time (P).
Program Evaluation ReviewTechnique (Pert)
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
131
How To Construct A Pert Chart
•Developing a network diagram is a four-step process:-
1.Identify each Project Task to be completed
2.Determine Time Estimates and calculate the Expected Durationfor each Activity
3.For each Task, identify the immediate PredecessorTasks
4.Enter the Task with connecting Arrows based on Dependencies and calculate Start and end times
based on Duration and Resources.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Merits of PERT
Expected project completion time.
Probability of completion before a specified date.
The critical path activities that directly impact the completion time.
It permits more effective planning and control.
It enables the use of statistical analysis.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 132
Itdoesnotlayanyemphasisonthecostofaproject.
Itlaysemphasisonlyontime.
Itdoesnothelpintheroutineplanningofrecurringevents.
Demerits of PERT
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 133
•TheCriticalPathmethodisatechniqueusedinSoftwareEngineeringto
mapoutthebestorderofexecutionofprojectactivitiesinorderto
completetheprojectintheleastamountoftime.
•Itisasequenceofconnectedactivitiesthatleadfromthebeginningofthe
projecttotheendoftheproject.
•ThelongestpathinthenetworkiscalledtheCriticalPath.
Critical Path Method(CPM):
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 134
•SpecifytheIndividualActivities.
•DeterminetheSequenceoftheActivities.
•DrawtheNetworkDiagram.
•EstimateActivityCompletionTime.
•IdentifytheCriticalPath.
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 135
1)SpecifytheIndividualActivities:Fromtheworkbreakdownstructure,alistingcan
bemadeofalltheactivitiesintheproject.
•Thislistingcanbeusedasthebasisforaddingsequenceanddurationinformationin
latersteps.
2)DeterminetheSequenceoftheActivities:Someactivitiesaredependentonthe
completionofothers.
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
3)DrawtheNetworkDiagram:Oncetheactivitiesandtheirsequencing
havebeendefined,theCPMdiagramcanbedrawn.
4)EstimateActivityCompletionTime:Thetimerequiredtocomplete
eachactivitycanbeestimatedusingpastexperienceortheestimatesof
knowledgeablepersons.
5)IdentifytheCriticalPath
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Determinebelowfiveparametersofeachactivityofthenetwork.
1.Earlieststarttime(ES)=Max(EFofpredecessornodes).
2.Earliestfinishtime(EF)=ES+D
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
3.Latestfinishtime(LF)-Thelatesttimeanactivitycanfinishwithout
delayingtheproject.
ForthefinaltaskLF=EF
FortheremainingtaskLF=min(LSofthesuccessornodes)
4.LateststarttimeLS=LF−D
5.SlackorFloatTime(SL)=LF−EF
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
•float/slackactivityisactuallythedifferencebetweenanactivity’s
Earlieststartanditslateststartdateorthedifferencebetweenthe
activity’sEarliestfinishanditslatestfinishdate.
•Itindicateshowmuchtheactivitycanbedelayedwithoutdelaying
thecompletionofthewholeproject.
•Ifthefloat/slackofactivityiszero,thentheactivityisacriticalactivity
andmustbeaddedtothecriticalpathoftheprojectnetwork.
Steps in CPM Project Planning
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Activity Precedents
Duration (in weeks)
A
- 5
B A 4
C A 5
D B 6
E C 3
F D, E 4
Example1:DoaCPMAnalysisandIdentifythecriticalpathofthefollowingactivity.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Example
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Example
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Example
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Found two paths from start to finish. These are:
A → C → E → F
A → B → D → F
For the first path (A → C → E → F), the total float/slack time is 4 (0 + 2 + 2 + 0).
For the second path (A → B → D → F), the total float/slacktime is 0 (0 + 0 + 0 + 0).
The critical path for the project is:
A → B → D → F
Example
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 146
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 147
Activity Duration (in weeks) Precedents
A 6 –
B 4 –
C 3 A
D 4 B
E 3 B
F 10 –
G 3 E,F
H 2 C,D
Example2:DoaCPMAnalysisandIdentifythecriticalpathofthefollowingactivity.
Example
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Disadvantages of CPM
•CPM’s can be complicated , and complexity increases for larger projects.
•Does not handle the scheduling of personnel or the allocation of resources.
•The critical path is not always clear and needs to be calculated carefully.
•Estimating activity completion times can be difficult.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi
Comparison Between CPM and PERT
PERT CPM
1It is a probabilistic model. It is a deterministic model.
2In PERT estimates are uncertain and we talk of ranges
of duration and the probability that an activity duration
will fall into that range.
In CPM estimates of activity duration are based on
historical data.
3It is known for non-repetitive jobs like research and
development programmes.
It is used for repetitive jobs like residential construction.
4It does not deal with the concept of crashing. It deals with concept of crashing.
5Example: Involving new activities or products,
research and development
Example: construction projects, building one off
machines, ships, etc
150
Software Configuration and Quality Management
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 151
Introduction
•Traditional definition of quality:
•Fitness of purpose:
•A quality product does exactly what the users want it to do.
•Fitnessof purpose for software products:
•Satisfaction of the requirements specified in the SRS document.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 152
Fitness of Purpose
•A satisfactory definition of quality for many
products:
•A car, a table fan, a food mixer, microwave oven, etc.
•But, not satisfactory for software products.
•Why?
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 153
Quality for Software Products
•Consider a software product:
•Functionally correct:
•Performs all functions as specified in the SRS document.
•But, has an almost unusable user interface.
•Cannot be considered as a quality product.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 154
Modern View of Quality
•Several quality factors are associated with a software product
•Correctness
•Reliability
•Efficiency (includes efficiency of resource utilization)
•Portability
•Usability
•Reusability
•Maintainability
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 155
Correctness
•A software product is correct:
•If different requirements as specified in the SRS
document have been correctly implemented.
•Results are accurate.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 156
Portability
•A software product is said to be portable:
•If it can be easily made to work
•In different operating systems.
•In different machines,
•With other software products, etc.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 157
Reusability
•A software product has good reusability:
•If different modules of the product can easily be
reused to develop new products.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 158
Usability
•Asoftwareproducthasgoodusability:
•Ifdifferentcategoriesofusers(i.e.bothexpertand
noviceusers)caneasilyinvokethefunctionsofthe
product.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 159
Maintainability
•A software product is maintainable:
•If errors can be easily corrected as and when they show up.
•New functions can be easily added to the product
•The functionalities of the product can be easily modified.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 160
Software Quality Management System
•Quality management system (or quality system):
•Principal methodology used by organizations to ensure that the products
have desired quality.
•A quality system consists of the following:
Managerial Structure
Individual Responsibilities.
Responsibility of the organization as a whole.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 161
Quality System
•Every quality conscious organization has an independent quality
department:
Performs several quality system activities.
Needs support of top management.
Without support at a high level in a company:
Many employees may not take the quality system seriously.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 162
Quality System Activities
•Auditing of projects
•Development of:
•standards, procedures, and guidelines.
•Production of reports for the top management:
•Summarizing the effectiveness of the quality system in the
organization.
•Review of the quality system itself.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 163
Good Quality System
•A good quality system must be well documented.
•Without a properly documented quality system,
•Application of qualityprocedures become ad hoc
•Results in large variations in the quality of the products
delivered.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 164
Good Quality System
•An undocumented quality system:
•Sends clear messages to the staff about the attitude of the
organization towards quality assurance.
•International standards such as ISO 9000 provide:
•Guidance on how to organize a quality system.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 165
Evolution of Quality Systems
•Quality systems have evolved:
•Over the last six decades.
•Prior to World War II:
•Accepted way to produce quality products:
•Inspect the finished products
•Eliminate defective products.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 166
ISO 9000
•ISO (International Standards Organization):
•a consortium of 63 countries established to formulate and foster
standardization.
•ISO published its 9000series of standards in 1987.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 167
What is ISO 9000 Certification?
•ISO 9000 specifies:
•Guidelines for repeatableand high-quality product
development.
•Also addresses organizational aspects.
•Responsibilities, reporting, procedures, processes, and resources for
implementing quality management.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 168
What is ISO 9000 Certification?
•ISO 9000 Certification:
•Serves as a reference for contracts between independent
parties.
•The ISO 9000 standard:
•Specifies guidelines for maintaining a quality system.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 169
ISO 9000
•A set of guidelines for the production process.
•Not directly concerned about the product itself.
•A series of three standards:
•ISO 9001
•ISO 9002
•ISO 9003.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 170
ISO 9001
•Appliesto:
•Organizationsengagedindesign,development,
production,andservicingofgoods.
•Applicabletomostsoftwaredevelopment
organizations.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 171
ISO 9002
•ISO 9002 applies to:
•Organizations who do not design products:
•but are only involved in production.
•Examples of this category of industries:
•Steel or car manufacturing industries
•Buy the product and plant designs from external sources:
•only manufacture products.
•Not applicable to software development organizations.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 172
ISO 9003
•ISO 9003 applies to:
•Organizations involved only in installation and testing
of the products.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 173
ISO 9000 for Software Industry
•ISO 9000 is a generic standard:
•Applicable to many industries,
•Starting from a steel manufacturing industry to a service rendering company.
•Many clauses of ISO 9000 documents:
•Use generic terminologies
•Very difficult to interpret them in the context of software organizations.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 174
ISO 9000 Part-3
•ISO released a separate document called ISO 9000 part-3
in 1991:
•To help interpret the ISO standard for software industry.
•At present:
•Official guidance is inadequate.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 175
ISO 9000: 2000
•ISO 9001:2000:
•Combines the three standards 9001, 9002, and 9003 into one.
•Design and development procedures are required:
•Only if a company does in fact engage in the creation of new products.
•The 2000 version sought to make a radical change in thinking:
•By actually highlighting the concept of process management.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 176
ISO 9000: 2000
•Anothergoalistoimproveeffectivenessviaprocess
performancemetrics:
•Numericalmeasurementoftheeffectivenessoftasksand
activities.
•Continualprocessimprovementandtrackingcustomer
satisfactionweremadeexplicit.
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 177
Why Get ISO 9000 Certification?
•Several benefits:
•Confidence of customers in an organization increases.
•If the organization qualified for ISO 9001 certification.
•This is especially true in the international market.
•Manyinternationalsoftwaredevelopmentcontractsinsistthat
developmentorganizationhaveISO9000certification
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 178
How to Get ISO 9000 Certification?
•An organization intending to obtain ISO 9000 certification:
•Applies to a ISO 9000 registrar for registration.
•ISO 9000 registration process consists of several stages.
•Application stage
•Pre-assessment
•Document review and adequacy audit
•Compliance audit
•Registration
•Continued surveillance
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 179
End of Unit III
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 180
THANKS…..
Dr. Kalka Dubey Assistantt Professor RGIPT Jais Amethi 181