Upload
manikantabobbili
View
218
Download
0
Embed Size (px)
Citation preview
7/26/2019 Chapter+1+Introduction+part+1
1/57
Chapter : Introduction toSoftware Engineering
Ref. book :
Software Engineering by Roger Pressman
7/26/2019 Chapter+1+Introduction+part+1
2/57
Chapter : Topic Covered
Evoving Roe of Software
!ardware vs. Software
Software characteristics
Changing nature of software Evoution of Software
Software "yths
#
7/26/2019 Chapter+1+Introduction+part+1
3/57
Evoving Roe of Software
Software is a product Transforms information $ produces% manages% ac&uires%
modifies% dispays% or transmits information
'eivers computing potentia of hardware and networksSoftware is a vehice for deivering a product Contros other programs (operating system)
Effects communications (networking software)
!eps buid other software (software toos *environments)
+
7/26/2019 Chapter+1+Introduction+part+1
4/57
,hat is Software -
Software can be defined as: Instruction e/ecuted provide desire features% function *
performance. 'ata structure to ade&uatey manipuate operation. 'ocuments operation and use of the program.
Software products may be deveoped for a particuar customer or may bedeveoped for a genera market.
Software products may be Generic$ deveoped to be sod to a range of different
customers e.g. PC software such as E/ce or ,ord.
Bespoke(custom) $ deveoped for a singe customeraccording to their specification.
0
7/26/2019 Chapter+1+Introduction+part+1
5/57
!ardware vs. Software
!ardware Software
"anufactured
wear out
1uit using components
Reativey simpe
'eveoped2 engineered
deteriorate
Custom buit
Compe/
3
7/26/2019 Chapter+1+Introduction+part+1
6/57
"anufacturing vs. 'eveopment
4nce a hardware product has beenmanufactured% it is difficut or impossibe tomodify. In contrast% software products are
routiney modified and upgraded. In hardware% hiring more peope aows you
to accompish more work% but the samedoes not necessariy hod true in softwareengineering.
5nike hardware% software costs areconcentrated in design rather thanproduction.
6
7/26/2019 Chapter+1+Introduction+part+1
7/57
7aiure curve for !ardware
8
7/26/2019 Chapter+1+Introduction+part+1
8/57
7aiure curve for Software
,hen a hardware component wears out% it is repaced by a spare part.
There are no software spare parts. Every software faiure indicates anerror in design or in the process through which design was transatedinto machine e/ecutabe code. Therefore% software maintenance invoves
consideraby more compe/ity 9
7/26/2019 Chapter+1+Introduction+part+1
9/57
Component 1ased vs. Custom 1uit
!ardware products typicay empoymany standardied designcomponents.
"ost software continues to be custombuit.
The software industry does seem tobe moving (sowy) towardcomponent$based construction.
;
7/26/2019 Chapter+1+Introduction+part+1
10/57
Software characteristics
Software is deveoped or engineered< it is notmanufactured.
Software does not =wear out> but it doesdeteriorate.
Software continues to be custom buit% asindustry is moving toward component based
construction.
?@
7/26/2019 Chapter+1+Introduction+part+1
11/57
7/26/2019 Chapter+1+Introduction+part+1
12/57
System Software: System software is a coection of programs written to service other programs.
It is characteried by heavy interaction with computer hardware< heavy usage bymutipe users< concurrent operation that re&uires scheduing% resource sharing%and sophisticated process management< compe/ data structures< and mutipee/terna interfaces.
Ex. Compiers% operating system% drivers etc.
Appication Software : Appication software consists of standaone programs that sove a specific
business need.
Appication software is used to contro the business function in rea$time.
Engineering 2Scientific software: Characteried by Bnumber crunchingB agorithms. Appications range from astronomy to vocano ogy% from automotive stress
anaysis to space shutte orbita dynamics% and from moecuar bioogy toautomated manufacturing.
Ex. Computer Aided 'esign (CA')% system stimuation etc. ?#
7/26/2019 Chapter+1+Introduction+part+1
13/57
Embedded Software:
It resides in read$ony memory and is used to contro products andsystems
Embedded software can perform imited and esoteric functions.
Ex. keypad contro for a microwave oven.
Product line software:
'esigned to provide a specific capabiity for use by many differentcustomers% product ine software can focus on a imited and esotericmarketpace.
Ex.,ord processing% spreadsheet% C% mutimedia% etc.Web Applications:
,eb apps can be itte more than a set of inked hyperte/t fies.
It evoving into sophisticated computing environments that not onyprovide standaone features% functions but aso integrated withcorporate database and business appications.
Artificial Intelligence software AI software makes use of non$numerica agorithms to sove compe/
probems that are not amenabe to computation or straightforwardanaysis
Ex. Robotics% e/pert system% game paying% etc.
?+
7/26/2019 Chapter+1+Introduction+part+1
14/57
SoftwareDew Categories4pen word computingDpervasive%ubi&uitous% distributed computing
due to wireess networking. !ow to aow mobie devices% personacomputer% enterprise system to communicate across astnetwork.
etsourcingDthe ,eb as a computing engine. !ow to architectsimpe and sophisticated appications to target end$users wordwide.
4pen sourceD>free> source code open to the computing community(a bessing% but aso a potentia curseF)
Aso G 'ata mining
rid computing Cognitive machines
Software for nanotechnoogies
14
7/26/2019 Chapter+1+Introduction+part+1
15/57
Hegacy Software
'efinition
uaity in Hegacy Systems
,hy do egacy systems evove overtime-
otion of Evoution
?3
7/26/2019 Chapter+1+Introduction+part+1
16/57
Software Evoution
The Haw of Continuing Change (?;80): E$type (Reaword impemented) systems must be continuayadapted ese they become progressivey ess satisfactory.
The Haw of Increasing Compe/ity (?;80): As an E$typesystem evoves its compe/ity increases uness work isdone to maintain or reduce it.
The Haw of Sef Reguation (?;80): The E$type systemevoution process is sef$reguating with distribution ofproduct and process measures cose to norma.
The Haw of Conservation of 4rganiationa Stabiity(?;9@): The average effective goba activity rate in anevoving E$type system is invariant over product ifetime.
?6
7/26/2019 Chapter+1+Introduction+part+1
17/57
7/26/2019 Chapter+1+Introduction+part+1
18/57
What is SoftwareWhat is Software
Engineering?Engineering?Software Engineering = Software + Engineering
What is Software?
Software = Soft + ware
Any examples?
What is Engineering?
Engineering = Engine-er-ing
Any examples?
Is this an Engineering discipline? If yes, why? If not, why not?
Is this for an Engineer or a scientist?
?9
7/26/2019 Chapter+1+Introduction+part+1
19/57
What is SoftwareWhat is Software
Engineering?Engineering?A historical defnition:
The establishment and use of sound engineeringprinciples in order to obtain economically software
that is reliable and works eciently on realmachines [Fritz auer, at the !st"#T$ %onference on&oftware Engineering, !'(')
IEEE defnition:
&oftware engineering is the application of asystematic, disciplined, *uanti+able approach tothe deelopment, operation, and maintenance ofsoftware- that is, the application of engineering tosoftware.
?;
7/26/2019 Chapter+1+Introduction+part+1
20/57
0/anagement0/anagement
1erspecties21erspecties2
0/anagement0/anagement
1erspecties21erspecties2
#s long as there are good standards andclear procedures in my company, I shouldn3tbe too concerned.
But the proo o the puddingis in the eating;
not in the Recipe !
#@
7/26/2019 Chapter+1+Introduction+part+1
21/57
0/anagement0/anagement
1erspecties21erspecties2
0/anagement0/anagement
1erspecties21erspecties2
#s long as my software engineers042 haeaccess to the fastest and the mostsophisticated computer enironments and
state5of5the5art software tools, I shouldn3t betoo concerned.
The environment isonly one o the several actors
that determine the qualityo the end sotare product!
#?
7/26/2019 Chapter+1+Introduction+part+1
22/57
0/anagement0/anagement
1erspecties21erspecties2
0/anagement0/anagement
1erspecties21erspecties2
6hen my schedule slips, what I hae to do is to
start a +re5+ghting operation7 add moresoftware specialists, those with higher skills and
longer e8perience 5 they will bring the schedule
back on the rails4
nortunately"
sotare #usiness does notentertain schedule compaction
#eyond a limit!
##
7/26/2019 Chapter+1+Introduction+part+1
23/57
& ft / th& ft / th
&oft are / ths&oftware /yths
7/26/2019 Chapter+1+Introduction+part+1
24/57
&oftware /yths&oftware /yths
0
7/26/2019 Chapter+1+Introduction+part+1
25/57
& ft / th& ft / th
&oftware /yths&oftware /yths
7/26/2019 Chapter+1+Introduction+part+1
26/57
&oftware /yths&oftware /yths
0
7/26/2019 Chapter+1+Introduction+part+1
27/57
7/26/2019 Chapter+1+Introduction+part+1
28/57
oehm3soehm3sTop TenTop Ten
IndustrialIndustrial
&oftware&oftware/etrics/etrics
oehm3soehm3s
Top TenTop Ten
IndustrialIndustrial
&oftware&oftware/etrics/etrics#9
7/26/2019 Chapter+1+Introduction+part+1
29/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Finding and +8ing a
software problem afterdeliery of the product is!>> times more e8pensiethan defect remoal during
re*uirements and earlydesign phases.
11
#;
7/26/2019 Chapter+1+Introduction+part+1
30/57
7/26/2019 Chapter+1+Introduction+part+1
31/57
Eort to @epair &oftwareEort to @epair &oftware
0when defects are detected at0when defects are detected at
dierent stages2dierent stages2
Eort to @epair &oftwareEort to @epair &oftware
0when defects are detected at0when defects are detected at
dierent stages2dierent stages2
+?
% l ti E t f%umulatie Eects of
%umulatie Eects of%umulatie Eects of
7/26/2019 Chapter+1+Introduction+part+1
32/57
%umulatie Eects of%umulatie Eects of
ErrorError
%umulatie Eects of%umulatie Eects of
ErrorError
the real problemthe real problemthe real problemthe real problem
correctcorrectcorrectcorrect incorrectincorrectincorrectincorrect hiddenhiddenhiddenhidden missingmissingmissingmissing
requirementsrequirements
+#
% l ti E t f% l ti E t f
%umulati e Eects of%umulatie Eects of
7/26/2019 Chapter+1+Introduction+part+1
33/57
incorrectincorrectincorrectincorrect
%umulatie Eects of%umulatie Eects of
ErrorError
%umulatie Eects of%umulatie Eects of
ErrorError
correctcorrectcorrectcorrect incorrectincorrectincorrectincorrect hiddenhiddenhiddenhidden missingmissingmissingmissing
requirementsrequirements
correctcorrectcorrectcorrect incorrectincorrectincorrectincorrect
hiddenhiddenhiddenhidden missingmissingmissingmissing
designdesign
incorrectincorrectincorrectincorrect
++
%umulatie Eects of%umulatie Eects of
%umulatie Eects of%umulatie Eects of
7/26/2019 Chapter+1+Introduction+part+1
34/57
%umulatie Eects of%umulatie Eects of
ErrorError
%umulatie Eects of%umulatie Eects of
ErrorError
correctcorrectcorrectcorrect incorrectincorrectincorrectincorrect hiddenhiddenhiddenhidden missingmissingmissingmissing
designdesign
correctcorrectcorrectcorrect incorrectincorrectincorrectincorrect
hiddenhiddenhiddenhidden missingmissingmissingmissing
codecode
incorrectincorrectincorrectincorrect
+0
7/26/2019 Chapter+1+Introduction+part+1
35/57
7/26/2019 Chapter+1+Introduction+part+1
36/57
7/26/2019 Chapter+1+Introduction+part+1
37/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
/aintenance costs twicewhat the deelopmentcosts.33
+8
7/26/2019 Chapter+1+Introduction+part+1
38/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
7/26/2019 Chapter+1+Introduction+part+1
39/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Dariations in humansaccount for the greatestariations in productiity.55
+;
7/26/2019 Chapter+1+Introduction+part+1
40/57
0/anagement0/anagement
1erspecties21erspecties2
0/anagement0/anagement
1erspecties21erspecties2
#s long as my software engineers042
hae access to the fastest and the mostsophisticated computer enironmentsand state5of5the5art software tools, Ishouldn3t be too concerned.
0@
7/26/2019 Chapter+1+Introduction+part+1
41/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
The ratio of software to
hardware costs has gonefrom !B7B in !'B andcontinues to grow in
faour of software as thedominant cost.
66
0?
7/26/2019 Chapter+1+Introduction+part+1
42/57
7/26/2019 Chapter+1+Introduction+part+1
43/57
7/26/2019 Chapter+1+Introduction+part+1
44/57
7/26/2019 Chapter+1+Introduction+part+1
45/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
#pplications products
cost three times as muchper instruction asindiidual programs-system software productscost nine times as much.
!!
03
7/26/2019 Chapter+1+Introduction+part+1
46/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
6alkthroughs catch (>Cof the errors.""
06
7/26/2019 Chapter+1+Introduction+part+1
47/57
7/26/2019 Chapter+1+Introduction+part+1
48/57
&oftware /yths&oftware /yths0
7/26/2019 Chapter+1+Introduction+part+1
49/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
/any software processesobey a 1areto distribution.
2#$2#$
modulesmodules!#$!#$
costcost
1#1#
0;
7/26/2019 Chapter+1+Introduction+part+1
50/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
/any software processesobey a 1areto distribution.
1#1#2#$2#$
modulesmodules!#$!#$
errorserrors
3@
7/26/2019 Chapter+1+Introduction+part+1
51/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
/any software processesobey a 1areto distribution.
2#$2#$
modulesmodules
!#$!#$
costcostto %i&to %i&
1#1#
3?
' h ( T T
' h ( T T'oehm(s Top Ten
7/26/2019 Chapter+1+Introduction+part+1
52/57
'oehm(s Top Ten'oehm(s Top Ten)ndustrial *o%t+are ,etrics)ndustrial *o%t+are ,etrics
'oehm(s Top Ten'oehm(s Top Ten)ndustrial *o%t+are ,etrics)ndustrial *o%t+are ,etrics
2#$2#$
modulesmodules!#$!#$
e&ec timee&ec time
/any software processesobey a 1areto distribution.
1#1#
3#
7/26/2019 Chapter+1+Introduction+part+1
53/57
Industrial &oftwareIndustrial &oftware
/etrics/etrics
Industrial &oftwareIndustrial &oftware
/etrics/etrics
/any software processesobey a 1areto distribution.
2#$2#$
toolstools!#$!#$
useuse
1#1#
3+
& ft %h t i ti& ft %h t i ti
7/26/2019 Chapter+1+Introduction+part+1
54/57
&oftware %haracteristics&oftware %haracteristics&oftware %haracteristics&oftware %haracteristics
is deeloped or engineered,rarely manufactured
is custom5built- rarely assembled
is non5material,and therefore does not wear out
is too ;e8ible
is too pliable0easy to bent:shape2
30
&ymptom of &oftware %risis&ymptom of &oftware %risis
7/26/2019 Chapter+1+Introduction+part+1
55/57
&ymptom of &oftware %risis&ymptom of &oftware %risis
about =&GAB> billion spent peryear in the =& on applicationdeelopment
of this, about =&G!H> billionwasted due to the pro9ectsgetting abandoned or reworked-this in turn because of notfollowing best practices andstandards
33
-e%. *tandish /roup0 1""6-e%. *tandish /roup0 1""6
f f
7/26/2019 Chapter+1+Introduction+part+1
56/57
&ymptom of &oftware&ymptom of &oftware
%risis%risis
!>C of client:serer apps areabandoned or restarted from scratch
A>C of apps are signi+cantly altered toaoid disaster
H>C of apps are deliered signi+cantlylate
36
*ource. 3 year study o% 7# large cs apps in 3*ource. 3 year study o% 7# large cs apps in 3
Compu+are 12"5Compu+are 12"5
Wh S ftWh S ft
7/26/2019 Chapter+1+Introduction+part+1
57/57
Why SoftwareWhy Software
Engineering?Engineering?
sed + e&tensie re+or80
but later abandoned
2#$
Used as delivered
2%Usable w. rework
3%
9 software projects totaling $96.7 million:Where The Money Went
[Report to Congress Comptroller !eneral"979# Deliered0 but neer
success%ully used45$
9aid %or0 but
not deliered3#$ Why?
Software hurts
Requirement