Workshop: Modeling Scenarios Using Data. Fiona Charles BCS SIGIST 22-Sept-2009

Similar documents
Black Box Software Testing (Academic Course - Fall 2001) Cem Kaner, J.D., Ph.D. Florida Institute of Technology

Agile Test Automation ICAgile

SIGiST Conference Presentation March 2016

OPTIMIZATION MAXIMIZING TELECOM AND NETWORK. The current state of enterprise optimization, best practices and considerations for improvement

AVOIDING SILOED DATA AND SILOED DATA MANAGEMENT

Training and Certifying Security Testers Beyond Penetration Testing

ITIL 2011 Foundation Course

Tonight s Agenda. CSC340: Requirements Engineering. Course Objectives. Requirements Engineering. Software Engineering. What is Software Engineering?

BECOME A LOAD TESTING ROCK STAR

Business Requirements Document (BRD) Template

Pre-K thru 2nd Grade Character Counts Assembly Sept. 24, 2010

Business Analysis in Practice

Essentials of Freight Forwarding Program

New Account Application

Key Insights and Top Tips on Engaging with OTAs. Informed by Fáilte Ireland meetings with a number of leading OTAs

Get the Most Bang for Your Buck with Digital Marketing.

DATA SHEET RSA NETWITNESS PLATFORM PROFESSIONAL SERVICES ACCELERATE TIME-TO-VALUE & MAXIMIZE ROI

Where's the Beef from Enterprise Structured Content

Plan Smart: Don t Leave Your End of Year Campaigns to Chance Convio, Inc. Page 1

10 Tips for Real Estate Agents looking for an Internet Fax Service

PayFirst Salon User Guide:

MIS 3504 Digital Design and Innovation

August Objectives. Agenda. Promoting Your Professional Development with ACMPE. Describe the foundation and value of certification and fellowship

Analysis for Testing. by: rex Black. quality matters Q3 2009

Agile Tester Foundation E-learning Course Outline

Document Control Information

Request for Qualifications for Audit Services March 25, 2015

MISC/GENRAL. What is your Return Policy? Does AFAA offer insurance to Instructors? Or have a discounted partnership?

Douglas Hoffman. CAST) July, Why Tests Don t Pass Conference of the Association for Software Testing (CAST

Collaboration at Scale: Prioritizing a Backlog. 13-Dec-2017

: How does DSS data differ from operational data?

Questions Frequently Asked by Consumers PartyLite Preferred Program Consumer Questions

System Models & Simulation

CATCH ERRORS BEFORE THEY HAPPEN. Lessons for a mature data governance practice

Douglas Hoffman. BACS, MSEE, MBA, ASQ Fellow, ASQ-CSQE, ASQ-CMQ/OE

Qualification Specification for the Knowledge Modules that form part of the BCS Level 4 Software Developer Apprenticeship

HSA Contribution Guide. How to set up and send employer-directed HSA contributions

Macros I Use Every Day (And You Can, Too!)

ArcGIS in the Cloud. Andrew Sakowicz & Alec Walker

Douglas Hoffman. BACS, MSEE, MBA, ASQ Fellow, ASQ-CSQE, ASQ-CMQ/OE

The Need for a Holistic Automation Solution to Overcome the Pitfalls in Test Automation

2/29/2012. Part 1: Networking overview Part 2: Data transfer methods Part 3: Communication Channels

Deliver robust products at reduced cost by linking model-driven software testing to quality management.

Frequently Asked Questions

The Power of the Inbox Tips and Tricks for Successful Marketing

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis

BENEFITS of MEMBERSHIP FOR YOUR INSTITUTION

Professional (CBAP) version 3

HSA Contribution Guide. How to set up and send employer-directed HSA contributions

Expert Test Manager: Operational Module Course Outline

Sample Exam. Advanced Test Automation Engineer

!!!!!!! OWASP VETERANS TRAINING GRANT PROPOSAL BLACKSTONE VETERANS HIRING INITIATIVE: OWASP GRANT PROPOSAL

Operator introduction: Welcome to the Hotspot Customer Call I ll now turn the call over to

Driving Global Resilience

The Procrastinator's Guide to Year-End Giving - Part I

Ecommerce Fashion Marketing Checklist. /smartrmail

Advanced Security Tester Course Outline

Smart grid provides consumers with unprecedented access and control of their

Sharing Data with Your Accountant or Your Client

Time Tested. Testing Improved. The Materials

Frequently Asked Questions ORDERING ON MYHERBALIFE.COM INDIA, January 2013

7 Essentials Content. A quick review of your 7 Essentials Communications.

Meaning & Concepts of Databases

Oracle. Loyalty Cloud Extending Loyalty. Release 13 (update 18B)

Going Global: Planning Meetings Abroad

THE DEFINITIVE GUIDE

The information we collect

+ CORE SYSTEM DISCOUNTS + INTRODUCING JHA GET SMART SM JHA GET SMART SM

Purchase Order User Manual

Black-box Testing Techniques

In-class activities: Sep 25, 2017

The Evolution of Public-Private Partnerships in Canada

YourStore A GUIDE TO

USING DATA MODEL PATTERNS FOR RAPID APPLICATIONS DEVELOPMENT

FY2017 FCC Form 470 and Competitive Bidding

COMPLETION OF WEBSITE REQUEST FOR PROPOSAL JUNE, 2010

Continuing Professional Development (CPD) Policy

CIO Forum Maximize the value of IT in today s economy

Sample Exam. Advanced Test Automation - Engineer

Black Box Software Testing (Academic Course - Fall 2001) Cem Kaner, J.D., Ph.D. Florida Institute of Technology

Frequently Asked Questions

New user introduction to Attend

LESSON 10 Accounts Payable Setup

QuickGifts Merchant Gift Card Program User Guide Updated: March 12, 2013

GETTING STARTED WITH OD MARKETING TOOLKIT

VMware BCDR Accelerator Service

Shift Left, Automation, and Other Smart Strategies for Getting Ahead in QA

Contents. Management issues. Technical issues. Mark Fewster.

Sage One Accountant Edition. User Guide. Professional user guide for Sage One and Sage One Accountant Edition. Banking. Invoicing. Expenses.

Total Cost of Ownership: Benefits of the OpenText Cloud

A Mission Critical Protection Investment That Pays You Back

ER/Studio Case Study. Catalina. Deploys ER/Studio to establish modeling standards for the data warehouse

The 7 Habits of Highly Effective API and Service Management

Audit and Compliance Committee - Agenda

HOW TO WRITE USER STORIES (AND WHAT YOU SHOULD NOT DO) Stuart Ashman, QA Director at Mio Global Bob Cook, Senior Product Development Manager, Sophos

tyuiopasdfghjklzxcvbnmqwertyuiopas dfghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

Administrative Duties

This webpage sets out our main considerations when investigating complaints about faulty handsets.

Telephone Bing amazon gift card limit P.O. Box 189 Navan, ON, K4B 1J4 Canada. Sitemap

Cisco Systems CITEIS and DevOps for an Agile, Adaptive Enterprise PANEL:

Transcription:

Workshop: Modeling Scenarios Using Fiona Charles BCS SIGIST 22-Sept-2009

Who I Am: Fiona Charles - Test Consultant and Test Manager, President and Principal Consultant of Quality Intelligence, Inc. I teach organizations to match their software testing to their business risks and opportunities With 30+ years experience in software development and integration projects, I have managed testing and QA, and consulted on testing on many projects for clients in retail, banking, financial services, health care, and telecommunications. My articles on testing and test management appear frequently in Better Software Magazine and on StickyMinds.com. I edited The Gift of Time (Dorset House, 2008), and am co-founder and host of the Toronto Workshop on Software Testing, an annual peer conference for senior test practitioners. I advocate, design, implement and teach pragmatic, humane practices to deliver software worth having in even the most difficult project circumstances Fiona Charles 2009 Workshop: Modeling Scenarios Using 2

Today s menu Test scenarios & modeling Modeling based on data Scenario modeling exercise Conclusions Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 3

Scenario testing is a powerful way to find bugs that matter to stakeholders Exercise a system with real sequences of transactions and events Find problems in the end-to-end processing that deep functional testing can miss Represent various stakeholders points of view Give stakeholders a test they can relate to Fiona Charles 2009 Workshop: Modeling Scenarios Using 4

What do we mean by scenario? An outline or model of an expected or supposed sequence of events The American Heritage Dictionary of the English Language: Fourth Edition, 2000. A scenario is a hypothetical story, used to help a person think through a complex problem or system A scenario test is a test based on a scenario. Cem Kaner, An Introduction to Scenario Testing, 2003 Fiona Charles 2009 Workshop: Modeling Scenarios Using 5

Modeling for scenario testing operates at two principal levels The overall model for the test of the system or solution (and its systems context) The scenarios that encapsulate the tests to be evaluated Fiona Charles 2009 Workshop: Modeling Scenarios Using 6

Why modeling? In every test, we make choices What to include What to leave out Consciously modeling a test gives us a way to direct, control, examine, and explain those choices Every model is ultimately the expression of one thing we hope to understand in terms of another that we do understand. Gerald M. Weinberg, An Introduction to General Systems Thinking Fiona Charles 2009 Workshop: Modeling Scenarios Using 7

Some useful model types for scenario testing Business operations Day (week, month, mock-year) in the life Model office or business Entity lifecycles or flows Customer experience Lifecycle of a bank account Static Semi-static Dynamic Functional or organizational decomposition Functional areas within the system or business (Ordering, Inventory Management, Billing, etc.) Processes in each area (Order capture, provisioning, etc.) Functions within each process (Enter, edit, cancel order, etc.) Fiona Charles 2009 Workshop: Modeling Scenarios Using 8

It s a good idea always to combine 2 or more models Each model type can act as a source of test ideas Different models can act as cross-checks on each other, generating ideas for complementary scenarios, e.g., Combining the real-world view of a business operations model with the systems view of a model based on the data Fiona Charles 2009 Workshop: Modeling Scenarios Using 9

A conceptual framework for modeling scenarios based on categories of data Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 10

What does a model framework do? Scenarios are stories modeling some aspect of the system A conceptual framework gives you a way to structure the stories Analyze the test requirements: powerful tool for driving out variations to feed scenarios Design the test model You can create building blocks for reuse in different combinations Helps to ensure you don t miss anything important Fiona Charles 2009 Workshop: Modeling Scenarios Using 11

You can construct a conceptual framework to facilitate developing any model Ask what are the key constituent elements of this model? Create a spreadsheet or other structure to order the elements Use the elements to capture variations and apply the model Fiona Charles 2009 Workshop: Modeling Scenarios Using 12

A data-driven model focuses on the data and data interfaces Inputs, outputs and reference data Points of entry to the system or integrated solution Frequency of changes to data Who or what initiates or changes data (actors) variations (including actors) Fiona Charles 2009 Workshop: Modeling Scenarios Using 13

Benefits of a data-driven model Represents a systems view that can be rounded out using models based on a business view Identifies principal components of the execution model for the test: Setup data Entry points Verification points Events to schedule Easy to structure and analyze Fiona Charles 2009 Workshop: Modeling Scenarios Using 14

July 08 M T W T F S S Conceptual framework for modeling a scenario test Actor(s) 1 2 3 4 5 6 1 1 1 1 7 8 9 1 1 1 10 1 12 23 24 25 26 27 28 29 20 21 2 3 34 5 6 7 8 9 0 1 Date & Time Context System system entry point Actor(s) System system entry point Test Bed Context Transaction Transaction verification Point Dynamic A high-level framework based on data is useful for modeling a test of a transactional system (or multi-system solution). Reference (Static) Semi-static Event Event system entry point External source Actor(s) System Event Fiona Charles 2009 Workshop: Modeling Scenarios Using 15

At the most basic level, we want scenarios to test the outcome of system transactions. Transactions drive dynamic data (i.e., data that changes in the course of the test). Transactions represent the principal business functions the solution is designed to support, e.g. sales, returns, loyalty point redemptions, customer service adjustments. Transaction verification Point Dynamic Fiona Charles 2009 Workshop: Modeling Scenarios Using 16

A transaction could be initiated by a human actor or by the system. System Actor(s) system entry point Transaction verification Point Dynamic There may be more than one actor involved in a transaction, e.g., a system user and a customer. Fiona Charles 2009 Workshop: Modeling Scenarios Using 17

Many scenarios will have multiple transactions. Actor(s) System system entry point Transaction verification Point System Actor(s) system entry point Transaction Dynamic Subsequent transactions can affect the outcome by acting on the dynamic data created by earlier related transactions. Fiona Charles 2009 Workshop: Modeling Scenarios Using 18

Transactions operate in a context of test bed data Actor(s) System system entry point Transaction verification Point Reference test bed data is static (doesn t change in the course of the test), e.g., user profiles, frequent shopper (loyalty) points awarded per dollar spent, sales tax rates. System system entry Actor(s) point Test Bed Context Transaction Reference (Static) Dynamic Deciding which data should be static is a test strategy decision. Fiona Charles 2009 Workshop: Modeling Scenarios Using 19

The test bed also contains semi-static data, which can change the context and affect the outcomes of transactions. System system entry Actor(s) point Actor(s) System system entry point Test Bed Context Transaction Transaction verification Point Dynamic Semi-static data changes occasionally during testing, as the result of an event. Examples include items for sale, prices and promotions. Reference (Static) Semi-static Determining which data will be semi-static, and how frequently it will change, is a test strategy decision. Fiona Charles 2009 Workshop: Modeling Scenarios Using 20

Events affect transaction outcomes by changing the system or data context, or by acting on the dynamic data Events can represent: Actor(s) System system entry point Actor(s) System system entry point Test Bed Context Transaction Transaction verification Point Dynamic periodic or occasional business processes, e.g., rate changes, price changes, weekly promotions, month-end aggregations Reference (Static) Semi-static Event Event happenings, such as system interface failures external business exceptions, such as a shipment arriving damaged, or a truck getting lost Event Actor(s) system entry point System External source Fiona Charles 2009 Workshop: Modeling Scenarios Using 21

July 08 M T W T F S S Scenarios also operate within a context of date and time Actor(s) 1 2 3 4 5 6 1 1 1 1 7 8 9 1 1 1 10 1 12 23 24 25 26 27 28 29 20 21 2 3 34 5 6 7 8 9 0 1 Date & Time Context System system entry point Actor(s) System system entry point Test Bed Context Transaction Transaction verification Point Dynamic The date/time a transaction or event occurs can have a significant impact on a scenario outcome. Reference (Static) Semi-static Event Event system entry point External source Actor(s) System Event Fiona Charles 2009 Workshop: Modeling Scenarios Using 22

Categorizing the data determines each type s role in the test, and gives us the overall model Reference data sets the context for scenarios and their component transactions A scenario begins with an event or a transaction Transactions have expected results Events operate on transactions and affect their results A prior event changes transaction context, e.g., an overnight price change A following event changes the scenario result and potentially affects the transaction, e.g., product not found in the warehouse Actors influence expected results User privileges Customer discount or tax status Fiona Charles 2009 Workshop: Modeling Scenarios Using 23

Example from Point-of-sale System test Fiona Charles 2009 Workshop: Modeling Scenarios Using 24

Scenario modeling exercise Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 25

Exercise and Debrief Fiona Charles 2009 Workshop: Modeling Scenarios Using 26

Conclusions Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 27

Situations where you should consider scenario testing As part of an overall test strategy that includes different kinds of tests For Acceptance tests of business systems UAT Vendor acceptance End-to-end systems integration tests When you don t have detailed knowledge to do under-the-covers testing and have no way to get it Inadequate documentation Restricted access to people who wrote the software Time pressures Fiona Charles 2009 Workshop: Modeling Scenarios Using 28

Critical success factors for scenario testing Domain knowledge Testers with experience in the domain Business input and scenario review Industry books (Cem Kaner s suggestion) A model with a framework that fits the type of application A data-driven model works well for transactional systems For other types of applications, e.g., a desktop publishing system, you would need to create a different model and framework, such as one based on usage patterns Structured analysis Building-block concept: design and build varied and complex tests from elements Begin testing with the simplest cases before adding complexity Fiona Charles 2009 Workshop: Modeling Scenarios Using 29

Scenario testing risks Miss important bugs you could find with under-the-covers or deep function testing Difficult to diagnose bugs, especially if you go too complex too soon Choosing a model that is too restrictive Choosing a model that is too expansive (and expensive) Falling in love with one model type and missing the benefits of others Fiona Charles 2009 Workshop: Modeling Scenarios Using 30

Further reading Cem Kaner, An Introduction To Scenario Testing; Florida Tech, 2003 http://www.kaner.com/pdfs/scenariointrover4.pdf Hans Buwalda, Soap Opera Testing; Better Software, February 2004 http://www.stickyminds.com Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 31

? Wrap-up questions and discussion Photo Fiona Charles 2008, 2009 Fiona Charles 2009 Workshop: Modeling Scenarios Using 32