Skip to main content
Home
  • Tutorials
    • Quality Assurance
    • Software Development
    • Machine Learning
    • Data Science
  • About Us
  • Contact
programsbuzz facebook programsbuzz twitter programsbuzz linkedin
  • Log in

Main navigation

  • Tutorials
    • Quality Assurance
    • Software Development
    • Machine Learning
    • Data Science
  • About Us
  • Contact

Static Analysis by Tools

Profile picture for user devraj
Written by devraj on 09/22/2020 - 22:08

The objective of static analysis is to find defects in software source code and software models. Static analysis can locate defects that are hard to find in dynamic testing. Static analysis is just another form of testing. Static analysis makes sense only with the support of tools.

In practice, the program code is often the one and only formal document in software development that can be subjected to static analysis.

The objective of static analysis is same as reviews, however in static analysis tool do the analysis. If a static analysis is performed before the review, a number of defects and deviations can be found and the number of the aspects to be checked in the review clearly decreases.

Generally, static analysis should be used even if no review is planned. If documents are formal enough to all tool-supported static analysis, then it should definitely be performed before the document reviews because faults and deviations can be detected conveniently and cheaply and reviews can be shortened.

The document to be analyzed must follow a certain formal structure in order to be checked by a tool. Not all defects can be found using static testing, some defects become apparent only when the program is executed.

Static analysis tools are typically used by developers before, and sometimes during, component and integration testing and by designers during software modeling. For static analysis there are many tools, and most of them focus on software code. The compiles is one of analysis tool.

What can be checked in static analysis:

  • Coding standards: Checking for adherence to coding standards is certainly the most well-known of all features. Coding standard consists of a set of programming rules, naming conventions, and layout specification.
  • Code metrics: When performing static code analysis, usually information is calculated about structural attributes of the code, such as comment frequency, depth of nesting, cyclomatic number and number of lines of code.
  • Complexity metrics identify high risk, complex areas. The cyclomatic complexity metric is based on the number of decisions in a program.
  • Code Structure: There are many different kinds of structural measures, each of which tells us something about the effort required to write the code in the first place, to understand the code when making a change, or to test the code using particular tools or techniques.
  • Compliance to conventions and standards can also be checked with tools.
  • There are several aspects of code structure to consider:
  • Control flow structure: The control flow structure addresses the sequence in which the instructions are executed.
  • Data flow structure: Data flow structure follows the trail of a data item as it is accessed and modified by the code. There are 3 data flow anomalies: ur-anomaly, du-anomaly and dd-anomaly.
  • Data structure: Data structure refers to the organization of the data itself, independent of the program.
  • Log in or register to post comments

Choose Your Technology

  1. Agile
  2. Apache Groovy
  3. Apache Hadoop
  4. Apache HBase
  5. Apache Spark
  6. Appium
  7. AutoIt
  8. AWS
  9. Behat
  10. Cucumber Java
  11. Cypress
  12. DBMS
  13. Drupal
  14. GitHub
  15. GitLab
  16. GoLang
  17. Gradle
  18. HTML
  19. ISTQB Foundation
  20. Java
  21. JavaScript
  22. JMeter
  23. JUnit
  24. Karate
  25. Kotlin
  26. LoadRunner
  27. matplotlib
  28. MongoDB
  29. MS SQL Server
  30. MySQL
  31. Nightwatch JS
  32. PactumJS
  33. PHP
  34. Playwright
  35. Playwright Java
  36. Playwright Python
  37. Postman
  38. Project Management
  39. Protractor
  40. PyDev
  41. Python
  42. Python NumPy
  43. Python Pandas
  44. Python Seaborn
  45. R Language
  46. REST Assured
  47. Ruby
  48. Selenide
© Copyright By iVagus Services Pvt. Ltd. 2023. All Rights Reserved.

Footer

  • Cookie Policy
  • Privacy Policy
  • Terms of Use