Implementation and Integration

Size: px
Start display at page:

Download "Implementation and Integration"

Transcription

1 Implementation and Implementations and integration are two different phases performed in sequence Problems with this approach To test a module independently, Development and SQA members need Stubs for modules that call other modules Drivers for modules that are being called Isolating faults are more difficult during integration To solve these problems these phases must be performed in parallel Top-Down Implementation and In this approach we develop modules in order: Root modules Use stubs to test the modules it calls Expand stubs to create the actual modules Reduces the stub waist 1 2 Top-Down Implementation and Advantages Fault isolation testing is done when each module is completed Stubs are not wasted Major design faults show up early By dividing the modules into two classes Logic modules» Decision making modules Operational modules» Perform the actual operations In is important to code and test logic modules before operational modules Top-Down Implementation and Disadvantages Lower level modules are not tested frequently If a program has 200 modules Root is tested 200 times (highest) Lowest modules are tested fewer times (lowest) Operational modules are tested the least Reusable modules are not properly tested Logic modules are less likely to be reused Problem specific Reused modules are most likely the lower modules Operational modules Top-Down makes reuse risky due to poor testing 3 4 1

2 Top-Down Implementation and Defensive programming is when programmers test the input before use Example: if (x >= 0) y = computesquareroot (x, errorflag); Subroutine is never tested with x < 0 This shields any fault cause by x < 0 Reuse implications Bottom-Up Implementation and In this approach we develop modules in order: Operational (lower) level modules Use drivers to test the modules Logic (higher) level modules 5 6 Bottom-Up Implementation and Advantages Operational modules are thoroughly tested Use drivers to test these modules Bypass fault shielding Defensively programmed calling modules Fault isolation Disadvantages Major design faults are detected late Sandwich Implementation and Combination of top-down and bottom-up strategies Making use of their strengths and minimizing their weaknesses Development order Logic modules are implemented and integrated top-down Operational modules are implemented and integrated bottom-up Finally, the interfaces between the two groups are tested 7 8 2

3 Sandwich Implementation and Advantages Major design faults are caught early Operational modules are thoroughly tested They may be reused with confidence There is fault isolation at all times Implementation and Summery 9 10 Implementation and of Object-Oriented Products Almost always using sandwich implementation and integration Objects are integrated bottom-up Other modules are integrated top-down Logic modules such as Main Management Issues during the Implementation and Finding out module interfaces does not work M1 calls M2 with 4 parameters M2 is defined with 3 parameters Documents must be controlled SQA managers must have responsibility of deciding which modules should be developed top-down and which will be developed bottom-up Testing must be performed by SQA Team

4 and Module testing Test new modules thoroughly Integrate with previously integrated modules Test to see the behavior did not change and Graphical User Interface Test Cases Mouse clicks Menus Input fields Not easy to test GUI Mostly manual process Need CASE Tool to make it easy QAPartner XRunner and Product testing Performed by SQA team to ensure that the product will not fail its acceptance test Failing the acceptance test is a disaster for management The client may conclude that the developers are incompetent Worse, the client may believe that the developers tried to cheat The SQA team must ensure that the product passes its acceptance test Black box test cases for the product as a whole Robustness of product as a whole Stress testing (under peak load) Volume testing (e.g., can it handle large input files?) and Product testing Check all constraints Timing constraints Storage constraints Security constraints Compatibility Review all documentation to be handed over to the client Verify the documentation against the product

5 and Acceptance testing The product (software plus documentation) is now handed over to the client organization The client determines whether the product satisfies its specifications Performed by either The client organization The SQA team in the presence of client representatives An independent SQA team hired by the client and Acceptance testing Performed with actual data provided by client Four major components of acceptance testing Correctness Robustness Performance Documentation Precisely what was done by developer during product testing CASE Tools for Implementation and Phase Version control tools Build tools Configuration Management tools CASE Tools for Complete Software Process CASE tools Single tool Performs one task A small organization can usually manage with just CASE tools Workbench Supports few activities A medium -sized organization can probably manage with a workbench Environment A complete solution for most of the process A large organization needs an environment

6 Integrated Environment Integrated CASE tools are those tools that have common interface Similar look and feel Tool integration means that all tools communicate via the same data format ASCII files Integrated Environment Process integration refers to an environment that supports a specific software process Technique-based or method-based environment Supports specific technique Structured systems analysis Usually comprises Graphical support for specification, design phases Data dictionary Some consistency checking Some management support Integrated Environment Technique-based or method-based environment Support and formalization of manual processes Analyst/Designer, Rose, Rhapsody (for Statecharts) Advantage Forced to use specific method, correctly Disadvantages Forced to use specific method Inadequate support of programming-in-the-many Environment for Business Applications Environment to build business oriented products Emphases is ease of use Includes number of standard screens (GUI) Can be easily modified Standard forms for input, output Provides a capability to generate code Input is Detailed design lowest level of abstraction Output is software code Expect productivity rise

7 Potential Problems with Environments No one environment is ideal for all organizations Each has its strengths and weaknesses Choosing the wrong environment can be worse than no environment Enforcing a wrong technique is counterproductive CASE environments should be avoided until the organization is at CMM level 3 We cannot automate a nonexistent process A CASE tool or CASE workbench is fine Metrics for The Implementation and Phase The five basic metrics mentioned before Complexity metrics Number of test cases, percentage which resulted in failure Total number of faults, by types Challenges of The Implementation and Phase Management issues are Choosing an appropriate CASE tools Test case planning Communicating changes to all personnel Deciding when to stop testing 27 7

Test s in i g n III Week 16

Test s in i g n III Week 16 Testing III Week 16 Agenda (Lecture) White box testing Condition coverage Loop coverage Path coverage Agenda (Lab) Implementation Review of SRS/SDD documents Submit a weekly project progress report at

More information

UNIT OBJECTIVE. Understand what system testing entails Learn techniques for measuring system quality

UNIT OBJECTIVE. Understand what system testing entails Learn techniques for measuring system quality SYSTEM TEST UNIT OBJECTIVE Understand what system testing entails Learn techniques for measuring system quality SYSTEM TEST 1. Focus is on integrating components and sub-systems to create the system 2.

More information

Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code (contd)

Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code. Feasibility of Testing to Code (contd) Feasibility of Testing to Code (contd) Feasibility of Testing to Code (contd) An incorrect code fragment for determining if three integers are equal, together with two test cases Flowchart has over 10

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 6.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 6 Slide 6.2 TESTING 1 Overview Slide 6.3 Quality issues

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 6.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 6 Slide 6.2 TESTING Overview Slide 6.3 Quality issues

More information

Software Quality Assurance (SQA) Software Quality Assurance

Software Quality Assurance (SQA) Software Quality Assurance Software Quality Assurance (SQA) Software Quality Assurance Use of analysis to validate artifacts requirements analysis design analysis code analysis and testing Technical/Document reviews Control of changes

More information

Software Testing. Integration Testing. Beat Fluri. software evolution & architecture lab

Software Testing. Integration Testing. Beat Fluri. software evolution & architecture lab Software Testing Integration Testing Beat Fluri software evolution & architecture lab V-Model Specification Implementation User needs Delivery System Spec System Integration Test Subsystem Design/Spec

More information

CSC 330 Object Oriented Software Design. Software Design Phase

CSC 330 Object Oriented Software Design. Software Design Phase CSC 330 Object Oriented Software Design Software Design Phase 1 Overview Overview Design and abstraction Action-oriented design Data flow analysis Transaction analysis Data-oriented design Object-oriented

More information

Terminology. There are many different types of errors and different ways how we can deal with them.

Terminology. There are many different types of errors and different ways how we can deal with them. Testing Terminology Reliability: The measure of success with which the observed behavior of a system confirms to some specification of its behavior. Failure: Any deviation of the observed behavior from

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

More information

Testing, Module To Object, Reusability

Testing, Module To Object, Reusability Testing, Module To Object, Reusability CMPSC 487 Lecture 09 Topics: Schach - Chap 6. Testing Schach - Chap 7. From module to object Schach - Chap 8. Reusability and portability Chap 6. Testing Verification:

More information

Types of Software Testing: Different Testing Types with Details

Types of Software Testing: Different Testing Types with Details Types of Software Testing: Different Testing Types with Details What are the different Types of Software Testing? We, as testers are aware of the various types of Software Testing such as Functional Testing,

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

More information

Verification and Validation

Verification and Validation Chapter 5 Verification and Validation Chapter Revision History Revision 0 Revision 1 Revision 2 Revision 3 Revision 4 original 94/03/23 by Fred Popowich modified 94/11/09 by Fred Popowich reorganization

More information

THE TOOLS OF THE TRADE

THE TOOLS OF THE TRADE CHAPTER 5 Slide 5.1 THE TOOLS OF THE TRADE Overview Slide 5.2 Stepwise refinement Cost benefit analysis Software metrics CASE Taxonomy of CASE Scope of CASE Software versions Configuration control Build

More information

Software Engineering 2 A practical course in software engineering. Ekkart Kindler

Software Engineering 2 A practical course in software engineering. Ekkart Kindler Software Engineering 2 A practical course in software engineering Quality Management Main Message Planning phase Definition phase Design phase Implem. phase Acceptance phase Mainten. phase 3 1. Overview

More information

Object-Oriented and Classical Software Engineering THE TOOLS OF THE TRADE 9/22/2017. CHAPTER 5 Slide 5.2. Stephen R. Schach. Overview Slide 5.

Object-Oriented and Classical Software Engineering THE TOOLS OF THE TRADE 9/22/2017. CHAPTER 5 Slide 5.2. Stephen R. Schach. Overview Slide 5. Slide 5.1 CHAPTER 5 Slide 5.2 Object-Oriented and Classical Software Engineering THE TOOLS OF THE TRADE Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach Overview Slide 5.3 Overview (contd) Slide

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 5.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 5 Slide 5.2 THE TOOLS OF THE TRADE 1 Overview Slide

More information

Object-Oriented and Classical Software Engineering DESIGN 11/12/2017. CET/CSC490 Software Engineering Design CHAPTER 14. Stephen R. Schach.

Object-Oriented and Classical Software Engineering DESIGN 11/12/2017. CET/CSC490 Software Engineering Design CHAPTER 14. Stephen R. Schach. Slide 14.1 CHAPTER 14 Slide 14.2 Object-Oriented and Classical Software Engineering DESIGN Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach Overview Slide 14.3 Overview (contd) Slide 14.4 and abstraction

More information

The Integration Phase Canard. Integration and Testing. Incremental Integration. Incremental Integration Models. Unit Testing. Integration Sequencing

The Integration Phase Canard. Integration and Testing. Incremental Integration. Incremental Integration Models. Unit Testing. Integration Sequencing Integration and Testing The Integration Phase Canard Integration Strategy Came from large system procurement phased vs. incremental integration integration processes and orders Testing Strategy numerous

More information

Managing Exceptions in a SOA world

Managing Exceptions in a SOA world Managing Exceptions in a SOA world Author: Ramesh Ranganathan Page 1 of 6 Table of Contents 1. Introduction 3 2. SOA Exception Management challenges 3 3. Conclusion 6 Page 2 of 6 1. Introduction Exception

More information

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification vs validation Verification: "Are we building the product right?. The software should

More information

Chapter 9 Quality and Change Management

Chapter 9 Quality and Change Management MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics

More information

Integration Testing. Conrad Hughes School of Informatics. Slides thanks to Stuart Anderson

Integration Testing. Conrad Hughes School of Informatics. Slides thanks to Stuart Anderson Integration Testing Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 19 February 2010 Software Testing: Lecture 10 1 Unit Test vs Integration Testing 1 The ideal in unit testing is

More information

Pearson Education 2007 Chapter 9 (RASD 3/e)

Pearson Education 2007 Chapter 9 (RASD 3/e) MACIASZEK, L.A. (2007): Requirements Analysis and System Design, 3 rd ed. Addison Wesley, Harlow England ISBN 978-0-321-44036-5 Chapter 9 Quality and Change Management Pearson Education Limited 2007 Topics

More information

Software Quality. Richard Harris

Software Quality. Richard Harris Software Quality Richard Harris Part 1 Software Quality 143.465 Software Quality 2 Presentation Outline Defining Software Quality Improving source code quality More on reliability Software testing Software

More information

Why load test your Flex application?

Why load test your Flex application? Why load test your Flex application? Your Flex application is new and exciting, but how well does it perform under load? Abstract As the trend to implement Web 2.0 technologies continues to grow and spread

More information

Chapter 11, Testing, Part 2: Integration and System Testing

Chapter 11, Testing, Part 2: Integration and System Testing Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 11, Testing, Part 2: Integration and System Testing Overview Integration testing Big bang Bottom up Top down Sandwich System testing

More information

TESTING. Overview Slide 6.2. Testing (contd) Slide 6.4. Testing Slide 6.3. Quality issues Non-execution-based testing

TESTING. Overview Slide 6.2. Testing (contd) Slide 6.4. Testing Slide 6.3. Quality issues Non-execution-based testing Slide 6.1 Overview Slide 6.2 Quality issues Non-execution-based testing TESTING Execution-based testing What should be tested? Testing versus correctness proofs Who should perform execution-based testing?

More information

Integration Testing. Unit Test vs Integration Testing 1. Unit Testing vs Integration Testing 2. Unit testing: isolation, stub/mock objects

Integration Testing. Unit Test vs Integration Testing 1. Unit Testing vs Integration Testing 2. Unit testing: isolation, stub/mock objects Unit Test vs Testing 1 Testing Conrad Hughes School of Informatics Slides thanks to Stuart Anderson The ideal in unit testing is to isolate a single code unit and test it against its behavioural specification.

More information

Object-Oriented Software Engineering Conquering Complex and Changing Systems. Chapter 9, Testing

Object-Oriented Software Engineering Conquering Complex and Changing Systems. Chapter 9, Testing Object-Oriented Software Engineering Conquering Complex and Changing Systems Chapter 9, Testing Preliminaries Written exam on for Bachelors of Informatik, and for other students who are not in the Informatik

More information

Integration Testing Qualidade de Software 2

Integration Testing Qualidade de Software 2 Integration Testing Integration Testing Software systems are built with components that must interoperate Primary purpose: To reveal component interoperability faults so that testing at system scope may

More information

Test Automation. Fundamentals. Mikó Szilárd

Test Automation. Fundamentals. Mikó Szilárd Test Automation Fundamentals Mikó Szilárd 2016 EPAM 2 Blue-chip clients rely on EPAM 3 SCHEDULE 9.12 Intro 9.19 Unit testing 1 9.26 Unit testing 2 10.03 Continuous integration 1 10.10 Continuous integration

More information

Test Driven Development

Test Driven Development Test Driven Development Name: ID: These questions do not have a formal, definitive answer. They are meant to be food for thoughts. Feel free to seek answers on browsing the Internet, talking to other software

More information

FACETs. Technical Report 05/19/2010

FACETs. Technical Report 05/19/2010 F3 FACETs Technical Report 05/19/2010 PROJECT OVERVIEW... 4 BASIC REQUIREMENTS... 4 CONSTRAINTS... 5 DEVELOPMENT PROCESS... 5 PLANNED/ACTUAL SCHEDULE... 6 SYSTEM DESIGN... 6 PRODUCT AND PROCESS METRICS...

More information

A study of the impact of C++ on software maintenance

A study of the impact of C++ on software maintenance A study of the impact of C++ on software maintenance Dennis Mancl AT&T Bell Laboratories Warren, NJ 07059 William Havanas AT&T Bell Laboratories Columbus, OH 43213 Abstract This is a case study of the

More information

Chapter 6 Architectural Design

Chapter 6 Architectural Design Chapter 6 Architectural Design Chapter 6 Architectural Design Slide 1 Topics covered The WHAT and WHY of architectural design Architectural design decisions Architectural views/perspectives Architectural

More information

Learning outcomes. Systems Engineering. Debugging Process. Debugging Process. Review

Learning outcomes. Systems Engineering. Debugging Process. Debugging Process. Review Systems Engineering Lecture 9 System Verification II Dr. Joanna Bryson Dr. Leon Watts University of Bath Department of Computer Science 1 Learning outcomes After both lectures and doing the reading, you

More information

SOFTWARE LIFE-CYCLE MODELS 2.1

SOFTWARE LIFE-CYCLE MODELS 2.1 SOFTWARE LIFE-CYCLE MODELS 2.1 Outline Software development in theory and practice Software life-cycle models Comparison of life-cycle models 2.2 Software Development in Theory Ideally, software is developed

More information

Quality Assurance = Testing? SOFTWARE QUALITY ASSURANCE. Meaning of Quality. How would you define software quality? Common Measures.

Quality Assurance = Testing? SOFTWARE QUALITY ASSURANCE. Meaning of Quality. How would you define software quality? Common Measures. Quality Assurance = Testing? SOFTWARE QUALITY ASSURANCE William W. McMillan Meaning of Quality Error-free How define an error? Client is happy (we get paid!). User is happy (we are loved!). Stable (we

More information

Chapter 9. Software Testing

Chapter 9. Software Testing Chapter 9. Software Testing Table of Contents Objectives... 1 Introduction to software testing... 1 The testers... 2 The developers... 2 An independent testing team... 2 The customer... 2 Principles of

More information

Lecture 15 Software Testing

Lecture 15 Software Testing Lecture 15 Software Testing Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics covered

More information

AAL 217: DATA STRUCTURES

AAL 217: DATA STRUCTURES Chapter # 4: Hashing AAL 217: DATA STRUCTURES The implementation of hash tables is frequently called hashing. Hashing is a technique used for performing insertions, deletions, and finds in constant average

More information

HCI in the software process

HCI in the software process chapter 6 HCI in the software process HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software

More information

HCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle

HCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle HCI in the software process chapter 6 HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software

More information

Lecture 19 Engineering Design Resolution: Generating and Evaluating Architectures

Lecture 19 Engineering Design Resolution: Generating and Evaluating Architectures Lecture 19 Engineering Design Resolution: Generating and Evaluating Architectures Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at

More information

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties

Why testing and analysis. Software Testing. A framework for software testing. Outline. Software Qualities. Dependability Properties Why testing and analysis Software Testing Adapted from FSE 98 Tutorial by Michal Young and Mauro Pezze Software is never correct no matter what developing testing technique is used All software must be

More information

Human Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process

Human Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process Human Computer Interaction Lecture 14 HCI in Software Process HCI in the software process Software engineering and the design process for interactive systems Usability engineering Iterative design and

More information

Part 5. Verification and Validation

Part 5. Verification and Validation Software Engineering Part 5. Verification and Validation - Verification and Validation - Software Testing Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can use this

More information

Implementing an SQA Automation Strategy Using the Automature Framework, a Case Study

Implementing an SQA Automation Strategy Using the Automature Framework, a Case Study Session 14E Implementing an SQA Automation Strategy Using the Automature Framework, a Case Study Steven A. Spura ASQ NEQC 60th Conference, Springfield, Massachusetts October 21, 2014 The Problem Custom

More information

Chapter 8 Software Testing. Chapter 8 Software testing

Chapter 8 Software Testing. Chapter 8 Software testing Chapter 8 Software Testing 1 Topics covered Introduction to testing Stages for testing software system are: Development testing Release testing User testing Test-driven development as interleave approach.

More information

CASE (Computer-Aided Software Engineering)

CASE (Computer-Aided Software Engineering) CASE (Computer-Aided Software Engineering) Slide 5.1 Scope of CASE Can support the entire life-cycle Graphical display tools (many for PCs) Data flow diagrams Entity-relationship diagrams Module-interconnection

More information

Department of Electrical & Computer Engineering, University of Calgary. B.H. Far

Department of Electrical & Computer Engineering, University of Calgary. B.H. Far SENG 421: Software Metrics Software Test Metrics (Chapter 10) Department of Electrical & Computer Engineering, University of Calgary B.H. Far (far@ucalgary.ca) http://www.enel.ucalgary.ca/people/far/lectures/seng421/10/

More information

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process Human Computer Interaction Lecture 06 [ HCI in Software Process ] Imran Ihsan Assistant Professor www.imranihsan.com aucs.imranihsan.com HCI06 - HCI in Software Process 1 HCI in the software process Software

More information

Testing. Outline. What is this? Terminology. Erroneous State ( Error ) Algorithmic Fault

Testing. Outline. What is this? Terminology. Erroneous State ( Error ) Algorithmic Fault Outline 1 Terminology Types of errors Dealing with errors Quality assurance vs Component Unit testing Integration testing Strategy Design Patterns & testing unction testing Structure Performance testing

More information

Topic 01. Software Engineering, Web Engineering, agile methodologies.

Topic 01. Software Engineering, Web Engineering, agile methodologies. Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,

More information

QUIZ #5 - Solutions (5pts each)

QUIZ #5 - Solutions (5pts each) CS 435 Spring 2014 SOFTWARE ENGINEERING Department of Computer Science Name QUIZ #5 - Solutions (5pts each) 1. The best reason for using Independent software test teams is that a. software developers do

More information

Introduction to Dynamic Analysis

Introduction to Dynamic Analysis Introduction to Dynamic Analysis Reading assignment Gary T. Leavens, Yoonsik Cheon, "Design by Contract with JML," draft paper, http://www.eecs.ucf.edu/~leavens/jml//jmldbc.pdf G. Kudrjavets, N. Nagappan,

More information

TEST AUTOMATION EFFORT ESTIMATION - Lesson Learnt & Recommendations. Babu Narayanan

TEST AUTOMATION EFFORT ESTIMATION - Lesson Learnt & Recommendations. Babu Narayanan TEST AUTOMATION EFFORT ESTIMATION - Lesson Learnt & Recommendations Babu Narayanan 1. Candidates for test automation. One of the classical mistakes of the test automation team is: NOT choosing right test

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Gérald Monard Ecole GDR CORREL - April 16, 2013 www.monard.info Bibliography Software Engineering, 9th ed. (I. Sommerville, 2010, Pearson) Conduite de projets informatiques,

More information

Lecture 1. Chapter 6 Architectural design

Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process

More information

Software Testing Interview Question and Answer

Software Testing Interview Question and Answer Software Testing Interview Question and Answer What is Software Testing? A process of analyzing a software item to detect the differences between existing and required conditions (i.e., defects) and to

More information

WHAT IS SOFTWARE ARCHITECTURE?

WHAT IS SOFTWARE ARCHITECTURE? WHAT IS SOFTWARE ARCHITECTURE? Chapter Outline What Software Architecture Is and What It Isn t Architectural Structures and Views Architectural Patterns What Makes a Good Architecture? Summary 1 What is

More information

Oracle Rdb Hot Standby Performance Test Results

Oracle Rdb Hot Standby Performance Test Results Oracle Rdb Hot Performance Test Results Bill Gettys (bill.gettys@oracle.com), Principal Engineer, Oracle Corporation August 15, 1999 Introduction With the release of Rdb version 7.0, Oracle offered a powerful

More information

Testing Theory. Agenda - What will you learn today? A Software Life-cycle Model Which part will we talk about today? Theory Lecture Plan

Testing Theory. Agenda - What will you learn today? A Software Life-cycle Model Which part will we talk about today? Theory Lecture Plan heory Lecture Plan 2 esting heory Lecture 8 Software Engineering DDC88/DDC93 autumn 28 Department of Computer and Information Science Linköping University, Sweden L - Course Introduction and Overview L2

More information

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt

(See related materials in textbook.) CSE 435: Software Engineering (slides adapted from Ghezzi et al & Stirewalt Verification (See related materials in textbook.) Outline What are the goals of verification? What are the main approaches to verification? What kind of assurance do we get through testing? How can testing

More information

Comparison Study of Software Testing Methods and Levels- A Review

Comparison Study of Software Testing Methods and Levels- A Review Comparison Study of Software Testing Methods and Levels- A Review Deepti Kapila Grover M.Tech, Dept. of Computer Science, Assistant professor in LCET, Katani Kalan, India ABSTRACT: Software is an activity

More information

Benefits of Maintaining Computer Systems

Benefits of Maintaining Computer Systems Benefits of Maintaining Computer Systems U14-Assignment 1 in BTEC Level 2. Benefits of Maintaining Hardware on Laptops and Desktops Part 1 - Benefits Benefits of Maintaining Hardware on a desktop Keeping

More information

SOFTWARE ARCHITECTURES UNIT I INTRODUCTION AND ARCHITECTURAL DRIVERS

SOFTWARE ARCHITECTURES UNIT I INTRODUCTION AND ARCHITECTURAL DRIVERS IT6602 SOFTWARE ARCHITECTURES UNIT I INTRODUCTION AND ARCHITECTURAL DRIVERS SYLLABUS: Introduction What is software architecture? Standard Definitions Architectural structures Influence of software architecture

More information

ANZ Testing Board. Lessons Learnt Performance Testing

ANZ Testing Board. Lessons Learnt Performance Testing ANZ Testing Board SIGIST Lessons Learnt Performance Testing Who are we Martin Corke Senior technical tester Jamie Bate Senior.NET developer ALM Consultant What were our questions What type of application

More information

Testing & Debugging TB-1

Testing & Debugging TB-1 Testing & Debugging TB-1 Need for Testing Software systems are inherently complex» Large systems 1 to 3 errors per 100 lines of code (LOC) Extensive verification and validiation is required to build quality

More information

An Evaluation of the Advantages of Moving from a VHDL to a UVM Testbench by Shaela Rahman, Baker Hughes

An Evaluation of the Advantages of Moving from a VHDL to a UVM Testbench by Shaela Rahman, Baker Hughes An Evaluation of the Advantages of Moving from a VHDL to a UVM Testbench by Shaela Rahman, Baker Hughes FPGA designs are becoming too large to verify by visually checking waveforms, as the functionality

More information

Verification, Testing, and Bugs

Verification, Testing, and Bugs Verification, Testing, and Bugs Ariane 5 Rocket First Launch Failure https://www.youtube.com/watch?v=gp_d8r- 2hwk So What Happened? The sequence of events that led to the destruction of the Ariane 5 was

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Coding Is Essentially 0% of Creating Software http://e.ubmelectronics.com/2013embeddedstudy/index.html 2 Old-School Waterfall Development Cycle Bugs SPECIFY

More information

Write perfect C code to solve the three problems below.

Write perfect C code to solve the three problems below. Fall 2017 CSCI 4963/6963 Week 12 David Goldschmidt goldschmidt@gmail.com Office: Amos Eaton 115 Office hours: Mon/Thu 1:00-1:50PM; Wed 1:00-2:50PM Write perfect C code to solve the three problems below.

More information

Enabling efficiency through Data Governance: a phased approach

Enabling efficiency through Data Governance: a phased approach Enabling efficiency through Data Governance: a phased approach Transform your process efficiency, decision-making, and customer engagement by improving data accuracy An Experian white paper Enabling efficiency

More information

Visual Layout of Graph-Like Models

Visual Layout of Graph-Like Models Visual Layout of Graph-Like Models Tarek Sharbak MhdTarek.Sharbak@uantwerpen.be Abstract The modeling of complex software systems has been growing significantly in the last years, and it is proving to

More information

Computational Systems COMP1209

Computational Systems COMP1209 Computational Systems COMP1209 Testing Yvonne Howard ymh@ecs.soton.ac.uk A Problem A café wants to build an automated system to provide breakfasts. The robot waiter greets people before taking their order

More information

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered Topics covered Chapter 6 Architectural Design Architectural design decisions Architectural views Architectural patterns Application architectures Lecture 1 1 2 Software architecture The design process

More information

Software Testing CS 408

Software Testing CS 408 Software Testing CS 408 1/09/18 Course Webpage: http://www.cs.purdue.edu/homes/suresh/408-spring2018 1 The Course Understand testing in the context of an Agile software development methodology - Detail

More information

Software Testing. Software Testing

Software Testing. Software Testing Software Testing Software Testing Error: mistake made by the programmer/ developer Fault: a incorrect piece of code/document (i.e., bug) Failure: result of a fault Goal of software testing: Cause failures

More information

Welfare Navigation Using Genetic Algorithm

Welfare Navigation Using Genetic Algorithm Welfare Navigation Using Genetic Algorithm David Erukhimovich and Yoel Zeldes Hebrew University of Jerusalem AI course final project Abstract Using standard navigation algorithms and applications (such

More information

SOFTWARE PRODUCT QUALITY SOFTWARE ENGINEERING SOFTWARE QUALITY SOFTWARE QUALITIES - PRODUCT AND PROCESS SOFTWARE QUALITY - QUALITY COMPONENTS

SOFTWARE PRODUCT QUALITY SOFTWARE ENGINEERING SOFTWARE QUALITY SOFTWARE QUALITIES - PRODUCT AND PROCESS SOFTWARE QUALITY - QUALITY COMPONENTS SOFTWARE PRODUCT QUALITY Today: - Software quality - Quality Components - Good software properties SOFTWARE ENGINEERING SOFTWARE QUALITY Today we talk about quality - but what is quality? Suitable Fulfills

More information

A comparative study of Programming by Contract and Programming with Exceptions

A comparative study of Programming by Contract and Programming with Exceptions Computer Science Jimmy Byström Leo Wentzel A comparative study of Programming by Contract and Programming with Exceptions Master s Thesis 2003:02 A comparative study of Programming by Contract and Programming

More information

Chapter 6 Architectural Design. Chapter 6 Architectural design

Chapter 6 Architectural Design. Chapter 6 Architectural design Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying

More information

Testing. Prof. Clarkson Fall Today s music: Wrecking Ball by Miley Cyrus

Testing. Prof. Clarkson Fall Today s music: Wrecking Ball by Miley Cyrus Testing Prof. Clarkson Fall 2017 Today s music: Wrecking Ball by Miley Cyrus Review Previously in 3110: Modules Specification (functions, modules) Today: Validation Testing Black box Glass box Randomized

More information

Cybersecurity 2016 Survey Summary Report of Survey Results

Cybersecurity 2016 Survey Summary Report of Survey Results Introduction In 2016, the International City/County Management Association (ICMA), in partnership with the University of Maryland, Baltimore County (UMBC), conducted a survey to better understand local

More information

CC532 Collaborative System Design

CC532 Collaborative System Design CC532 Collaborative Design Part I: Fundamentals of s Engineering 4. s Interoperation/Integration DoD Architecture Framework (DoDAF) 2 of 24 Architecture of a system The fundamental organization of a system

More information

Advanced Software Engineering: Software Testing

Advanced Software Engineering: Software Testing Advanced Software Engineering: Software Testing COMP 3705(L4) Sada Narayanappa Anneliese Andrews Thomas Thelin Carina Andersson Web: http://www.megadatasys.com Assisted with templates News & Project News

More information

Software Engineering Theory. Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science

Software Engineering Theory. Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science Software Engineering Theory Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science 2015-09-20 Title/Lecturer SEPTEMBER 20, 2016 2 Requirement formalization

More information

Online Copywriting. The Importance of Effective Online Content Writing for Your Business

Online Copywriting. The Importance of Effective Online Content Writing for Your Business Online Copywriting The Importance of Effective Online Content Writing for Your Business Contents Introduction Online Copywriting & the Modern Business Studies & Stats What this Means for You & Your Business

More information

The Different Types of UPS Systems

The Different Types of UPS Systems The Different Types of UPS Systems White Paper # 1 Revision 4 Executive Summary There is much confusion in the marketplace about the different types of UPS systems and their characteristics. Each of these

More information

Top Ten Reasons Organizations are Unsuccessful Implementing ITIL

Top Ten Reasons Organizations are Unsuccessful Implementing ITIL Top Ten Reasons Organizations are Unsuccessful Implementing ITIL by Malcolm Fry Recognized industry luminary Malcolm Fry outlines the reasons organizations fail to effectively implement ITIL, and discusses

More information

Verification and Validation

Verification and Validation Steven Zeil February 13, 2013 Contents 1 The Process 3 1 2 Non-Testing V&V 7 2.1 Code Review....... 8 2.2 Mathematically-based verification......................... 19 2.3 Static analysis tools... 23 2.4

More information

Verification and Validation

Verification and Validation Steven Zeil February 13, 2013 Contents 1 The Process 2 2 Non-Testing V&V 3 2.1 Code Review........... 4 2.2 Mathematically-based verification.................................. 8 2.3 Static analysis tools.......

More information

Performance Metrics. 1 cycle. 1 cycle. Computer B performs more instructions per second, thus it is the fastest for this program.

Performance Metrics. 1 cycle. 1 cycle. Computer B performs more instructions per second, thus it is the fastest for this program. Parallel Programming WS6 HOMEWORK (with solutions) Performance Metrics Basic concepts. Performance. Suppose we have two computers A and B. Computer A has a clock cycle of ns and performs on average 2 instructions

More information

Test Automation Practice STC 2012

Test Automation Practice STC 2012 Test Automation Practice in Agile Projects STC 2012 www.harbinger-systems.com Abstract Principles of agile Challenges in Test Automation What we should and shouldn t automate Test Automation Frameworks

More information

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001 Integration and Testing Uses slides from Lethbridge & Laganiere, 2001 Testing phases: V model Requirements Acceptance Testing Specifications System Testing Design Integration Testing Detailed Design Unit

More information

SOFTWARE REQUIREMENT REUSE MODEL BASED ON LEVENSHTEIN DISTANCES

SOFTWARE REQUIREMENT REUSE MODEL BASED ON LEVENSHTEIN DISTANCES SOFTWARE REQUIREMENT REUSE MODEL BASED ON LEVENSHTEIN DISTANCES 1 WONG PO HUI, 2,* WAN MOHD NAZMEE WAN ZAINON School of Computer Sciences, Universiti Sains Malaysia, 118 Penang, Malaysia 1 wphui.ucom12@student.usm.my,

More information

Design Metrics for Object-Oriented Software Systems

Design Metrics for Object-Oriented Software Systems ECOOP 95 Quantitative Methods Workshop Aarhus, August 995 Design Metrics for Object-Oriented Software Systems PORTUGAL Design Metrics for Object-Oriented Software Systems Page 2 PRESENTATION OUTLINE This

More information