Definice
In1983,theIEEEComputerSocietyoftheUnitedStatesmadeacleardefinitionof"softwarereliability".Afterthat,thedefinitionwasacceptedbytheAmericanInstituteofStandardizationasanationalstandard,andmycountryalsoaccepteditin1989Thisdefinitionisanationalstandard.Thedefinitionincludestwomeanings:
(1)Theprobabilitythatthesoftwarewillnotcausesystemfailurewithinthespecifiedtimeunderspecifiedconditions;
(2)Theabilityoftheprogramtoperformtherequiredfunctionsunderthestatedconditionswithinthetimeperiod;
Theprobabilityisafunctionofthesysteminputandsystemusage,andisalsoafunctionofthefaultsinthesoftware.ThesysteminputwillDeterminewhetheryouwillencounteranexistingfault(ifthefaultexists).
Ovlivňující faktory
Softwarereliabilityisaboutthenatureofthesoftware'sabilitytomeettherequirements.Thesoftwarecannotmeettherequirementsbecauseofsoftwareerrorscausedbysoftwarefailures.Whatarethepossibleerrorsinthesoftware?
Softwareerrorsarehumanerrorsthatsneakintothevariousstagesofsoftwaredevelopment:
1.Requirementsanalysisdefinitionerrors.Forexample,therequirementsputforwardbyusersareincomplete,thechangesofuserrequirementsarenotdigestedintime,theunderstandingofrequirementsbetweensoftwaredevelopersandusersisdifferent,andsoon.
2.Designerror.Suchasprocessingstructureandalgorithmerrors,lackofconsiderationofspecialcircumstancesanderrorhandling,etc.
3.Chyba kódování. Například chyby syntaxe, chyby inicializace proměnných atd.
4.Testerror.Jako chyby přípravy dat,chyby testovacího případu atd.
5.Chyba dokumentu.Například neúplné dokumenty, nekonzistentní související obsah dokumentů, nekonzistentní verze dokumentů, neúplnost atd.
Fromupstreamtodownstream,theimpactoferrorsdiverges,sotrytoeliminateerrorsintheearlystagesofdevelopment.
Thewaysofintroducingerrorsintosoftwarecanbesummarizedintotwocharacteristics:programcodecharacteristicsanddevelopmentprocesscharacteristics.
Oneofthemostintuitivecharacteristicsoftheprogramcodeisthelength,inadditiontothealgorithmandsentencestructure,thelongertheprogramcode,themorecomplexthestructure,andthemoredifficultitistoensureitsreliability.
Thecharacteristicsofthedevelopmentprocessincludetheengineeringtechnologyandtoolsused,aswellasthedeveloper’spersonalbusinessexperiencelevel.
Inadditiontosoftwarereliability,anotherimportantfactoraffectingreliabilityisrobustnessandfaulttolerancetoillegalinput.
Sotheprincipleofimprovingreliabilityistoreduceerrorsandimproverobustness.
Korelační analýza
Zajištění spolehlivosti
Thescaleoftheapplicationsoftwaresystemisgettingbiggerandbiggerandmorecomplicated,anditsreliabilityisgettingmoreandmoredifficulttoguarantee.Theapplicationitselfhashigherandhigherrequirementsforthereliabilityofsystemoperation.Insomekeyapplicationfields,suchasaviationandaerospace,itsreliabilityrequirementsareparticularlyimportant.Inserviceindustriessuchasbanks,thereliabilityofitssoftwaresystemisalsodirectlyrelatedtoToitsownreputationandsurvivalanddevelopmentcompetitiveness.Inparticular,softwarereliabilityismoredifficulttoguaranteethanhardwarereliability,anditwillseriouslyaffectthereliabilityoftheentiresystem.Inthedevelopmentprocessofmanyprojects,thereisnoclearrequirementforreliability,andthedeveloper(department)doesnotspendmoreenergyonreliability,andoftenonlypaysattentiontothespeed,thecorrectnessoftheresultsandthefriendlinessoftheuserinterface.Ignorereliability.Alargenumberofreliabilityproblemswerediscoveredafterbeingputintouse,whichincreasedmaintenancedifficultiesandworkload.Inseverecases,theycouldonlybeputontheshelfandcouldnotbeputintoactualuse.
Rozdíly mezi spolehlivostí softwaru a hardwaru
Themaindifferencesbetweensoftwarereliabilityandhardwarereliabilityareasfollows:
1.ThemostobviousisthatthehardwarehasaginglossPhenomenon,hardwarefailureisaphysicalfailureandaninevitableresultofphysicalchangesinthedevice.Thereisabathtubcurvephenomenon;thesoftwaredoesnotchange,thereisnowearphenomenon,thereareoldandbackwardproblems,andthereisnobathtubcurvephenomenon.
2.Thedeterminantofhardwarereliabilityistime,whichisaffectedbyalltheprocessesofdesign,production,andapplication.Thedeterminantofsoftwarereliabilityisthesoftwareerrorrelatedtotheinputdata,whichistheinputdataandtheinternalprogramThefunctionofstatedependsmoreonpeople.
3.Thehardwareerrorcorrectionandmaintenancecanberestoredbyrepairingorreplacingthefailedsystem,andthesoftwarecanonlyberedesigned.
4.Preventivemaintenancetechniquescanbeusedforhardwaretopreventfailures,andfailurescanbediagnosedbydisconnectingfailedcomponents,whilesoftwarecannotusethesetechniques.
5.Pre-estimatereliabilitytestingandthegradualincreaseinreliabilityandothertechnologieshavedifferentmeaningsforsoftwareandhardware.
6.Inordertoimprovethereliabilityofthehardware,redundancytechnologycanbeused,andtheredundancyofthesamesoftwarecannotimprovethereliability.
7.Thehardwarereliabilityverificationmethodhasbeenestablishedandstandardized,andthereisacompletesetoftheories,whilethesoftwarereliabilityverificationmethodhasnotyetbeenestablished,letaloneacompletetheoreticalsystem.
8.Thehardwarereliabilityhasamatureproductmarket,whilethesoftwareproductmarketisstillverynew.
9.Softwareerrorsareeternalandreproducible,andsomemomentaryhardwareerrorsmaybemistakenforsoftwareerrors.
Ingeneral,softwarereliabilityismoredifficulttoguaranteethanhardwarereliability.EvenforNASA'ssoftwaresystem,itsreliabilityisstillanorderofmagnitudelowerthanhardwarereliability.