Integration and System Testing CSSE 376, Software Quality Assurance Rose-Hulman Institute of Technology March 29, 2007.

Slides:



Advertisements
Similar presentations
1 Integration Testing CS 4311 I. Burnstein. Practical Software Testing, Springer-Verlag, 2003.
Advertisements

Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 11: Integration- and System Testing.
Chapter 29: Integration Jacob Harper. The Integration Approach The order of adding components to a system is crucial Benefits to careful integration –
The Comparison of the Software Cost Estimating Methods
Integration testing Satish Mishra
Unit 241 Integration Phase  The objective of this section is to introduce how the software product is realized from a set of programs, program units or.
Software Testing and Quality Assurance
PVK-HT061 Contents Introduction Requirements Engineering Project Management Software Design Detailed Design and Coding Quality Assurance Maintenance.
1 Software Testing and Quality Assurance Lecture 30 - Introduction to Software Testing.
Integration Testing Presented By Nesreen Ahmad. *Main Points:-  Definition Of Integration Testing.  Procedure Of Integration Testing.  Integration.
Illinois Institute of Technology
INTEGRATION TESTING ● After or during Unit Testing ● Putting modules together in a controlled way to incrementally build up the final system. ● Start with.
Software Testing Name: Madam Currie Course: Swen5431 Semester: Summer 2K.
Program unit A Program unit B Program unit T Function 1 Function 2 Function Component 1 Whole System (e.g. regression testing) Component 3....
Software Testing Levels Philippe CHARMAN Last update:
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 11: Integration- and System Testing.
Software Testing & Strategies
Software Testing Introduction. Agenda Software Testing Definition Software Testing Objectives Software Testing Strategies Software Test Classifications.
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
SOFTWARE QUALITY ASSURANCE Maltepe University Faculty of Engineering SE 410.
Software System Integration
BY RAJESWARI S SOFTWARE TESTING. INTRODUCTION Software testing is the process of testing the software product. Effective software testing will contribute.
©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 22Slide 1 Verification and Validation u Assuring that a software system meets a user's.
CCSB223/SAD/CHAPTER141 Chapter 14 Implementing and Maintaining the System.
ECE 355: Software Engineering
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
PHASE 4 SYSTEMS IMPLEMENTATION Application Development SYSTEMS ANALYSIS & DESIGN.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Integration testing l Tests complete systems or subsystems composed of integrated.
Overview Integration Testing Decomposition Based Integration
Implementation & Integration Phase Implementation, then integration: Implementation, then integration:  Each module is implemented by member of programmer.
SOFTWARE TESTING STRATEGIES CIS518001VA : ADVANCED SOFTWARE ENGINEERING TERM PAPER.
Different Levels of Testing
Introduction Optimizing Application Performance with Pinpoint Accuracy What every IT Executive, Administrator & Developer Needs to Know.
Software Testing.
RUP Implementation and Testing
Prof. Mohamed Batouche Software Testing.
INT-Evry (Masters IT– Soft Eng)IntegrationTesting.1 (OO) Integration Testing What: Integration testing is a phase of software testing in which.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Implementation 1. Software Implementation – transforming design into code Requirements Analysis Software Design Implementation Testing Deployment Evolution.
1 Integration Testing CS 4311 I. Burnstein. Practical Software Testing, Springer-Verlag, 2003.
Chapter 2: Testing in Software Life Cycle MNN1063 System Testing and Evaluation.
Chapter 7 Implementation. Implementation Approaches F Big bang –Code entire system and test in an unstructured manner F Top-down –Start by implementing.
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.
ISBN Prentice-Hall, 2006 Chapter 8 Testing the Programs Copyright 2006 Pearson/Prentice Hall. All rights reserved.
Integration testing Integrate two or more module.i.e. communicate between the modules. Follow a white box testing (Testing the code)
Integration Testing Beyond unit testing. 2 Testing in the V-Model Requirements Detailed Design Module implementation Unit test Integration test System.
CS451 Software Implementation and Integration Yugi Lee STB #555 (816) Note: This lecture was designed.
What is a level of test?  Defined by a given Environment  Environment is a collection of people, hard ware, software, interfaces, data etc.
Dillon: CSE470: SYSTEM INTEGRATION 1 Build Plan l Development or integration strategies l Decide the order in which components of the system will be developed.
1 Software Testing & Quality Assurance Lecture 15 Created by: Paulo Alencar Modified by: Frank Xu.
Integrating the Code during the Development Alexander Vakrilov Telerik Corporation
Integration testing After different modules of a system have been coded and unit tested: –modules are integrated in steps according to an integration plan.
CS 325: Software Engineering February 16, 2016 Designing a Design Class Diagram Design Class Diagrams DCD: Restaurant Example DCD: ATM Example Software.
Chapter 8 Testing the Programs. Integration Testing  Combine individual comp., into a working s/m.  Test strategy gives why & how comp., are combined.
Software Engineering Zhang Shuang
Testing i. explain the importance of system testing and installation planning;
Software Testing By Souvik Roy. What is Software Testing? Executing software in a simulated or real environment, using inputs selected somehow.
The Software Development Process. Contents  Product Components  Software project staff  Software development lifecycle models.
Integration Testing.
Definition of Integration Testing
Software System Integration
Higher-Level Testing and Integration Testing
Different Levels of Testing
Integration Testing CS 4311
Managing the Test Process CS 4501 / 6501 Software Testing
Software Testing “If you can’t test it, you can’t design it”
Integration Reading: McConnell, Code Complete, Ch. 29
Software System Integration
Chapter 11: Integration- and System Testing
Chapter 11: Integration and System Testing
Presentation transcript:

Integration and System Testing CSSE 376, Software Quality Assurance Rose-Hulman Institute of Technology March 29, 2007

2 Lifecycle Testing Relationships Requirements High-level Design Low-level Design Code Unit Testing Integration Testing System Testing Acceptance Testing

3 Testing in the Large 1. Integration testing: putting the pieces together 2. System testing: function and performance

4 1. Integration Testing

5 Integration Testing Objectives n Gain confidence in the integrity of overall system design n Ensure proper interaction of components n Run simple system-level tests

6 Integration Strategies n Top-down n Bottom-up n Critical-first n Function-at-a-time n As-delivered n Big bang

7 Top-Down Integration n Start with top-level modules n Use stubs for lower- level modules n As each level is completed, replace stubs with next level of modules

8 Top-Down Issues n Pros: –Always have a top-level system –Stubs can be written from interface specifications n Cons: –May delay performance problems until too late –Stubs can be expensive

9 Bottom-Up Integration n Start with bottom- level modules n Use drivers for upper-level modules n As each level is completed, replace drivers with next level of modules

10 Bottom-Up Issues n Pros: –Primitive functions get most testing –Drivers are usually cheap n Cons: –Only have a complete system at the end

11 Critical-First Integration n Integrate the most critical components first n Add remaining pieces later n Issues: –guarantees that most important components work first –may be difficult to integrate

12 Function-at-a-Time Integration n Integrate all modules needed to perform one function at the same time n For each function, add another group of modules n Issues: –makes for easier test generation –may postpone function interaction too long

13 As-delivered Integration n Integrate all of the modules that can be integrated as they become available n Issues –efficient: just-in-time integration –lazy: may lead to missed schedules

14 Big Bang Integration n Wait until all the components are ready, then put everything together at once n Issues: –avoids cost of scaffolding (stubs or drivers) –does not provide any locality for finding faults

15 Summary of Integration Strategies n Top-down n Bottom-up n Critical-first n Function-at-a-time n As-delivered n Big bang

16 Question: What should be used as integration test cases?

17 2. System Testing

18 System Testing Objectives n Gain confidence in the integrity of the system as a whole n Ensure compliance with functional requirements n Ensure compliance with performance requirements

19 Testing Functional Requirements 1. Prepare a test plan from the functional specification of the system 2. Prepare tests for all areas of functionality 3. Review test plan and tests 4. Execute tests 5. Monitor fault rate

20 Fault Rate /1/001/2/001/3/001/4/001/5/001/6/001/7/001/8/001/9/00 1/10/001/11/001/12/001/13/001/14/001/15/001/16/001/17/001/18/001/19/001/20/00 Total Faults

21 Testing Performance Requirements 1. Identify stress points of system 2. Create or obtain load generators –might use existing system –might buy/make special purpose tools 3. Run stress tests 4. Monitor system performance –usually need instrumentation