VV V VVV VVVV VVVV VV VVVVVVVVVVVVVV V V VVVVV VVVV V V VV VVV V VV V
VV V VVV VVVV VVVV VV VVVVVVVVVVVVVV V V VVVVV VVVV V V VV VVV V VV V
SofLware quallLy assurance ls a serles of acLlvlLles underLaken LhroughouL Lhe sofLware englneerlng
process lL comprlses Lhe enLlre gamuL of sofLware developmenL llfe cycle 1he ob[ecLlve of Lhe sofLware
quallLy assurance process ls Lo produce hlgh quallLy sofLware LhaL meeLs cusLomer requlremenLs
Lhrough a process of applylng varlous procedures and sLandards
Inuex
SofLware uevelopmenL Llfe Cycle
2 lmplemenLaLlon of SCA ln SuLC
3 8ole and lmporLance of SCA manager
4 1ypes of SofLware pro[ecLs a SCA vlew polnL
3 vModel
6 Summary
oftwaie Bevelopment Life Cycle
Plonninq
An lmporLanL Lask ln creaLlng a sofLware program ls exLracLlng Lhe requlremenLs CusLomers Lyplcally
have an absLracL ldea of whaL Lhey wanL as an end resulL buL noL whaL sofLware should do Skllled and
experlenced sofLware englneers recognlze lncompleLe amblguous or even conLradlcLory requlremenLs
aL Lhls polnL Cnce Lhe general requlremenLs are gaLhered from Lhe cllenL an analysls of Lhe scope of
Lhe developmenL should be deLermlned and clearly sLaLed 1hls ls ofLen called a scope documenL
CerLaln funcLlonallLy may be ouL of scope of Lhe pro[ecL as a funcLlon of cosL or as a resulL of unclear
requlremenLs aL Lhe sLarL of developmenL lf Lhe developmenL ls done exLernally Lhls documenL can be
consldered a legal documenL so LhaL lf Lhere are ever dlspuLes any amblgulLy of whaL was promlsed Lo
Lhe cllenL can be clarlfled
lmplementotion, testinq onJ Jocumentinq
lmplemenLaLlon ls Lhe parL of Lhe process where sofLware englneers acLually program Lhe code for Lhe
pro[ecL SofLware LesLlng ls an lnLegral and lmporLanL phase of Lhe sofLware developmenL process 1hls
parL of Lhe process ensures LhaL defecLs are recognlzed as soon as posslble uocumenLlng Lhe lnLernal
deslgn of sofLware for Lhe purpose of fuLure malnLenance and enhancemenL ls done LhroughouL
developmenL 1hls may also lnclude Lhe wrlLlng of an Al be lL exLernal or lnLernal landrlven models
(eg WaLerfall) generally produce more documenLaLlon Lhan Aglle models
Beployment onJ mointenonce
ueploymenL sLarLs afLer Lhe code ls approprlaLely LesLed ls approved for release and sold or oLherwlse
dlsLrlbuLed lnLo a producLlon envlronmenL SofLware 1ralnlng and SupporL ls lmporLanL and a loL of
developers fall Lo reallze LhaL eople are ofLen reslsLanL Lo change and avold venLurlng lnLo an
unfamlllar area so as a parL of Lhe deploymenL phase lL ls very lmporLanL Lo have Lralnlng classes for
new cllenLs of your sofLware MalnLalnlng and enhanclng sofLware Lo cope wlLh newly dlscovered
problems or new requlremenLs can Lake far more Llme Lhan Lhe lnlLlal developmenL of Lhe sofLware lL
may be necessary Lo add code LhaL does noL flL Lhe orlglnal deslgn Lo correcL an unforeseen problem or
lL may be LhaL a cusLomer ls requesLlng more funcLlonallLy and code can be added Lo accommodaLe Lhelr
requesLs
Implementation of in BLC
SCA lmplemenLaLlon
uevelopers and Lhe SCA Leam creaLe a developmenL plan before Lhey bulld an appllcaLlon 1he
developers wrlLe followlng Lhe SuLC plan whlle Lhe SCA Leam wrlLes Lhe SofLware CuallLy Assurance
lan Lo ensure LhaL Lhe SuLC plan was execuLed lf Lhese documenLs by Lhe developers and Lhe SCA ls
well wrlLLen and organlzed Lhe appllcaLlon LhaL ls abouL Lo be developed ls already halfway done
Lven Lhough Lhe documenLs are well wrlLLen Lhese are all noLhlng when Lhose wrlLLen are noL followed
1haL ls why equally lmporLanL Lo Lhe SCA lannlng ls SCA lmplemenLaLlon lf you are famlllar wlLh Lhe
mosL of Lhe SuLC models lmplemenLaLlon means Lhe lnLegraLlon of Lhe developed appllcaLlon Lo Lhe
operaLlons 1he preparaLlon and Lhe codlng culmlnaLe wlLh Lhe lmplemenLaLlon of Lhe appllcaLlon Lo Lhe
operaLlons deparLmenL
Powever SCA LreaLs lmplemenLaLlon ln an enLlrely dlfferenL manner ln every sLage of sofLware
developmenL SCA Leam develops Lhelr plan and wlLh lL a speclflc plan of lmplemenLaLlon Lvery sLage of
sofLware developmenL ls very lmporLanL Lo Lhe SCA Leam 8ecause of lLs lmporLance every sLage should
be scruLlnlzed and an acLlon plan ls very lmporLanL
lf one of Lhe sLages ls noL checked properly Lhere ls a very good chance Lhe appllcaLlon may noL perform
as planned Lvery sLage of Lhe appllcaLlon developmenL process ls consldered an lndependenL program
LhaL plannlng for each sLage ls very lmporLanL
AlLhough each sLage ls relaLed and would evenLually compllmenL Lhe nexL SCA wlll LreaL Lhem as
lndependenL enLlLy each of Lhem havlng Lhelr own lmplemenLaLlon plan We Lake a look aL each of Lhe
developmenL sLage and see how each sLage ls lmplemenLed
equirements Pbose
ln Lhe user 8equlremenLs phase (u8) Lhe SCA Leam has Lo ensure LhaL Lhe users or Lhe managemenL llsL
all Lhe posslble funcLlonallLy Lhey are looklng for Lhe appllcaLlon 1he SCA Leam should be able Lo gauge
Lhese funcLlons wheLher Lhey are reallsLlc or noL A documenL should be made deLalllng Lhe need of
funcLlonallLy so LhaL lL could be easlly presenLed Lo Lhe developers
Cnce Lhe u8 documenL ls complemenL Lhe developers recelve Lhe documenL and use lL as a basls for
Lhe S8 sLage 1he developers have Lo propose Lhe approprlaLe sofLware conflguraLlon Lo caLer Lo Lhe
user's need 1he SCA Leam's funcLlon ln Lhls sLage ls Lo ensure LhaL each proposed user funcLlon wlll be
dealL wlLh
1he SCA Leam has Lo ensure LhaL Lhe user 8equlremenLs wlll be addressed and should be Lraced When
Lraceable Lhe SCA should be able Lo loglcally gauge lf Lhe user 8equlremenLs has been address or noL
Aslde from belng loglcal Lhe sofLware requlremenL proposed should be verlflable
ln Lhls phase LesLlng Lhe proposed S8 ls encouraged 1he SCA Leam could even use CASL Lools so LhaL lL
could easlly prove Lhe funcLlonallLy's worLhlness ln answerlng Lhe user 8equlremenLs CASL Lools could
qulcken Lhe verlflcaLlon of Lhe funcLlonallLy alLhough moneLary concerns should be consldered
Besiqn onJ lmplementoti on Pbose
Slmply puL Lhe SCA Leam's responslblllLy ln Lhls phase ls Lo ensure Lhe lmplemenLaLlon of Lhe proposed
funcLlons of Lhe lnLended appllcaLlon Along wlLh Lhe lmplemenLaLlon Lhe process of developlng Lhe
appllcaLlon wlll also be monlLored by Lhe appllcaLlon 1here are a couple of deslgn meLhods LhaL could
be used such as Lhe language or framework and Lhe SCA Leam should ald Lhe developmenL Leam ln
selecLlng Lhe proper language and/or framework
Cne of Lhe mosL lmporLanL Lasks of Lhe SCA Leam ln Lhls sLage ls Lo lmplemenL slmpllclLy of Lhe codlng
uevelopers could easlly wrlLe Lhe code of Lhe appllcaLlon buL Lhere ls a Lendency Lo overdo Lhe codlng
1he SCA Leam should emphaslze Lhe organlzaLlon of Lhe codlng should be undersLood easlly Aslde from
Lhe codlng Lhe commenLs wlLhln Lhe language should also be checked Lhoroughly 1he commenLs
should clearly deflne each funcLlon
1he sofLware's documenLaLlon ls also checked by Lhe SCA 1hls documenLaLlon should be Lhorough
clearly sLaLlng Lhe funcLlon of Lhe appllcaLlon Samples of Lhe funcLlons should also be Lhere so LhaL Lhe
documenLaLlon should be able Lo ald Lralnlng
oftwore Testinq Pbose
1he developers wlll now LesL Lhelr appllcaLlon uslng cases Lhe developmenL Leam should be able Lo
show how Lhe appllcaLlon wlll Lackle cerLaln commands and funcLlons Cn Lhe oLher hand Lhe SCA Leam
should be able Lo use some of Lhelr Lools Lo ensure Lhe meLrlcs ln Lerms of processlng speed ls achleved
uslng popular Lools Lhe developers should also LesL Lhe sofLware's ablllLy Lo handle sLress efflclenLly
ln Lhls phase of Lhe sofLware developmenL Lhe developers of Lhe appllcaLlon are glven enough Llme Lo
redevelop Lhe appllcaLlon MosL of Lhe Llme Lhe SCA Leam wlll also recelve feedback from Lhe
developers lf Lhey wanL Lo defend Lhe efflclency of Lhe appllcaLlon
lnteqrotion onJ Hointenonce Pbose
AL Lhls sLage Lhe sofLware ls ready Lo be lnLegraLed Lo Lhe operaLlons 1he SCA Leam wlll revlew all Lhe
documenLs connecLed Lo Lhe appllcaLlon for Lhe lasL Llme AL Lhls sLage Lhe SCA Leam should ensure
LhaL proper Lralnlng should be done noL only for Lhe users buL for Lhe ln house l1 deparLmenL as well
Slnce every requlred documenL has been creaLed Lhe Lralnlng program should be easler Lhan expecLed
All of Lhese lmplemenLaLlon acLlons should be found ln Lhe SCA plan 1he SCA manager should ensure
LhaL each sLage ln sofLware developmenL wlll recelve speclflc acLlons from Lhe SCA Leam As we have
prevlously menLloned each sLage of sofLware developmenL wlll have Lhelr own seL of plans and
evenLually own seL of acLlons LhaL should be lmplemenLed as soon as Lhe sLage ls compleLed by Lhe
appllcaLlon Leam
1he challenge of conslsLency ls always Lhere for Lhe SCA Leam lL ls only Lhrough conslsLency LhaL Lhe
SCA Leam could show Lhelr effecL Lo Lhe appllcaLlon SCA can deflnlLely gulde Lhe developmenL of Lhe
appllcaLlon as long as Lhey sLlck Lo Lhe plan and execuLe Lhem wlLhouL heslLaLlon
Role anu Impoitance of Nanagei
-o maLLer how blg a pro[ecL ls Lhere wlll always be a person who wlll be overseelng Lhe whole pro[ecL
Slmllarly ln every pro[ecL whlch lnvolves SCA lmplemenLaLlon a SCA manager SCA managers are always
aL Lhe forefronL of everyLhlng answerlng Lo Lhe buslness manager regardlng Lhe sLaLus of Lhe
appllcaLlon and lnformlng Lhe subordlnaLes regardlng updaLes or Lhe new pollcles abouL Lhe appllcaLlon
1haL ls generally Lhe work of every manager supervlsor or anyone who has people worklng under Lhelr
guldance 8uL Lo be speclflc each manager ln every fleld of work has dlfferenL approaches ln guldlng
Lhelr subordlnaLes
lollowlng are Lhe roles of Lhe SCA manager ln ro[ecL
uolity onJ tecbnicol quiJonce
% Manages deparLmenL and overall expecLaLlons perLalnlng Lo seLLlng accuraLe schedules cosLs
and resources
% Lnsures dellvery agalnsL CA deparLmenL goals and ob[ecLlves le MeeLlng commlLmenLs and
coordlnaLlng overall quallLy assurance schedule
% rovldes necessary deflnlLlon developmenL and deploymenL of producL quallLy assurance
sLraLegy addresslng all phases of producL developmenL
% ulrecLly supervlses quallLy assurance Leam lead quallLy assurance englneers and LesLers
lncludlng Lhe preparaLlon and dellvery of sLaff performance evaluaLlons and career developmenL
acLlvlLles
ProJuction support
% 1roubleshooLlng and hlgh Ller supporL
Bocumentoti on monoqement
% LsLabllsh and malnLaln pollcy for documenLaLlon of all producLs
% 8evlews documenLaLlon before ls senL ouL Lo exLernal cusLomers
4 equirement uolity Befinition
% LsLabllsh pollcy for end user experlence on all producLs
S Process monoqement
% lmplemenLs ongolng quallLy lmprovemenL processes worklng wlLh lnLerdeparLmenLal Leams
% MalnLalns producL conslsLency LhroughouL producL cycle Lo lnclude Lhe deslgn deflne and bulld
phases Lhrough quallLy checkpolnLs and LesLlng
% uevelop and manage quallLy assurance meLrlcs for performance lmprovemenL of all Leams
6 0rqonizotionol lioison
% Manages and responds Lo sofLware quallLy assurance lssues wlLh relaLed groups such as
developmenL daLabase lnLegraLlon and cusLomer supporL
7 uolity monoqement
% AnLlclpaLes program release problems and Lakes correcLlve acLlon escalaLlng as needed Lo
resolve and achleve commlLmenLs
% Assures Lhe vlablllLy funcLlonallLy and effecLlveness of essenLlal Lools
8 Beployment onJ Jelivery
% 8esponslble of creaLlng Lask and checkllsLs for sofLware deploymenL
% CrchesLraLes Lhe dellvery of sofLware Lo cusLomer vlslble envlronmenLs
9 Project monoqement
% rovldes effecLlve communlcaLlon regardlng lssues ob[ecLlves lnlLlaLlves and performance Lo
plan
% Manages Lhe plannlng and execuLlon of producL LesLlng efforLs lncludlng all assoclaLed
resources Lo meeL commlLLed dellvery daLes
% 8esponslble and accounLable of flagglng Lhe Llmlng of lnLerdeparLmenLal dellverables and Lhe
quallLy of Lhelr ouLpuL
% Works wlLh pro[ecL managers Lo develop pro[ecL schedules and resource allocaLlon models for
CA relaLed pro[ecLs and oLher acLlvlLles such as sofLware deploymenL cusLomer lnLegraLlon and
professlonal servlces valldaLlon
AparL from Lhe above esLabllshed roles a manger should sLlck Lo a prlnclple or a number of prlnclples all
Lhe Llme Lo ensure Lhe success of Lhe process ln SCA Lhere are Lhree prlnclples LhaL every SCA manager
should observe
onsistency
Lvery documenL and ouLpuL should be accordlng Lo whaL ls planned and whaL was wrlLLen 1he SCA plan
should always be Lhe bases Lo whaL should be done and Lhe same plan should be Lhe bases lf Lhe
appllcaLlon has reached Lhe benchmark or noL WlLhouL Lhe conslsLency Lhe SCA Leam would devlaLe Lo
one goal aL flrsL whlch wlll resonaLe Lo anoLher error 1hls error wlll evenLually be hlghllghLer Lhrough a
bug or worsL case scenarlo sysLem crash
Hinimize isk
8elng always aL Lhe safe slde doesn'L mean Lhe appllcaLlon ls noL LhaL creaLlve 8aslcally SCA ls Lhere Lo
LesL lf Lhe appllcaLlon works accordlng Lo plan SCA's do noL Lake rlsk and works wlLh whaL ls wrlLLen on
paper 1hls way everyLhlng LhaL has been sLlpulaLed wlll work as planned WlLhouL golng ouL of Lhe way
developers wlll have Lhe securlLy LhaL Lhe appllcaLlon wlll work as planned
eolistic
WhaL ls wrlLLen ln paper and ln plan should be execuLed by Lhe leLLer Powever LhaL doesn'L mean Lhe
SCA Leam wlll be hard pressed all Lhe Llme 1he SCA manager should ensure Lhe plan should Lake a
reallsLlc approach aL all Llmes lf posslble Lhe SCA manager should be reallsLlc as early as Lhe plannlng
sLage 1hls wlll ensure Lhey have Lhe rlghL plan from Lhe sLarL Compromlse ls posslble buL lL should be
done ln Lhe plannlng sLage Lo ensure Lhe smooLhness of Lhe operaLlon
ypes of oftwaie Piojects
Hointenonce Project
1hls Lype of ro[ecL lncludes all Lhe acLlvlLles for ensurlng smooLh funcLlonlng of pro[ecLs afLer
deploymenL lL encompasses acLlvlLles dellvery Lo correcL faulLs Lo lmprove performance or oLher
aLLrlbuLe
Lg A sofLware for managlng sporLs club was deployed ln due course Lhere were funcLlonallLy defecLs
encounLered by Lhe sLaff who could polnL ouL Lhe devlaLlon from regular process 1hese defecLs were
analyzed and flxed Laklng ln Lo conslderaLlon of deLalls of Lhe admlsslon process
1he role of SCA comes lnLo plcLure wlLh ref Lo above example where Lhe malnLenance cycle ls properly
planned documenLed and ensure cusLomer saLlsfacLlon
lmplementotion Project
1hls Lype of pro[ecL consLlLuLes all Lhe acLlvlLles afLer Lhe developmenL and LesLlng process lL ls baslcally
deploymenL of Lhe producL on servlce on Lhe cllenL slde 1hese Lypes of pro[ecLs need Lo be handled
efflclenLly Lo ensure smooLh funcLlonlng of Lhe developed sysLem lncludlng Slx slgma acLlvlLles ln Lhese
Lypes of pro[ecL escalaLes Lhe degree of quallLy of Lhe pro[ecL
Lg lf a sofLware ls developed LesLed and ready Lo be deployed buL aL Lhe Llme of lmplemenLaLlon some
lssues arrlve such as lncompaLlble hardware and sofLware conflguraLlon Lhe lmplemenLaLlon Llme may
exLend and deLerloraLe Lhe quallLy of pro[ecL ln Lerms of cosL and Llme
v-Nouel
1he vmodel represenLs a sofLware developmenL process whlch may be consldered an exLenslon of Lhe
waLerfall model lnsLead of movlng down ln a llnear way Lhe process sLeps are benL upwards afLer Lhe
codlng phase Lo form Lhe Lyplcal v shape 1he vModel demonsLraLes Lhe relaLlonshlps beLween each
phase of Lhe developmenL llfe cycle and lLs assoclaLed phase of LesLlng 1he horlzonLal and verLlcal axes
represenLs Llme or pro[ecL compleLeness (lefLLorlghL) and level of absLracLlon (coarsesLgraln
absLracLlon uppermosL) respecLlvely
1yplcal hases ln vModel
kequirements ono/ysis
ln Lhe 8equlremenLs analysls phase Lhe requlremenLs of Lhe proposed sysLem are collecLed by analyzlng
Lhe needs of Lhe user(s) 1hls phase ls concerned wlLh esLabllshlng whaL Lhe ldeal sysLem has Lo perform
Powever lL does noL deLermlne how Lhe sofLware wlll be deslgned or bullL usually Lhe users are
lnLervlewed and a documenL called Lhe user requlremenLs documenL ls generaLed
ystem Besiqn
SysLems deslgn ls Lhe phase where sysLem englneers analyze and undersLand Lhe buslness of Lhe
proposed sysLem by sLudylng Lhe user requlremenLs documenL 1hey flgure ouL posslblllLles and
Lechnlques by whlch Lhe user requlremenLs can be lmplemenLed lf any of Lhe requlremenLs are noL
feaslble Lhe user ls lnformed of Lhe lssue A resoluLlon ls found and Lhe user requlremenL documenL ls
edlLed accordlngly S8S plays Lhe role of blueprlnL ln Lhls phase
rcbitecture Besiqn
1he phase of Lhe deslgn of compuLer archlLecLure and sofLware archlLecLure can also be referred Lo as
hlghlevel deslgn 1he basellne ln selecLlng Lhe archlLecLure ls LhaL lL should reallze all whlch Lyplcally
conslsLs of Lhe llsL of modules brlef funcLlonallLy of each module Lhelr lnLerface relaLlonshlps
dependencles daLabase Lables archlLecLure dlagrams Lechnology deLalls eLc 1he lnLegraLlon LesLlng
deslgn ls carrled ouL ln Lhe parLlcular phase
HoJule Besiqn
1he module deslgn phase can also be referred Lo as lowlevel deslgn 1he deslgned sysLem ls broken up
lnLo smaller unlLs or modules and each of Lhem ls explalned so LhaL Lhe programmer can sLarL codlng
dlrecLly
Io/idotion Phoses
nit Testinq
ln compuLer programmlng unlL LesLlng ls a meLhod by whlch lndlvldual unlLs of source code are LesLed
Lo deLermlne lf Lhey are flL for use A unlL ls Lhe smallesL LesLable parL of an appllcaLlon ln procedural
programmlng a unlL may be an lndlvldual funcLlon or procedure unlL LesLs are creaLed by programmers
or occaslonally by whlLe box LesLers
lnteqrotion Testinq
ln lnLegraLlon LesLlng Lhe separaLe modules wlll be LesLed LogeLher Lo expose faulLs ln Lhe lnLerfaces and
ln Lhe lnLeracLlon beLween lnLegraLed componenLs 1esLlng ls usually black box as Lhe code ls noL
dlrecLly checked for errors
ystem Testinq
SysLem LesLlng wlll compare Lhe sysLem speclflcaLlons agalnsL Lhe acLual sysLem AfLer Lhe lnLegraLlon
LesL ls compleLed Lhe nexL LesL level ls Lhe sysLem LesL SysLem LesLlng checks lf Lhe lnLegraLed producL
meeLs Lhe speclfled requlremenLs
ser cceptonce Testinq
AccepLance LesLlng ls Lhe phase of LesLlng used Lo deLermlne wheLher a sysLem saLlsfles Lhe
requlremenLs speclfled ln Lhe requlremenLs analysls phase 1he accepLance LesL deslgn ls derlved from
Lhe requlremenLs documenL 1he accepLance LesL phase ls Lhe phase used by Lhe cusLomer Lo deLermlne
wheLher Lo accepL Lhe sysLem or noL
eleose Testinq
8elease LesLlng ls a phase LhaL deLermlnes lf Lhe sofLware ls sulLable for Lhe organlsaLlon of Lhe end
user
ummaiy
SofLware quallLy assurance ls applled aL every sLages of sysLem developmenL Lhrough a process of
revlew Lo ensure LhaL proper meLhodology and procedure has been followed Lo produce Lhe sofLware
producL lL covers Lhe enLlre gamuL of sofLware developmenL acLlvlLy SofLware quallLy ls conformance
wlLh expllclLly deflned requlremenLs whlch may come from a cusLomer requlremenL or organlsaLlon may
deflne Lhelr own sLandards SofLware rellablllLy provldes measuremenL of sofLware dependablllLy and
probablllLy of fallure ls generally Llme lndependenL 1he alm of sofLware quallLy assurance ls Lo lmprove
boLh sofLware producL and process Lhrough whlch Lhe sofLware ls bullL 1he help of varlous sofLware
sLandards Laken Lo esLabllsh and operaLe sofLware quallLy assurance process
8eferences
hLLp//wwwscrlbdcom/doc/34887708/SCAlnSuLC
2 hLLp//wwwsqaneL/sqapracLlcehLml
3 hLLp//wwwwlklpedlacom
4 hLLp//wwwhumanresourceshrvlneLcom/
3 hLLp//wwwexforsyscom/LuLorlals/sqa/
6 hLLp//wwwegyankoshacln