CS3773 Software Engineering
|
|
- Allyson Leslie Sims
- 7 years ago
- Views:
Transcription
1 CS3773 Software Engineering Lecture 2 Test Case Design Software Testing Techniques Functional testing is applied to demonstrate the system meets its requirements, it is also called black-box testing Testers are only concerned with the functionality, performance, and dependability The system is treated as a black box that takes input and produces output Structural testing is applied to expose defects and tests are derived from the knowledge of the internal workings of items Testers understand the algorithm and the structure of systems The system is treated as a white box 2 Functional Testing Boundary Value Analysis Boundary value testing Errors tend to occur near the extreme values of an input Boundary value analysis variables Robustness testing Boundary value analysis focuses on the boundary of the input Worst case testing space to identity test cases Special value testing Boundary value analysis selects input variable values at their Equivalence class testing Minimum Decision table based testing Just above the minimum A nominal value Just below the maximum Maximum 3 4
2 Example of Boundary Value Analysis Single Assumption for Boundary Value Analysis Assume a program accepting two inputs y1 and y2, such that a < y1< b and c < y2 < d Boundary value analysis is also augmented by the single fault assumption principle y2 d c Failures occur rarely as the result of the simultaneous occurrence of two (or more) faults In this respect, boundary value analysis test cases can be obtained by holding the values of all but one variable at their nominal values, and letting that variable assume its extreme values a b y1 5 Generalization of Boundary Value Analysis Limitations of Boundary Value Analysis The basic boundary value analysis can be generalized in two Boundary value analysis works well when the program to be ways: tested is a function of several independent variables that By the number of variables - (4n +1) test cases for n variables represent bounded physical quantities By the kinds of ranges of variables Boundary value analysis selected test data with no Programming language dependent consideration of the function of the program, nor of the Bounded discrete semantic meaning of the variables Unbounded discrete (no upper or lower bounds clearly defined) Logical variables We can distinguish between physical and logical type of variables as well (e.g. temperature, pressure speed, or PIN numbers, telephone numbers etc.) 7 8
3 Robustness Testing Example of Robustness Testing Robustness testing is a simple extension of boundary value analysis In addition to the five boundary value analysis values of variables, we add values slightly greater that the maximum (max+) and a value slightly less than the minimum (min-) The main value of robustness testing is to force attention on exception handling y2 d c In some strongly typed languages values beyond the predefined range will cause a run-time error a b y Worst Case Testing Example of Worst Case Testing In worst case testing we reject the single fault assumption and we are interested what happens when more than one variable has an extreme value Considering that we have five different values that can be considered during boundary value analysis testing for one variable, now we take the Cartesian product of these possible values for 2, 3, n variables y2 d c We can have 5 n test cases for n input variables The best application of worst case testing is where physical variables have numerous interactions 12 a b y1
4 Special Value Testing Equivalence Class Testing Special value testing is probably the most widely practiced form of functional testing, most intuitive, and least uniform Utilizes domain knowledge and engineering judgment about program s soft spots to devise test cases Event though special value testing is very subjective on the generation of test cases, it is often more effective on revealing program faults The use of equivalence class testing has two motivations: Sense of complete testing Avoid redundancy Equivalence classes form a partition of a set that is a collection of mutually disjoint subsets whose union is the entire set Two important implications for testing: The entire set is represented provides a form of completeness The disjointness assures a form of non-redundancy Example of Equivalence Class Testing Example of Equivalence Class Testing The program P with 3 inputs: a, b and c and the corresponding input domains are A, B, and C A = A1 A2 A3 B = B1 B2 C = C1 C2 C3 C4 Define a 1, a 2 and a 3 as: let a i be a representative or typical value within its respective equivalence class (e.g. the midpoint in a linear equivalence class). similarly define b i and c i. Test cases can be stated for the inputs <a,b,c> in terms of the representative points The basic idea behind the techniques is that one point within an equivalence class is just as good as any other point within the same class 15 1
5 Decision Table Decision Table Usage Decision tables make it easy to observe that all possible The use of the decision-table model is applicable when : conditions are accounted for Specification is given or can be converted to a decision table Decision tables can be used for: Specifying complex program logic Generating test cases (Also known as logic-based testing) Logic-based testing is considered as: structural testing when applied to structure, i.e. control flow graph of an implementation functional testing when applied to a specification The order in which the predicates are evaluated does not affect the interpretation of the rules or resulting action The order of rule evaluation has no effect on resulting action Once a rule is satisfied and the action selected, no other rule need be examined The order of executing actions in a satisfied rule is of no consequence Example of Decision Table Structural Testing Conditions Actions Printer does not print Y Y Y Y N N N N A red light is flashing Y Y N N Y Y N N Printer is unrecognized Y N Y N Y N Y N Heck the power cable X Check the printer-computer cable X X Ensure printer software is installed X X X X Check/replace ink X X X X Flow Graph Testing Basis Path Testing Decision-to-Decision Path Test Coverage Metrics Data Flow Testing Check for paper jam X X 19 Printer Troubleshooting 20
6 21 Program Graph Given a program written in an imperative programming language, its Program Graph, is a directed labeled graph in which nodes are either groups of entire statements or fragments of a statement, and edges represent flow of control by P. Jorgensen If i, j, are nodes (basic block) in the program graph, there is an edge from node i, to node j in the program graph if an only if, the statement corresponding to node j, can be executed immediately after the last statement of the group of statement(s) that correspond to node i. Determine the Basic Block FindMean (FILE ScoreFile) { float SumOfScores = 0.0; int NumberOfScores = 0; 1 float Mean=0.0; float Score; Read(ScoreFile, Score); 2 while (! EOF(ScoreFile) { 3 if (Score > 0.0 ) { SumOfScores = SumOfScores + Score; 4 NumberOfScores++; } 5 Read(ScoreFile, Score); } /* Compute the mean and print the result */ 7 if (NumberOfScores > 0) { Mean = SumOfScores / NumberOfScores; printf( The mean score is %f\n, Mean); 8 } else printf ( No scores found in file\n ); 9 } 22 Example of Logic Flow Graph Path Testing Start 1 F 2 T 3 T F 4 5 Path Testing is focusing on test techniques that are based on the selection of test paths though a program graph. If the set of paths is properly chosen, then we can claim that we have achieved a measure of test thoroughness The fault assumption for path testing techniques is that something has gone wrong with the software that makes it take a different path than the one intended 23 7 T F 8 9 Exit 24 Structurally, a path is a sequence of statements in a program unit. Semantically, a path is an execution instance of the program unit. For software testing we are interested in entry-exit paths
7 Example for a Simple CFG Path Testing Process V(G) = 3 1 Unit Input: Source code and a path selection criterion Process: Generation of a Control Flow Graph (CFG) Selection of Paths Generation of Test Input Data Feasibility Test of a Path Evaluation of Program s Output for the Selected Test Cases Basis set: 1, 2, 3, 4,, 7 1, 2, 3, 4, 5, 4,, 7 1, 2,, 7 x = z+5 z = 4*3-y if(x > z) goto A; for( u=0; u < x; u++) { z = z+1; }; A: y = z + k z = z+1 u++ R1 5 R3 t x > z f x = z+5 z = 4*3-y u = 0 R2 u < x t f 7 y = z+k 25 2 Decision-to-Decision Path Decision-to-Decision Path Graph A DD-Path is a chain obtained from a program graph, where a chain is a path in which the initial and terminal nodes are distinct, and every interior node has indegree = 1, and outdegree = 1 Given a program written in an imperative language, its DD- Path graph is a labeled directed graph, in which nodes are DD-Paths of its program graph, and edges represent control flow between successor DD-Paths Internal node is 2-connected to every other node in the chain, and there are no instances of 1- or 3- connected nodes. Feasibility Test of a Path In this respect, a DD-Path is a condensation graph. For example 2-connected program graph nodes are collapsed to a single DD-Path graph node Evaluation of Program s Output for the Selected Test Cases DD-Paths are used to create DD-Path Graphs
8 Example of Path Graph Test Coverage B L first A A D C F E H G I J K Program Graph Nodes DD-Path Name Case # 4 first A 5 9 B 4 10 C 4 11 D E 5 15 F 4 1 G 3 17 H 4 18 I 3 19 J 4 20 K 3 21 L 4 22 last 2 The motivation of using DD-paths is that they enable very precise descriptions of test coverage In our quest to identify gaps and redundancy in our test cases as these are used to exercise (test) different aspects of a program we use formal models of the program structure to reason about testing effectiveness Test coverage metrics are a device to measure the extend to which a set of test cases covers a program last Test Coverage Metrics Data Flow Testing 31 Metric C 0 C 1 C 1 P C 2 C d C MCC C i k C stat C Description of Coverage Every Statement Every DD-Path Every predicate to each outcome C 1 Coverage + loop coverage C 1 Coverage + every dependent pair of DD-Paths Multiple condition coverage Every program path that contains up to k repetitions of a loop (usually k=2) Statistically significant fraction of paths All possible execution paths 32 Data flow testing refers to a category of structural testing techniques that focus on the points of the code variables obtain values (are defined) and the points of the program these variables are referenced (are used) Around faults that may occur when a variable is defined and referenced in not a proper way A variable is defined but never used A variable is used but never defined A variable that is defined twice (or more times) before it is used Parts of a program that constitute a slice a subset of program statements that comply with a specific slicing criterion (i.e. all program statements that are affected by variable x at point P)
9 Data Flow Testing Process Reading Assignments Data-flow testing involves selecting entry/exit paths with the objective of covering certain data definition and use patterns, commonly known as data-flow criteria An outline of data-flow testing is as follows: Draw a data flow graph for the program Select data-flow testing criteria Identify paths in the data-flow graph to satisfy the selection criteria Produce test cases for the selected paths Sommerville s Book Chapter 23, Software Testing 33 34
Introduction to Computers and Programming. Testing
Introduction to Computers and Programming Prof. I. K. Lundqvist Lecture 13 April 16 2004 Testing Goals of Testing Classification Test Coverage Test Technique Blackbox vs Whitebox Real bugs and software
More informationStandard for Software Component Testing
Standard for Software Component Testing Working Draft 3.4 Date: 27 April 2001 produced by the British Computer Society Specialist Interest Group in Software Testing (BCS SIGIST) Copyright Notice This document
More informationSOFTWARE TESTING. A Craftsmcm's Approach THIRD EDITION. Paul C. Jorgensen. Auerbach Publications. Taylor &. Francis Croup. Boca Raton New York
SOFTWARE TESTING A Craftsmcm's Approach THIRD EDITION Paul C. Jorgensen A Auerbach Publications Taylor &. Francis Croup Boca Raton New York Auerbach Publications is an imprint of the Taylor & Francis Group,
More informationTesting LTL Formula Translation into Büchi Automata
Testing LTL Formula Translation into Büchi Automata Heikki Tauriainen and Keijo Heljanko Helsinki University of Technology, Laboratory for Theoretical Computer Science, P. O. Box 5400, FIN-02015 HUT, Finland
More informationDifferent Approaches to White Box Testing Technique for Finding Errors
Different Approaches to White Box Testing Technique for Finding Errors Mohd. Ehmer Khan Department of Information Technology Al Musanna College of Technology, Sultanate of Oman ehmerkhan@gmail.com Abstract
More informationIntroduction to Data-flow analysis
Introduction to Data-flow analysis Last Time LULESH intro Typed, 3-address code Basic blocks and control flow graphs LLVM Pass architecture Data dependencies, DU chains, and SSA Today CFG and SSA example
More informationModule 10. Coding and Testing. Version 2 CSE IIT, Kharagpur
Module 10 Coding and Testing Lesson 26 Debugging, Integration and System Testing Specific Instructional Objectives At the end of this lesson the student would be able to: Explain why debugging is needed.
More informationSoftware Engineering. Software Testing. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Testing Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To discuss the distinctions between validation testing and defect t testing To describe the
More informationLecture 17: Testing Strategies" Developer Testing"
Lecture 17: Testing Strategies Structural Coverage Strategies (White box testing): Statement Coverage Branch Coverage Condition Coverage Data Path Coverage Function Coverage Strategies (Black box testing):
More informationCMPSCI611: Approximating MAX-CUT Lecture 20
CMPSCI611: Approximating MAX-CUT Lecture 20 For the next two lectures we ll be seeing examples of approximation algorithms for interesting NP-hard problems. Today we consider MAX-CUT, which we proved to
More informationAPPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION
1 APPROACHES TO SOFTWARE TESTING PROGRAM VERIFICATION AND VALIDATION Validation: Are we building the right product? Does program meet expectations of user? Verification: Are we building the product right?
More informationGraph Security Testing
JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 23 No. 1 (2015), pp. 29-45 Graph Security Testing Tomasz Gieniusz 1, Robert Lewoń 1, Michał Małafiejski 1 1 Gdańsk University of Technology, Poland Department of
More informationSoftware Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.
Software Testing Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program. Testing can only reveal the presence of errors and not the
More informationSoftware Metrics. Lord Kelvin, a physicist. George Miller, a psychologist
Software Metrics 1. Lord Kelvin, a physicist 2. George Miller, a psychologist Software Metrics Product vs. process Most metrics are indirect: No way to measure property directly or Final product does not
More informationSoftware Testing. Jeffrey Carver University of Alabama. April 7, 2016
Software Testing Jeffrey Carver University of Alabama April 7, 2016 Warm-up Exercise Software testing Graphs Control-flow testing Data-flow testing Input space testing Test-driven development Introduction
More informationSoftware Testing & Analysis (F22ST3): Static Analysis Techniques 2. Andrew Ireland
Software Testing & Analysis (F22ST3) Static Analysis Techniques Andrew Ireland School of Mathematical and Computer Science Heriot-Watt University Edinburgh Software Testing & Analysis (F22ST3): Static
More informationLecture 2 Introduction to Data Flow Analysis
Lecture 2 Introduction to Data Flow Analysis I. Introduction II. Example: Reaching definition analysis III. Example: Liveness analysis IV. A General Framework (Theory in next lecture) Reading: Chapter
More information2) Write in detail the issues in the design of code generator.
COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage
More informationLecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs
CSE599s: Extremal Combinatorics November 21, 2011 Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs Lecturer: Anup Rao 1 An Arithmetic Circuit Lower Bound An arithmetic circuit is just like
More informationA Formal Model of Program Dependences and Its Implications for Software Testing, Debugging, and Maintenance
A Formal Model of Program Dependences and Its Implications for Software Testing, Debugging, and Maintenance Andy Podgurski Lori A. Clarke Computer Engineering & Science Department Case Western Reserve
More informationMeasurement Information Model
mcgarry02.qxd 9/7/01 1:27 PM Page 13 2 Information Model This chapter describes one of the fundamental measurement concepts of Practical Software, the Information Model. The Information Model provides
More informationISTQB Certified Tester. Foundation Level. Sample Exam 1
ISTQB Certified Tester Foundation Level Version 2015 American Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. #1 When test cases are designed
More informationIn mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.
MATHEMATICS: THE LEVEL DESCRIPTIONS In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. Attainment target
More information17.3.1 Follow the Perturbed Leader
CS787: Advanced Algorithms Topic: Online Learning Presenters: David He, Chris Hopman 17.3.1 Follow the Perturbed Leader 17.3.1.1 Prediction Problem Recall the prediction problem that we discussed in class.
More informationAutomated Validation & Verification of Software Paper Presentation
Regression Test Selection for Java Software Salvador Valencia Rodríguez Automated Validation & Verification of Software Paper Presentation Paper authors Mary Jean Harrold James A. Jones Tongyu Li Donglin
More information1 White-Box Testing by Stubs and Drivers
White-box testing is a verification technique software engineers can use to examine if their code works as expected. In this chapter, we will explain the following: a method for writing a set of white-box
More informationEVALUATING METRICS AT CLASS AND METHOD LEVEL FOR JAVA PROGRAMS USING KNOWLEDGE BASED SYSTEMS
EVALUATING METRICS AT CLASS AND METHOD LEVEL FOR JAVA PROGRAMS USING KNOWLEDGE BASED SYSTEMS Umamaheswari E. 1, N. Bhalaji 2 and D. K. Ghosh 3 1 SCSE, VIT Chennai Campus, Chennai, India 2 SSN College of
More information5.1 Bipartite Matching
CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson
More informationTest Case Design Techniques
Summary of Test Case Design Techniques Brian Nielsen, Arne Skou {bnielsen ask}@cs.auc.dk Development of Test Cases Complete testing is impossible Testing cannot guarantee the absence of faults How to select
More informationAlgebraic Computation Models. Algebraic Computation Models
Algebraic Computation Models Ζυγομήτρος Ευάγγελος ΜΠΛΑ 201118 Φεβρουάριος, 2013 Reasons for using algebraic models of computation The Turing machine model captures computations on bits. Many algorithms
More informationSoftware Testing. Quality & Testing. Software Testing
Software Testing Software Testing Error: mistake made by the programmer/developer Fault: a incorrect piece of code/document (i.e., bug) Failure: result of a fault Goal of software testing: Cause failures
More informationSoftware Testing Strategies and Techniques
Software Testing Strategies and Techniques Sheetal Thakare 1, Savita Chavan 2, Prof. P. M. Chawan 3 1,2 MTech, Computer Engineering VJTI, Mumbai 3 Associate Professor, Computer Technology Department, VJTI,
More informationCost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation:
CSE341T 08/31/2015 Lecture 3 Cost Model: Work, Span and Parallelism In this lecture, we will look at how one analyze a parallel program written using Cilk Plus. When we analyze the cost of an algorithm
More informationAutomatic Test Data Synthesis using UML Sequence Diagrams
Vol. 09, No. 2, March April 2010 Automatic Test Data Synthesis using UML Sequence Diagrams Ashalatha Nayak and Debasis Samanta School of Information Technology Indian Institute of Technology, Kharagpur
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More informationFormal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com
Formal Software Testing Terri Grenda, CSTE IV&V Testing Solutions, LLC www.ivvts.com Scope of Testing Find defects early Remove defects prior to production Identify Risks Unbiased opinion When Should Testing
More informationImproved Software Testing Using McCabe IQ Coverage Analysis
White Paper Table of Contents Introduction...1 What is Coverage Analysis?...2 The McCabe IQ Approach to Coverage Analysis...3 The Importance of Coverage Analysis...4 Where Coverage Analysis Fits into your
More informationLecture 17 : Equivalence and Order Relations DRAFT
CS/Math 240: Introduction to Discrete Mathematics 3/31/2011 Lecture 17 : Equivalence and Order Relations Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last lecture we introduced the notion
More informationKS3 Computing Group 1 Programme of Study 2015 2016 2 hours per week
1 07/09/15 2 14/09/15 3 21/09/15 4 28/09/15 Communication and Networks esafety Obtains content from the World Wide Web using a web browser. Understands the importance of communicating safely and respectfully
More informationTotal Quality Management (TQM) Quality, Success and Failure. Total Quality Management (TQM) vs. Process Reengineering (BPR)
Total Quality Management (TQM) Quality, Success and Failure Total Quality Management (TQM) is a concept that makes quality control a responsibility to be shared by all people in an organization. M7011
More informationReducing Clocks in Timed Automata while Preserving Bisimulation
Reducing Clocks in Timed Automata while Preserving Bisimulation Shibashis Guha Chinmay Narayan S. Arun-Kumar Indian Institute of Technology Delhi {shibashis, chinmay, sak}@cse.iitd.ac.in arxiv:1404.6613v2
More informationIE 680 Special Topics in Production Systems: Networks, Routing and Logistics*
IE 680 Special Topics in Production Systems: Networks, Routing and Logistics* Rakesh Nagi Department of Industrial Engineering University at Buffalo (SUNY) *Lecture notes from Network Flows by Ahuja, Magnanti
More informationMining Social Network Graphs
Mining Social Network Graphs Debapriyo Majumdar Data Mining Fall 2014 Indian Statistical Institute Kolkata November 13, 17, 2014 Social Network No introduc+on required Really? We s7ll need to understand
More informationAsking Hard Graph Questions. Paul Burkhardt. February 3, 2014
Beyond Watson: Predictive Analytics and Big Data U.S. National Security Agency Research Directorate - R6 Technical Report February 3, 2014 300 years before Watson there was Euler! The first (Jeopardy!)
More informationGameTime: A Toolkit for Timing Analysis of Software
GameTime: A Toolkit for Timing Analysis of Software Sanjit A. Seshia and Jonathan Kotker EECS Department, UC Berkeley {sseshia,jamhoot}@eecs.berkeley.edu Abstract. Timing analysis is a key step in the
More informationTest case design techniques II: Blackbox testing CISS
Test case design techniques II: Blackbox testing Overview Black-box testing (or functional testing): Equivalence partitioning Boundary value analysis Domain analysis Cause-effect graphing Behavioural testing
More informationClass notes Program Analysis course given by Prof. Mooly Sagiv Computer Science Department, Tel Aviv University second lecture 8/3/2007
Constant Propagation Class notes Program Analysis course given by Prof. Mooly Sagiv Computer Science Department, Tel Aviv University second lecture 8/3/2007 Osnat Minz and Mati Shomrat Introduction This
More informationKnow or Go Practical Quest for Reliable Software
Know or Go Practical Quest for Reliable Software Dr.-Ing. Jörg Barrho Dr.-Ing. Ulrich Wünsche AVACS Project meeting 25.09.2014 2014 Rolls-Royce Power Systems AG The information in this document is the
More informationOn the effect of forwarding table size on SDN network utilization
IBM Haifa Research Lab On the effect of forwarding table size on SDN network utilization Rami Cohen IBM Haifa Research Lab Liane Lewin Eytan Yahoo Research, Haifa Seffi Naor CS Technion, Israel Danny Raz
More informationThe Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,
The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints
More informationDynamic programming formulation
1.24 Lecture 14 Dynamic programming: Job scheduling Dynamic programming formulation To formulate a problem as a dynamic program: Sort by a criterion that will allow infeasible combinations to be eli minated
More informationEfficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.
Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity
More informationFault Modeling. Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults. Transistor faults Summary
Fault Modeling Why model faults? Some real defects in VLSI and PCB Common fault models Stuck-at faults Single stuck-at faults Fault equivalence Fault dominance and checkpoint theorem Classes of stuck-at
More informationCustomer Training Material. Lecture 4. Meshing in Mechanical. Mechanical. ANSYS, Inc. Proprietary 2010 ANSYS, Inc. All rights reserved.
Lecture 4 Meshing in Mechanical Introduction to ANSYS Mechanical L4-1 Chapter Overview In this chapter controlling meshing operations is described. Topics: A. Global Meshing Controls B. Local Meshing Controls
More informationTest case design techniques I: Whitebox testing CISS
Test case design techniques I: Whitebox testing Overview What is a test case Sources for test case derivation Test case execution White box testing Flowgraphs Test criteria/coverage Statement / branch
More informationA Sublinear Bipartiteness Tester for Bounded Degree Graphs
A Sublinear Bipartiteness Tester for Bounded Degree Graphs Oded Goldreich Dana Ron February 5, 1998 Abstract We present a sublinear-time algorithm for testing whether a bounded degree graph is bipartite
More informationCSE 504: Compiler Design. Data Flow Analysis
Data Flow Analysis Pradipta De pradipta.de@sunykorea.ac.kr Current Topic Iterative Data Flow Analysis LiveOut sets Static Single Assignment (SSA) Form Data Flow Analysis Techniques to reason about runtime
More informationSoftware testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
More informationFirewall Design: Consistency, Completeness, Compactness
Firewall Design: Consistency, Completeness, Compactness Alex X. Liu alex@cs.utexas.edu Department of Computer Sciences The University of Texas at Austin Austin, Texas 78712-1188, U.S.A. March, 2004 Co-author:
More informationCIS570 Lecture 9 Reuse Optimization II 3
Reuse Optimization Last time Discussion (SCC) Loop invariant code motion Reuse optimization: Value numbering Today More reuse optimization Common subexpression elimination (CSE) Partial redundancy elimination
More informationSYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis
SYSM 6304: Risk and Decision Analysis Lecture 5: Methods of Risk Analysis M. Vidyasagar Cecil & Ida Green Chair The University of Texas at Dallas Email: M.Vidyasagar@utdallas.edu October 17, 2015 Outline
More informationIBM SPSS Modeler Social Network Analysis 15 User Guide
IBM SPSS Modeler Social Network Analysis 15 User Guide Note: Before using this information and the product it supports, read the general information under Notices on p. 25. This edition applies to IBM
More informationProblems, Methods and Tools of Advanced Constrained Scheduling
Problems, Methods and Tools of Advanced Constrained Scheduling Victoria Shavyrina, Spider Project Team Shane Archibald, Archibald Associates Vladimir Liberzon, Spider Project Team 1. Introduction In this
More informationCompetitive Analysis of On line Randomized Call Control in Cellular Networks
Competitive Analysis of On line Randomized Call Control in Cellular Networks Ioannis Caragiannis Christos Kaklamanis Evi Papaioannou Abstract In this paper we address an important communication issue arising
More informationIngegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/]
Course: Ingegneria del Software II academic year: 2004-2005 Course Web-site: [www.di.univaq.it/ingegneria2/] An Introduction to Testing Lecturer: Henry Muccini and Vittorio Cortellessa Computer Science
More informationDataflow approach to testing Java programs supported with DFC
e-informatica Software Engineering Journal, Volume 9, Issue 1, 2015, pages: 9 19, DOI 10.5277/e-Inf150101 Dataflow approach to testing Java programs supported with DFC Ilona Bluemke, Artur Rembiszewski
More informationHow To Check For Differences In The One Way Anova
MINITAB ASSISTANT WHITE PAPER This paper explains the research conducted by Minitab statisticians to develop the methods and data checks used in the Assistant in Minitab 17 Statistical Software. One-Way
More informationTest-Driven Development. SC12 Educator s Session November 13, 2012
Test-Driven Development Educator s Session November 13, 2012 Outline Software Quality Overview of Testing Automated Testing Tools Test-Driven Development Educator's Session 2 SOFTWARE QUALITY Educator's
More informationAutomatic Test Data Generation-Achieving Optimality Using Ant-Behaviour
Automatic Test Data Generation-Achieving Optimality Using Ant-Behaviour Sumesh Agarwal, Shubham Gupta, and Nitish Sabharwal Abstract Software Testing is an important element in the Software Development
More informationA Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems
A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems Vincenzo Grassi Università di Roma Tor Vergata, Italy Raffaela Mirandola {vgrassi, mirandola}@info.uniroma2.it Abstract.
More informationSoftware Engineering. How does software fail? Terminology CS / COE 1530
Software Engineering CS / COE 1530 Testing How does software fail? Wrong requirement: not what the customer wants Missing requirement Requirement impossible to implement Faulty design Faulty code Improperly
More informationBig Data and Scripting map/reduce in Hadoop
Big Data and Scripting map/reduce in Hadoop 1, 2, parts of a Hadoop map/reduce implementation core framework provides customization via indivudual map and reduce functions e.g. implementation in mongodb
More informationLecture 26 CPM / PERT Network Diagram
Lecture 26 CPM / PERT Network Diagram 26.1 Introduction to CPM / PERT Techniques CPM (Critical Path Method) was developed by Walker to solve project scheduling problems. PERT (Project Evaluation and Review
More informationNear Optimal Solutions
Near Optimal Solutions Many important optimization problems are lacking efficient solutions. NP-Complete problems unlikely to have polynomial time solutions. Good heuristics important for such problems.
More informationMax Flow, Min Cut, and Matchings (Solution)
Max Flow, Min Cut, and Matchings (Solution) 1. The figure below shows a flow network on which an s-t flow is shown. The capacity of each edge appears as a label next to the edge, and the numbers in boxes
More informationRandom vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison
Random vs. Structure-Based Testing of Answer-Set Programs: An Experimental Comparison Tomi Janhunen 1, Ilkka Niemelä 1, Johannes Oetsch 2, Jörg Pührer 2, and Hans Tompits 2 1 Aalto University, Department
More informationPROJECT AUDIT METHODOLOGY
PROJECT AUDIT METHODOLOGY 1 "Your career as a project manager begins here!" Content Introduction... 3 1. Definition of the project audit... 3 2. Objectives of the project audit... 3 3. Benefit of the audit
More informationSoftware Testing Interview Questions
Software Testing Interview Questions 1. What s the Software Testing? A set of activities conducted with the intent of finding errors in software. 2.What is Acceptance Testing? Testing conducted to enable
More informationData Structure [Question Bank]
Unit I (Analysis of Algorithms) 1. What are algorithms and how they are useful? 2. Describe the factor on best algorithms depends on? 3. Differentiate: Correct & Incorrect Algorithms? 4. Write short note:
More informationGenerating Test Cases for Web Services Using Extended Finite State Machine
Generating Test Cases for Web Services Using Extended Finite State Machine ChangSup Keum 1, Sungwon Kang 2, In-Young Ko 2, Jongmoon Baik 2, Young-Il Choi 1 1 BcN Research Division, Electronics and Telecommunications
More informationTesting Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX
White Paper Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX April 2010 Cy Hay Product Manager, Synopsys Introduction The most important trend
More informationSoftware Implementation Technology report
Software Implementation Technology report Team: No Best 1 - Program Manager 2 - Developer 3- Tester 2007-8 Peking University Software Implementation Technology report 1 Problem & Plan 2 Design & Implementation
More informationChapter 6: The Information Function 129. CHAPTER 7 Test Calibration
Chapter 6: The Information Function 129 CHAPTER 7 Test Calibration 130 Chapter 7: Test Calibration CHAPTER 7 Test Calibration For didactic purposes, all of the preceding chapters have assumed that the
More informationAnalysis Of Source Lines Of Code(SLOC) Metric
Analysis Of Source Lines Of Code(SLOC) Metric Kaushal Bhatt 1, Vinit Tarey 2, Pushpraj Patel 3 1,2,3 Kaushal Bhatt MITS,Datana Ujjain 1 kaushalbhatt15@gmail.com 2 vinit.tarey@gmail.com 3 pushpraj.patel@yahoo.co.in
More informationNetwork Algorithms for Homeland Security
Network Algorithms for Homeland Security Mark Goldberg and Malik Magdon-Ismail Rensselaer Polytechnic Institute September 27, 2004. Collaborators J. Baumes, M. Krishmamoorthy, N. Preston, W. Wallace. Partially
More informationTest Coverage and Risk
Test Coverage and Risk Hans Schaefer Consultant 5281 Valestrandsfossen, Norway hans.schaefer@ieee.org http://home.c2i.net/schaefer/testing.html 2006 Hans Schaefer page 1 How to check that a test was good
More information8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
More informationSingle machine parallel batch scheduling with unbounded capacity
Workshop on Combinatorics and Graph Theory 21th, April, 2006 Nankai University Single machine parallel batch scheduling with unbounded capacity Yuan Jinjiang Department of mathematics, Zhengzhou University
More informationProject and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi
Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture - 9 Basic Scheduling with A-O-A Networks Today we are going to be talking
More informationDatabase Programming with PL/SQL: Learning Objectives
Database Programming with PL/SQL: Learning Objectives This course covers PL/SQL, a procedural language extension to SQL. Through an innovative project-based approach, students learn procedural logic constructs
More informationLoad Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait
More informationDistributed Computing over Communication Networks: Maximal Independent Set
Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.
More informationChapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling
Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one
More informationCMOS Binary Full Adder
CMOS Binary Full Adder A Survey of Possible Implementations Group : Eren Turgay Aaron Daniels Michael Bacelieri William Berry - - Table of Contents Key Terminology...- - Introduction...- 3 - Design Architectures...-
More informationGenerating Test Cases for Web Services Using Extended Finite State Machine
Generating Test Cases for Web Services Using Extended Finite State Machine ChangSup Keum 1, Sungwon Kang 2, In-Young Ko 2, Jongmoon Baik 2, and Young-Il Choi 1 1 BcN Research Division, Electronics and
More informationDie wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist.
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist. Christian Guß Application Engineer The MathWorks GmbH 2015 The MathWorks, Inc.
More information1 if 1 x 0 1 if 0 x 1
Chapter 3 Continuity In this chapter we begin by defining the fundamental notion of continuity for real valued functions of a single real variable. When trying to decide whether a given function is or
More informationEXPERT CHOICE TUTORIAL
EXPERT CHOICE TUTORIAL This tutorial will guide you through two practice problems. 1) You will build, make assessments in, synthesize, and perform sensitivity on an EC model to find the best place to go
More informationData Structures and Algorithms Written Examination
Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where
More informationBasic circuit troubleshooting
Basic circuit troubleshooting This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,
More information