System Integration Verification and Validation

Slides:



Advertisements
Similar presentations
Configuration Management
Advertisements

SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Software Quality Assurance Plan
Software Testing 3 Damian Gordon.
MIS 2000 Class 20 System Development Process Updated 2014.
Alternate Software Development Methodologies
Unit 251 Implementation and Integration Implementation Unit Testing Integration Integration Approaches.
Illinois Institute of Technology
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
SE 555 – Software Requirements & Specifications Introduction
9 1 Chapter 9 Database Design Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Project Documentation and its use in Testing JTALKS.
Software Quality Assurance For Software Engineering && Architecture and Design.
Introduction to Software Testing
Software Life Cycle Model
Effective Methods for Software and Systems Integration
Software Project Management Fifth Edition
Extreme Programming Software Development Written by Sanjay Kumar.
Introduction to Software Quality Assurance (SQA)
Product Quality, Testing, Reviews and Standards
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.
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
RUP Implementation and Testing
Software Configuration Management (SCM)
Software System Engineering: A tutorial
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
OHTO -99 SOFTWARE ENGINEERING “SOFTWARE PRODUCT QUALITY” Today: - Software quality - Quality Components - ”Good” software properties.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Product Development Chapter 6. Definitions needed: Verification: The process of evaluating compliance to regulations, standards, or specifications.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
Lecture 7: Requirements Engineering
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.
Develop Project Charter
Software quality factors
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
Software Testing Process By: M. Muzaffar Hameed.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Modelling the Process and Life Cycle. The Meaning of Process A process: a series of steps involving activities, constrains, and resources that produce.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Software Testing Strategies. Brief Software Testing Introduction 2 / Daniel Grigoroscuta / © Continental AG What is testing? What is quality?
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
ISO 9001:2015 Subject: Quality Management System Clause 8 - Operation
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
Testing throughout Lifecycle Ljudmilla Karu. Verification and validation (V&V) Verification is defined as the process of evaluating a system or component.
 System Requirement Specification and System Planning.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVII. Verification and Validation.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Software Quality Assurance
Chapter 11: Software Configuration Management
Chapter 10 Software Quality Assurance& Test Plan Software Testing
UNIT II.
Engineering Processes
Introduction to Software Testing
Test Planning Mike O’Dell (some edits by Vassilis Athitsos)
Lecture 09:Software Testing
Software Quality Assurance
Chapter 11: Software Configuration Management
Baisc Of 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.
Engineering Processes
PSS verification and validation
Presentation transcript:

System Integration Verification and Validation

Remember V-Cycle for all Increments? SW Requirements SW Architecture SW Design SW Coding SW Module Test SW Integration SW Verification SW Activities System Requirements System Architecture & Design System Integration System Verification SE/PVV Activities EE Activities ME Activities Code Review V1 V3 V4 Planning V2 Verification & Validation Realization Disc.

Test Overview Test Area Who Tests What Against What Where SW Module Test The SW-Developer Tests a SW Package (or single Modules) Against the SW Design Simulation on PC, Target SW Integration Test The SW-Test Engineer Tests a SW Component (possibly within a SW System) Against the SW Architecture Partial or whole System SW Verification Test Tests SW Components (within a SW System) Against the SW Requirements Usually whole System

Why SI? Why do we need System Integration ? The purpose of System Integration is to assemble a system from its defined components to ensure that the interfaces between the components of the integrated system function properly Focus is on the System Level, i.e. releases of sub projects are handled as one part (system modules / discipline components) interfaces between these parts are the object of tests Remark: Even if a project has no official System Integration Team, the activities are performed anyway (by highest / last integration in the project)

Integration testing(interface testing) Examines the interaction of software elements (components) after system integration Integration is the activity of combining individual software components into a larger subsystems Further integration of subsystems is also part of the system integration process Each component has already been tested for its internal functionality (component test). Integration tests examine the external functions Scope: Integration tests examine the interaction of software components (subsystems) with each other: interfaces with other components interfaces among GUIs/ MMIs Integration tests examine the interfaces with the system environment Tests cases may be derived from interface specifications, architectural design or data models

Verification vs. Validation Verification: Proof of compliance with the stated requirements (def. after ISO 9000) " Did we proceed correctly when building the system?" Validation: Proof of fitness for expected use " Did we build the right system software system ?"

Verification within the general V-Model Each development level is verified against the contents of the level above it -to verify: to give proof of evidence -to verify: means to check whether the requirements and definitions of the previous level were implemented correctly requirements definition acceptance test functional system design system test technical system design integration test Development and Integration component specification component test programming Verification

System test(Verification) Testing the integrated software system to prove compliance with the specified requirements -software quality is looked at form the user's point of view System tests refer to functional requirements: suitability, accuracy, interoperability, compliance, security "what the system does" nonfunctional requirements: reliability, usability, efficiency, portability, maintability "how the system works"

Terminologie RELIABILITY: the ability of the software product to perform required functions under stated conditions for a specified period of time for a specified number of operations USABILITY: testing to determine the extent of which the software product is understood, easy to learn, easy to operate EFFICIENCY: the process of testing to determine the efficiency of software product MAINTABILITY: the process of testing to determine the maintability of software product PORTABILITY: the process of testing to determine the easy to transfer the software product from one hardware to another (or software environment to another) SUITABILITY: the capability of a software product to provide an appropriate set of functions for specified tasks and user objectives ACCURACY: the capability of a software product to provide the right or agreed results or effects with the needed degree of precision COMPLIANCE: ability of software product to adhere to standards, conventions INTEROPERABILITY: ability of software product to interact with one or more specified components or system SECURITY: attributes of software product that bear on its ability to prevent unauthorized access to programs and data

System test Test cases may be derived from: functional specifications use cases business processes risk assessments Scope: Test of the integrated system from the user's point of view The test environment should match the true environment: All external interfaces are tested under true conditions No tests in the real life environment!

Validation within the general V-Model Validation refers to the correctness of the each development level to validate: to give proof of having value to validate: means to check the appropriateness of the results of one development level requirements definition acceptance test functional system design system test technical system design integration test Development and Integration component specification component test programming Verification Validation

Testing process @ Continental Discipline (Entertainment, Navi etc.) System Integration PVV (Product Verification and Validation) Requirements / Architecture Failed Test Result Passed PRODUCTION

Verification vs.Validation

Test design techniques Deriving test cases from requirements Designing test cases must be a controlled process test object and requirements on the test object defining test requirements and test criteria test case 1 test case 1 Test cases can be created in a formal way or in a informal way depending on the project delimitations and on the maturity of the process in use.

Test design techniques Traceability Tests should be traceable: which test case was included in the test portofolio, based on which requirement? test scenarios test object and requirements on the test object test case test case test case4 defining test requirements and test criteria test case 1 test case 1 test case test case test case 1 Traceability helps to determine requirement coverage

Test design techiques Definitions Test object Terminology the subject to be examined (a document or a piece of software in the software development process) Test condition an item or an event: a function ,a transaction ,a quality criterion or an element in the system Test criteria the test object has to confirm the test criteria in order to pass the test Terminology

Test design techniques Test case description according to IEEE 829: Input values: description of the input data on the test object Preconditions: situation previous to test execution or characteristics of the test object before conducting the test case Expected results: output data that the test object is expected to produce Postconditions: characteristics of the test object after test execution, description of its situation after test Dependencies: order of execution of test cases, reason for dependencies Distinct identification: Id or key in order to link ,for example ,an error report to the test cases where it appeared Requirements: characteristics of the test object that the test case will examine

Test level PVV (Product Verification and Validation) - Test Level Definition To optimize test execution, the following test levels were defined: XXS (extreme small): Screening-Test -> handover test between PVV and SI/SW XS (extra small): Quick-Test -> to get a fast overview about all main functions/features S (small): Pre-release-Test -> check all functions and find major errors (feedback for SW dev.) M (medium): Release-Test (part 1) -> to find all serious errors L (large): Release-Test (part 2) -> to find all errors Remarks: M- and L-level are forming 100% of all test cases, therefore all other test levels are sub groups of the complete set (e.g. S will be a sub group of M). The complete release test can be divided in two parts (M- and L-level). This gives the opportunity, to deliver the release to the customer with a finalized M-test first. Note: It is not allowed to change the SW version through hole release test run!

Types of tests Module tests (MP3 Player, GPS, HMI) - smoke tests Integration tests (e.g. MP3 player vs HMI) Verification tests Validation tests

System requirements document????

Improvements for applications-user point of view?

Test suites A Test suite is a collection of test cases which are grouped based on one criteria or more A system can have an unlimited number of test suites based on different criteria: - A test suite for HMI tests - A test suite for Performance tests - A test suite for Navigation tests - A test suite for Entertainment tests - etc

Test plan-Test suite-Test package

Verification test -Example

Verification test-Examples

Examples

Examples

Examples

Examples

Validation test-Example

Evaluation Create System requirement document (1p) Create Test plan(1p) Improvements for HMI,GPS,MP3 player and speech applications (1p) Create 2 verification tests (1p) Create 2 validation tests for each application (1p) Free tests (EBTs –Experience Based Testing) on HMI, GPS, MP3 player ,Speech applications (1p) Find Bugs