Project Planning Software Engineering unit-3

kitafal411 15 views 178 slides Mar 06, 2025
Slide 1
Slide 1 of 181
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86
Slide 87
87
Slide 88
88
Slide 89
89
Slide 90
90
Slide 91
91
Slide 92
92
Slide 93
93
Slide 94
94
Slide 95
95
Slide 96
96
Slide 97
97
Slide 98
98
Slide 99
99
Slide 100
100
Slide 101
101
Slide 102
102
Slide 103
103
Slide 104
104
Slide 105
105
Slide 106
106
Slide 107
107
Slide 108
108
Slide 109
109
Slide 110
110
Slide 111
111
Slide 112
112
Slide 113
113
Slide 114
114
Slide 115
115
Slide 116
116
Slide 117
117
Slide 118
118
Slide 119
119
Slide 120
120
Slide 121
121
Slide 122
122
Slide 123
123
Slide 124
124
Slide 125
125
Slide 126
126
Slide 127
127
Slide 128
128
Slide 129
129
Slide 130
130
Slide 131
131
Slide 132
132
Slide 133
133
Slide 134
134
Slide 135
135
Slide 136
136
Slide 137
137
Slide 138
138
Slide 139
139
Slide 140
140
Slide 141
141
Slide 142
142
Slide 143
143
Slide 144
144
Slide 145
145
Slide 146
146
Slide 147
147
Slide 148
148
Slide 149
149
Slide 150
150
Slide 151
151
Slide 152
152
Slide 153
153
Slide 154
154
Slide 155
155
Slide 156
156
Slide 157
157
Slide 158
158
Slide 159
159
Slide 160
160
Slide 161
161
Slide 162
162
Slide 163
163
Slide 164
164
Slide 165
165
Slide 166
166
Slide 167
167
Slide 168
168
Slide 169
169
Slide 170
170
Slide 171
171
Slide 172
172
Slide 173
173
Slide 174
174
Slide 175
175
Slide 176
176
Slide 177
177
Slide 178
178
Slide 179
179
Slide 180
180
Slide 181
181

About This Presentation

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...


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
Tags