Software System Integration. Chapter 8 Software testing 1

Similar documents
Software System Integration. Chapter 8 Software testing 1

Testing throughout the software life cycle. Software Testing: INF3121 / INF4121

IT6004/ Software Testing Unit-I

Introduction to Software Engineering

Test Integration Strategies. Brian Nielsen. Center of Embedded Software Systems Aalborg University, Denmark CSS

The complete guide for Software integration testing. David Tzemach

IT6004/ Software Testing

CHAPTER 7 SOA DEVELOPMENT LIFECYCLE SE 458 SERVICE ORIENTED ARCHITECTURE

MORS Introduction to Cost Estimation (Part I)

Work Plan and IV&V Methodology

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING IT6004 SOFTWARE ESTING UNIT I : INTRODUCTION

Requirements Engineering and Software Architecture Project Description

The Work Breakdown Structure in the Systems Engineering Process. Abstract. Introduction

0 Introduction Test strategy A Test Strategy for single high-level test B Combined testing strategy for high-level tests...

Testing. CxOne Standard

Biometrics Enterprise Architecture Systems Engineering Management Plan (BMEA SEMP)

A Review Paper on Software Testing

Product Support Publication Requirements

Lighting Unit Dropped by Rough-terrain Forklift

Day Health Manager Test Plan

Introduction of RUP - The Rational Unified Process

Software Quality S O F T W A R E T E S T I N G. By: MSMZ

LECTURE 6 LEVELS OF SOFTWARE TESTING

Enterprise Portal Modeling Methodologies and Processes

Testing throughout the software life cycle. Software Testing: INF3121 / INF4121

Testing Masters Technologies

Testing Close to and Post-Release: System, Acceptance, and Regression Testing

HYBRID APPROACH. Software Development Approaches. Agile. Rapid. Waterfall

Session 8: Testing Special importance of testing Stages of testing Manual vs. automated testing Continuous testing strategies

Software Quality Engineering Courses Offered by The Westfall Team

6. Models of the Design Process

Software Quality Engineering Courses Offered by The Westfall Team

Software Processes 1

Unit-V Chapter-1 PROJECT CONTROL & PROCESS INSTRUMENTATION

Define functional analysis and place it in context within system development. Describe the activities and value of functional analysis.

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 11: Managing the Software Process

Vidyalankar T.Y. Diploma : Sem. V [CO/CM/IF] Software Engineering Prelim Question Paper Solution

Nexenta Support. Customer Service & Support Program Guide. Date: September Copyright 2018 Nexenta Systems, ALL RIGHTS RESERVED

data sheet RFID IN ORACLE 11i10 E-BUSINESS SUITE Oracle Warehouse Management with Application Server 10g

Led by the Author Attended by a peer group Varying level of formality Knowledge gathering Defect finding

Multiple Views of System Specifications

Copyright STS Association. STS Association STS Edition 1.2 Oct TID Rollover Checklist and Timeline

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT-1

NASA Procedural Requirements

Service Description for Storage Implementation. Issue 1.0. Date

Developing Reliable Software For A Rapid Deployment Product. ATK Advanced Weapons

imax Empowers Sonatel with Real-time Credit Control & Management

Chapter 2 Objectives. Pfleeger and Atlee, Software Engineering: Theory and Practice (edited by B. Cheng) Chapter 2.

An Application of Causal Analysis to the Software Modification Process

CMSC 435: Software Engineering Section Back to Software. Important: Team Work. More Resources

QUALITY ASSURANCE PLAN OKLAHOMA DEPARTMENT OF HUMAN SERVICES ENTERPRISE SYSTEM (MOSAIC PROJECT)

Contents About This Guide... 5 Upgrade Overview... 5 Examining Your Upgrade Criteria... 7 Upgrade Best Practices... 8

ISEB Certificate in ITIL based Application Management Essentials Syllabus. Version 2.0

QPR ScoreCard. White Paper. QPR ScoreCard - Balanced Scorecard with Commitment. Copyright 2002 QPR Software Oyj Plc All Rights Reserved

Issue 31. Rule Book Briefing Leaflet

Super Schlumberger Scheduler

Case Study: Applying Agile Software Practices to Systems Engineering

CMMI V2.0 MODEL AT-A-GLANCE. Including the following views: Development Services Supplier Management. CMMI V2.0 outline BOOKLET FOR print.

3. Comparison of Above Described SDLC Models

Logistics Community of Interest 6910 Materials Expediting Series Competency-Based Learning Map and Training Strategy. Page 1

Development Environment Definition

Optimizing the Gun Building processes by using special modules of Track & Trace software

6.1 Introduction Objective Acceptance Testing CHAPTER 7: Black Box Testing Introduction Objectives...

Oracle Process Manufacturing Formula Management

A Machine Setup Model for TFT-LCD Cell Back-End Process

Integration of Software Intensive Systems

Nip Point Severs Worker s Finger

Installation and Configuration for Microsoft Dynamics AX 2012 Course 80221A: 3 Days; Instructor-Led

Softwaretechnik. Lecture 02: Processes. Peter Thiemann SS University of Freiburg, Germany

Risk Based Testing Pragmatic Risk Analysis and Management

Examining the information and communication technologies enabling servitized manufacture

On various testing topics: Integration, large systems, shifting to left, current test ideas, DevOps

Oracle Real-Time Decisions (RTD) Ecommerce Interaction Management Use Case

Pragmatics. Object Orientated Analysis and Design. Benjamin Kenwright

Moving Bin with Hoist Causes Foot Fracture

Ground Control Means for Satellite Automated Operations: Thales Alenia Space Experience

SWE 211 Software Processes

Thinking Ahead to System Verification and System Validation Louis S. Wheatcraft Requirement Experts (281)

Systems Engineers provide a Key Contribution and Role in System Integration and Test

Functional Analysis Module

Salesforce Lighting Drives Productivity Gains And Reduces Development And Support Costs Transition Pattern: Big Bang Deployment

National Aeronautics and Space Administration Washington, DC 20546

Compander Control for Natural Gas Liquefaction Process Simulation

PROIV On Premise Support Services

Oracle Process Manufacturing

Chapter 2: The Project Management and Information Technology Context

Understanding Manufacturing Execution Systems (MES)

SAP Automotive for Suppliers

TOPIC DESCRIPTION SUPPLEMENT for the SYSTEMS ENGINEERING SURVEY DESCRIPTION

The Operations and Support phase is made up of two main efforts: sustainment and disposal.

Backhoe Boom Collapses Endangering Workers

Pulley Severed Fingertip

DeltaV Control Module Execution

Agile versus? Architecture

Acceptance Testing & Delivery. Acceptance Testing

An Overview of Software Process

Contents. viii. List of figures. List of tables. OGC s foreword. 6 Organizing for Service Transition 177. Chief Architect s foreword.

18-642: Software Development Processes

The following activities are covered for the quantitative reliability analysis:

Chapter 14: Information Technology Careers 1/5/2018. Chapter 14: Information Technology Careers. Chapter 14: Information Technology Careers

Transcription:

Software System Integration Chapter 8 Software testing 1

Overview What is system integration? Integration process description Integration testing System Integration Checklist Chapter 8 Software testing 2

By the end of this session, you will.. Understand the importance and role of system integration Understand the system integration process Understand what is top-down and bottom-up integration Understand what should be done before and during system integration Chapter 8 Software testing 3

What is system integration? System integration is the successful putting together of the various components, assemblies, and subsystems of a system and having them work together to perform what the system was intended to do. Requirements Design Coding and unit Testing Integration & test Acceptance Deployment Successful system integration results from the proper implementation of project activities Chapter 8 Software testing 4

Integration process planning Chapter 8 Software testing 5

System integration process (1) Integration is iterative and progressive, with each level of integration building from and on top of the previous level of integration Integration and testing are part of the development process and are used to ensure all the various pieces work together in performing their higher-level functions. Chapter 8 Software testing 6

System integration process (2) Chapter 8 Software testing 7

Interfaces (1) Complete Knowledge of all interfaces is essential to any integration effort. This includes interfaces between : components, assemblies, subsystems, and also the system and other systems it needs to work with. Chapter 8 Software testing 8

Interfaces (2) Chapter 8 Software testing 9

Complete system integration(1) Most systems consist of both hardware and software. These two are sometimes looked at as complete systems in and of themselves, but they cannot function independently of each other There are two other system elements: people and support systems that are also part of the complete system. For a system to be successfully implemented and used, all these elements must be in place and functioning correctly Chapter 8 Software testing 10

Complete system integration(2) Chapter 8 Software testing 11

Integration testing Integration testing involves building a system from its components and testing it for problems that arise from component interactions. Initial approach: Big Bang Incremental integration Top-down integration Bottom-up integration Sandwich integration Chapter 8 Software testing 12

Top-down Integration Algorithm Develops the skeleton of the system and populate it with components. 1. Use Main control module as a test driver and substitute all modules that are directly subordinate to it by stubs. 2. Depending on the integration approach selected (depth first or breadth first), choose a stub and replace it by a real module. 3. Tests are conducted after replacement of a stub by a real module. 4. While there exist stubs in the system, go to step 2(loop) 5. Stop when the whole system structure is built and no stubs remain. Chapter 8 Software testing 13

Top-down Integration What is a stub? It is a test module that replaces a called module and that has exactly the same interface. Stub A Stub B Stub C Stub D - Display a trace message - Display passed perameter - Return a value from a table (or external file) - Combine B and C Chapter 8 Software testing 14

Bottom-up Integration Algorithm Integrates components at the lowest levels then adds functional components when going to the upper levels. 1. Construct drivers for low level modules. 2. Execute and test each driver separately. 3. Remove drivers and combine modules moving upward into clusters that perform a specific software subfunction. When the main module is reached go to 5) 4. Construct a driver per cluster. Go to 2) 5. Stop when the whole system structure is built and no drivers remain. Chapter 8 Software testing 15

Bottom-up integration What is a driver? A driver is a test module that replaces a real calling module and that has exactly the same interface. Driver A Driver B Driver C Driver D - Invoke subordinate - Send known parameter - Call real module -Call real module -Display parameter - Send known parameter -Call real module - display parameter Chapter 8 Software testing 16

System integration checklist Before starting 1. Do your test plans include and support integration efforts? 2. Does your development plan allocate adequate time and resources for system integration efforts, including rework time? 3. Are the interfaces between components, assemblies, subsystems, and systems defined in adequate detail? 4. Will hardware be available for testing software during integration? 5. Is there a contingency plan if the schedule slips and if the integration schedule is compressed? 6. Are all elements of the system included in the integration plan? 7. Is all documentation current and available for reference? Chapter 8 Software testing 17

System integration checklist During integration (1) 1. Is there an efficient rework cycle in place to fix problems found during integration testing? 2. Are fixed modules or components integrated and retested at all levels of integration up to the level where the problem was found? 3. Is the people element (operators, maintainers, logisticians, trainers, etc.) being prepared to work with the system when it is deployed? 4. Is the support systems element (logistics, maintenance, training, etc.) being prepared to support the new system when it is deployed? 5. Are you following an iterative, progressive integration process? 6. Are experienced integrators involved with the integration? Chapter 8 Software testing 18

System integration checklist During integration (2) 7. Are area/subject matter experts involved with the integration? 8. Is adequate time being allowed for integration, testing, rework, reintegration, and retesting? 9. Are all necessary resources being made available for integration? 10. Is adequate testing being performed on integrated units (assemblies, subsystems, elements, system) to ensure that there are no surprises during acceptance testing? 11. Are you updating documentation during rework? 12. Are integration and system test errors being traced back to requirements and design? And if so, are the requirements and design being updated? Chapter 8 Software testing 19

References http://www.stsc.hill.af.mil/resources/tech_docs/gsam4/chap14.pdf Guide to Software Engineering Body of Knowledge, especially Appendix D: http://www.swebok.org NASA Systems Engineering Handbook: http://ldcm.gsfc.nasa.gov/library/library.htm Software Engineering Institute: www.sei.cmu.edu System Engineering Fundamentals, 2001, Defense Acquisition University, download at: www.dau.mil/pubs/gdbks/sys_eng_fund.asp Chapter 8 Software testing 20