ISBN : 978-81-963532-2-3 (E-Book) ProgramAnalysis Tools A program analysis tool means an automated tool that takes the source code or the executablecodeofaprogramasinputandproducesreportsregardingseveralimportantcharacteristicsoft he program, such as its size, complexity, adequacy of commenting, adherence to programmingstandards,etc. Wecan classifytheseintotwo broadcategories ofprogram analysis tools: StaticAnalysistools DynamicAnalysistools Staticprogramanalysistools StaticAnalysisToolisalsoaprogramanalysistool.Itassessesandcomputesvariouscharacteristics of a software product without executing it. Typically, static analysis tools analyzesome structural representation of a program to arrive at certain analytical conclusions, e.g. thatsomestructural properties hold. Thestructural properties that areusuallyanalyzed are: Whetherthecodingstandards havebeenadheredto? Certainprogrammingerrorssuchasuninitializedvariablesandmismatchbetweenact ualandformalparameters,variablesthataredeclaredbutneverusedare also checked. Codewalkthroughsandcodeinspectionsmightbeconsideredasstaticanalysismethods.But,the term static program analysis is used to denote automated analysis tools. So, a compiler can beconsideredto beastaticprogram analysis tool. Dynamic program analysis tools - Dynamic program analysis techniques require the program tobe executed and its actual behavior recorded. A dynamic analyzer usually instruments the code(i.e. adds additional statements in the source code to collect program execution traces). Theinstrumented code when executed allows us to record the behavior of the software for differenttestcases.Afterthesoftwarehasbeentestedwithitsfulltestsuiteanditsbehaviorrecorded,the 101 Software Engineering Keerthana P, Manasa KN, Ganga D Bengal
107 Publizr Home