Multiple Error Detection Techniques inC/C++ Software Development               September 2009                Wiktor Grodow...
Introduction                  There is no silver bullet for software quality                  improvement                 ...
Code Structure Analysis           Strengths                         Facilitates coding standard compliance (MISRA C,      ...
Runtime Memory Monitoring           Strengths                         Detects actual severe errors with high accuracy     ...
Unit Testing           Strengths                         Provides means of extending coverage—especially                  ...
Flow-Based Static Analysis           Strengths                         Examines code without actually executing it        ...
Summary                  C++test can apply various techniques for                  comprehensive error detection          ...
Q&A                                  Contact: Wiktor.Grodowski@parasoft.comParasoft Proprietary and Confidential
Upcoming SlideShare
Loading in …5
×

Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testing and More

1,020 views

Published on

Learn the strengths and weaknesses of C/C++ static analysis—and how a comprehensive development testing strategy that also includes unit testing, code review, and runtime error detection can pick up where development testing leaves off.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,020
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Beyond Static Analysis: Integrating C and C++ Static Analysis with Unit Testing and More

  1. 1. Multiple Error Detection Techniques inC/C++ Software Development September 2009 Wiktor Grodowski Wiktor.Grodowski@parasoft.com
  2. 2. Introduction There is no silver bullet for software quality improvement Multiple error detection techniques exist—each with their own strengths and weaknesses Parasoft C++test provides a comprehensive solution to make software quality assurance effective and accurateParasoft Proprietary and Confidential
  3. 3. Code Structure Analysis Strengths Facilitates coding standard compliance (MISRA C, MISRA C 2004, MISRA C++ 2008, JSF, HIS, and others) Exposes typical errors Prevents error-prone or dangerous constructs Low introduction cost Weaknesses No recognition of actual versus potential errorsParasoft Proprietary and Confidential
  4. 4. Runtime Memory Monitoring Strengths Detects actual severe errors with high accuracy Easy-to-use and natural way of software testing Makes a noticeable impact in a short time Weaknesses Covers only execution paths forced by the provided input and conditions to the applicationParasoft Proprietary and Confidential
  5. 5. Unit Testing Strengths Provides means of extending coverage—especially for error/interrupt handlers Good for regression tests Weaknesses Relatively high creation and maintenance cost Problem with reproducing proper application stateParasoft Proprietary and Confidential
  6. 6. Flow-Based Static Analysis Strengths Examines code without actually executing it Uncovers real bugs Tests execution paths that are difficult to reach with traditional testing Weaknesses Requires additional human verificationParasoft Proprietary and Confidential
  7. 7. Summary C++test can apply various techniques for comprehensive error detection Code structure analysis Runtime memory monitoring Unit testing Flow-based static analysis C+test runs tests on the host and target With these complementary error detection methods well-integrated into a single tool, C++test is most comprehensive embedded C/C++ quality solutionParasoft Proprietary and Confidential
  8. 8. Q&A Contact: Wiktor.Grodowski@parasoft.comParasoft Proprietary and Confidential

×