软体品质管理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

軟體品質管理Introduction•Whatissoftwarequality?•Howcanitbemeasured?–Howcanitbemeasuredbeforethesoftwareisdelivered?•Somekeyqualityfactors•SomemeasurableindicatorsofsoftwarequalityIntroduction•Thinkofaneverydayobject–e.g.achair–Howwouldyoumeasureit’s“quality”?•constructionquality?(e.g.strengthofthejoints,…)•aestheticvalue?(e.g.elegance,…)•fitforpurpose?(e.g.comfortable,…)•Allqualitymeasuresarerelative–thereisnoabsolutescale–wecansayAisbetterthanBbutitisusuallyhardtosayhowmuchbetter•Forsoftware:–constructionquality(建造的品質)?•softwareisnotmanufactured–aestheticvalue(美學上的價值)?•butmostofthesoftwareisinvisible•aestheticvaluemattersfortheuserinterface,butisonlyamarginalconcern–fitforpurpose?•Needtounderstandthepurpose軟體品質因素MeasuringQualityTheQualityConcepts(abstractnotionsofqualityproperties)MeasurableQuantities(definesomemetrics)CountstakenfromDesignRepresentations(realizationofthemetrics)usabilityminutestakenforsomeusertask???timetakentolearnhowtouse?complexitycountprocedurecalls???informationflowbetweenmodules?reliabilityrunitandcountcrashesperhour???meantimetofailure?examples...FourKeyQualityConcepts•Reliability–designermustbeabletopredicthowthesystemwillbehave:•completeness-doesitdoeverythingitissupposedtodo?(e.g.handleallpossibleinputs)•consistency-doesitalwaysbehaveasexpected?(e.g.repeatability)•robustness-doesitbehavewellunderabnormalconditions?(e.g.resourcefailure)•Efficiency–Useofresourcessuchasprocessortime,memory,networkbandwidth•Thisislessimportantthanreliabilityinmostcases•Maintainability–Howeasywillitbetomodifyinthefuture?•perfective,adaptive,corrective•Usability–Howeasyisittouse?McCall’sQualityFactorsoperationCorrectnessreliabilityusabilityintegrityefficiencyMaintainabilityFlexibilityTestabilityPortabilityReusabilityInteroperabilityGeneralutilityportabilityAs-isutilityMaintainabilityreliabilityefficiencyusabilitytestabilityunderstandabilitymodifiabilitydevice-independenceself-containednessaccuracycompletenessrobustness/integrityconsistencyaccountabilitydeviceefficiencyaccessibilitycommunicativenessself-descriptivenessstructurednessconcisenesslegibilityaugmentabilitySource:SeeBlum,1992,p176ProductoperationusabilityProductrevisionProducttransitionintegritymaintainabilitytestabilityreusabilityportabilityinteroperabilityoperabilitytrainingI/OvolumeAccesscontrolAccessauditStorageefficiencyconsistencyinstrumentationexpandabilitygeneralitySelf-descriptivenessmodularitymachineindependences/wsystemindependencecomms.commonalityefficiencycorrectnessreliabilityflexibilitycommunicatativenessI/OrateexecutionefficiencySource:SeevanVliet2000,pp111-3traceabilitycompletenessaccuracyerrortolerancesimplicityconcisenessdatacommonalityMeasurablePredictorsofQuality•Simplicity–thedesignmeetsitsobjectivesandhasnoextraembellishments–canbemeasuredbylookingforitsconverse,complexity:•controlflowcomplexity(numberofpathsthroughtheprogram)•informationflowcomplexity(numberofdataitemsshared)•namespacecomplexity(numberofdifferentidentifiersandoperators)•Modularity–differentconcernswithinthedesignhavebeenseparated–canbemeasuredbylookingat:•cohesion(howwellcomponentsofamodulegotogether)•coupling(howmuchdifferentmoduleshavetocommunicate)Qualityandhowtoachieveit•Productquality–alwaysanissue•AfterWWII,industryintheUSandelsewherehassubstantiallyimprovedqualityviaextensivetestingandstatisticalqualitycontrol•Japaneseindustryhasfollowedadifferentconcept,a.k.a.totalqualityinitiative(Deming,Juran),wherequalitycontrolisanintrinsicaspectoftheproductionprocess,notapost-productionactivity•Inotherwords,youshoulddesignthequalityproductandbuilditright,ratherthanbuilditandthenmakesureithasgoodqualitySEIandtheCapabilityMaturityModel•SoftwarequalityimprovementhasledtotheestablishmentoftheSoftwareEngineeringInstituteatCarnegie-MellonUniversity•CapabilityMaturityModel(CMM)aframeworktoassessthematuritylevelofanorganization’ssoftwaredevelopmentandmanagementprocesses•CMMconsistsoffivelevelsofmaturityasmeasuredbyasetofguidelinescalledthekeyprocessareas•Higherlevelsincreasecompetitiveness,reducerisk•Levelsaremonotonic:levelnincludesallthecharacteristicsofallthelevelsbelow,n-1,n-2,etc.CapabilityMaturityModelLevel5OPTIMIZEDLevel4MANAGEDLevel3DEFINEDLevel2REPEATABLERISKCOMPETITIVENESSLevel1INITIALLevel1—Initial•end…Softwaredevelopmentfollowsnoprescribedprocess•Youdon’tknowwhereyoustand,orwhenwillyoufinish,orwhatyouwillgetwhenyoufinish•YouhavetobehappywithwhatyougetattheSystemdevelopmentRequirementsImplementedsystemResourcesNoMonitoringNoControlLevel2—Repeatable•Projectmanagementprocessesandpracticesareestablished,inordertotrackprojectcosts,schedules,andfunctionality•Still,youjustpassivelytrackwhat’sgoingon…anddon’tknowexactlywhatyoushoulddoResourcesMonitoringbutNoControlSystemdevelopmentRequirementsImplementedsystemLevel3—Defined•Astandardsystemdevelopmentprocess(sometimescalleda“methodology”)purchasedordeveloped,andintegratedthroughouttheITunitoftheorganization•…whichmeansthatthereisaprescribedsequenceofstepstofollow,plusyoumonitortheoutcomesanalysisanddesignPersonnelTo

1 / 58
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功