Thomas L. Gilchrist Testing Basics Set 3: Testing Strategies By Tom Gilchrist Jan 2009.

Slides:



Advertisements
Similar presentations
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Advertisements

Requirements Specification and Management
Systems Development Environment
Software Quality Assurance Plan
Software Process Models
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Alford Academy Business Education and Computing1 Advanced Higher Computing Based on Heriot-Watt University Scholar Materials Implementation and Testing.
Documentation Testing
© Prentice Hall CHAPTER 9 Application Development by Information Systems Professionals.
School of Computing, Dublin Institute of Technology.
1.1 Introduction: concepts and overview of systems development IMS Information Systems Development Practices.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Chapter 14 Systems Development. Agenda Reasons for Change System Development Life Cycle (SDLC) Prototyping Rapid Application Development (RAD) Object.
Computers: Tools for an Information Age
CASE Tools CIS 376 Bruce R. Maxim UM-Dearborn. Prerequisites to Software Tool Use Collection of useful tools that help in every step of building a product.
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
DITSCAP Phase 2 - Verification Pramod Jampala Christopher Swenson.
Introduction to Systems Analysis and Design
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
Introduction to Computer Technology
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 14 Systems Analysis and Design: The Big Picture.
Systems Analysis and Design: The Big Picture
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
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.
System Analysis and Design
Maintaining Information Systems Modern Systems Analysis and Design.
1 BTEC HNC Systems Support Castle College 2007/8 Systems Analysis Lecture 9 Introduction to Design.
CPIS 357 Software Quality & Testing
Information Systems Analysis and Design
ITEC224 Database Programming
CIS 321—IS Analysis & Design Chapter 4: Analysis— Investigating System Requirements.
System DevelopmentInformation Systems for Management1 Chapter 9 System Development.
Don’t Just “Test”… Validate!!
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
How To Build a Testing Project 1 Onyx Gabriel Rodriguez.
SOFTWARE TESTING Scope of Testing  The dynamic Indian IT industry has always lured the brightest minds with challenging career.
Chapter 10 Information Systems Analysis and Design

Testing Workflow In the Unified Process and Agile/Scrum processes.
SOFTWARE SYSTEMS DEVELOPMENT 4: System Design. Simplified view on software product development process 2 Product Planning System Design Project Planning.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Systems Analysis and Design in a Changing World, Fourth Edition
Software Development Life Cycle by A.Surasit Samaisut Copyrights : All Rights Reserved.
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.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Chapter 11 Managing Application Development. Agenda Application management framework Application management issues Criteria for development approach Development.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Software Engineering Lecture # 1.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
Software Testing and Quality Assurance 1. What is the objectives of Software Testing?
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Lectures 2 & 3: Software Process Models Neelam Gupta.
T EST T OOLS U NIT VI This unit contains the overview of the test tools. Also prerequisites for applying these tools, tools selection and implementation.
Final Review Systems Analysis and Design in a Changing World, 4th Edition 1 Final Review u Chapters 1-6, 8-10, 13, 14, 15 u Multiple choice, short answer,
Software Design and Development Development Methodoligies Computing Science.
Certified Software Tester How To Build a Testing Project, Part 1.
CIS 375 Bruce R. Maxim UM-Dearborn
CSCE 548 Secure Software Development Risk-Based Security Testing
CASE Tools and Joint and Rapid Application Development
DT249/4 Information Systems Engineering Lecture 0
Business System Development
Introduction to Software Testing
CHAPTER 10 METHODOLOGIES FOR CUSTOM SOFTWARE DEVELOPMENT
Chapter 8 Software Evolution.
Modern Systems Analysis and Design Third Edition
Presentation transcript:

Thomas L. Gilchrist Testing Basics Set 3: Testing Strategies By Tom Gilchrist Jan 2009

Thomas L. Gilchrist Testing Strategy

Thomas L. Gilchrist Testing Strategy The basis for the entire testing effort. It should be developed for each project.

Thomas L. Gilchrist Test Strategy Questions Who will conduct testing? What type of project? What type of software? When will testing occur? What are the tradeoffs? What is the project’s scope? What are the Critical Success Factors?

Thomas L. Gilchrist 1. Types of Projects …different approaches… …combinations of approaches...

Thomas L. Gilchrist Types of Projects Traditional System Development Client / Server Interative Development / Prototyping / CASE Object Oriented System Maintenance / Legacy Systems Purchased/Contracted Software (COTS)

Thomas L. Gilchrist 2. Types of Software …characterized by use...

Thomas L. Gilchrist Types of Software Batch Process Control Graphical User Interface Object Oriented Event Control Procedure Control Expert Systems Multimedia Advanced Mathematical Models Message Processing Diagnostic Software Sensor and Signal Processing

Thomas L. Gilchrist Types of Software Simulation Data Base Management Data Acquisition Data Presentation Decision and Planning Aids Pattern and Image Processing Computer system software Software development tools

Thomas L. Gilchrist Special Considerations for Testing GUI Applications Client Server Systems Legacy Systems (Object Oriented Systems)

Thomas L. Gilchrist Client / Server Testing …Risks… …special considerations...

Thomas L. Gilchrist Personal Computing

Thomas L. Gilchrist Mainframe Computing Mainframe in a Data Center Data Entry Terminals

Thomas L. Gilchrist Client/Server…Distributed Computing Server Client Network

Thomas L. Gilchrist Client / Server Risks Organization not ready for technology Inadequate server procedures Improper application selection Inadequate client processing methods Inadequate interface procedures Lack of consistency in processing Improper data usage

Thomas L. Gilchrist Client / Server Risks Inadequate security Lack of integration Inadequate client / server administration

Thomas L. Gilchrist Client / Server Considerations Control Complexity Rapid Development Timeframes New Skills Required Higher Level of User Involvement

Thomas L. Gilchrist Legacy Systems …maintenance techniques...

Thomas L. Gilchrist Legacy System Testing Considerations Large, complex programs –Decide what to test Incomplete System Documentation –System requirements –User manuals –System design documentation –Procedure manuals Continuous maintenance –Regression testing requirement

Thomas L. Gilchrist 3. What is Project’s Scope? …delimits testing efforts...

Thomas L. Gilchrist Project Scope Which Processes? Interfaces? Other Systems? Manual Processes? System Test Boundary System Under Test

Thomas L. Gilchrist Project Scope Considerations Scope of new systems development –Automating manual business process? –Which business processes will/will not be affected? –Which business areas will/won’t be affected? –Interfaces to existing systems? –Existing systems will/won’t be affected?

Thomas L. Gilchrist Project Scope Considerations Scope of changes to existing systems- –Corrective only? –Maintenance reengineering standards? –Fix to known latent defects in addition to enhancements? –Other systems affected? –Risk of regression?

Thomas L. Gilchrist 4. When will testing occur? …life cycle phase...

Thomas L. Gilchrist Test Process “V” Diagram Business Need Define Requirements Design System Build System Acceptance Test System Test Integration Test Unit Test

Thomas L. Gilchrist Test Process “V” Diagram Business Need Define Requirements Design System Build System Verify Acceptance Test System Test Integration Test Unit Test Verify Validate Validates

Thomas L. Gilchrist Test Process “V” Diagram Business Need Define Requirements Design System Build System Verify Acceptance Test System Test Integration Test Unit Test Verify Validate Validates Test Planning Test Objectives Test Execution (Static) Test Execution (Dynamic) & Test Reporting

Thomas L. Gilchrist Test Terms Functional –what a system does –based on external test cases Black Box Testing –without the knowledge of how system is constructed –data driven

Thomas L. Gilchrist Functional or Black Box Testing ActionActual ResultExpected Result Data InData OutputExpected Data Output 2+2=

Thomas L. Gilchrist Test Terms Structural Testing –what a system is –based on internal program logic or –based on system architecture White/Glass Box Testing –testing based on knowledge of internal structure or logic. Usually logic driven.

Thomas L. Gilchrist Structural or White Box Testing Logical Test Cases Perform Test Logic Works? If X = curr-date then set next_val to 03 else set next_val to 05

Thomas L. Gilchrist Functional AND Structural testing is needed to effectively test systems.

Thomas L. Gilchrist When will testing occur? Testing should occur throughout life cycle Requirements Phase Activities –Determine test strategy –Determine adequacy of requirements –Generate functional test conditions Design Phase Activities –Determine consistency of design with requirements –Determine adequacy of design –Generate structural and functional test conditions

Thomas L. Gilchrist When will testing occur? Build Phase Activities –Determine consistency with design –Determine adequacy of implementation –Generate structural and functional test conditions for programs / units Test Phase activities –Determine adequacy of test plan –Test application system

Thomas L. Gilchrist When will testing occur? Installation Phase Activities –Place tested system into production Maintenance Phase Activities –Modify and retest

Thomas L. Gilchrist Prototyping Considerations Requirement Gathering Quick Design Build Prototype Evaluate and Refine Requirement Engineer Product

Thomas L. Gilchrist Prototype Testing / Timing Focus on the nature of changing requirements and assumptions Carefully track revisions Remember after prototyping comes construction- and traditional forms of testing still occur.

Thomas L. Gilchrist 5. Critical Success Factors …what defines success...

Thomas L. Gilchrist Critical Success Factors Correctness Authorization Data Integrity Audit Trail Continuity of Processing Service Levels Access Control Methodology

Thomas L. Gilchrist Critical Success Factors Reliability Ease of Use Maintainable Portable Coupling Performance Ease of operations