Software Reliability and Testing: Know When To Say When. SSTC June 2007 Dale Brenneman McCabe Software
|
|
- Georgina Lucas
- 6 years ago
- Views:
Transcription
1 Software Reliability and Testing: Know When To Say When SSTC June 2007 Dale Brenneman McCabe Software 1
2 SW Components with Higher Reliability Risk, in terms of: Change Status (new or modified in this build/release) Business Criticality (mission-, safety-, etc-critical) Defect History (old defect areas predict future defects) Complexity (complex is likely less thoroughly tested) Should Have Applied Higher Quality Test Completion Criteria, in terms of: Functional Test Thoroughness Defects/Rates Approaching Zero Code Coverage 2
3 Agenda I. SW Reliability Concepts and the Relationship to Complexity II. III. Determining Test Completion Criteria (When To Stop Testing) If High Reliability Is Desired Applying Tools to Generate Objective Information About Complexity And Test Completion Criteria 3
4 I. SW Reliability Concepts & the Relationship to Complexity A. SW Reliability Definitions B. Processes to Promote SW Reliability C. Complexity Metrics Impacting Reliability - Module D. Complexity Metrics Impacting Reliability - Class and Component Quotations without references indicated are from Software Reliability Principles and Practices, by Glenford J. Myers. 4
5 I. SW Reliability Concepts & the Relationship to Complexity Software Reliability Definitions Software Reliability is the probability that the software will execute for a particular period of time without a failure (an occurrence of a defect), weighted by the cost to the user of each failure encountered 1. Focus is on Failures, Not Defects [Reliability] is related to the manner in which the [software] is used 2. Focus is on Impacts To Users, Not To Developers Reliability must be stated as a function of the severity of errors, as well as their frequency 5
6 I. SW Reliability Concepts & the Relationship to Complexity Processes to Promote Software Reliability Reliability is dependent upon at least: - Quality Designed In (Fault Avoidance) The use of Development techniques (structured/oo/etc.) that both - Find defects early - Simplify structure (reduce dependencies between logic/data), which reduces probability of incorrect programming causing failure untested logic/data combinations causing failure - Quality Validated & Verified (Fault Detection) The use of Testing techniques that both - Validate (for user requirements) - Verify (for functional specs.) a significant percentage of critical operational logic/data combinations. The success of, and effort required for, these techniques is impacted by structure. 6
7 I. SW Reliability Concepts & the Relationship to Complexity Complexity Metrics Impacting Reliability - Module For these two modules, which is more likely to have Reliability problem? (Due to likelihood that testing did not cover everything in the code) Cyclomatic Complexity, v(g) [i.e., McCabe metric] measure of logical Complexity (number decisions + 1) also measures number of linearly independent paths, so is minimum # tests needed to qualify a module indicates Size & Reliability 7
8 I. SW Reliability Concepts & the Relationship to Complexity Complexity Metrics Impacting Reliability - Module Essential Complexity, ev(g) measure of logical paths containing unstructured constructs, i.e., Unstructuredness indicates Maintainability Module Design Complexity, iv(g) [integration] measure of logical paths containing calls/invocation of immediate subordinate modules, i.e., Integration Paths Containing Global Data, gdv(g) global data also impacts reliability, because it creates relationships between modules Branches, which is related to v(g) Maximum Nesting Level Others v(g) = 10 ev(g) = 3 iv(g) = 3 8
9 I. SW Reliability Concepts & the Relationship to Complexity Complexity Metrics Impacting Reliability - Module Cyclomatic Complexity & Reliability Risk 1 10 Simple procedure, little risk More Complex, moderate risk Complex, high risk >50 Untestable, VERY HIGH RISK Cyclomatic Complexity & Bad Fix Probability % % > 50 40% Approaching % Essential Complexity (Unstructuredness) & Maintainability (future Reliability) Risk 1 4 Structured, little risk > 4 Unstructured, High Risk 9
10 I. SW Reliability Concepts & the Relationship to Complexity Complexity Metrics Impacting Reliability - Classes & Components OO Metrics for Classes provide insight into object oriented programming practices, and to related testing effort; based on Chidamber and Kemerer s work Polymorphism Encapsulation Inheritance Design Complexity for Components, S 0 = iv(g) measure of decision structure which controls invocation of modules within the design; quantifies testing effort for paths relative to design calls Integration Complexity for Components, S 1 = S 0 - (# modules) + 1 measure of the integration tests that qualify the design tree; the # of paths needed to test all calls to all modules at least once, a quantification of a basis set of integration tests; measures minimum integration testing effort of a design; each subtree test validates integration of several modules Sum/Maximum/Average of v(g), ev(g), gdv(g), branches, etc. 10
11 II. Determining Test Completion Criteria for High Reliability A. When Do We Stop Testing? B. Functional Test Thoroughness C. Defects/Rates Approaching Zero D. Code Coverage Impossibility of Testing All Combinations Levels of Code Coverage - Module Levels of Code Coverage - Component 11
12 II. Determining Test Completion Criteria for High Reliability When do we Stop Testing? When Time or Money Have Been Spent? - Most organizations plan better than this Test organizations normally think (at least subconsciously): 1. When We Have Executed Certain Functional Tests - Includes performance, security, etc. - How many tests to re-run after bug fixes? 2. When Critical Defects & Defect Found Rates Are Reducing - Considering impact/severity 3. When We Have Executed Tests that meet a Certain Level of Code (Logic) Coverage 12
13 II. Determining Test Completion Criteria for High Reliability Functional Test Thoroughness For high reliability, we may consider: execute thorough reqts.-based tests (SW reqts. & user manuals) execute tests based on design information for re-builds w/ fixes, re-execute all, or some significant portion, of above tests Bad Idea Example: Wait til end to run performance tests 100% Number of Functional Tests 0% Build 1 Build 2 Time Initial Tests Rerun Tests 13
14 II. Determining Test Completion Criteria for High Reliability Defects/Rates Approaching Zero Critical Defects Outstanding & Rate of Defects Found Time For high reliability, we may consider: obtain re-builds w/ fixes, and re-execute functional tests, until: there are no outstanding critical defects the rate of new defects found (build-to-build) approaches zero Bad Idea Example: Ignore when many non-critical defects are found in late builds 14
15 II. Determining Test Completion Criteria for High Reliability Code Coverage Tests based on functional requirements are essential - it is your primary mechanism, and might be your only mechanism when you are time constrained and high quality is not critical But... Requirements do not execute, Code does! Tests need to focus on both: is the code doing what it should do? (positive) is the code not doing what it should not do? (negative) Requirements-based tests alone can result in: Use of language-required syntax that can lead to failures Lack of testing of logic/data created during implementation, which can lead to failures; in areas such as implicit (undocumented) functionality (design decisions, exception handling), and functional combinations not identified in requirements 15
16 II. Determining Test Completion Criteria for High Reliability Code Coverage For high reliability, we may consider: from execution of reqts.- based tests, determine whether code coverage indicates: functionality for which reqts. or reqts.-based tests are missing logic for which additional test cases should be created Bad Idea Example: Assume that developers tested all logic Defined % Goal Code Coverage 0% Build 1 Build 2 Time Initial Tests Rerun Tests 16
17 II. Determining Test Completion Criteria for High Reliability Impossibility of Testing All Combinations 18 times It is IMPOSSIBLE to test All Statistical Paths, and this isn t even considering data combinations So, from structural coverage view, When Should We Stop Testing? Not care? (planes do, missiles do) Module entry? All lines? All branches? All boolean outcomes (MC/DC)? A set of cyclomatic (basis) paths? All Statistical Paths = If allow 1 Nanosecond per test, time is : 0 Optimum 10 Number of Tests? 18 T = = 31.7 Years 10 x 3600 x 24 x 365
18 II. Determining Test Completion Criteria for High Reliability Levels of Code Coverage - Module (Units of Code) Module Entry - test entering a module at least once Line - test anything on each line with code; can miss some branch outcomes, dependent on coding style Branch - test each branch outcome; some tools provide statement level testing, which when implemented as testing any part of each statement can miss some branch outcomes Condition or Boolean (MC/DC) - test each condition of a multiple condition decision; required for highest risk airborne sw Cyclomatic Paths (Structured Testing) - test a set of linearly independently paths from entry to exit; based on Tom McCabe s Structured Testing; also called Basis Path Testing, based on graph theory; description in an NIST document shows why this provides improved reliability 18
19 II. Determining Test Completion Criteria for High Reliability Levels of Code Coverage - Module What module coverage level should you attempt? Minimum # tests would be: Module Entry Coverage = 1, Line Cov. = 2, Branch Cov. = 3, Cyclomatic Path Cov. = 4, All Paths Cov. = 6 19
20 II. Determining Test Completion Criteria for High Reliability Levels of Code Coverage - Component Component Entry - test entering each component (subsystem, executable, etc.) at least once Component Integration Calls - test entering each component from each calling component Component Integration Paths - test entering each component from each call occurrence in each calling component Module Entry - test entering each module at least once Module Integration Calls - test entering each module from each calling module (fan-in testing) Module Integration Paths test entering each module from each call occurrence in each calling module; a variation is to include a test of at least one path in calling module that does not call this module; this is Structured Testing recommendation Sums of Other Module Coverage Data - see types for Modules 20
21 II. Determining Test Completion Criteria for High Reliability Levels of Code Coverage - Component Black lines mean not yet tested What coverage level will you attempt during Integration Test? Module entry? - the 5 red boxes (untested) need tested Module integration calls? - the 9 black lines need tested (they include the red boxes) Module integration paths? - the 9 black lines plus all paths in the calling modules that contain calls; Structured Testing recommends this level as minimum Other? 21
22 III. Applying Tools for Complexity & Test Completion Info. A. Structural and Semantic Code Analysis B. Structural Complexity Metrics, Info., & Visualization C. Code Coverage Metrics, Info., & Visualization D. Procedures for Applying Code Coverage Tools 22
23 III. Applying Tools for Complexity & Test Completion Info. Structural and Semantic Code Analysis Two Major Analysis Types - Semantic & Structural Semantic Analyses code content May have sophisticated pattern matching algorithms Often include potential run-time error checking (memory, race, boundary); naming conventions; data mining May include run-time capture of potential problem info. Structural Analyses code structure May have sophisticated logic path determination algorithms Often include checking for poor structure; for poor design May include run-time capture of code coverage info. The two types are complementary; BOTH have value 23
24 III. Applying Tools for Complexity & Test Completion Info. Structural Code Analysis - Visualization And Metrics Structure and code coverage can be expressed in objective terms At Organization/Enterprise Level Multi-level groupings of metrics on structure (size, complexity, maintainability, etc.) and on code coverage At Component/Design Level Structure & class charts, w/ user interaction Summary metrics analysis Overlay of static & code coverage info. At Module (Unit) Level Flowgraphs w/ code, calls, test paths, etc. Detailed metrics analysis Overlay of static and code coverage info.
25 III. Applying Tools for Complexity & Test Completion Info. Structural Metrics - Module Cyclomatic complexity Essential complexity (unstructuredness) Design complexity Can include any metrics of your choice OO Metrics for Classes - Polymorphism - Encapsulation - Inheritance - More Available 25
26 III. Applying Tools for Complexity & Test Completion Info. Coloring Based on Coverage - can be based on any metric - interactive drilldown to code details 26
27 III. Applying Tools for Complexity & Test Completion Info. Some of many applications of code coverage data: Coverage Metrics - for Modules - cyclomatic paths (vg, ac) - integration paths (ivg, test ivg) - branches (# br., # test) - can report on other static & coverage metrics - have the most complex modules (reliability risk) been tested? - have the changed modules (reliability risk) been tested? - have other modules known as high reliability risk been tested? 27
28 III. Applying Tools for Complexity & Test Completion Info. Module - Untested Graph & Source Listing - Show untested logic, so can analyze & improve test cases 28
29 III. Applying Tools for Complexity & Test Completion Info. Tested Branches Untested Test Paths Other data from tools may help identify what remains to be tested 29
30 III. Applying Tools for Complexity & Test Completion Info. Procedures for Applying Code Coverage Tools A. Defining Process Improvement For Your Organization - Requiring Measurement and Analysis B. Obtaining/Providing Management Support C. Determining Owners of Processes & Automated Tools D. Considering Test Process Enhancement Alternatives - tool support - available vs. service team - tool usage - ad hoc vs. baselining vs. coverage level reqts. E. Piloting Process Changes & Automated Tool Usage F. Socializing - Presenting Results and Obtaining Feedback G. Implementing Process Changes & Automated Tool Usage Into Your Organization 30
31 Conclusion SW Components with Higher Reliability Risk, in terms of: Change Status (new or modified in this build/release) Business Criticality (mission-, safety-, etc-critical) Defect History (old defect areas predict future defects) Complexity (complex is likely less thoroughly tested) Should Have Applied Higher Quality Test Completion Criteria, in terms of: Functional Test Thoroughness Defects/Rates Approaching Zero Code Coverage 31
32 Thank You! Acronyms - SW - Software - OO - Object Oriented - vg - cyclomatic complexity - ac - actual complexity; coverage of vg paths - evg - essential complexity - ivg - integration (module design) complexity - gdv - global data complexity - S0 - design complexity for component - S1 - integration complexity for component 32
Uncovering Risk in Your ICD-10 Conversion. Key Risk & Effort Metrics for ICD Data Testing
Key Risk & Effort Metrics for ICD Data Testing Abstract If you are implementing ICD-10 support in your software applications, many things are important to your management of the process. Good development
More informationLecture 1: Software Measurement. Marlon Dumas
Software Economics Fall 2011 Lecture 1: Software Measurement Marlon Dumas (slides by Anton Litvinenko) What is a measure? Way of associating a formal object (e.g. number) and some attribute of a physical
More informationWorkshop 1: Software Measurement. Marlon Dumas
Software Economics Fall 2013 Workshop 1: Software Measurement Marlon Dumas (based on slides by Anton Litvinenko) Main message Software measures can be misleading, so Either you don t use them Or you better
More informationMeasuring and Assessing Software Quality
Measuring and Assessing Software Quality Issues, Challenges and Practical Approaches Kostas Kontogiannis Associate Professor, NTUA kkontog@softlab.ntua.gr The Software Life Cycle Maintenance Requirements
More informationSoftware Measurement. Software Economics 2009
Software Measurement Software Economics 2009 Anton Litvinenko Co-founder and CTO at Metrics for Software Projects Key competence: software measurement and metrics 8 years of software development at Mobi,
More informationIntroduction to Software Metrics
Introduction to Software Metrics Outline Today we begin looking at measurement of software quality using software metrics We ll look at: What are software quality metrics? Some basic measurement theory
More information9. Verification, Validation, Testing
9. Verification, Validation, Testing (a) Basic Notions (b) Dynamic testing. (c) Static analysis. (d) Modelling. (e) Environmental Simulation. (f) Test Strategies. (g) Tool support. (h) Independent Verification
More informationTesting and Inspections (3C05/D22) Unit 11: Testing and Inspection. What is Testing?
Testing and Inspections (3C05/D22) Unit 11: Testing and Inspection Objectives To introduce software testing and to develop its role within the software development process. To introduce the use of formal
More informationLecture 2: Software Quality Factors, Models and Standards. Software Quality Assurance (INSE 6260/4-UU) Winter 2016
Lecture 2: Software Quality Factors, Models and Standards Software Quality Assurance (INSE 6260/4-UU) Winter 2016 INSE 6260/4-UU Software Quality Assurance Software Quality Quality Assurance Factors and
More informationTesting: How much is enough? Ian Ashworth Coverity
Testing: How much is enough? Ian Ashworth Coverity Traditional Software Testing - Objectives Ensure the software all works as described in the requirements specification Make sure there are No bugs, especially
More informationSoftware Metrics. Kristian Sandahl
Software Metrics Kristian Sandahl 2 Maintenance Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Verify System
More informationSoftware Measurement. Software Economics 2010
Software Measurement Software Economics 2010 Anton Litvinenko Co-founder and CTO at Metrics tracking kit for software development Key competence: software measurement and metrics 9 years of software development
More information1. Can you explain the PDCA cycle and where testing fits in?
1. Can you explain the PDCA cycle and where testing fits in? Software testing is an important part of the software development process. In normal software development there are four important steps, also
More informationSWEN 256 Software Process & Project Management
SWEN 256 Software Process & Project Management Not everything that can be counted counts, and not everything that counts can be counted. - Albert Einstein Software measurement is concerned with deriving
More informationTest Management is Risk management. Risk Based Testing
Test Management is Risk management Risk Based Testing Hans Schaefer Software Test Consulting Reigstad N-5281 Valestrandsfossen NORWAY Phone +47 56 394880 Fax +47 56 394570 e-mail hans.schaefer@ieee.org
More informationISTQB Certified Tester. Foundation Level. Sample Exam 1
ISTQB Certified Tester Foundation Level Version 2015 American Software Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged.
More informationComparing Automated and Human Maintainability Assessment Approaches
Comparing Automated and Human Maintainability Assessment Approaches Celia Chen, Reem Alfayez, Kamonphop Srisopha, Barry Boehm, Lin Shi Agenda Definition of software maintenance and maintainability The
More informationBACKGROUND OF TESTING 4. The fundamental principles of the testing are as follows.
BACKGROUND OF TESTING 4 CHAPTER-2 BACKGROUND OF TESTING Testing is a means of making sure that the product meets the needs of the customer. Software Testing is the process of exercising the software product
More informationMSc Software Testing MSc Prófun hugbúnaðar
MSc Software Testing MSc Prófun hugbúnaðar Fyrirlestrar 1 & 2 The SWEBOK Chapter on Software Testing IEEE http://www.swebok.org/ 29/08/2007 Dr Andy Brooks 1 Repeat after Andy: software contains faults,
More informationAIRBORNE SOFTWARE VERIFICATION FRAMEWORK AIMED AT AIRWORTHINESS
27 TH INTERNATIONAL CONGRESS OF THE AERONAUTICAL SCIENCES AIRBORNE SOFTWARE VERIFICATION FRAMEWORK AIMED AT AIRWORTHINESS Yumei Wu*, Bin Liu* *Beihang University Keywords: software airworthiness, software
More informationComparative analysis of software metrics on the basis of complexity
Comparative analysis of software metrics on the basis of complexity Shweta Department of Computer Science and Engineering Chandigarh University Gharuan(Mohali(Punjab)),India sainishweta98@gmail.com Abstract-
More informationVectorCAST Presentation AdaEurope 2017 Advanced safety strategies for DO178C certification Massimo Bombino, MSCE
VectorCAST Presentation AdaEurope 2017 Advanced safety strategies for DO178C certification Massimo Bombino, MSCE Vector Software, Inc. > Software Quality Overview QUALITY HAZARDS IN AVIONICS INDUSTRY 1.
More informationFundamentals of Dynamic Testing. Inaccuracy in Dynamic Testing
Fundamentals of Dynamic Testing Three questions: How shall we tell if a test has succeeded or failed? [More next week on this, as well as process issues] How shall we select test cases? How do we know
More informationDimensions of Test Coverage Quantifying What Has and Hasn t Been Tested
Quantifying What Has and Hasn t Been Tested Introduction What do we mean by test coverage? What do outside stakeholders hear when we talk about test coverage? What s the difference between test coverage
More informationMSc Software Testing and Maintenance MSc Prófun og viðhald hugbúnaðar
MSc Software Testing and Maintenance MSc Prófun og viðhald hugbúnaðar Fyrirlestrar 25 & 26 The SWEBOK Chapter on Software Testing IEEE http://www.swebok.org/ 19/10/2005 Dr Andy Brooks 1 Repeat after Andy:
More informationDesign Decisions. Guest Lecture
1 Design Decisions Guest Lecture Apostolos Ampatzoglou - a.ampatzoglou@rug.nl Software Engineering and Architecture Group http://www.cs.rug.nl/search/people/apostolosampatzoglou Outline 2 Introduction
More informationContents 1 Introduction 2 Is the Old-Established Software Engineering Paradigm Entirely Out of Date?
1 Introduction...1 1.1 1.2 1.3 What Is Software?...1 What Is Software Engineering?...29 The Major Activities/Tasks to Be Performed in Software Engineering...31 1.4 The Popular Lifecycle/Process Models
More informationTesting 2. Testing: Agenda. for Systems Validation. Testing for Systems Validation CONCEPT HEIDELBERG
CONCEPT HEIDELBERG GMP Compliance for January 16-17, 2003 at Istanbul, Turkey Testing for Systems Validation Dr.-Ing. Guenter Generlich guenter@generlich.de Testing 1 Testing: Agenda Techniques Principles
More informationUsing Auto-Generated Diagnostic Trees for Verification of Operational Procedures in Software-Hardware Systems
Using Auto-Generated Diagnostic Trees for Verification of Operational Procedures in Software-Hardware Systems Tolga Kurtoglu Mission Critical Technologies @ NASA Ames Research Center tolga.kurtoglu@nasa.gov
More informationESTIMATION OF ASPECT ORIENTED PROGRAMMING USING DIFFERENT METRICES
International Journal of Scientific & Engineering Research, Volume 6, Issue 4, April-2015 1460 ESTIMATION OF ASPECT ORIENTED PROGRAMMING USING DIFFERENT METRICES Annu Student, M.Tech Deptt. Of Computer
More informationSoftware Metrics Software Engineering 2007
Software Engineering 2007 Anton Litvinenko 2/51 3/51 You can t control what you can t measure Tom DeMarco Controlling Software Projects 4/51 Measurement Assignment of quantitative indications to product's
More informationIntroduction to software testing and quality process
Introduction to software testing and quality process Automated testing and verification J.P. Galeotti - Alessandra Gorla Engineering processes Engineering disciplines pair construction activities activities
More informationTechnische Universität München. Software Quality. Management. Dr. Stefan Wagner Technische Universität München. Garching 18 June 2010
Technische Universität München Software Quality Management Dr. Stefan Wagner Technische Universität München Garching 18 June 2010 1 Last QOT: Why is software reliability a random process? Software reliability
More informationIntroduction to Software Metrics
Introduction to Software Metrics Outline Today we begin looking at measurement of software quality using software metrics We ll look at: What are software quality metrics? Some basic measurement theory
More informationSource-code quality. Part 1. Software Metrics. Andy Kellens. Monday 22 April 13
Source-code quality Part 1. Software Metrics Andy Kellens Not everything that can be counted counts, and not everything that counts can be counted. -- Albert Einstein 2 Source-code quality 3 Do you want
More informationSE420 Software Quality Assurance
SE420 Software Quality Assurance Lecture 2 Software Specification Part-1 January 16, 2017 Sam Siewert SQA LO s (Learning Objectives) Theory and Principles 1. Coverage of Current SQA Theory and Practice
More informationSE420 Software Quality Assurance
SE420 Software Quality Assurance Lecture 1 Introduction Part-2 January 16, 2017 Sam Siewert Course Learning Objectives Theory of Overall SQA Process Process Models (Waterfall, Spiral, XP) using Agile Strategy
More informationAn Intuitive Approach to Determine Test Adequacy in Safety-critical Software
An Intuitive Approach to Determine Test Adequacy in Safety-critical Software P. Arun Babu, C. Senthil Kumar, N. Murali, T. Jayakumar ACM SIGSOFT Software Engineering, Vol. 37, 2012 2013. 3. 27. Presented
More informationTest Case Prioritization using Clustering
International Journal of Current Engineering and Technology ISSN 2277-4106 2013 INPRESSCO. All Rights Reserved. Available at http://inpressco.com/category/ijcet Research Article Test Case Prioritization
More informationSoftware Engineering
Software Engineering (CS550) Software Testing - I Jongmoon Baik Objectives To define and understand what software testing is To understand software testing strategies To describe software testing processes
More informationCTFL - Version: 3. ISTQB Certified Tester Foundation Level
CTFL - Version: 3 ISTQB Certified Tester Foundation Level ISTQB Certified Tester Foundation Level CTFL - Version: 3 4 days Course Description: This course provides test engineers and test team leaders
More informationINTRODUCTION. It is the process used to identify the correctness, completeness and quality of developed computer software.
INTRODUCTION It is the process used to identify the correctness, completeness and quality of developed computer software. It is the process of executing a program/application under positive and negative
More informationCHAPTER 2 PROBLEM STATEMENT
CHAPTER 2 PROBLEM STATEMENT Software metrics based heuristics support software quality engineering through improved scheduling and project control. It can be a key step towards steering the software testing
More informationSchedule. Complexity of software systems. McCabe s cyclomatic complexity
Beyond Lines of Code: Do We Need More Complexity Metrics + An Extensive Comparison of Bug Prediction Approaches Wei Wang Feb. 7 th, 2013 Schedule Background Complexity metrics Comparing complexity metrics
More informationIntroduction to Software Testing
Introduction to Software Testing Introduction Chapter 1 introduces software testing by : describing the activities of a test engineer defining a number of key terms explaining the central notion of test
More informationSoftware Engineering & Architecture
Software Engineering & Architecture 10. SOFTWARE EVOLUTION Martin Kropp University of Applied Sciences Northwestern Switzerland Institute for Mobile and Distributed Systems References Based on the PowerPoint
More informationISTQB Sample Question Paper Dump #11
ISTQB Sample Question Paper Dump #11 1. Which of the following is true a. Testing is the same as quality assurance b. Testing is a part of quality assurance c. Testing is not a part of quality assurance
More informationT Software Testing and Quality Assurance Test Planning
T-76.5613 Software Testing and Quality Assurance 10.10.2007 Test Planning Juha Itkonen Outline Test planning, purpose and usage of a test plan Topics of test planning Exercise References: IEEE Std 829-1998,
More informationLecture 28: Software metrics
Chair of Software Engineering Software Engineering Prof. Dr. Bertrand Meyer March 2007 June 2007 Lecture 28: Software metrics Measurement To measure is to know When you can measure what you are speaking
More informationContractual Aspects of Testing Some Basic Guidelines CONTENTS
CONTENTS 1 Introduction... 1 1.1 Background... 1 1.2 Structure... 1 1.3 Some Conventions... 1 1.4 Feedback... 1 2 Test Schedule List of Contents... 2 3 Testing Deliverables... 3 4 Coverage Guidance...
More informationSo#ware Architecture
Chair of Software Engineering So#ware Architecture Bertrand Meyer, Michela Pedroni ETH Zurich, February May 2010 Lecture 16: Software metrics Measurement To measure is to know When you can measure what
More informationAlso we will try to recap what we studied in the last class. (Refer Slide Time: 00:35)
Embedded Software Testing Unit 3: Static analysis and code reviews & Metrics Lecture 5 Seer Akademi-NPTEL MOU Hi all welcome to the next session of our embedded software testing that unit 3 series and
More informationSoftware Testing Conference (STC) Leveraging Requirement Based Test Practices For Non-Safety Critical Software Systems
Software Testing Conference (STC) 2012 Leveraging Requirement Based Test Practices For Non-Safety Critical Software Systems Venkata Tulasiramu P 20-OCT-2012 1 1 Agenda Introduction Generic RBT Procedure
More informationMain Message. Workshop 1a: Software Measurement. Dietmar Pfahl
Software Economics Fall 2015 Workshop 1a: Software Measurement Main Message Software measures can be misleading, so Either you don t use them Dietmar Pfahl (based on slides by Marlon Dumas & Anton Litvinenko)
More informationSoftware Quality S O F T W A R E T E S T I N G. By: MSMZ
Software Quality S O F T W A R E T E S T I N G Introduction Testing was the 1 st software quality assurance tool applied to control software product quality. Software Test - Definition Software testing
More informationISTQB CTFL BH0-010 Exam Practice Question Paper
ISTQB TFL BH0-010 Exam Practice Question Paper For Software Testing rticlesvisit @ http://softwaretestinghelp.com Join the Best Software Testing Training ourse @ http://softwaretestinghelp.org QUESTION
More informationOn the Use of Software Quality Metrics to Improve Physical Properties of Embedded Systems
On the Use of Software Quality Metrics to Improve Physical Properties of Embedded Systems Ricardo M. Redin, Marcio F. S. Oliveira, Lisane B. Brisolara, Julio C. B. Mattos, Luis C. Lamb, Flávio R. Wagner,
More informationIntroduction to Verification and Test of Embedded Systems SE767: Vérification & Test
Introduction to Verification and Test of Embedded Systems SE767: Vérification & Test Ulrich Kühne ulrich.kuhne@telecom-paristech.fr 26/11/2018 Objectives of this Course Understanding the role of test &
More informationISTQB Advanced Technical Test Analyst Certificate in Software Testing
ISTQB Advanced Technical Test Analyst Certificate in Software Testing Sample Paper A - 1 Hour Examination This is not a complete exam paper Record your surname/last/family name and initials on the Answer
More informationSoftware Testing(TYIT) Software Testing. Who does Testing?
Software Testing(TYIT) Software Testing Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not. In simple words,
More informationSoftware Data Analytics. Nevena Lazarević
Software Data Analytics Nevena Lazarević 1 Selected Literature Perspectives on Data Science for Software Engineering, 1st Edition, Tim Menzies, Laurie Williams, Thomas Zimmermann The Art and Science of
More informationArchitectural Considerations for Validation of Run-Time Application Control Capabilities for Real-Time Systems
Architectural Considerations for Validation of Run-Time Application Control Capabilities for Real-Time Systems Paul V. Werme, NSWCDD Antonio L. Samuel, NSWCDD DISTRIBUTION STATEMENT A. Approved for public
More informationVector Software. Understanding Verification and Validation of software under IEC :2010 W H I T E P A P E R
Vector Software W H I T E P A P E R Understanding Verification and Validation of software under IEC 61508-3:2010 Abstract This paper is intended to serve as a reference for developers of systems that will
More informationISTQB CTFL BH0-010 Exam Practice Question Paper
ISTQ TFL H0-010 Exam Practice Question Paper For Software Testing rticlesvisit @ http://softwaretestinghelp.com Join the est Software Testing Training ourse @ http://softwaretestinghelp.org QUESTION 1:
More informationActivity Metrics. (book ch 4.3, 10, 11, 12) RIT Software Engineering
Activity Metrics (book ch 4.3, 10, 11, 12) Overview Metrics that indicate how well we are performing various activities Requirements, Design, Coding, Testing, Maintenance, Configuration Management, Quality
More informationCSE 435 Software Engineering. Sept 14, 2015
CSE 435 Software Engineering Sept 14, 2015 What is Software Engineering Where Does the Software Engineer Fit In? Computer science: focusing on computer hardware, compilers, operating systems, and programming
More informationFinding The Relationship Between Software Testing Effort And Software Quality Metrics
Finding The Relationship Between Software ing Effort And Software Quality Metrics N. Yagci 1, K. Ayan 2 1 TUBITAK BILGEM, Gebze, Kocaeli, Turkey 2 Computer Engineering, Sakarya University, Serdivan,Sakarya,Turkey
More informationACADEMIC REPORT: OBJECT-ORIENTED SOFTWARE DEVELOPMENT AND TESTING
ACADEMIC REPORT: OBJECT-ORIENTED SOFTWARE DEVELOPMENT AND TESTING IT8418 Testing and Quality Assurance Assignment 2 By Leutele LM Grey Author CONTRIBUTE FOR SAMOA FOR EDUCATING OUR YOUNG GENERATION MAY
More informationDigital Design Methodology (Revisited)
Digital Design Methodology (Revisited)! Design Methodology " Design Specification " Verification " Synthesis! Technology Options " Full Custom VLSI " Standard Cell ASIC " FPGA CS 150 Spring 2007 - Lec
More informationThe Magazine for Professional Testers
28 December 2014 The Magazine for Professional Testers The Three Pillars of Agile Quality and Testing by Robert Galen Testing the Internet of Things The Future is Here by Venkat Ramesh Atigadda and many
More informationSpecial Focus: Making Sense the Data-Oriented Tools Available to Facility Managers
Issue 17 - August 2013 Special Focus: Making Sense of the Data-Oriented Tools Available (Pg 1) Characteristics of Alarms (Pg 2) Alarms, Analysis Tools, FDD and Analytics (Pg 3) Examples Highlight the Differences
More informationISTQB CTFL BH0-010 Exam Practice Question Paper
ISTQ TFL H0-010 Exam Practice Question Paper For Software Testing rticlesvisit @ http://softwaretestinghelp.com Join the est Software Testing Training ourse @ http://softwaretestinghelp.org QUESTION 1:
More informationISEB ISTQB Sample Paper
[2011] ISEB ISTQB Sample Paper [BH0-010 ISEB ISTQB FOUNDATION LEVEL] This sample is based on the latest syllabus of ISTQB Foundation Level prepared by For more sample papers visit /istqb.aspx Total Questions:
More informationRequirements Engineering
Requirements Engineering Software Engineering CS 130 Donald J. Patterson Content adapted from Essentials of Software Engineering 3rd edition by Tsui, Karam, Bernal Jones and Bartlett Learning Requirements
More informationFundamentals Test Process
Fundamentals Test Process Fundamental Test Process 5 Phases of the Fundamental Test Process Fix test design and repeat Fix component or test cases/scripts and repeat Test Planning and Control Test Analysis
More informationSurviving the Top Ten Challenges of Software Testing
Surviving the Top Ten Challenges of Software Testing: A Closer Look at Understanding Software Testing Randy Rice, CQA, CSTE Rice Consulting Services, Inc. 405-692-7331 http://www.riceconsulting.com rcs@telepath.com
More informationStandard Glossary of Terms used in Software Testing. Version 3.2. Terms Changed since 01-Feb-2018
Standard Glossary of Terms used in Software Testing Version 3.2 International Software Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made, if the
More informationReliability Engineering. RIT Software Engineering
Reliability Engineering Reliability Engineering Practices Define reliability objectives Use operational profiles to guide test execution Preferable to create automated test infrastructure Track failures
More informationNCOVER. ROI Analysis for. Using NCover. NCover P.O. Box 9298 Greenville, SC T F
NCOVER ROI Analysis for Test Coverage Using NCover NCover P.O. Box 9298 Greenville, SC 29601 T 864.990.3717 F 864.341.8312 conversation@ncover.com www.ncover.com Table of Contents Executive Summary 2 Cost
More informationBASICS OF SOFTWARE TESTING AND QUALITY ASSURANCE. Yvonne Enselman, CTAL
BASICS OF SOFTWARE TESTING AND QUALITY ASSURANCE Yvonne Enselman, CTAL Information alines with ISTQB Sylabus and Glossary THE TEST PYRAMID Why Testing is necessary What is Testing Seven Testing principles
More informationCLASS/YEAR: II MCA SUB.CODE&NAME: MC7303, SOFTWARE ENGINEERING. 1. Define Software Engineering. Software Engineering: 2. What is a process Framework? Process Framework: UNIT-I 2MARKS QUESTIONS AND ANSWERS
More informationManaging the Testing Process E-learning Course Outline
Managing the Testing Process E-learning General Description Test managers must take a potentially infinite job testing a computer system and accomplish it within tight time and resource restraints. It
More informationHP ALM: Less Test Cases, More Coverage September 17, 2014
HP ALM: Less Test Cases, More Coverage September 17, 2014 Brought to you by Vivit Testing, Quality and Application Lifecycle Management Special Interest Group (TQA-SIG) Leaders: Damian Versaci, Christopher
More informationIntroduction To Software Testing. Brian Nielsen. Center of Embedded Software Systems Aalborg University, Denmark CSS
Introduction To Software Testing Brian Nielsen bnielsen@cs.auc.dk Center of Embedded Software Systems Aalborg University, Denmark CSS 1010111011010101 1011010101110111 Software development cycle 1. Programmer
More informationON THE USE OF BASE CHOICE STRATEGY FOR TESTING INDUSTRIAL CONTROL SOFTWARE
School of Innovation Design and Engineering Västerås, Sweden Thesis for the Degree of Bachelor of Science in Computer Science 15.0 credits ON THE USE OF BASE CHOICE STRATEGY FOR TESTING INDUSTRIAL CONTROL
More informationOBJECT ORIENTED SYSTEM USING SOFTWARE MATRICES
Airo International Research Journal August, 2015 Volume VI, ISSN: 2320-3714 OBJECT ORIENTED SYSTEM USING SOFTWARE MATRICES G. Rekha, Research scholar, Dept of CSE, Sunrise University, Alwar, Rajasthan
More informationRelease Notes. Standard Glossary of Terms used in. Software Testing. Version 3.2
Standard Glossary of Terms used in Release Notes Standard Glossary of Terms used in Version 3.2 Copyright Notice This document may be copied in its entirety or extracts made if the source is acknowledged.
More informationTesting. CxOne Standard
Testing CxOne Standard CxStand_Testing.doc November 3, 2002 Advancing the Art and Science of Commercial Software Engineering Contents 1 INTRODUCTION... 1 1.1 OVERVIEW... 1 1.2 GOALS... 1 1.3 BACKGROUND...
More informationGQM: Goal Question Metrics
GQM: Goal Question Metrics Introduction Main reference Understanding Measurement and Practical Implementation of GQM, V. R. Basili, C. B. Seaman, 2010 Leveraging Measurement Many organizations collect
More informationBugs are costly... Kinds of Quality Assurance
Bugs are costly... 1. Types of bugs (What type of bugs have you had in the past?) a. Race conditions and deadlocks b. Library misuse c. Logical errors (off by one, null, buffer overflow) d. Usability e.
More informationBetter Defect Analysis and Defect Prevention for Software Process Quality Improvement
International Journal of Innovative Research in Computer Science & Technology (IJIRCST) ISSN: 2347-5552, Volume-3, Issue-3, May- 2015 Better Defect Analysis and Defect Prevention for Software Process Quality
More informationThe Myths Behind Software Metrics. Myths and Superstitions
The Myths Behind Software Metrics Pacific Northwest Software Quality Conference October 14, 2013 Douglas Hoffman, BACS, MBA, MSEE, ASQ-CSQE, ASQ-CMQ/OE, ASQ Fellow Software Quality Methods, LLC. (SQM)
More informationISTQB CTFL BH0-010 Exam Practice Question Paper
ISTQ TFL H0-010 Exam Practice Question Paper For Software Testing rticlesvisit @ http://softwaretestinghelp.com Join the est Software Testing Training ourse @ http://softwaretestinghelp.org QUESTION 1:
More information2IS55 Software Evolution. Software metrics (3) Alexander Serebrenik
2IS55 Software Evolution Software metrics (3) Alexander Serebrenik Reminder Assignment 6: Software metrics Deadline: May 11 Questions? / SET / W&I 4-5-2011 PAGE 1 Sources / SET / W&I 4-5-2011 PAGE 2 Recap:
More informationDependable Technologies For Critical Systems. Software Verification. 22 nd May Technologies Ltd 2011 Critical Software
Dependable Technologies For Critical Systems Software Verification 22 nd May 2012 Dependable Technologies For Critical Systems Agenda When Things Go Wrong... Certifying Software Safety Critical Systems
More informationSoftware Testing Life Cycle
Software Testing Life Cycle STLC (Software Testing Life Cycle) is an integral component of SDLC (Software Development Life Cycle). Testing has become a distinct phenomenon during and after the development
More information2IS55 Software Evolution. Software metrics (3) Alexander Serebrenik
2IS55 Software Evolution Software metrics (3) Alexander Serebrenik Administration Assignment 5: Deadline: May 22 1-2 students / SET / W&I 28-5-2012 PAGE 1 Sources / SET / W&I 28-5-2012 PAGE 2 Recap: Software
More informationChapter-3. Software Metrics and Reliability
Chapter-3 \ functions under given conditions for a specified period of time." The reliability of the delivered code is related to the quality of all of the processes and products of software development;
More informationFor more Current papers visit Quantitative methods for assessing the quality of proposed architectural designs
Question No: 1 Quantitative methods for assessing the quality of proposed architectural designs are readily available. True False Question No: 2 A decision table should be used to document all conditional
More informationTransaction versus transform flow. Wednesday, September 19, :32 PM
Metrics Page 1 Transaction versus transform flow Wednesday, September 19, 2012 4:32 PM Transform: potentially asynchronous operation that takes data A and produces data B. Transaction: command: A is a
More information