Improved Software Quality with Code Coverage Analysis

Similar documents
THE SCIENCE OF CERTAINTY. Positronic Company Overview

The VCO Company That is SETTING THE STANDARD FOR QUALITY, Customer SERVICE & RELIABILITY

SAFETY MANAGER SC Ensure safety, simplify operations and reduce lifecycle costs

Mastering Embedded Software

Developments in the Americas Sector

Measurement of Safety Integrity of E/E/PES according to IEC61508

Siemens Process Automation End-user Summit- 2011

Introduction to IAEG. International Aerospace Environmental Group MAY 2018

WORLD LEADER IN TEST TECHNOLOGY InterTech is a manufacturer of turnkey automated systems with proven technology for leak and functional testing.

MADE IN ITALY. thermowatt.com. the heart of electric appliances

Solutions for surface critical operations

Low Pressure Overmoulding

TAKING CHEMICAL MANAGEMENT GLOBAL CMS FORUM SAN FRANCISCO, CA OCTOBER 2006

Achieving Functional Safety using Time-Triggered Architectures

SPECIALISTS IN CONNECTING TECHNOLOGIES AND ENCLOSURES.

United Technologies Corporation (UTC)

CIVIL AEROSPACE. Innovative Interconnection Solutions

C&I SYSTEM DIAGNOSTICS WITH SELF MONITORING AND REPORTING TECHNOLOGY (SMART)

Global Advanced Driver Assistance Systems (ADAS) Market: Trends and Opportunities ( )

South West Aerospace: the UK s most diverse and capable cluster, home to global aerospace giants and an innovative supply chain

Lenel, A UTC Fire & Security Company. Corporate Overview

Global Pressure Sensitive Adhesives Market Study ( )

Detection, Protection, Innovation

USER APPROVAL OF SAFETY INSTRUMENTED SYSTEM DEVICES

operations, Environmental & Instrumentation engineering solutions to the Commercial & Industrial segment in the Middle East. ARE

Achieving Functional Safety with Global Resources and Market Reach

Is your current safety system compliant to today's safety standard?

Global Air Conditioner Market Research Report - Global Forecast to 2022

Bachmann Monitoring GmbH

Safety Instrumented Systems

High Reliability Solutions Overview Paul Humphries May 31, 2012

IEC61511 Standard Overview

AVOID CATASTROPHIC SITUATIONS: EXPERT FIRE AND GAS CONSULTANCY OPTIMIZES SAFETY

CCTV Camera - Global Market Outlook ( )

CONTROL SYSTEM D ESIGN, E NGINEERING & C ONSTRUCTION.

installed bases of equipment for which we provide support and services throughout their lifecycle.

AVOID CATASTROPHIC SITUATIONS: EXPERT FIRE AND GAS CONSULTANCY OPTIMIZES SAFETY

Functional Safety for Semiconductor Designs

MIKRON VISION SOLUTIONS Image Acquisition Specialists

IntesisBox BACnet/IP Server - Notifier ID3000 series

Marine Solutions. Honeywell s Solution for LNG Vessels

By Type Reverse Osmosis, Ultra Filtration, Ultra Violet, Others. By End User Residential, Commercial, Industrial

AmpLight Lighting Management System

SM3000 Videographic Recorder. User Guide. Modbus (RTU) Communications Option

Metal Detection. Protecting Your Customers Reducing Risks For Your Business

30 th EXHIBITOR PROSPECTUS. Detroit, Michigan HEAT TREATING SOCIETY CONFERENCE & EXPOSITION. Organized By: October 15-17, 2019.

A New Approach to ESB Migration Building a foundation for Digital Business

Krannert School of Management - Purdue University Scott Singer, Director Global Supply Management October 5, 2007

Safety. Reliability. Experience.

Martin Huber 26September 2017 F&G SOLUTIONS FOR THE PROCESS INDUSTRY

Product Brand Standards

Metal Detection. High Performance Metal Detection For the Inspection of Bulk Products SAFELINE

Integrated but separate

Integrated security management platform for Windows. Seamless. Effective. Efficient.

GE Security EST Fire & Life Safety. Sophisticated io-series. Intelligent Life Safety Systems for small to mid-size buildings

Smart Cities Where People, Process, and Technology Converge to Create an Adaptable Environment

Good Afternoon, I m happy to have this opportunity to talk to you about UTC, and what UTC is doing in Vietnam.

TE Automation & Control Presentation

excellence in Dependable Automation

Safe area; Zone 1 and Zone 2

VIDEO SURVEILLANCE MARKET

GUIDANCE ON ASSESSING THE SAFETY INTEGRITY OF ELECTRICAL SUPPLY PROTECTION

Runit Kumar. Alexander Hu

GABELLI AIRCRAFT SUPPLIER CONFERENCE Tim Mahoney, President & CEO, Honeywell Aerospace Ben Driggs, President, Honeywell Aerospace Americas Aftermarket

Technology, innovation and performances are the outcomes our customers want and expect us to deliver.

Control Products & Systems OEM

Alarm Management Services

Experion LX Direct Station Specification

Autronica Fire and Security AS ID:

Functional safety according to IEC / IEC Important user information. Major changes in IEC nd Edition

FM Approved Fire & Gas Detection System

Alarm Correlation Research and Implementation Based on Similar Data Sources

IAV Primero. Fault Simulation for Lambda Probes

3M Oldham MX 43 Controller

DeltaV Operate. Product Data Sheet DeltaV Operate December 2006 Page 1. Introduction. Benefits

Accelerating Emergency Response. FocalPoint. Graphic Workstations

Turning expertise and innovations into marine solutions

DynAMo Alarm & Operations Management

Safety in the process industry

Foundation Fieldbus Usability from field Device Perspective. Hemal Desai Endress+Hauser India Pvt. Ltd 16 th October 2014 Automation 2014 Mumbai

Di-440 The Modular Analyser

RLDS - Remote LEAK DETECTION SYSTEM

STT850 and STT750 SmartLine Temperature Transmitter HART Communications Options Safety Manual 34-TT Revision 4 September 2017

China Orthopaedic Instrument Import and Export TOP25 Report, Jan. 2013

2015 Honeywell Users Group Europe, Middle East and Africa

Applying Buncefield Recommendations and IEC61508 and IEC Standards to Fuel Storage Sites

High Integrity Pressure Protection System

The Next Generation Machine Protection System

Options for Developing a Compliant PLC-based BMS

SETTING THE STANDARD OF CUSTOMER SERVICE. Vector Aerospace Fixed-Wing Engine Services

Safety Instrumented Systems The Smart Approach

Aerospace Top : Annual results for 2013

Tri-Tech Medical Inc.

All users are recommended to update their existing ProRAE Guardian (PRG) software to v

Insert Photo Here Bos Howard Johns Manville

FITOCLIMA ECV45 / ECV75 TEMPERATURE & HUMIDITY TEST CHAMBER INTEGRATION WITH ELECTRO-DYNAMIC SHAKER

Fire protection for rolling stock. Innovative solutions from Siemens Building Technologies. Answers for infrastructure and cities.

HONEYWELL ANNOUNCES PLANNED PORTFOLIO CHANGES

SPe Bodyshop. Building on the success of our SPe handset, and sharing all its best features. Huge Coverage, Easy to use, & Great value for money

Product Training Module: Digital Pressure Sensors with CANopen Model DPS

Transcription:

Improved Software Quality with Code Coverage Analysis Jason.Masters@vectorcast.com Vector Software, Inc.

> Vector Software, Inc. About Vector Software

Our Company > Vector Software develops embedded software testing products > Founded in 1990 by embedded developers > First product (Ada) released in 1994 for Lockheed Martin s C-130J Super Hercules > Acquired in 2017 by Vector Informatik > Sales and support office worldwide > Providence > Boston > Jacksonville > Denver > Phoenix > London > Kempen (NRW) > Shanghai s o l i d r e fe r e n c e a c c o u n t s i n m u l t i p l e i n d u s t r i e s Aerospace Automotive Medical Railway Industrial DO-178B ED-12B ISO 26262 FDA IEC 62304 CENELEC EN 50128 IEC 61508

Our Clients AEL Sistemas Astrium Boeing Bell Helicopter Belcan BAE Systems Cessna Aircraft EADS Electric Boat Goodrich Aerospace General Dynamics Hamilton Sundstrand Honeywell ITT Communications India Space Research Korean Aerospace Lockheed Martin L-3 Communications Northrop Grumman Pratt & Whitney Raytheon Rockwell Collins Rolls Royce Saab Group Thales Turkish Aerospace U.S. Air Force XMobots Robotic Autoliv Autoeversystems AIV Beko Bosch Chang'an Automotive Delphi Dongfeng Automotive ENSO Fujitsu Hyundai Magna Powertrain Magneti Marelli MOTONIC Siemens TRW Valeo Yura Abbott Laboratories Acist Medical Baxter Healthcare Beckman Coulter Boston Scientific Biosafe Cardinal Health Covidien Enteromedics GE Healthcare Hoana Medical Hospira Medical Impact Instrumentation Medtronic Philips Medical Sirona Dental Smiths Medical Terumo Heart Varian Companies who have safety or business critical applications have processes which specify rigorous testing have unit and integration testing requirements need the ability to automate regression testing have requirements to prove code coverage realize that NOT testing is NOT an option ABB Allied Telesis Alcatel Ansaldo Signal Alstom Brunel Bombardier CAP Gemini Elin EBG Electro-Motive Diesels GE Transportation Invensys Rail ŠKODA ELECTRIC Safetran Systems Siemens Triconex Thales Union Switch & Signal Verocel Amazone Analog Devices Arçelik Bechtel Bettis Berthold Technologies British Energy Brunel Caterpillar Changzhou Scale Ltd. Claas Endress+Hauser Flextronics Foster Miller General Electric HAWE Hydraulik ICS Tripex Invensys Ingersoll Rand Itron Krauss-Maffei Mettler Toledo AG NetApp Oak Systems Sanmina Sunways ViaSat Wilo ZIEHL Aerospace Automotive Medical Railway Industrial DO-178B ED-12B ISO 26262 FDA IEC 62304 CENELEC EN 50128 IEC 61508

> Vector Software, Inc. Understanding Code Coverage Analysis

What is Code Coverage Analysis? > Data gathered during execution of an application or a unit test environment > Highlights what lines of code have been executed > More important is which lines were NOT executed > Indicates poorly tested areas of the application > The more unexecuted code, the more risk of bugs > Can be deployed during all phases of testing > Unit testing > Module integration testing > Software integration testing > Functional testing > System testing > Can be deployed from different kinds of testing > Requirements based testing > Interface based testing > Code based testing >

Other Levels of Testing > Static Analysis > Compliance with coding standards like MISRA > MISRA focuses on language restrictions to mitigate reliability faults > Finding errors in code statically, by analyzing use of memory for instance > Dynamic Analysis > Unit Testing > Testing smallest piece of testable software > Unit is C/C++ source file or Ada package > Requires generation of test stubs and drivers > Driver simulates calling unit and stub(s) simulates called unit > Enables generation of tests to ensure complete code coverage > Integration Testing > Logical extension of unit testing > Allows testing of all units that make up a functional process > Requires multiple units under test at the same time > Identifies problems when units are combined

Levels of Code Coverage Function Function Call

Levels of Code Coverage (Cont.) Statement Decision or Branch (If Statements, loops, case statements)

Why different Coverage Levels? > Which level of coverage will catch all bugs? if (condition) normalize (c); foo (c); if (a b c d) foo (d); > What if foo expects normalize to have been called? > What if d is a NULL pointer and foo crashes if it receives a NULL pointer? > What if b, c and d are always false? > What if c and d are always the same (e.g. pointers pointing at the same memory location)

Levels of Code Coverage (Cont.) Modified Condition/Decision Coverage

Modified Condition/Decision Coverage (MC/DC) Code example Simplified expression: if (a and b and c) Truth table Cond. a Cond. b Cond. c Decision Result True True True True True True False False True False True False True False False False False True True False False True False False False False True False False False False False MC/DC Equivalence pair condition c MC/DC Equivalence pair condition b MC/DC Equivalence pair condition a

Code Coverage Requirements in Different Industries

> Vector Software, Inc. Testing Metholodogies

Testing Methodologies: Unit and Integration Testing Units (.c,.cpp) Test Driver Source Code Unit(s) under test Stubbed dependents Real dependents Unit Test Harness

Testing Methodologies: Processes Method 1: New Development Unit Test Integration Test Functional Test Coverage Driver Units Stubs Low-Level Requirements Driver Units Stubs Full Application High-Level Requirements Functional Requirements Coverage 100% Method 2: Legacy Application Functional Test Unit Test Coverage Coverage 60% - 70% Achieved Driver Units Stubs Coverage 30% - 40% Achieved Structural Coverage 100% Achieved

Testing Methodologies: Basis Path > The challenge of testing: A good starting set of test cases > Eliminate redundant testing > Provide adequate test coverage > Allow more effective testing > Basis Path Testing > Mixture of Path and Branch Testing > Test all linearly independent paths, no iterations > Minimum number of tests for complete statement/branch coverage > Build Instructions (Thomas J. McCabe) > Draw a control flow graph > Calculate Cyclomatic complexity > Choose a basis set of paths

Summary and Conclusions > Coverage is data gathered during execution of an application or a unit test environment > Shows what has and hasn t been tested > Shows risky areas of code > Required for functional safety standards > Higher safety integrity levels require more complete forms of coverage > On it s own 100% coverage doesn t prove the code is correct or bug free > But together with requirements based testing is a vital metric in measuring testing completeness > VectorCAST can be used to gather statement, branch, MCDC, function and function call coverage on host and on an embedded target

Connect With Us Proven Solutions for Reliable Software Americas 1351 South County Trail Suite 310 East Greenwich, RI 02818 United States of America T: 401 398 7185 F: 401 398 7186 E: info@vectorcast.com EMEA Golden Cross House 8 Duncannon Street London WC2N 4JF United Kingdom T: +44 203 178 6149 F: +44 20 7022 1651 E: info@vectorcast.com Germany St. Töniser Str 2a 47906 Kempen Germany T: +49 2152 8088808 F: +49 2152 8088888 E: info@vectorcast.com Asia Pacific Rm 403, Building 6 No.88 Daerwen Rd Zhangjiang Hi-tech Park Pudong New Area Shanghai 201203 China T: 21-3126 8126 F: 21-5132 8526 E: info@apac.vectorcast.com vecto rca st.co m