parasoft and iar
DESCRIPTION
IAR Real Time Embedded Seminar, the presentation by Anthony Lonergan from Parasoft: Insuring C/C++ Embedded Source Code QualityTRANSCRIPT
Introduction - The Scenario…
After many months of hard work, the team has delivered a reliable software solution…
But then…
2 [main] sensor 9052 exception::handle: Exception: STATUS_ACCESS_VIOLATION
Back at the Developers Desk…
Establish procedure to reproduce
Investigate root cause
Analyze side effect of fix
Fix root cause
Test
Release
Bug is found
Root Cause Analysis…void initPtr(int** newPtr) // Developer Anne{ *newPtr = (int*)malloc(sizeof(int)*10);}
int callerX() // Developer TIM{ int* userPtr; int returnVal =0;
initPtr(&userPtr); if(userPtr[2] > 5) returnVal = -1;
free(userPtr); return (returnVal);}
Some Traditional Solutions…
Peer Code Reviews – Regularly & Thoroughly!
A lot of Manual Effort Takes a Considerable Amount of Time Additional tasks impacting project schedule Open to human error and so possibly ineffective
More Testing – Cover More Use-Cases!!
A lot of Manual Effort Takes a Considerable Amount of Time Additional tasks impacting project schedule Open to human error and so possibly ineffective
AEP = Quality + Productivity
Parasoft Automated Error Prevention (AEP) Solutions
Establishes a Methodology for Achieving Quality Goals
While maintaining High levels of Team Productivity
Parasoft Corporate Overview
Founded in 1987, privately held Headquarters in Monrovia, CA 360+ employees worldwide 18 locations worldwide Technical innovator
15 US patents for software technology 10,000+ customers worldwide, over 58%
of Fortune 500 client Gartner Magic Quadrant: Visionary
Solutions Overview
ALM Solution:Project management, productivity improvement, decision support solution
Language Solutions-Static analysis-Data flow analysis-Unit testing-Regression testing-SDLC team/process optimization
System Level Solution: True End-to-End Quality Framework-UI testing-WSDL testing-Unit testing-Continuous Regression testing-Scenario Testing-Load testing-Middle-tier testing
Parasoft C++test
A Comprehensive Integrated Toolkit for C and C++ Development
Automates a Broad Range of Best Practices proven to improve
software development Team Productivity & Software Quality
Coding Standards Enforcement
Flow Analysis Technology
Automatic Peer Code Review System
Automatic Unit Test Generation and Execution
Runtime Application Monitoring
Summary
Quality
Detect & Prevent Software Bugs Early & Effectively…
Productivity
Leverage the Power of Automation to achieve Project Budgets & Deadlines