We know that static testing is very effective in catching defects early in software development. Serious bugs, like race conditions which can occur in concurrent software, can't be reliably detected by dynamic testing. Such defects can cause a business major damage when they pop up in production. Despite its effectiveness in early defect detection and ease of use, static testing is not very popular among developers and testers. Meena Muthukumaran discusses reasons why static testing is not commonly used or not used optimally: lack of awareness, lack of time, and myths about cost and effort requirements. Meena explains ways to perform effective static testing—identifying your needs, shortlisting the tools based on your needs, creating awareness and a culture for proactively eliminating defects early in the lifecycle, and encouraging effective usage of static testing. She offers various implementation solutions to suit different development methodologies and ways to measure the benefits realized with static testing.
XpertSolvers: Your Partner in Building Innovative Software Solutions
Static Testing: We Know It Works, So Why Don’t We Use It?
1. W14
Test Techniques
5/6/2015 3:00:00 PM
Static Testing: We Know It
Works, So Why Don’t We Use It?
Presented by:
Meenakshi Muthukumaran
Tata Consultancy Services
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
2. Meenakshi Muthukumaran
Tata Consultancy Services
Meenakshi Muthukumaran is a test automation strategist and consultant with Assurance
Services Unit of Tata Consultancy Services. Meena advises customers on product selection,
deployment, and effective use of static testing tools, and leads the professional research team
that evaluates and grades different static testing tools. She started her career as a software
developer and worked in the United States for several years in technology and management
roles. With more than ten years of experience in the IT industry, Meena works with customers
across geographies and industries to build high-quality software by addressing their challenges
related to code quality and post-production defects.
4. 2
With You Today…
Meena has 10+ years of overall experience in IT
industry and has been with TCS for past 4 years.
She is a Masters in IT and after engineering, she
started her career as a software developer.
Thereafter she has worked in multiple domains
spanning both technology as well as management
Meenakshi Muthukumaran
SQG Consultant, Assurance Services,
Tata Consultancy Services (TCS)
Meena has worked with multiple Fortune 500 customers across geographies and
industries in addressing their business objective by certifying and assuring high-
quality software
6. 4
Businesses today need to address…
Complexity
Digital
customers
New age
competition
Security
concerns
First time
right
7. 5
Else will lead to…
Delays in time
to market
Increased
ops cost
Reduced
revenues
Dissatisfied
customer
8. 6
Incomprehensive QA can erode your business…
SEC fines more than $40 million
compensations claims.
Reputational damage
Stocks declined 72% in 6 months
More than 500 death months
Lost $440 million in 30 minutes;
Loss of 75% in stock value in 2
business days
9. 7
Having a holistic perspective…
WHAT YOU KNOW
WHAT SOME
MIGHT KNOW
WHAT YOU REALLY
SHOULD KNOW
TESTREVIEW
Correctness
Efficiency
Reliability
Maintenance Cost
Program
Structure
Coding
Practices
Coupling
Complexity
Readability
Flexibility
Reusability
Maintainability
Testability
10. 8
Will get you to..
Inspection
Software
walk-
throughs
Peer
reviews
Static
Testing
11. 9
Why do I need Static Testing?
Think OUT of BUGS
12. 10
Static Analysis: Effective way of Static Testing
Code base
Static code
analyzer
Defects/Violation
Automating
Code Inspections
Analyzing the code without executing
Making effective
• Tracks suggestions
• Allows follow-up tasks
• Aids comparing before/after changes
• Integrates source code repositories
13. 11
Although research shows Static analysis is effective…
Static Analysis has comparatively higher defect removal efficiency
Source: Caper Jones: SOFTWARE QUALITY IN 2013: A SURVEY OF THE STATE OF THE ART
14. 12
It isn’t flying high as it should
Limited Awareness
Tools
Unavailability
Time shortage
Mindset
17. 15
With a 7 Point Strategy for Tool Selection…
Deployment Strategy
Technology Coverage
Supporting Environment
Product Update
Triage & Remediation Support
Reporting Capabilities
Enterprise Level Support
19. 17
Success story: Leading Oilfield Services Company
Challenges
• Performance: Slow
response rates.
Irritated users
• Stability: Systems hang
during key transactions
• Increased # of problem
tickets/ issues to be
resolved
Solution
• Analysis of the base
code
• Identification of exact
elements causing
issues
• In-depth analysis of
the code post fixing
issues
Results
• Improvement in overall
application health with
respect to Performance,
Robustness and Security
• Actual performance of
the application improved
by up to 50% on some
transactions.
Maintainability 3%
Reliability 10%
Efficiency 13%
Security 22%
20. 18
Success story: Leading Oilfield Services Company
0
0.5
1
1.5
2
2.5
3
3.5
Maintainability Reliability Efficiency Security
3.09
2.91
2.82
2.71
3.19 3.21 3.2 3.31
Quality Evolution
Before After
Maintainability 3%
Reliability 10%
Efficiency 13%
Security 22%
22. 20
And Best practices from the engagement
Create
Awareness
Measure
Quality
Embed in
lifecycle
Integrate with
existing tools
Mandate it
Improve &
Control
23. 21
Prevention is better than cure
Quality cannot be monitored or tracked unless
measured
Quality should not be a practice – rather be the WAY
of life.
A quick recap
24. Thank You
IT Services
Business Solutions
Consulting
Please visit us at Booth# 17
or write to us at: global.assurance@tcs.com