Big Bang Approach No testing of Individual Units Advantages Cost can be saved No stubs/Drivers Very fast Disadvantages Hard to debug Location of defect.

Slides:



Advertisements
Similar presentations
Object Oriented Analysis And Design-IT0207 iiI Semester
Advertisements

Lecture 8: Testing, Verification and Validation
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
System Integration Verification and Validation
Software Testing By Marcin Starzomski :P. What is Testing ? Testing is a process used to help identify the correctness, completeness and quality of developed.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Integration testing Satish Mishra
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Execution and Reporting Adrian Marshall.
Illinois Institute of Technology
SE 555 Software Requirements & Specification Requirements Validation.
Validating and Improving Test-Case Effectiveness Author: Yuri Chernak Presenter: Lam, Man Tat.
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 10: Testing and Inspecting to Ensure High Quality Part 3:
Software Testing Levels Philippe CHARMAN Last update:
Software Testing & Strategies
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
Project Management Framework. PMBOK ® Guide, Third Edition.
Bite sized training sessions: Fundamentals of Business Analysis.
Introduction to Computer Technology
BY: GARIMA GUPTA MCA FINAL YEAR WHAT IS SOFTWARE TESTING ? SOFTWARE TESTING IS THE PROCESS OF EXECUTING PROGRAMS OR SYSTEM WITH THE INTENT.
ECE 355: Software Engineering
Extreme Programming Software Development Written by Sanjay Kumar.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
INT-Evry (Masters IT– Soft Eng)IntegrationTesting.1 (OO) Integration Testing What: Integration testing is a phase of software testing in which.
 CS 5380 Software Engineering Chapter 8 Testing.
How To Build a Testing Project 1 Onyx Gabriel Rodriguez.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
Chapter 8 Lecture 1 Software Testing. Program testing Testing is intended to show that a program does what it is intended to do and to discover program.
Software Testing Process By: M. Muzaffar Hameed.
Software Engineering Lecture # 1.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
CSC 480 Software Engineering Test Planning. Test Cases and Test Plans A test case is an explicit set of instructions designed to detect a particular class.
1 Software Testing Strategies: Approaches, Issues, Testing Tools.
What is a level of test?  Defined by a given Environment  Environment is a collection of people, hard ware, software, interfaces, data etc.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
This chapter is extracted from Sommerville’s slides. Textbook chapter 22 1 Chapter 8 Validation and Verification 1.
Integration testing After different modules of a system have been coded and unit tested: –modules are integrated in steps according to an integration plan.
Chapter 8 Testing the Programs. Integration Testing  Combine individual comp., into a working s/m.  Test strategy gives why & how comp., are combined.
Manual Testing Concepts Instructor: Surender. Agenda  Content: 1. Testing Overview I. What is testing II. Who does testing III. When to Start Testing.
SOFTWARE TESTING. SOFTWARE Software is not the collection of programs but also all associated documentation and configuration data which is need to make.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Testing throughout Lifecycle Ljudmilla Karu. Verification and validation (V&V) Verification is defined as the process of evaluating a system or component.
Certified Software Tester How To Build a Testing Project, Part 1.
Software Testing Strategies for building test group
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Engineering (CSI 321)
Rekayasa Perangkat Lunak Part-13
TESTING TOOLS MANUAL APPROACH BY J.ADI SESHU.
Software Testing Testing process, Design of test cases.
Verification and Testing
Software Development Life Cycle
Prepared By: Asst. Prof. Garima Pathak
Lecture 09:Software Testing
Higher-Level Testing and Integration Testing
Software Engineering Lecture #14.
Chapter 10 – Software Testing
Baisc Of Software Testing
Chapter 11: Integration- and System Testing
Chapter 11: Integration and System Testing
SDLC (Software Development Life Cycle)
Software Testing Strategies
Presentation transcript:

Big Bang Approach No testing of Individual Units Advantages Cost can be saved No stubs/Drivers Very fast Disadvantages Hard to debug Location of defect may not be found easily Interface faults may not be distinguishable Testers use only few test cases

Sandwich Testing It combines bottom up and top down testing approach. A B C D G F E Layer I Layer II Layer III

Process of sandwich testing – Bottom up starts from middle and goes upwards – Top down starts from middle and goes downwards – Big bang in the middle layer Advantages – very large projects use this – Needs more resource and big team Disadvantages – High cost of testing – Cannot be used for small systems with huge interdependence

Critical path First In this one must define the critical path which represents the main function of a system(p1) This must be covered first in testing This is used where complete system testing is impossible and systems are so large. Subsystem testing Subsystem testing involves collection of units, submodules and modules which have been integrated to form subsystem

System testing System testing represents the final testing done on a system before it is delivered to the customer This testing goes through the following stages – Functional Testing: Finds whether all functions as per requirements are working or not – User Interface Testing: This involves colors, navigations, spellings and fonts.

Testing Stages Unit Testing Module Testing Subsystem Testing System Testing Acceptance Testing

Acceptance Testing is normally considered as the final stage of testing of an application. It validates – User needs are achieved – System performance meets the expectation of customer – Formal testing to determine whether the application satisfies the acceptance criteria

Acceptance Testing Characteristics – Final opportunity for buyer to examine the software w.r.t expectations – It is conducted in production environment – Incremental process of acceptance or rejection – Formal final acceptance – Test to determine whether developed system meets predefined criteria of acceptance Acceptance Testing Criteria This defines the criteria for acceptance or rejection of software. Rejection of good software – not qualified with the acceptance criteria and vice versa may also happen

Risk of Buyer: Risk faced by the buyer when he has to accept a bad product as it satisfies the acceptance criteria Risk to the seller: Risk faced by seller when Rejection of good software happens when it is not qualified with the acceptance criteria Importance of Acceptance Criteria It gives the information to customer about the expectation for the new system being developed. Refers to confidence level. Cost of acceptance has direct relationship with importance of a system.

Some famous Acceptance Criteria Hours of testing approach The application under acceptance is tested for certain time Number of test cases approach Customer define the test cases along with the test data to be executed as a part of acceptance testing Defect Density Approach function of processes used for developing and testing the product.

Probability Severity P1P2P3 S10510 S S Defect Density as per P-S matrix approach Allowable level of defects approach Total number of defects allowed or as per P-S matrix for number of defects allowed in each quadrant

Defect finding rate approach Coverage based acceptance criteria approach IterationDefect found per person day I(100 person days)5 II(100 person days)1 III(100 person days)0.2 IV(100 person days)0.05 V(100 person days)0.02 RequirementsCoverage P195% P250% P325%

Life cycle acceptance approach Each phase of a development life cycle gets formally accepted and approved by the customer before going to next phase. Thus, application is build right from the first step.

Alpha Testing Done by the customer at the developer site. Sometimes test data is provided by the customer while at other times data may be generated by mutually agreed techniques. Advantages: – Helps in training the key users – Fast way of getting approval from customer – Major changes about requirements can be initiated at this point – Improves the confidence that system can be delivered and used in production environment

Disadvantages – Data provided by the customer may not be the actual data – Lab experiments may not represent the real life environment – Key users may not be the real users and they do not address the key issues.

Beta Testing Done at user site with user environment by key users It affects the user environment directly Advantages – Gap between actual work environment – Training which is given during alpha testing may not be sufficient. – Ensures that application works in the real environment with live data Disadvantages – Actual users are not trained – Implied requirements may not be covered

Gamma Testing For the product to be launched in the market Product developed is given to the target users to receive the feedback. Success of gamma testing is to get users view about the new product. Advantages Helps in identifying the gap between market – research analyst Training required for users may be identified here Ensures that application works in the real environment with live data

Disadvantages – Actual users are not trained – Implied requirements may not be covered