WHY TEST SOFTWARE?...

Size: px
Start display at page:

Download "WHY TEST SOFTWARE?..."

Transcription

1 2 At a glance 1 PREFACE AT A GLANCE TABLE OF CONTENTS INTRODUCTION WHY TEST SOFTWARE? WHY TEST SOFTWARE? LIMITATIONS OF TESTING ALTERNATIVE TO TESTING PROVING THREE OBJECTIVES OF TESTING SOFTWARE WHAT S SOFTWARE TESTING ABOUT? THE DIFFERENCE BETWEEN A TESTER AND A DEVELOPER THE THREE-HEADED DRAGON OF SOFTWARE DEVELOPMENT THE LANGUAGE OF SOFTWARE TESTING A BUG S LIFE SEVERITY OF BUGS THE KINDS OF BUGS STAGES OF SOFTWARE DEVELOPMENT FOR A TESTER

2 6 7.1 CHALLENGING REQUIREMENTS CHALLENGING SPECIFICATIONS CHALLENGING ARCHITECTURE AND TECHNICAL DESIGN TESTING CODE CHALLENGING DOCUMENTATION RELEASE DIMENSIONS OF SOFTWARE TESTING WHY DIMENSIONS? BY OBJECT BY SOURCE CODE VISIBILITY BY LEVEL BY PLACE BY PURPOSE BY ATTACK SURFACE BY FAULT TYPE QUALITY OF TESTING HUH? CODE COVERAGE SOFTWARE METRICS TEST PLAN REVIEW SEEDING BUGS AND CODE MUTATION TESTABILITY BETA RELEASE/BETA TESTING POST-RELEASE FUN DEPLOYMENT TESTING COMPATIBILITY TESTING SYSTEM TESTING STAGING AND PRODUCTION ENVIRONMENT TESTING SOFTWARE IN A GLOBAL TEAM TECHNICALLY SPEAKING HUMAN-ORIENTED SURVIVING AS A TESTER FUZZY VALUE IN THE SOFTWARE DEVELOPMENT.. 145

3 12.2 COST/VALUE BALANCE RELIGIONS AND CONFESSIONS IEEE ROLE OFFICE POLITICS OUTSOURCING AND JOB SECURITY SEGREGATION FUTURE OF THE TRADE APPENDIX A. TEST CASE APPENDIX B. BIBLIOGRAPHY STANDARDS AND CLASSICS EXTREME TESTING & RELATED OTHER ENDNOTES

4 3 Table of Contents 1 PREFACE 3 2 AT A GLANCE 5 3 TABLE OF CONTENTS 9 4 INTRODUCTION 17 5 WHY TEST SOFTWARE? WHY TEST SOFTWARE? LIMITATIONS OF TESTING The First Law of Software Programming Nothing is ever perfect Requirements Design Requirements context, missed or ignored requirements Overusing formal verification tools without proper qualification Late design changes and code fixes Code Platform Tests Users Monkey 32 9

5 Farmer Hacker The Product Team Richness of possibilities Code paths, state transitions Inputs (including input editing and timing) Data in the environment In essence you cannot try everything ALTERNATIVE TO TESTING PROVING THREE OBJECTIVES OF TESTING SOFTWARE So, why? Objective #1: Quality Bar Objective #2: Acceptance Objective #3: Baseline 41 6 WHAT S SOFTWARE TESTING ABOUT? THE DIFFERENCE BETWEEN A TESTER AND A DEVELOPER A Castle Debugging is not testing Goals Actor Tools Results Super-pessimism Testing that the glass is half empty THE THREE-HEADED DRAGON OF SOFTWARE DEVELOPMENT Software developer Software architect, analyst, project manager Software tester THE LANGUAGE OF SOFTWARE TESTING The bug: what is it? Test case Test plan Bug tracking Version control Test automation A BUG S LIFE 54

6 6.4.1 Bug opened Bug approved Bug fixed Bug verified and closed SEVERITY OF BUGS Know Thine User! THE KINDS OF BUGS Code defect Crash A special kind: Regression Security Performance-related Throughput (performance) Stress Volume Scalability Resources consumption (leaks) Usability Documentation Test issue Bugs in tests and frameworks Mixing up a bug and a feature 70 7 STAGES OF SOFTWARE DEVELOPMENT FOR A TESTER CHALLENGING REQUIREMENTS CHALLENGING SPECIFICATIONS Challenging assumptions Challenging completeness Challenging behavior Challenging usability Challenging testability That s not the end CHALLENGING ARCHITECTURE AND TECHNICAL DESIGN TESTING CODE CHALLENGING DOCUMENTATION RELEASE 83 8 DIMENSIONS OF SOFTWARE TESTING 85 11

7 WHY DIMENSIONS? BY OBJECT Positive testing capabilities Negative testing environment BY SOURCE CODE VISIBILITY Black ( opaque ) box testing White (glass, clear) box testing Gray ( Translucent ) box testing BY LEVEL Unit testing Component testing Integration testing System testing Scenario-based Free-form BY PLACE Product Team Testing (vendor) Customer (user) Side Testing Third Party Testing (certification) BY PURPOSE Functional testing Regression testing Performance related testing Performance (throughput) testing Volume (size) testing Load (stress) testing Scalability testing Resource consumption (including leaks) testing Sizing guidance Conformance testing Standards Legislation Coding policy testing Security testing Functional security testing Security model and STRIDE Security penetration testing Globalization testing 103

8 Encoding Watch your language Formats More calendar fun Units Strings Length of text Making of an error message That s not all Localization testing Cultural differences Platform and dependencies testing Pseudo-testing Usability Reliability Robustness BY ATTACK SURFACE What is an attack surface Input Input GUI Input API Input Files and DB content Environment Environment Resources (storage, memory, etc.) Environment Access rights Environment Network Environment Files and folders Environment Media Environment Output devices Environment Platform User User monkey User farmer User hacker BY FAULT TYPE A word on the fault model Boundary conditions Arithmetic overflows

9 Buffer overflows Race conditions Uninitialized variables Uncaught exceptions Resource allocation That s not all again QUALITY OF TESTING HUH? CODE COVERAGE SOFTWARE METRICS TEST PLAN REVIEW SEEDING BUGS AND CODE MUTATION TESTABILITY BETA RELEASE/BETA TESTING POST-RELEASE FUN DEPLOYMENT TESTING COMPATIBILITY TESTING SYSTEM TESTING STAGING AND PRODUCTION ENVIRONMENT TESTING SOFTWARE IN A GLOBAL TEAM TECHNICALLY SPEAKING HUMAN-ORIENTED Time zone differences Work relations and cultural differences Life in a global org SURVIVING AS A TESTER FUZZY VALUE IN THE SOFTWARE DEVELOPMENT_ COST/VALUE BALANCE RELIGIONS AND CONFESSIONS IEEE ROLE OFFICE POLITICS OUTSOURCING AND JOB SECURITY SEGREGATION FUTURE OF THE TRADE From nobility to peasants 158

10 Crushing craftsmen Assault on software development What s next? APPENDIX A. TEST CASE APPENDIX B. BIBLIOGRAPHY STANDARDS AND CLASSICS EXTREME TESTING & RELATED OTHER ENDNOTES

Testing. ECE/CS 5780/6780: Embedded System Design. Why is testing so hard? Why do testing?

Testing. ECE/CS 5780/6780: Embedded System Design. Why is testing so hard? Why do testing? Testing ECE/CS 5780/6780: Embedded System Design Scott R. Little Lecture 24: Introduction to Software Testing and Verification What is software testing? Running a program in order to find bugs (faults,

More information

Software Testing. An Overview

Software Testing. An Overview Software Testing An Overview Software Testing Defined Software testing is the process of verifying & validating that a program or application: Meets technical specifications Meets business requirements

More information

1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake

1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake Sample ISTQB examination 1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake 2 Regression testing should

More information

Testing Objectives. Successful testing: discovers previously unknown errors

Testing Objectives. Successful testing: discovers previously unknown errors Testing Objectives Informal view: Testing: a process of executing software with the intent of finding errors Good testing: a high probability of finding as-yetundiscovered errors Successful testing: discovers

More information

Types of Software Testing: Different Testing Types with Details

Types of Software Testing: Different Testing Types with Details Types of Software Testing: Different Testing Types with Details What are the different Types of Software Testing? We, as testers are aware of the various types of Software Testing such as Functional Testing,

More information

Sample Exam Syllabus

Sample Exam Syllabus ISTQB Foundation Level 2011 Syllabus Version 2.9 Release Date: December 16th, 2017. Version.2.9 Page 1 of 46 Dec 16th, 2017 Copyright 2017 (hereinafter called ISTQB ). All rights reserved. The authors

More information

MONIKA HEINER.

MONIKA HEINER. LESSON 1 testing, intro 1 / 25 SOFTWARE TESTING - STATE OF THE ART, METHODS, AND LIMITATIONS MONIKA HEINER monika.heiner@b-tu.de http://www.informatik.tu-cottbus.de PRELIMINARIES testing, intro 2 / 25

More information

Cursul Aprilie

Cursul Aprilie Cursul 10 24 Aprilie Din Cursurile trecute Quality Assurance Test Levels Test Methods Quality Assurance Manual Testing Test Automation Software Bug Non functional software testing Measuring software testing

More information

CSE 403: Software Engineering, Fall courses.cs.washington.edu/courses/cse403/16au/ Unit Testing. Emina Torlak

CSE 403: Software Engineering, Fall courses.cs.washington.edu/courses/cse403/16au/ Unit Testing. Emina Torlak CSE 403: Software Engineering, Fall 2016 courses.cs.washington.edu/courses/cse403/16au/ Unit Testing Emina Torlak emina@cs.washington.edu Outline Software quality control Effective unit testing Coverage

More information

Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins

Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins Software Testing Why Test? Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins https://www.typemock.com/software-bugs-infographic A bug found at design time costs ten times less to fix

More information

Write perfect C code to solve the three problems below.

Write perfect C code to solve the three problems below. Fall 2017 CSCI 4963/6963 Week 12 David Goldschmidt goldschmidt@gmail.com Office: Amos Eaton 115 Office hours: Mon/Thu 1:00-1:50PM; Wed 1:00-2:50PM Write perfect C code to solve the three problems below.

More information

Part I: Preliminaries 24

Part I: Preliminaries 24 Contents Preface......................................... 15 Acknowledgements................................... 22 Part I: Preliminaries 24 1. Basics of Software Testing 25 1.1. Humans, errors, and testing.............................

More information

QUIZ #5 - Solutions (5pts each)

QUIZ #5 - Solutions (5pts each) CS 435 Spring 2014 SOFTWARE ENGINEERING Department of Computer Science Name QUIZ #5 - Solutions (5pts each) 1. The best reason for using Independent software test teams is that a. software developers do

More information

Higher-order Testing. Stuart Anderson. Stuart Anderson Higher-order Testing c 2011

Higher-order Testing. Stuart Anderson. Stuart Anderson Higher-order Testing c 2011 Higher-order Testing Stuart Anderson Defining Higher Order Tests 1 The V-Model V-Model Stages Meyers version of the V-model has a number of stages that relate to distinct testing phases all of which are

More information

Examination Questions Time allowed: 1 hour 15 minutes

Examination Questions Time allowed: 1 hour 15 minutes Swedish Software Testing Board (SSTB) International Software Testing Qualifications Board (ISTQB) Foundation Certificate in Software Testing Practice Exam Examination Questions 2011-10-10 Time allowed:

More information

Quality Assurance: Test Development & Execution. Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation

Quality Assurance: Test Development & Execution. Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation Quality Assurance: Test Development & Execution Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation Introduction: Ian King Manager of Test Development for Windows CE Base OS

More information

Lecture 15 Software Testing

Lecture 15 Software Testing Lecture 15 Software Testing Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics covered

More information

Manuel Oriol, CHCRC-C, Software Testing ABB

Manuel Oriol, CHCRC-C, Software Testing ABB Manuel Oriol, CHCRC-C, 08.11.2017 Software Testing Slide 1 About me 1998 2004 2005 2008 2011 Slide 2 Introduction Why do we test? Did you have to deal with testing in the past? Slide 3 Ariane 5 http://www.youtube.com/watch?v=kyurqduyepi

More information

Bridge Course On Software Testing

Bridge Course On Software Testing G. PULLAIAH COLLEGE OF ENGINEERING AND TECHNOLOGY Accredited by NAAC with A Grade of UGC, Approved by AICTE, New Delhi Permanently Affiliated to JNTUA, Ananthapuramu (Recognized by UGC under 2(f) and 12(B)

More information

Software Testing 2. OOD and Testability. White box vs Black box Testing. Software Testing 2 Semester 1, 2006

Software Testing 2. OOD and Testability. White box vs Black box Testing. Software Testing 2 Semester 1, 2006 Software Testing 2 Jens Dietrich OOD and Testability Component based design and component based unit testing. Design that isolates component that are difficult to test (automatically) (such as user interfaces).

More information

Testing. Prof. Clarkson Fall Today s music: Wrecking Ball by Miley Cyrus

Testing. Prof. Clarkson Fall Today s music: Wrecking Ball by Miley Cyrus Testing Prof. Clarkson Fall 2017 Today s music: Wrecking Ball by Miley Cyrus Review Previously in 3110: Modules Specification (functions, modules) Today: Validation Testing Black box Glass box Randomized

More information

Software Quality Assurance. David Janzen

Software Quality Assurance. David Janzen Software Quality Assurance David Janzen What is quality? Crosby: Conformance to requirements Issues: who establishes requirements? implicit requirements Juran: Fitness for intended use Issues: Who defines

More information

CYSE 411/AIT 681 Secure Software Engineering. Topic #6. Seven Software Security Touchpoints (III) Instructor: Dr. Kun Sun

CYSE 411/AIT 681 Secure Software Engineering. Topic #6. Seven Software Security Touchpoints (III) Instructor: Dr. Kun Sun CYSE 411/AIT 681 Secure Software Engineering Topic #6. Seven Software Security Touchpoints (III) Instructor: Dr. Kun Sun Reading This lecture [McGraw]: Ch. 7-9 2 Seven Touchpoints 1. Code review 2. Architectural

More information

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia Topic: Software Verification, Validation and Testing Software Engineering Faculty of Computing Universiti Teknologi Malaysia 2016 Software Engineering 2 Recap on SDLC Phases & Artefacts Domain Analysis

More information

4. Risk-Based Security Testing. Reading. CYSE 411/AIT 681 Secure Software Engineering. Seven Touchpoints. Application of Touchpoints

4. Risk-Based Security Testing. Reading. CYSE 411/AIT 681 Secure Software Engineering. Seven Touchpoints. Application of Touchpoints Reading This lecture [McGraw]: Ch. 7-9 CYSE 411/AIT 681 Secure Software Engineering Topic #6. Seven Software Security Touchpoints (III) Instructor: Dr. Kun Sun 2 Seven Touchpoints Application of Touchpoints

More information

Chapter 10. Testing and Quality Assurance

Chapter 10. Testing and Quality Assurance Chapter 10 Testing and Quality Assurance Different styles of doing code review Human Reviewer Code Inspection with continuous integration infrastructure Pinger s testing set up Testing Related topics 1.

More information

Basic Training in Software Testing (2 Days)

Basic Training in Software Testing (2 Days) www.peaklearningllc.com Basic Training in Software Testing (2 Days) This is a practical hands-on seminar to cover the critical path of testing. Your instructor will be an experienced practitioner in the

More information

CAPABILITY. Managed testing services. Strong test managers experienced in working with business and technology stakeholders

CAPABILITY. Managed testing services. Strong test managers experienced in working with business and technology stakeholders TESTING SERVICES 1 CAPABILITY Innovative use of open source tools helping early and frequent and reducing license costs Test strategy Managed services Test management Functional Strong test managers experienced

More information

Department of Electrical & Computer Engineering, University of Calgary. B.H. Far

Department of Electrical & Computer Engineering, University of Calgary. B.H. Far SENG 421: Software Metrics Software Test Metrics (Chapter 10) Department of Electrical & Computer Engineering, University of Calgary B.H. Far (far@ucalgary.ca) http://www.enel.ucalgary.ca/people/far/lectures/seng421/10/

More information

Certified Tester Foundation Level(CTFL)

Certified Tester Foundation Level(CTFL) Certified Tester Foundation Level(CTFL) ISTQB : International Software Testing Qualifications Board Heading: The International Software Testing Qualifications Board (ISTQB) is an internationally recognized

More information

Certified Software Quality Engineer Preparation On Demand, Web-Based Course Offered by The Westfall Team

Certified Software Quality Engineer Preparation On Demand, Web-Based Course Offered by The Westfall Team Certified Software Quality Engineer (CSQE) Preparation course is an on demand, web-based course design to be a comprehensive, in-depth review of the topics in the ASQ s Certified Software Quality Engineer

More information

Software Testing MANUAL TESTING. Introduction to Testing. Software Quality Software Testing Definition. Different Life Cycle Models Waterfall Model

Software Testing MANUAL TESTING. Introduction to Testing. Software Quality Software Testing Definition. Different Life Cycle Models Waterfall Model Software Testing MANUAL TESTING Introduction to Testing 1. Brief History of Testing 2. Testing Opportunities 3. Testing Principles Software Quality Software Testing Definition 1. Verification 2. Validation

More information

INTRODUCTION TO SOFTWARE ENGINEERING

INTRODUCTION TO SOFTWARE ENGINEERING INTRODUCTION TO SOFTWARE ENGINEERING Introduction to Software Testing d_sinnig@cs.concordia.ca Department for Computer Science and Software Engineering What is software testing? Software testing consists

More information

Part 5. Verification and Validation

Part 5. Verification and Validation Software Engineering Part 5. Verification and Validation - Verification and Validation - Software Testing Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can use this

More information

Software Testing. Testing: Our Experiences

Software Testing. Testing: Our Experiences Software Testing Testing: Our Experiences Test Case Software to be tested Output 1 Test Case Generation When to Stop? Test Case Software to be tested Verification Output No Enough? Test Coverage Yes A

More information

Software Testing Techniques

Software Testing Techniques Software Testing Techniques Sahil Munjal, Sahil Bhardwaj, Sachin Malik Student, Dronacharya College of Engineering, Khentawas, Farrukhnagar, Gurgaon Abstract Testing a software is a complex issue. This

More information

Ontology Summit 2013: Ontology Evaluation Across the Ontology Lifecyle Track B: Extrinsic Aspects of Ontology Evaluation

Ontology Summit 2013: Ontology Evaluation Across the Ontology Lifecyle Track B: Extrinsic Aspects of Ontology Evaluation Ontology Summit 2013: Ontology Evaluation Across the Ontology Lifecyle Track B: Extrinsic Aspects of Ontology Evaluation Black Box Testing Paradigm in the TCPC #014168-PA Mary Balboni, Doug Toppin, Thanh-Van

More information

Software Development. Software Testing: Verification and Validation. Verification and Validation (V&V) Verification. Validation

Software Development. Software Testing: Verification and Validation. Verification and Validation (V&V) Verification. Validation Software Development Software Testing: Verification and Validation Problem domain Customer Specification Problem statement A set of (docs, use cases) Program code Running System 2 Verification and Validation

More information

Testing Mission Critical Applications MCP UNITE 2012

Testing Mission Critical Applications MCP UNITE 2012 Testing Mission Critical Applications MCP 4011 UNITE 2012 Who is MGS, Inc. Software Engineering, Product Development and Professional Services firm founded in 1986 We solve business problems with: Products,

More information

Manual Testing. Software Development Life Cycle. Verification. Mobile Testing

Manual Testing.  Software Development Life Cycle. Verification. Mobile Testing 10 Weeks (Weekday Batches) or 12 Weekends (Weekend batches) To become a Professional Software Tester To enable the students to become Employable Manual Testing Fundamental of Testing What is software testing?

More information

Security Engineering for Software

Security Engineering for Software Security Engineering for Software CS996 CISM Jia An Chen 03/31/04 Current State of Software Security Fundamental lack of planning for security Most security issues come to light only after completion of

More information

Sample Exam. Certified Tester Foundation Level

Sample Exam. Certified Tester Foundation Level Sample Exam Certified Tester Foundation Level Answer Table ASTQB Created - 2018 American Stware Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made,

More information

Chapter 8 Software Testing. Chapter 8 Software testing

Chapter 8 Software Testing. Chapter 8 Software testing Chapter 8 Software Testing 1 Topics covered Introduction to testing Stages for testing software system are: Development testing Release testing User testing Test-driven development as interleave approach.

More information

Software Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification Techniques

Software Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification Techniques Software Testing in the textbook Software Testing Chapter 8 Introduction (Verification and Validation) 8.1 Development testing 8.2 Test-driven development 8.3 Release testing 8.4 User testing 1 2 Verification

More information

No Source Code. EEC 521: Software Engineering. Specification-Based Testing. Advantages

No Source Code. EEC 521: Software Engineering. Specification-Based Testing. Advantages No Source Code : Software Testing Black-Box Testing Test-Driven Development No access to source code So test cases don t worry about structure Emphasis is only on ensuring that the contract is met Specification-Based

More information

Three General Principles of QA. COMP 4004 Fall Notes Adapted from Dr. A. Williams

Three General Principles of QA. COMP 4004 Fall Notes Adapted from Dr. A. Williams Three General Principles of QA COMP 4004 Fall 2008 Notes Adapted from Dr. A. Williams Software Quality Assurance Lec2 1 Three General Principles of QA Know what you are doing. Know what you should be doing.

More information

113 BSIMM Activities at a Glance

113 BSIMM Activities at a Glance 113 BSIMM Activities at a Glance (Red indicates most observed BSIMM activity in that practice) Level 1 Activities Governance Strategy & Metrics (SM) Publish process (roles, responsibilities, plan), evolve

More information

Chapter 9. Software Testing

Chapter 9. Software Testing Chapter 9. Software Testing Table of Contents Objectives... 1 Introduction to software testing... 1 The testers... 2 The developers... 2 An independent testing team... 2 The customer... 2 Principles of

More information

Black Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing

Black Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing Black Box Testing EEC 521: Software Engineering Software Testing Black-Box Testing Test-Driven Development Also known as specification-based testing Tester has access only to running code and the specification

More information

Software Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification and Validation: Goals

Software Testing. Software Testing. in the textbook. Chapter 8. Verification and Validation. Verification and Validation: Goals Software Testing in the textbook Software Testing Chapter 8 Introduction (Verification and Validation) 8.1 Development testing 8.2 Test-driven development 8.3 Release testing 8.4 User testing 1 2 Verification

More information

18-642: Testing Overview

18-642: Testing Overview 18-642: Testing Overview 9/25/2017 "In September of 1962, a news item was released stating that an $18 million rocket had been destroyed in early flight because "a single hyphen was left out of an instruction

More information

Verification, Testing, and Bugs

Verification, Testing, and Bugs Verification, Testing, and Bugs Ariane 5 Rocket First Launch Failure https://www.youtube.com/watch?v=gp_d8r- 2hwk So What Happened? The sequence of events that led to the destruction of the Ariane 5 was

More information

Learning outcomes. Systems Engineering. Debugging Process. Debugging Process. Review

Learning outcomes. Systems Engineering. Debugging Process. Debugging Process. Review Systems Engineering Lecture 9 System Verification II Dr. Joanna Bryson Dr. Leon Watts University of Bath Department of Computer Science 1 Learning outcomes After both lectures and doing the reading, you

More information

Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement

Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement Tian: Software Quality Engineering Slide (Ch.12) 1 Software Quality Engineering: Testing, Quality Assurance, and Quantifiable Improvement Jeff Tian, tian@engr.smu.edu www.engr.smu.edu/ tian/sqebook Chapter

More information

Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering. Sixth Semester

Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering. Sixth Semester Govt. of Karnataka, Department of Technical Education Diploma in Information Science & Engineering Sixth Semester Subject: Software Testing Contact Hrs / week: 4 Total hrs: 64 Table of Contents SN Chapter

More information

Software Quality. Richard Harris

Software Quality. Richard Harris Software Quality Richard Harris Part 1 Software Quality 143.465 Software Quality 2 Presentation Outline Defining Software Quality Improving source code quality More on reliability Software testing Software

More information

Diploma in Software Testing (DST)

Diploma in Software Testing (DST) SEED Infotech Ltd. : ' Panchasheel', 42/16, Erandawana`, SEED Infotech Lane, Off Karve Road Pune - 411004. India www.seedinfotech.com Course Name : Duration : Class room: 114 Hrs Product Code : ST-ST-50001

More information

It is primarily checking of the code and/or manually reviewing the code or document to find errors This type of testing can be used by the developer

It is primarily checking of the code and/or manually reviewing the code or document to find errors This type of testing can be used by the developer Static testing Static testing is a software testing method that involves examination of the program's code and its associated documentation but does not require the program be executed. Dynamic testing,

More information

Test Oracles and Mutation Testing. CSCE Lecture 23-11/18/2015

Test Oracles and Mutation Testing. CSCE Lecture 23-11/18/2015 Test Oracles and Mutation Testing CSCE 740 - Lecture 23-11/18/2015 Software Testing - Back to the Basics Tests are sequences of stimuli and observations. We care about input and output. (I 1 O 1 ) (I 2

More information

csc444h:& so(ware&engineering&i&

csc444h:& so(ware&engineering&i& csc444h:& so(ware&engineering&i& tes2ng& matt medland matt@cs.utoronto.ca http://www.cs.utoronto.ca/~matt/csc444 top410& so(ware&quality&assurance& infrastructure defect/feature tracking source code including

More information

Software Testing. Hans-Petter Halvorsen, M.Sc.

Software Testing. Hans-Petter Halvorsen, M.Sc. Software Testing Hans-Petter Halvorsen, M.Sc. STD System Documentation Testing Software Test Documentation Software Test Plan (STP) Test Documentation End-User Documentation Implementation Code System

More information

Taking White Hats to the Laundry: How to Strengthen Testing in Common Criteria

Taking White Hats to the Laundry: How to Strengthen Testing in Common Criteria Taking White Hats to the Laundry: How to Strengthen Testing in Common Criteria Apostol Vassilev, Principal Consultant September 23,2009. Product Testing in Common Criteria Product Testing in Common Criteria

More information

How to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect

How to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect How to Harvest Reusable Components in Existing Software Nikolai Mansurov Chief Scientist & Architect Overview Introduction Reuse, Architecture and MDA Option Analysis for Reengineering (OAR) Architecture

More information

ViGo Architecture and Principles. Mobile Voice Biometrics as-a-service

ViGo Architecture and Principles. Mobile Voice Biometrics as-a-service ViGo Architecture and Principles Mobile Voice Biometrics as-a-service Part number: VV/VIGO/DOC/183/C Copyright 2015 VoiceVault Inc. All rights reserved. This document may not be copied, reproduced, transmitted

More information

Comparison Study of Software Testing Methods and Levels- A Review

Comparison Study of Software Testing Methods and Levels- A Review Comparison Study of Software Testing Methods and Levels- A Review Deepti Kapila Grover M.Tech, Dept. of Computer Science, Assistant professor in LCET, Katani Kalan, India ABSTRACT: Software is an activity

More information

Dataworks Development, Inc. P.O. Box 174 Mountlake Terrace, WA (425) fax (425)

Dataworks Development, Inc. P.O. Box 174 Mountlake Terrace, WA (425) fax (425) Dataworks Development, Inc. P.O. Box 174 Mountlake Terrace, WA 98043 (425) 673-1974 fax (425) 673-2506 The Freezerworks Validation Verification Package Dataworks Development, Inc. has over 20 years of

More information

Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation

Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation Computer Science and Software Engineering University of Wisconsin - Platteville 9-Software Testing, Verification and Validation Yan Shi SE 2730 Lecture Notes Verification and Validation Verification: Are

More information

FPGA Verification How to improve verification without throwing everything away

FPGA Verification How to improve verification without throwing everything away Test and Verification Solutions Experts in Verification FPGA Verification How to improve verification without throwing everything away Mike Bartley, TVS 1 Agenda Have you concerns with your current verification

More information

Testing! Prof. Leon Osterweil! CS 520/620! Spring 2013!

Testing! Prof. Leon Osterweil! CS 520/620! Spring 2013! Testing Prof. Leon Osterweil CS 520/620 Spring 2013 Relations and Analysis A software product consists of A collection of (types of) artifacts Related to each other by myriad Relations The relations are

More information

a. The following method would allow an object of the static type List<String> to be passed to it as an argument.

a. The following method would allow an object of the static type List<String> to be passed to it as an argument. On the final exam you will be provided UML diagrams for design patterns (as in the midterm) and also JavaDoc description of methods in the Reflection API. 1. True/False (if false, explain why) a. The following

More information

Verification & Validation of Open Source

Verification & Validation of Open Source Verification & Validation of Open Source 2011 WORKSHOP ON SPACECRAFT FLIGHT SOFTWARE Gordon Uchenick Coverity, Inc Open Source is Ubiquitous Most commercial and proprietary software systems have some open

More information

Testing. Topics. Types of Testing. Types of Testing

Testing. Topics. Types of Testing. Types of Testing Topics 1) What are common types of testing? a) Testing like a user: through the UI. b) Testing like a dev: through the code. 2) What makes a good bug report? 3) How can we write code to test code (via

More information

Development. Architecture QA. Operations

Development. Architecture QA. Operations Development Architecture QA Operations Lack of business agility Slow to onboard new customers Hard to practice true DevOps Outpaced by disruptors Rogue dev projects Lack of SecOps agility Slow threat assessments

More information

Darshan Institute of Engineering & Technology for Diploma Studies

Darshan Institute of Engineering & Technology for Diploma Studies CODING Good software development organizations normally require their programmers to follow some welldefined and standard style of coding called coding standards. Most software development organizations

More information

Objectives. Chapter 19. Verification vs. validation. Topics covered. Static and dynamic verification. The V&V process

Objectives. Chapter 19. Verification vs. validation. Topics covered. Static and dynamic verification. The V&V process Objectives Chapter 19 Verification and Validation Assuring that a software system meets a user s need are to introduce software verification and validation (V&V) and to discuss the distinction between

More information

Chapter 11, Testing. Using UML, Patterns, and Java. Object-Oriented Software Engineering

Chapter 11, Testing. Using UML, Patterns, and Java. Object-Oriented Software Engineering Chapter 11, Testing Using UML, Patterns, and Java Object-Oriented Software Engineering Outline Terminology Types of errors Dealing with errors Quality assurance vs Testing Component Testing! Unit testing!

More information

Sample Exam. Advanced Test Automation Engineer

Sample Exam. Advanced Test Automation Engineer Sample Exam Advanced Test Automation Engineer Answer Table ASTQB Created - 08 American Stware Testing Qualifications Board Copyright Notice This document may be copied in its entirety, or extracts made,

More information

Diploma in Software Testing 2.0 (HP)

Diploma in Software Testing 2.0 (HP) SEED Infotech Ltd. : ' Panchasheel', 42/16, Erandawana`, SEED Infotech Lane, Off Karve Road Pune - 411004. India www.seedinfotech.com Course Name : Duration : Class room: 108 Hrs. Diploma in Software Testing

More information

Sample Question Paper. Software Testing (ETIT 414)

Sample Question Paper. Software Testing (ETIT 414) Sample Question Paper Software Testing (ETIT 414) Q 1 i) What is functional testing? This type of testing ignores the internal parts and focus on the output is as per requirement or not. Black-box type

More information

10. Software Testing Fundamental Concepts

10. Software Testing Fundamental Concepts 10. Software Testing Fundamental Concepts Department of Computer Science and Engineering Hanyang University ERICA Campus 1 st Semester 2016 Testing in Object-Oriented Point of View Error Correction Cost

More information

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification vs validation Verification: "Are we building the product right?. The software should

More information

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.

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. i About the Tutorial 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. Testing is executing a system in order

More information

lecture'7:' quality'assurance'

lecture'7:' quality'assurance' so1ware'quality'assurance' lecture'7:' quality'assurance' csc444h fall 2014 humans are fallible infeasible)to)completely)fix)the)humans) need)to)double)and)triple)check)their)work)to)find) the)problems)

More information

Software Testing CS 408

Software Testing CS 408 Software Testing CS 408 1/09/18 Course Webpage: http://www.cs.purdue.edu/homes/suresh/408-spring2018 1 The Course Understand testing in the context of an Agile software development methodology - Detail

More information

Simple Overflow. #include <stdio.h> int main(void){ unsigned int num = 0xffffffff;

Simple Overflow. #include <stdio.h> int main(void){ unsigned int num = 0xffffffff; Simple Overflow 1 #include int main(void){ unsigned int num = 0xffffffff; printf("num is %d bits long\n", sizeof(num) * 8); printf("num = 0x%x\n", num); printf("num + 1 = 0x%x\n", num + 1); }

More information

Sample Exam ISTQB Advanced Test Analyst Answer Rationale. Prepared By

Sample Exam ISTQB Advanced Test Analyst Answer Rationale. Prepared By Sample Exam ISTQB Advanced Test Analyst Answer Rationale Prepared By Released March 2016 TTA-1.3.1 (K2) Summarize the generic risk factors that the Technical Test Analyst typically needs to consider #1

More information

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

PASS4TEST. IT Certification Guaranteed, The Easy Way!  We offer free update service for one year PASS4TEST \ We offer free update service for one year Exam : ISEB-SWT2 Title : ISTQB-ISEB Certified Tester Foundation Level Vendor : ISEB Version : DEMO Get Latest & Valid ISEB-SWT2 Exam's Question and

More information

Automatically Finding Patches Using Genetic Programming. Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest

Automatically Finding Patches Using Genetic Programming. Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest Automatically Finding Patches Using Genetic Programming Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest Motivation Software Quality remains a key problem Over one half of 1 percent of

More information

Preview from Notesale.co.uk Page 4 of 186

Preview from Notesale.co.uk Page 4 of 186 Basic of software Software:- Set of programs to perform a specific task for the user is known as Software. Computer software, or simply software, also known as computer programs, is the Or non-tangible

More information

Oracle Developer Studio Code Analyzer

Oracle Developer Studio Code Analyzer Oracle Developer Studio Code Analyzer The Oracle Developer Studio Code Analyzer ensures application reliability and security by detecting application vulnerabilities, including memory leaks and memory

More information

Module 1 : Fundamentals of Testing. Section 1: Manual Testing

Module 1 : Fundamentals of Testing. Section 1: Manual Testing Section 1: Manual Testing Module 1 : Fundamentals of Testing Why is testing necessary? What is testing? Economics of Testing Black Box Testing White Box Testing Software Testing Principles Fundamental

More information

Basics of Software Testing-I UNIT I Software Testing. Software is used in many applications of the real world. Some of the examples are

Basics of Software Testing-I UNIT I Software Testing. Software is used in many applications of the real world. Some of the examples are SOFTWARE TESTING Basics of Software Testing-I In this chapter, we discuss the following topics: 1. Introduction to Software Testing 2. Understanding Error, Fault and Failure 3. Software Quality Attributes

More information

The testing process. Component testing. System testing

The testing process. Component testing. System testing Software testing 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 system

More information

Ready to Automate? Ready to Automate?

Ready to Automate? Ready to Automate? Bret Pettichord bret@pettichord.com www.pettichord.com 1 2 1 2. Testers aren t trying to use automation to prove their prowess. 3 Monitoring and Logging Diagnostic features can allow you to View history

More information

Administrivia. ECE/CS 5780/6780: Embedded System Design. Acknowledgements. What is verification?

Administrivia. ECE/CS 5780/6780: Embedded System Design. Acknowledgements. What is verification? Administrivia ECE/CS 5780/6780: Embedded System Design Scott R. Little Lab 8 status report. Set SCIBD = 52; (The Mclk rate is 16 MHz.) Lecture 18: Introduction to Hardware Verification Scott R. Little

More information

Software Design Models, Tools & Processes. Lecture 6: Transition Phase Cecilia Mascolo

Software Design Models, Tools & Processes. Lecture 6: Transition Phase Cecilia Mascolo Software Design Models, Tools & Processes Lecture 6: Transition Phase Cecilia Mascolo UML Component diagram Component documentation Your own classes should be documented the same way library classes are.

More information

Shift Left and Friends And What They Mean for Testers

Shift Left and Friends And What They Mean for Testers And What They Mean for Testers Replica of the shift left persuasion device (i.e., 2x4) used by a test manager colleague in 1990s Introduction All the IT world is abuzz with the latest buzz words Shift

More information

WHITE PAPER. 10 Reasons to Use Static Analysis for Embedded Software Development

WHITE PAPER. 10 Reasons to Use Static Analysis for Embedded Software Development WHITE PAPER 10 Reasons to Use Static Analysis for Embedded Software Development Overview Software is in everything. And in many embedded systems like flight control, medical devices, and powertrains, quality

More information

Budapest, October 2016 FUZZ TESTING ITS. Presented by Jürgen Großmann and Dorian Knoblauch. All rights reserved

Budapest, October 2016 FUZZ TESTING ITS. Presented by Jürgen Großmann and Dorian Knoblauch. All rights reserved Budapest, 26-28 October 2016 FUZZ TESTING ITS Presented by Jürgen Großmann and Dorian Knoblauch All rights reserved OVERVIEW AND GENERAL CONSIDERATIONS Why should Fuzz Testing be applied to ITS? All rights

More information

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6403 SOFTWARE ENGINEERING II year/ IV sem CSE (Regulation 2013) UNIT 1- SOFTWARE PROCESS AND PROJECT

More information