Economic Perspectives in Test Automation: Balancing Automated and Manual Testing with Opportunity Cost Paper By – Rudolf Ramler and Klaus Wolfmaier Presented.

Slides:



Advertisements
Similar presentations
Automating Software Module Testing for FAA Certification Usha Santhanam The Boeing Company.
Advertisements

Copyright 2005 by Thomson Learning, Inc. Chapter 6 Credit Policy and Collections Order Order Sale Payment Sent Cash Placed Received Received Accounts Collection.
Test Yaodong Bi.
Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
Defining activities – Activity list containing activity name, identifier, attributes, and brief description Sequencing activities – determining the dependencies.
Stoimen Stoimenov QA Engineer SitefinityLeads, SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
Engineering Secure Software. The Power of Source Code  White box testing Testers have intimate knowledge of the specifications, design, Often done by.
CAPITAL BUDGETING AND CAPITAL BUDGETING TECHNIQUES FOR ENTERPRISE Chapter 5.
F21DF1 : Databases & Information SystemsLachlan M. MacKinnon & Phil Trinder Introduction to Information Systems Databases & Information Systems Lachlan.
Training Resource Manual on Integrated Assessment Session UNEP-UNCTAD CBTF Introduction to Integrated Assessment Session 1.
Week 1 intro to PM Project Management Introduction to Project Management and the Software Development Lifecycle Week 1 Winter quarter 1/7/02 SOS.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Execution and Reporting Adrian Marshall.
F29IF2 : Databases & Information Systems Lachlan M. MacKinnon The Domain of Information Systems Databases & Information Systems Lachlan M. MacKinnon.
MSIS 110: Introduction to Computers; Instructor: S. Mathiyalakan1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
© Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks1 7.1 User Centred Design (UCD) Software development should focus on the needs.
SE is not like other projects. l The project is intangible. l There is no standardized solution process. l New projects may have little or no relationship.
PROJECT EVALUATION. Introduction Evaluation  comparing a proposed project with alternatives and deciding whether to proceed with it Normally carried.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Software Testing Prasad G.
Introduction to Computer Technology
SEG Software Maintenance1 Software Maintenance “The modification of a software product after delivery to correct faults, to improve performance or.
CS527: (Advanced) Topics in Software Engineering Overview of Software Quality Assurance Tao Xie ©D. Marinov, T. Xie.
Information Systems Planning
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Software Quality Assurance Lecture #8 By: Faraz Ahmed.
© 2012 Pearson Prentice Hall. All rights reserved. Balanced Scorecard: Quality and Time —modified by CB.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Paper 484 Penny F. Dakhil 1 Session 484 Managing a Portfolio of Projects Penny Dakhil Program Manager HP Corporaate IT Planning and Execution Roseville.
Software Project Management
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
System Planning- Preliminary investigation
Chapter 24 Responsibility Accounting and Performance Evaluation
Software Testing Course Shmuel Ur
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
16 1 Installation  After development and testing, system must be put into operation  Important planning considerations Costs of operating both systems.
© 2012 Pearson Prentice Hall. All rights reserved. Balanced Scorecard: Quality and Time —modified by CB.
Principles of Information Systems, Sixth Edition Systems Design, Implementation, Maintenance, and Review Chapter 13.
Integrated Risk Management Charles Yoe, PhD Institute for Water Resources 2009.
CHAPTER 13 Acquiring Information Systems and Applications.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
Testing strategy of DILIGENT 4D Soft Ltd.. 4D SOFT DILIGENT-EGEE Interaction - Content and Metadata Management and Testing meeting CERN, 16th December.
Systems Analysis and Design in a Changing World, Fourth Edition
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Lecture 4. IS Planning & Acquisition To be covered: To be covered: – IS planning and its importance Cost-benefit analysis Cost-benefit analysis Funding.
Quantitative Project Risk Analysis 1 Intaver Institute Inc. 303, 6707, Elbow Drive S.W., Calgary AB Canada T2V 0E5
© 2009 Pearson Prentice Hall. All rights reserved. Quality Cost.
Project Portfolio Management Business Priorities Presentation.
Basics of Capital Budgeting. An Overview of Capital Budgeting.
Principles of Information Systems, Sixth Edition 1 Systems Design, Implementation, Maintenance, and Review Chapter 13.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
WERST – Methodology Group
Prototyping life cycle Important steps 1. Does prototyping suit the system 2. Abbreviated representation of requirements 3. Abbreviated design specification.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Continual Service Improvement Methods & Techniques.
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.
Welcome to Software Project Management. CONVENTIONAL SOFTWARE MANAGEMENT The BEST and WORST thing about software is its flexibility. 1.Software development.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Performance Testing - LR. 6/18/20162 Contents Why Load Test Your Web Application ? Functional vs. Load Web Testing Web-Based, Multi-Tiered Architecture.
Advanced Software Engineering Dr. Cheng
Balanced Scorecard: Quality, Time, and the Theory of Constraints
Quantitative Project Risk Analysis
A test technique is a recipe these tasks that will reveal something
Software visualization and analysis tool box
Tour VII: Change Management
Knowing When to Stop: An Examination of Methods to Minimize the False Negative Risk of Automated Abort Triggers RAM XI Training Summit October 2018 Patrick.
White Box testing & Inspections
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

Economic Perspectives in Test Automation: Balancing Automated and Manual Testing with Opportunity Cost Paper By – Rudolf Ramler and Klaus Wolfmaier Presented By – Pallavi Gulati

Topics Why Automated Testing? Simplistic Cost Model for deciding between Automated vs. Manual Testing Flaws in the Simplistic Cost Model New Model based on Opportunity Cost Benefits offered by the new model Future Plans

Why the need to Automate Tests? Testing accounts for at least 50% of total project cost Fast-paced iterative development Shrinking schedules and budgets Test Automation proposed to reduce testing costs

Advantages - Automated Tests Reduces overall cost of RUNNING tests Though some initial cost required for writing automated tests Increases the number of tests run Increases frequency at which tests are run Incremental cost of test running is less Major concern in deciding whether to fix a particular bug or not

Disadvantages - Automated Tests Can not automate every test case – timing-related, appearance, user-friendly, some system & integration test cases, involving different hardware setups May not catch new bugs, targeted towards regression bugs Higher latency as compared to manual testing which can start immediately

When to go for automation? How do managers generally decide when to automate? Decision is based on factors like: Efforts required to run manual test Frequency of testing Cost of third-party / in-house developed tool Efforts required to write automated tests

Simplistic Cost Model Vm = Estimated Cost of designing manual tests Am = Overall cost of manual testing for some # of times Va = Estimated Cost of designing automated tests (may also include cost of test tool) Aa = Overall cost of automated testing for some # of times

Flaws - Simplistic Cost Model Manual & Automated Testing are not comparable Exploring new functionality vs regression testing Only costs are analyzed not benefits Manual testing starts early in the process but some latency in automated testing All test cases & executions are considered equal Project Context (budget, resources) not considered Misses additional cost factors like training on the testing tool, new process adaptation

Why automated tests fail to provide expected benefits? Due to flaws in estimation using the Simplistic Cost Model and other factors like: Failure to understand that automated tests are targeted for regression bugs Gross underestimation of the effort required to develop automated tests Practically no allocation of efforts for maintaining automated tests

When to automate? vs. What to automate? It does not help to automate every test Need to decide trade-off between automated and manual testing Alternative - Opportunity Cost Model

Opportunity Cost Model Consider manual & automated test cost Decide how many manual test cases should be automated Pick those which will give maximum benefit / risk mitigation / coverage Project budget & deadlines considered Looks something like...

Opportunity Cost Model Va = 1 hour to automate 1 test 0 min to run 1 automated test 0 min to come up with 1 manual test Dm = 15min to execute 1 manual test

Restriction 1

Restrictions 2 and 3

Target Function Ra = Risk Mitigation for automated testing Rm = Risk Mitigation for manual testing This allows us to include the benefit obtained by automating a test

Scenarios for Analysis

Scenarios for Analysis

Model can be extended to include Additional Influencing Factors Tests that rely solely on automation e.g. 100 concurrent transactions Productivity changes over time Causes an outward curved graph Growing Test Effort in iterative development Improves risk mitigation of automated test Maintenance cost Early / Late return on investment Developing automated test early using data driven technique Defect detection capability random input invoking crash

Advantages– Opportunity Cost Model Draws attention to balancing automated and manual testing Benefits as well as costs Risk mitigation capability of tests Budget and deadlines More realistic comparison between automated and manual testing

Future Plans Reduce complexity & make it more practical to use Evaluate preciseness and completeness Identify & add more influencing factors Analyze need to add more restrictions

Summary Advantages of Automated Test Simplistic Cost Model Flaws Proposed Opportunity Cost Model Benefits offered Future Plans for expanding the model

Wake up !!!