Software Quality Assurance and Testing prof. A. C. (Alex) Telea Course description.

Slides:



Advertisements
Similar presentations
Making the System Operational
Advertisements

Unit-V testing strategies and tactics.
Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Testing Coverage Test case
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Software Testing and Quality Assurance
Software engineering for real-time systems
Chapter 15 Design, Coding, and Testing. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Design Document The next step in the Software.
Object-Oriented Analysis and Design Lecture 10 Implementation (from Schach, “O-O and Classical Software Engineering”)
IS 421 Information Systems Management James Nowotarski 16 September 2002.
Chapter 17 Code Review, Test Data, and Code Comparison.
Chapter 1 Software Engineering. Homework ► Read Section 2.2 (pages 79-98) ► Answer questions: ► 7, 8, 11, 12, & 13 on page 134. ► Answer on paper, hand.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
EE694v-Verification-Lect5-1- Lecture 5 - Verification Tools Automation improves the efficiency and reliability of the verification process Some tools,
Outline Types of errors Component Testing Testing Strategy
OHT 9.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Chapter 9.3 Software Testing Strategies.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
Testing Dr. Andrew Wallace PhD BEng(hons) EurIng
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Software.
System/Software Testing
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
Testing. Definition From the dictionary- the means by which the presence, quality, or genuineness of anything is determined; a means of trial. For software.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
Class Specification Implementation Graph By: Njume Njinimbam Chi-Chang Sun.
Chapter 12: Software Testing Omar Meqdadi SE 273 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
1 Debugging and Testing Overview Defensive Programming The goal is to prevent failures Debugging The goal is to find cause of failures and fix it Testing.
1 Testing Course notes for CEN Outline  Introduction:  terminology and philosophy  Factors that influence testing  Testing techniques.
Lecture 11 Testing and Debugging SFDV Principles of Information Systems.
SOFTWARE TESTING Scope of Testing  The dynamic Indian IT industry has always lured the brightest minds with challenging career.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.

Software Engineering EKT 420 MOHAMED ELSHAIKH KKF 8A – room 4.
Jump to first page (c) 1999, A. Lakhotia 1 Software engineering? Arun Lakhotia University of Louisiana at Lafayette Po Box Lafayette, LA 70504, USA.
Chapter SIX Implementation, Testing and Pragmatics Making it a reality.
INF 111 / CSE 121: Software Tools and Methods Lecture Notes for Fall Quarter, 2007 Michele Rousseau Set 12 (Some slides adapted from Sommerville 2000 &
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
1 Program Testing (Lecture 14) Prof. R. Mall Dept. of CSE, IIT, Kharagpur.
Software Development Problem Analysis and Specification Design Implementation (Coding) Testing, Execution and Debugging Maintenance.
UNIT-1 SOFTWARE PRODUCT AND PROCESS: Introduction – S/W Engineering paradigm – Verification – Validation – Life cycle models – System engineering –
CPSC 873 John D. McGregor Session 9 Testing Vocabulary.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
Chapter 1 Software Engineering Principles. Problem analysis Requirements elicitation Software specification High- and low-level design Implementation.
Software Quality Assurance and Testing Fazal Rehman Shamil.
 Software Testing Software Testing  Characteristics of Testable Software Characteristics of Testable Software  A Testing Life Cycle A Testing Life.
Dynamic Testing.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Chapter 12: Software Testing Omar Meqdadi SE 273 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
VI SEM CSE UNIT IV SOFTWARE ENGINEERING PROJECT MANAGEMENT TESTING STRATEGIES By Mr. Vaibhav V. Bhujade DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING DMIETR,
Testing Overview Software Reliability Techniques Testing Concepts CEN 4010 Class 24 – 11/17.
CSC 395 – Software Engineering Lecture 27: White-Box Testing.
Software Test Plan Why do you need a test plan? –Provides a road map –Provides a feasibility check of: Resources/Cost Schedule Goal What is a test plan?
SOFTWARE TESTING LECTURE 9. OBSERVATIONS ABOUT TESTING “ Testing is the process of executing a program with the intention of finding errors. ” – Myers.
ANOOP GANGWAR 5 TH SEM SOFTWARE TESTING MASTER OF COMPUTER APPLICATION-V Sem.
Testing Integral part of the software development process.
Software Testing. Software Quality Assurance Overarching term Time consuming (40% to 90% of dev effort) Includes –Verification: Building the product right,
Rekayasa Perangkat Lunak Part-13
Software Testing.
Software Testing Techniques
Software Engineering (CSI 321)
Testing in CS1 Lennie Cooper Kevin Lawrence LeAndrew Davis
Software Testing (Lecture 11-a)
Lecture 09:Software Testing
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
In the Senior Design Center
Chapter 10: Testing and Quality Assurance
Presentation transcript:

Software Quality Assurance and Testing prof. A. C. (Alex) Telea Course description

Overview of this document 1.For whom is this course 2.Contents 3.What you should know after 4.Assignment 5.Grading

For whom is this course Software engineers (or people training to become one) Interested in testing and maintenance What you should know before: Software (detailed) design experience Good in at least one (object-oriented) language Experience with small…midsize software projects What will you know after: how to efficiently design and apply a test suite how to measure testability, maintainability (and a few other software metrics)

Contents Module 1: What is test engineering? why do we need test engineering how to model (and measure) quality tests, bugs, errors, faults testing from an economical perspective Several modules (subjects) Mapping module-lecture not strictly 1-to-1

Module 2: Static testing techniques software reviews and inspections deskchecks and walkthroughs formal verification automated static analysis Contents (cont.) Module 3: Design and implementation practices architecture vs design design quality predictors metrics (size, complexity, fan-in/out, cohesion, …) how to interpret software metrics

Module 4: Structural (white box) testing test categories (ordinary vs numerical code) what to look for when testing code coverage metrics (statement, branch, condition, path, loop, function, call, …) testing strategies Contents (cont.) Module 5: Behavioral (black box) testing the need to reduce the # test cases equivalence partitioning boundary value analysis timing and coordination

Module 6: Additional testing strategies integration testing (drivers and stubs) stress testing system testing when to stop testing Contents (cont.) Module 7: Test Management testing styles (pragmatic, pioneer, analysis, facilitating) test planning testing models and standards (cost of poor quality, TMap, TPI, TMM)

Grading based on a practical assignment: You are given: a real-world software tool (binary, source code, docs, input data) You are asked to: perform black-box (end-user level) and white-box (developer-level) testing on it answer several specific questions on the testing and quality of the tool write a report justifying all decisions made and obtained results Assignment

Assignment (cont.) += What the software does: Image inpainting target imagescratch imageresult image Your task: apply what you learn in the course to this software system! test the software (design and apply tests) assess the quality of the software

Assignment (cont.) Way of working Analyze the given software as if you were a real developer/tester in a real company You can work in groups of max. two persons you can use “pair programming” techniques No lab sessions: software testing and quality assessment is not an “exercise”, but real individual work requiring time, patience, eye for detail Be present at lectures: many examples/details related to your project will be explained you can ask questions on your assignment!

Grading Based on your report just as done in a real company so your report should be detailed, complete, realistic Report to be handed in after course exact (strict) deadline will be communicated during lecture Where you find all needed information: website: slides, assignment details, software to work on, references book: A Practitioner's Guide to Software Test Design (Lee Copeland; Artech House, 2003) can find open-source versions (see books.google.com) myself: