CSE 8314 - SW Metrics and Quality Engineering Copyright © 1995-2001, Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 1 SMU CSE 8314 /

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Testing and Quality Assurance
SOFTWARE TESTING. INTRODUCTION  Software Testing is the process of executing a program or system with the intent of finding errors.  It involves any.
Software Quality Assurance Plan
Testing Without Executing the Code Pavlina Koleva Junior QA Engineer WinCore Telerik QA Academy Telerik QA Academy.
1 Static Testing: defect prevention SIM objectives Able to list various type of structured group examinations (manual checking) Able to statically.
Testing an individual module
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
SOFTWARE QUALITY ASSURANCE Maltepe University Faculty of Engineering SE 410.
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
What Exactly are the Techniques of Software Verification and Validation A Storehouse of Vast Knowledge on Software Testing.
Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether.
Categories of Testing.
CPIS 357 Software Quality & Testing
CMSC 345 Fall 2000 Unit Testing. The testing process.
Software Testing.
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
Chapter 6: Testing Overview Basic idea of testing - execute software and observe its behavior or outcome. If failure is observed, analyze execution record.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Software Reviews & testing Software Reviews & testing An Overview.
Testing Workflow In the Unified Process and Agile/Scrum processes.
CSE SW Project Management / Module 31 - Software Configuration Management Principles Copyright © , Dennis J. Frailey, All Rights Reserved.
Unit Testing 101 Black Box v. White Box. Definition of V&V Verification - is the product correct Validation - is it the correct product.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M10 8/20/2001Slide 1 SMU CSE 8314 /
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Engineering Saeed Akhtar The University of Lahore.
CSE SW Measurement and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M15 version 5.09Slide 1 SMU CSE.
Software Testing. System/Software Testing Error detection and removal determine level of reliability well-planned procedure - Test Cases done by independent.
SOFTWARE TESTING. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves any activity.
CSE SW Project Management / Module 10 - WBS Construction Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M10 Slide 1 January.
Software Testing Mehwish Shafiq. Testing Testing is carried out to validate and verify the piece developed in order to give user a confidence to use reliable.
Software Quality Assurance and Testing Fazal Rehman Shamil.
CSE SW Measurement and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M31 version 5.09Slide 1 SMU CSE.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M29 8/20/2001Slide 1 SMU CSE 8314 /
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M13 8/20/2001Slide 1 SMU CSE 8314 /
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
Copyright , Dennis J. Frailey CSE Software Measurement and Quality Engineering CSE8314 M00 - Version 7.09 SMU CSE 8314 Software Measurement.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M18 8/20/2001Slide 1 SMU CSE 8314 /
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Software Engineering Lecture 8: Quality Assurance.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M12 8/20/2001Slide 1 SMU CSE 8314 /
CSE SW Project Management / Module 14 - Size Estimating Notes and Reuse Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M14.
CSE SW Project Management / Module 34 - Software Quality Assurance Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M34 Slide.
OBJECT-ORIENTED TESTING. TESTING OOA AND OOD MODELS Analysis and design models cannot be tested in the conventional sense. However, formal technical reviews.
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M11 8/20/2001Slide 1 SMU CSE 8314 /
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M02 8/20/2001Slide 1 SMU CSE 8314 /
CSE SW Measurement and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M11 version 5.09Slide 1 SMU CSE.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Copyright , Dennis J. Frailey CSE Software Measurement and Quality Engineering CSE8314 M35 - Version 7.09 SMU CSE 8314 Software Measurement.
CSE SW Project Management / Module 33 - Software Quality Control Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M33 Slide.
CX Introduction to Web Programming Testing.
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Software Testing.
Software Testing.
IT6004 – SOFTWARE TESTING.
Introduction to Software Testing
Software Testing (Lecture 11-a)
Lecture 09:Software Testing
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Software Verification and Validation
Software Verification and Validation
Software Verification and Validation
Presented by KARRI GOVINDA RAO ,
Presentation transcript:

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 1 SMU CSE 8314 / NTU SE 762-N Software Metrics and Quality Engineering Module 37 Testing and Metrics

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 2 Outline Testing Testing Metrics

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 3 What is Testing? I.e., executing the software under conditions similar to actual operation Testing is Finding Defects by Exercising the Software

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 4 Testing for Defect Detection Testing is one of the principal methods of defect detection Testing is actually performed at every stage of software development if modern software engineering methods are used Each stage also involves planning and preparation for tests to be performed later

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 5 Why Do Testing? To demonstrate product features? – This is not the purpose of testing. This is for demos To show that there are no errors? – This is impossible To show that errors are unlikely? – Reasonable, if testing is done properly … continued

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 6 Why Do Testing? (continued) To show that the software works correctly? – OK, under test conditions only, if testing is done properly To find errors? – Should be the main objective

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 7 Standard Terms for Software Decomposition System - a functioning device of which software is a part. – Examples: an airplane; a personal computer; a payroll system; a financial system Product - an individual software element that is developed, tested, and sold separately – Examples: a radar controller; a spreadsheet program; perhaps a payroll system or part of one

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 8 Standard Terms for Software Decomposition (continued) Component - a part of a product that can be specified and tested independently – Example: an input/output package; a data analysis program; an object or class Module or Unit - the smallest element that can be tested independently – Example: a subroutine; a lowest level object

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 9 Standard Terms 1 for Software Decomposition -- Pictorial Personal Computer System UnitPeripheralsMonitorSoftware Data Base Word Processor Operating System I/O Pkg Spell Check Subroutine System: Sub- Systems: Products : Components : Modules: 1 Note that these are arbitrary terms

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 10 Tying the Process Stages to the Product Terminology - Page 1 System Architecting and System Design produce the following: – Specification of system requirements – Identification of subsystems and products – Allocation of specifications (requirements) to different subsystems and products Software Requirements Analysis produces: – Specification of the software requirements for each product

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 11 Tying the Process Stages to the Product Terminology - Page 2 Software Design produces: – Identification of the software components and interfaces – Allocation of software specifications/requirements to components – Identification of the sub-components and modules – Allocation of specifications/requirements to modules

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 12 Tying the Process Stages to the Product Terminology - Page 3 Code and Unit Test produces: – Code for modules – Test code for modules – (Unit) tests performed on modules Software Product Integration and Test produces: – Test code for components and product – (Integration) tests performed on modules and product

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 13 Tying the Process Stages to the Product Terminology - Page 4 System Integration and Test produces: – Integration of software and hardware products – Test sets and/or code for the system or subsystems – (System integration) tests performed on subsystems and on the overall system

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 14 “Testing” at Requirements Stage of Software Development Requirements Simulations and Analyses Analyze Requirements Construct Requirements Model Specify Requirements Simulate Requirements Model inconsistencies, errors, etc. inconsistencies incompleteness etc. To Design Stage Requirements Specification Test Requirements

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 15 “Testing” at Design Stage of Software Development Design Simulations and Analyses Synthesize Design Construct Design Model Specify Design Simulate and/or Compile the Design Model inconsistencies, errors, etc. inconsistencies incompleteness performance problems To Coding Stage Design Specification Test Cases

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 16 Implementation (Code and Unit Test) Develop Code To Integration Stage Develop Test Code & Procedures Test Cases (Sample Inputs & Expected Outputs) code test code & procedures Peer Reviews (walkthroughs or inspections) Perform Unit Tests errors inconsistencies incompleteness performance problems

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 17 Integration & System Test Module 1 Module 2 Module 3 Module 4 Module 5 Integrate and Test (*) (*) Test is similar to unit test... To further integration and test steps integrated component integrated component Test Cases Test Code

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 18 Different Testing at Each Stage We have seen that the nature of testing differs at each stage But there is another dimension that relates to the specific focus of testing at each stage At each stage we test different things This can be seen from the V diagram (next slide)

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 19 The V Diagram View of Testing System Analysis SW Rqmts Analysis Hi Level SW Design Detailed SW Design Rqmts Allocation Coding Unit Test Component Integ. &Test Product Integ. &Test Sub-Syst. Integ. &Test System Int. &Test Unit Test Cases (White Box) Component Level Test Cases (White Box) Product Level Test Cases (Black Box) System Level Test Cases Sub-System Level Test Cases

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 20 Kinds of Tests White Box Tests (Glass Box Tests) – These focus on testing correct structure and design of the software – Weak on assuring that requirements are met Black Box Tests – Focus on testing the functionality of the software relative to its requirements – Weak on assuring that structure is correct Undefined variables Initialization errors alternative ways to implement the design

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 21 Ticking Box Tests These kinds of tests result from such things as: – Poor test planning – Inadequate time or resources for testing – Testing to prove it works rather than to find defects Tests that explode when you least want them to

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 22 Testing Metrics A number of things can be measured about tests These are mostly process metrics

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 23 Testing Metrics - Conformance You can measure the conformance of all test plans, test cases, etc. to standards or conventions This helps you determine whether they have a high probability of being effective, complete, etc. This is similar to the way you might measure code complexity or other attributes

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 24 Testing Metrics - Effectiveness You can measure test results (what percentage of tests find errors; what percentage fail to find errors that later show up) This can help you improve the effectiveness of your testing methods and techniques

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 25 Testing Metrics - Execution You can measure whether tests are actually run / run properly These enable you to manage and control the process and the quality of the product

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 26 In Summary Effective testing is a comprehensive activity that involves all phases of the process Many things can be measured to help improve the effectiveness of a test approach

CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M37 8/20/2001Slide 27 END OF MODULE 37