Think about your view of QA

Slides:



Advertisements
Similar presentations
Chapter 12 Prototyping and Testing Design of Biomedical Devices and Systems By Paul H. King Richard C. Fries.
Advertisements

Testing and Quality Assurance
Software Process Models
The System Development Life Cycle
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Testing: Who 3, What 4, Why 1, When 2, How 5 Lian Yu, Peking U. Michal Young, U. Oregon.
Requirements Analysis Concepts & Principles
SE 555 Software Requirements & Specification Requirements Validation.
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.
SE 555 Software Requirements & Specification 1 SE 555 Software Requirements & Specification Prototyping.
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
High Level: Generic Test Process (from chapter 6 of your text and earlier lesson) Test Planning & Preparation Test Execution Goals met? Analysis & Follow-up.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Introduction to Software Testing
1CMSC 345, Version 4/04 Verification and Validation Reference: Software Engineering, Ian Sommerville, 6th edition, Chapter 19.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Test Design Techniques
Effective Methods for Software and Systems Integration
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
Software Testing Lifecycle Practice
Chapter 1: Introduction to Software Testing Software Testing
CompSci 230 Software Design and Construction
Requirements Analysis
CPIS 357 Software Quality & Testing
CMSC 345 Fall 2000 Unit Testing. The testing process.
T. Dawson, TASC 9/11/13 Use of a Technical Reference in NASA IV&V.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Usability Evaluation June 8, Why do we need to do usability evaluation?
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Black Box Testing : The technique of testing without having any knowledge of the interior workings of the application is Black Box testing. The tester.
LECTURE 19 23/11/15 Software Quality and Testing.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
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.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
 System Requirement Specification and System Planning.
Software Testing. Software Quality Assurance Overarching term Time consuming (40% to 90% of dev effort) Includes –Verification: Building the product right,
Bernd Bruegge and Allen Dutoit Requirements Process The requirements process consists of two activities: Requirements Elicitation: Definition of the system.
What is a CONOPS anyway? Avoiding Brook’s “law”: “All major mistakes are made on the first day of the project”!
Software Testing.
Software Testing Basics
CMPE 280 Web UI Design and Development August 29 Class Meeting
Managing the Project Lifecycle
User-centred system design process
Topic for Presentaion-2
Systems Analysis and Design
Quality Management Perfectqaservices.
Object oriented system development life cycle
Verification and Validation
CHAPTER 2 Testing Throughout the Software Life Cycle
UNIT II.
Introduction to Software Testing
Lecture 09:Software Testing
Software life cycle models
Static Testing Static testing refers to testing that takes place without Execution - examining and reviewing it. Dynamic Testing Dynamic testing is what.
Software testing.
CS240: Advanced Programming Concepts
Software Engineering Practice: A Generic View
Software Testing Lifecycle Practice
Chapter 7 Software Testing.
Chapter 26 Estimation for Software Projects.
Presentation transcript:

Think about your view of QA The “contract” view of Requirements exhibit precise terms of the agreement not possible to get completely right but important to approach methods, tools, processes Wiegers “Rights and Responsibilities” (p 27) 5/23/2019 CSC 402, Fall 2000

Views of QA when we (developers) do not get it perfect: plan ahead by tighter control of scope in documents? defensive approach designed to keep the customer in line what motivates this approach? what is at stake? anecdotes? who is ultimately responsible for integrity of requirements (even if customer is flaky?) check Software Engineering Code of Ethics experience of requirements analysts and managers 5/23/2019 CSC 402, Fall 2000

Common Truth what is a reasonable approach to this reality? “fairness” not always the deciding factor what could possibly be more important? what is a reasonable approach to this reality? stick with strict interpretation of contract model similar to “freezing requirements,” waterfall approach prepare to litigate (make my day!) better QA built in? flexibility for scope built in (to the process itself!) allowance for “enough” QA to meet basic customer needs estimation based on methods and experience 5/23/2019 CSC 402, Fall 2000

Testing Throughout Lifecycle User Reqts Acceptance Test plan Acceptance Tests System Tests Functional Reqts System Test plan Architectural and Integration Test plans Integration Tests Detailed Design Unit Test plans Unit Tests Code 5/23/2019 CSC 402, Fall 2000

“Testing” during Requirements What is “testing?” add to your 402 journal list discover defects? show reliability (lack of defects)? must it be execution based? what are the implications of such a view? what is a “walkthrough,” really? 5/23/2019 CSC 402, Fall 2000

Testing Requirements Prototypes, analysis models, simulations good requirements specification is “testable?” what are we “testing” for? what “defects” can we possibly find? 5/23/2019 CSC 402, Fall 2000

value of “testing” requirements? ethics: do a “good job” planning tests (early) puts team in defect finding mode produce a knowledge store for later testing and analysis force deeper understanding of what your client wants increase “ownership” in the project by requirements team estimation of effort required to test (and other work) legal defense not so much “gotcha” for overbearing client :-) preparing for defense of other lawsuits or investigations (even insurance audits!) 5/23/2019 CSC 402, Fall 2000

Black Box Testing externally observable behavior Requirements to exhibit only: externally observable behavior system input / output system functionality what the user cares about in the domain of application 5/23/2019 CSC 402, Fall 2000

Design coverts a “black box” into a “white box” (or “clear box”) internals become visible (testable, analyzable) loop invariants for design and code dataflow analysis for design and code Black box tests project into the future requires knowledge, imagination, creativity you build a system that has not existed before! 5/23/2019 CSC 402, Fall 2000

Test Case Specification (See IEEE Standard 829) Generally: test case spec id test items what features, modules are being tested? include refs input specifications list inputs by value, range or name timing considerations 5/23/2019 CSC 402, Fall 2000

special procedural requirements inter-case dependencies output specs list output values and messages include response time if important environmental needs special requirements (h/w, s/w, staff...) special procedural requirements anything unusual that a tester needs to know inter-case dependencies any tests need to be executed before this one? (refs) 5/23/2019 CSC 402, Fall 2000

Test “Coverage” For code: statement, branch, path For requirements? implications? For requirements? similar concepts I think of the “state space” and how large that is is there some meaningful heuristic at this level? 5/23/2019 CSC 402, Fall 2000

choose a functional requirement trace functional reqt <- use case <- business reqt you must be able to do this to know the proper context possible to catch errors in this alone choose a “functional requirement” write a test case for normal use write a test case for abnormal, but expected use write a test case for a completely unexpected use check analysis models for consistency and accuracy and the document provides for acceptance tests present the document for early client review 5/23/2019 CSC 402, Fall 2000

Usability Testing “The validation of a system or a model through the use of prototypes and simulations by a user.” (Bruegge) Based on experiments looking at usability ease to learn to use system user time to accomplish a task rate of errors when user working on a task what about the election ballots? 5/23/2019 CSC 402, Fall 2000

Three types of typical usability tests: Scenario test developer presents user(s) with visionary scenario how quickly do users understand? what is their attitude towards the scenario? use paper mockups or simple prototyping envts 5/23/2019 CSC 402, Fall 2000

Prototype test Product test user(s) interact with a prototype vertical - implements a complete use case through the system horizontal - presents an interface for most use cases without providing much functionality Product test a functional version of the system 5/23/2019 CSC 402, Fall 2000

Basic Elements of Usability Test develop test objectives use of representative sample of end users use system in actual or simulated work environment involve end users controlled interrogation and probing of users by developer-experimenter collection and analysis of quantitative and qualitative results recommendations on how to improve system 5/23/2019 CSC 402, Fall 2000

Typical test objectives: compare two user interaction styles id best/worst features in scenario/prototype what help/training is needed for what users Problem: enrolling participants (Grudin90) project manager doesn’t want to lose control marketers don’t want to lose control end users have little time or don’t like to be studied 5/23/2019 CSC 402, Fall 2000