SQT - Software Quality and Testing Revision (Bournemouth Uni)

Imagemap
SQTTDDAdvantagesGreater productivityLower fault rateAutomatic regression testingEnsures that tests get runRequirements thoroughly examined before  ...DisadvantagesLonger development cycleTraining costsExtra code produced through unit testsPotential false sense of securityNo functional testingCannot test interactions with other syst ...Development CycleWrite test case & unit testAdd unit test to test suiteRun test suite, ensure new test failsWrite rough code to satisfy testRerun test suiteRefactor unit test/code to higher qualit ...Later, rinse repeat for other featuresTest Driven DevelopmentPart of XP"Test first" methodologyOnly implement what's necessary - anythi ...Automated TestingAdvantagesEnables simple regression testingIncreases testing speed after initial te ...Ensures that tests are consistentDisadvantagesCode in automated tests can also contain ...Difficult to perform functional testing  ...MethodsUnit testingStatic analysis (built into build system ...GUI Capture/Playback toolsLoad testing toolsAutomated test data generationSoftware Reviews (Fagan Inspection)AdvantagesCatches errors early in dev cycleIncreases quality of softwareFixing error before maintenance period 1 ...Reviews can be performed on any artefact ...DisadvantagesInspections take timeTraining costsPlaces more emphasis on logic than I/O a ...Review ProcessPlanning - Agree meeting and materials t ...Overview - Material overview and role as ...Preparation - Materials inspectedMeeting - Material defects discussedRework - Author corrects errors as agree ...Follow-up - Verification that all defect ...RolesAuthor - Person whose material is under  ...Reader - Paraphrases the materialTester - Reviews material from a testing ...Moderator - Facilitiates the meetingShould not be a managerShould not be a testerStrucural & Functinonal TestingStuctural (Whitebox)Static AnalysisAutomated tool analyses code without run ...Static analysis by humans is Software Re ...Performed on source or object codeLooks for common coding mistakesStatements that will never executeNull reference pointersUninitilised/typed variablesUnit Testing (See System, Integration an ...Code Review (see Software Review)Functional (Blackbox)Equivalence PartitioningBreak each input domain into its own par ...Define valid inputs for partitionDefine invalid inputs for partitionSelect 1 valid input for each test, and  ...Each valid/invalid input should be as go ...Boundry AnalysisErrors tend to happen near special numbe ...0, 1, values of 2^n, Upper and lower lim ...Test +/- 2 from each boundryError GuessingEstimated by Ntafos, 1998 to be as cost  ...Relies on picking random data from input ...Influenced by a testers experienceUseful to supplement other techniquesUnit, Integration and System TestingUnit TestingPerformed on small chunks of codeUses stubs/drivers to simulate I/OEasy to automateWhitebox testingIntegration TestingTests how different modules communicateLarge portion of errors occur at interfa ...Whitebox testingVery thorough testing of modules complet ...System TestingOften blackbox testingI/O presented as an end userPerformance/Load testingUser Acceptance TestingBeta TestingMeasuring QualityQuality MetricsFunctionalityPerformanceReliabilityUsabilityEfficencyMaintainabilitySecurityWhen is software ready?Cost vs. QualityNigh on impossible to create faultless s ...The cost of finding bugs raises exponent ...All bugs are not created equalBugs must be assigned prioritiesA spelling mistake is vastly less imorta ...Cost in terms of resources, time to mark ...Cost per bug found poor metric. Programs ...Average of 28.7 major problems/KLOC (Gib ...What constitutes an error?"A defect is an instance in which a requ ..."An unsatisfactory program execution is  ...Phases of software testingSpecification -> Client ReviewDesign -> Manual review against specific ...Implementation -> Unit/Integration Testi ...Product -> System TestingDebugging"Debugging is the process of finding the ...
hide
SQT