Download presentation
Presentation is loading. Please wait.
Published byChad Banks Modified over 9 years ago
1
March 13, 2001CSci 250 - Clark University1 CSci 250 Software Design & Development Lecture #15 Tuesday, March 13, 2001
2
March 13, 2001CSci 250 - Clark University2 Class Format for Today §Announcements §Return & review midterm exam §Review course evaluations §Questions §Begin Chapter 9 Lecture
3
March 13, 2001CSci 250 - Clark University3 Announcements Welcome back from Spring break! §Reminder: Design documents due Thursday, March 15th §Implementation Plan - turn in with Test Plan (we’ll discuss on Thursday) §Possibility I might teach CSci 201 (Proseminar in Comp. Sci.) next fall - Confirmation should come in April
4
March 13, 2001CSci 250 - Clark University4 Review §Midterm exam results §Course evaluation results
5
March 13, 2001CSci 250 - Clark University5 Questions? §About the midterm exam §About design assignment §About Content Index §Anything else?
6
March 13, 2001CSci 250 - Clark University6 Chapter 9 Software Testing
7
March 13, 2001CSci 250 - Clark University7 Introduction §Definition: What is software testing? l The process of finding differences between expected and observed behavior (How do we know what’s expected?) l A systematic attempt to find errors in a planned way §Why do we need to test software?
8
March 13, 2001CSci 250 - Clark University8 Testing Characteristics §Impossible to completely test a non-trivial system -- Why? §Testing is not decidable §Needs to be performed within time and budget constraints: l Systems are deployed without being fully tested l Some faults are discovered by end user
9
March 13, 2001CSci 250 - Clark University9 Goals & Results of Testing §Goals: l To “break” the system l To find defects l To find differences between expected behavior (based on system models) & observed behavior §How do we define a successful test? §Results: l When differences are found, developers either modify the system to correct a defect, or update the system model to reflect the state of the system
10
March 13, 2001CSci 250 - Clark University10 Types of testing §Unit testing: l Based on object model l Test individual components stand-alone §Structural testing: l Based on system design l Integration testing: individual tested components are tested together l System structure testing: culmination of integration testing involving all components
11
March 13, 2001CSci 250 - Clark University11 Types of testing continued §System testing: l Functional testing: Based on Use Cases from Requirements Test functionality l Performance testing: Based on Non-functional requirements test system performance l Acceptance testing: Based on Requirements and Functional Specifications Performed by the Client
12
March 13, 2001CSci 250 - Clark University12 Who does the testing? §Not a good idea to have a new or inexperienced person doing testing §Tester must have detailed knowledge of whole system, from Requirements to system design, through implementation §Also not a good idea to have a developer test his/her own code -- Why not?
13
March 13, 2001CSci 250 - Clark University13 Testing Terminology §Software Reliability: the probability that a software system will not cause the failure of the system for a specified time under specified conditions §Component: any part of system that can be isolated for testing §Failure, Error §Fault / defect / bug
14
March 13, 2001CSci 250 - Clark University14 Terminology Continued §Test Case: a set of inputs and expected results that exercises a component with the purpose of causing failures and detecting faults. §Test Stub: used to test the caller §Test Driver: used to test the component called §Correction: change to a component with the intent of repairing a fault; may introduce new faults!
15
March 13, 2001CSci 250 - Clark University15 QC / QA Techniques §Fault Avoidance: prevent occurrence of errors & failures by finding faults in the system before release (to QA) §Fault Detection: find faults, but do not try to recover from failures. Usually applied during development. §Fault Tolerance: recovery from failure while the system is still executing
16
March 13, 2001CSci 250 - Clark University16 For next time: §Continue lecture on Testing §Read Chapter 9 & bring questions to class. §We’ll also talk about: l Test Planning l Implementation Planning
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.