MTAT : Software Testing

Size: px
Start display at page:

Download "MTAT.03.159: Software Testing"

Transcription

1 MTAT : Software Testing Lecture 07: Tools, Metrics and Test Process Improvement / TMMi (Textbook Ch. 14, 9, 16) Spring 2013 Dietmar Pfahl dietmar.pfahl@ut.ee

2 Structure of Lecture 07 Test Tools Test Measurement Test Process Improvement SWT Exam

3 Tools the Workbench Good at repeating tasks Good at organising data Requires training Introduced incrementally No silver bullet Evaluation criteria Ease of use Power Robustness Functionality Ease of insertion Quality of support Cost Company policies and goals

4 Test Tools in the Process Requirement specification Architectural design Test execution and comparison tools Performance simulator tools System test Acceptance test Test design tools Detailed design Integration test Dynamic analysis tools Static analysis tools Test management tools Code Unit test Coverage tools Debugging tools

5 Test Tools by Test Maturity TMM level 1 Debuggers Configuration builders LOC counters TMM level 2 Test/project planners Run-time error checkers Test preparation tools Coverage analyzers Cross-reference tools TMM level 3 Configuration management Requirements tools Capture-replay tools Comparator Defect tracker Complexity measurer Load generators TMM level 4 Code checkers Code comprehension tools Test harness generators Perform./network analyzers Simulators/emulators Test management tools TMM level 5 Test library tools Advanced

6 There is no shortage of Test Tools Defect Tracking (98) GUI Test Drivers (71) Load and Performance (52) Static Analysis (38) Test Coverage (22) Test Design Tools (24) Test Drivers (17) Test Implementation (35) assist with testing at runtime - memory leak checkers, comparators, and a wide variety of others Test case Management (24) Unit Test Tools (63) 3 different categories of others Other links to test tool overviews: From

7 Test data generator Generatedata.com online service for generating data

8 Output of the previous input field

9 Evolution of System Testing approaches 1. Recorded Scripts 2. Engineered Scripts 3. Data-driven Testing First Last Data Pekka Pukaro Teemu Tekno Keyword-driven Testing 5. Model-based Testing

10 Recorded Scripts Unstructured Scripts generated using capture and replay tools Relatively quick to set up Mostly used for regression testing Scripts non-maintainable, in practice If the system changes they need to be captured again Capture Replay Tools Record user s actions to a script (keyboard, mouse) Tool specific scripting language Scripts access the (user) interface of the software Input fields, buttons and other widgets Simple checks can be created in the scripts Existence of texts and objects in the UI Data of GUI objects

11 Engineered Scripts Scripts are well-designed (following a systematic approach), modular, robust, documented, and maintainable Separation of common tasks E.g. setup, cleanup/teardown, and defect detection Test data is still embedded into the scripts One driver script per test case Code is mostly written manually Implementation and maintenance require programming skills which testers (test engineers) might not have Just like any other software development project

12 First Last Data Data-Driven Testing Pekka Pukaro Teemu Tekno Test inputs and expected outcomes stored as data Normally in a tabular format Test data are read from an external data source One driver script can execute all of the designed test cases External test data can be edited without programming skills Test design and framework implementation are now separate tasks former can be given to someone with the domain knowledge (business people, customers) and latter to someone with programming skills. Avoids the problems of embedded test data Data are hard to understand in the middle of all scripting details Updating tests or creating similar tests with slightly different test data always requires programming Leads to copy-paste scripting

13 Data-Driven Testing

14 Keyword-Driven Testing Keywords also known as action words Keyword-driven testing improves data-driven testing: Keywords abstract the navigation and actions from the script Keywords and test data are read from an external data source When test cases are executed keywords are interpreted by a test library which is called by a test automation framework The test library = the test scripts Example: Login: admin, t5t56y; AddCustomers: newcustomers.txt RemoveCustomer: Pekka Pukaro More keywords (=action words) can be defined based on existing keywords Keyword driven testing ~= domain specific languages (DSL) Details: Another tool:

15 Architecture of a Keyword-Driven Framework Pekka Laukkanen. Data-Driven and Keyword-Driven Test Automation Frameworks. Master s Thesis. Helsinki University of Technology

16 Model-based Testing

17 Model-based Testing System under test is modelled UML-state machines, domain specific languages (DSL) Test cases are automatically generated from the model The model can provide also the expected results for the generated test cases More accurate model -> better test cases Generate a large amount of tests that cover the model Many different criteria for covering the model Execution time of test cases might be a factor Challenges: Personnel competencies Data-intensive systems (cannot be modelled as a state-machine) Simple MBT tool

18 Evolution of System Testing approaches 1. Recorded Scripts Cheap to set up, quick & dirty 2. Engineered Scripts Structured 3. Data-driven Testing Data separation 4. Keyword-driven Testing Action separation, DSL 5. Model-based Testing Modeling & Automatic test case generation First Last Data Pekka Pukaro Teemu Tekno

19 Automation and Oracles Automated testing depends on the ability to detect automatically (via a program) when the software fails An automated test is not equivalent to a similar manual test Automatic comparison is typically more precise Automatic comparison will be tripped by irrelevant discrepancies The skilled human comparison will sample a wider range of dimensions, noting oddities that one wouldn't program the computer to detect Our ability to automate testing is fundamentally constrained by our ability to create and use oracles (Cem Kaner)

20 Types of outcome to compare Screen-based Character-based applications GUI applications Correct message, display attributes, displayed correctly GUI components and their attributes Graphical images Avoid bitmap comparisons Disk-based Comparing text files Comparing non-textual forms of data Comparing databases and binary files Others Multimedia applications Sounds, video clips, animated pictures Communicating applications Simple vs. complex comparison

21 Test case sensitivity in comparisons Robust tests Sensitive tests Susceptibility to change Implementation effort Miss defects Failure analysis effort Sensitive test case compares many elements and is likely to notice that something breaks. However, it is also more sensitive to change and causes rework in test automation. A robust test checks less and is more change-resilient, but also misses potential defects. Striking a balance is the challenge. Storage space Redrawn from Fewster and Graham, Software Test Automation, 1999.

22 Effect of automation on goodness of a test case Automated test after many runs Effective Manual test Evolvability (maintainability) of automated test does not change, but economics increases the sizes and the goodness of the test case Economic Evolvable First run of automated tests Exemplary Redrawn from Fewster and Graham Software Test Automation, 1999.

23 Scope: Automating different steps Automated tests Select/Identify test cases to run Set up test environment - create test environment - load test data Repeat for each test case: - set up test prerequisites - execute - compare results - log results -analyze test failures -report defect(s) - clear up after test case Clear up test environment: - delete unwanted data - save important data Summarize results Automated testing Select/Identify test cases to run Set up test environment: - create test environment - load test data Repeat for each test case: - set up test prerequisites - execute -compare results - log results -clear up after test case Clear up test environment: - delete unwanted data -save important data Summarize results Analyze test failures Report defects Manual process Automated process Redrawn from Fewster et al. Software Test Automation, 1999.

24 Relationship of testing activities Edit tests (maintenance) Set up Execute Analyze failures Clear up Manual testing Same tests automated More mature automation Redrawn from Fewster et al. Software Test Automation, Time

25 Test automation promises 1. Efficient regression test 2. Run tests more often 3. Perform difficult tests (e.g. load, outcome check) 4. Better use of resources 5. Consistency and repeatability 6. Reuse of tests 7. Earlier time to market 8. Increased confidence

26 Common problems 1. Unrealistic expectations 2. Poor testing practice Automatic chaos just gives faster chaos 3. Expected effectiveness 4. False sense of security 5. Maintenance of automatic tests 6. Technical problems (e.g. Interoperability) 7. Organizational issues

27 What can be automated? 1. Identify 2. Design Intellectual Performed once 3. Build 4. Execute Repeated Clerical 5. Check

28 Limits of automated testing Does not replace manual testing Manual tests find more defects than automated tests Does not improve effectiveness Greater reliance on quality of tests Oracle problem Test automation may limit the software development Costs of maintaining automated tests

29 What to automate first? Most important tests A set of breadth tests (sample each system area overall) Test for the most important functions Tests that are easiest to automate Tests that will give the quickest payback Test that are run the most often

30 Structure of Lecture 07 Test Tools Test Measurement Test Process Improvement SWT Exam

31 Test Management Monitoring (or tracking) Check status Reports Metrics Controlling Corrective actions

32 Purpose of Measurement Test monitoring check the status Test controlling corrective actions Plan new testing Measure and analyze results The benefit/profit of testing The cost of testing The quality of testing The quality of the product Basis of improvement, not only for the test process

33 Cost of Testing How much does testing cost? As much as resources we have! Ericcsson mobile phones did not do too well because did too much of testing instad of getting the product to market

34 Test Monitoring Status Coverage metrics Test case metrics: development and execution Test harness development Efficiency / Cost metrics How much time have we spent? How much money/effort have we spent? Failure / Fault metrics How much have we accomplished? What is the quality status of the software? Effectiveness metrics Metrics Estimation Cost Stop? How effective is the testing techniques in detecting defects?

35 Selecting the right metrics What is the purpose of the collected data? What kinds of questions can they answer? Who will use the data? How is the data used? When and who needs the data? Which forms and tools are used to collect the data? Who will collect them? Who will analyse the data? Who have access to the data?

36 Goal-Question-Metric Paradigm (GQM) Goals What is the organization trying to achieve? The objective of process improvement is to satisfy these goals Questions Questions about areas of uncertainty related to the goals You need process knowledge to derive the questions Metrics Measurements to be collected to answer the questions Goal example: Analyze <object(s) of study> the detection of design faults using inspection and testing for the purpose of <purpose> evaluation with respect to their <quality focus> effectiveness and efficiency from the point of view of the <perspective> managers in the context of <context> developers, and in a real application domain [van Solingen, Berghout, The Goal/Question/Metric Method, McGraw-Hill, 1999]

37 Measurement Basics Basic data: Time and Effort (calendar- and staff-hours) Failures / Faults Size / Functionality Basic rule: Feedback to origin Use data or don t measure

38 Test metrics: Coverage What? % statements covered % branches covered % data flow % requirements % equivalence classes Why? Track completeness of test

39 Test metrics: Development status Test case development status Planned Available Unplanned (not planned for, but needed) Test harness development status Planned Available Unplanned

40 Test metrics: Test execution status What? # faults/hour # executed tests Requirements coverage Why? Track progress of test project Decide stopping criteria

41 Test metrics: Size/complexity/length What? Size/Length LOC Functionality Function Points Complexity McCabe Difficulty Halstead Cohesion, Coupling,... Why? Estimate test effort

42 Test metrics: Efficiency What? # faults/hour # faults/test case Why? Evaluate efficiency of V&V activities

43 Test metrics: Faults/Failures (Trouble reports) What? # faults/size repair time root cause Why? Monitor quality Monitor efficiency Improve

44 Test metrics: Effectiveness What? % found faults per phase % missed faults Why? Evaluate effectiveness of V&V activities

45 How good are we at testing? Test quality Are we here? Many faults Few faults Product quality Few faults Few faults Or are we here?

46 When to stop testing? All planned tests are executed and passed All coverage goals met (requirements, code,...) Detection of specific number of failures Rates of failure detection fallen below a specified level Fault seeding ratios are favourable Reliability above a certain value Cost has reached the limit

47 Example Number of detected failures Number of executed test cases Number of failures per day Interpretation?

48 Example Number of detected failures Number of executed test cases Interpretation?

49 Example Number of detected failures Number of executed test cases Interpretation?

50 Structure of Lecture 07 Test Tools Test Measurement Test Process Improvement SWT Exam

51 Process quality and product quality Quality in process -> Quality in product Project: instantiated process Quality according to ISO 9126 Process quality contributes to improving product quality, which in turn contributes to improving quality in use Process Project Product

52 Principles Test organisation Assess Improve Maturity Model

53

54 Process improvement models (Integrated) Capability maturity model (CMM, CMMI) Software process improvement and capability determination (SPICE) ISO 9001, Bootstrap, Test maturity model (TMM) Test process improvement model (TPI) Test improvement model (TIM) Minimal Test Practice Framework (MTPF)

55

56 CMMI (Capability Maturity Model Integrated) Defined Managed Process change management Technology change management Defect prevention Software quality management Quantitative process management Peer reviews Intergroup coordination Software product engineering Integrated software management Training programme Organization process definition Organization process focus Optimizing Repeatable Software configuration management Software quality assurance Software subcontract management Software project tracking and oversight Software project planning Requirements management Initial

57 Test Maturity Model (TMM) Levels Maturity goals and sub-goals Scope, boundaries, accomplishments Activities, tasks, responsibilities Assessment model Maturity goals Assessment guidelines Assessment procedure

58 Level 2: Phase Definition Institutionalize basic testing techniques and methods Initiate a test planning process Develop testing and debugging tools

59 Level 3: Integration Control and monitor the testing process Integrate testing into software lifecycle Establish a technical training program Establish a software test organization

60 Level 4: Management and Measurement Software quality evaluation Establish a test management program Establish an organization-wide review program

61 Level 5: Optimizing, Defect Prevention, and Quality Control Test process optimization Quality control Application of process data for defect prevention

62 Can the organization be too mature?

63 Clausewitz: Armor and mobility alternate dominance (DeMarco) Romans Franks Castles Maginot Line Greeks Vandals, Huns Mongols Field Artillery Tanks

64 Birth of the castle (CMMI) and the tiger (Agile) U.S Department of defense Scientific management Statistical process control Management Control Large team & low skill Leading industry consultants Team creates own process Working software Software craftsmanship Productivity Small team & high skill

65 Plan-driven vs. Agile (Boehm & Turner, 2003, IEEE Computer, 36(6), pp 64-69) 103

66 Software quality assurance comparison: castle vs. tiger Independent QA team Compliance to documented processes Against predefined criteria Documents & processes & control Formal: Reporting to management Organisation Ensuring Evaluation Criteria Focus Communication Integrated into the project team Applicability and improvement of the current processes and practices Identifying issues and problems Productivity & quality & customer Informal: Supporting the team

67 General advice Identify the real problems before starting an improvement program What the customer wants is not always what it needs Implement easy changes first Involve people Changes take time!

68 Recommended Textbook Exercises Chapter 14 2, 4, 5, 6, 9 Chapter 9 2, 3, 4, 5, 8, 12 Chapter 16 No exercises

69 Structure of Lecture 07 Test Tools Test Measurement Test Process Improvement SWT Exam

70 Final Exam Written exam (40%) Based on textbook, lectures and lab sessions Open book 90 min Dates: Exam 1: 30-May :15-11:45 (J. Liivi 2-405) Exam 2: 10-June :15-15:45 (J. Liivi 2-403)

71 Thank You!

Standard Glossary of Terms Used in Software Testing. Version 3.01

Standard Glossary of Terms Used in Software Testing. Version 3.01 Standard Glossary of Terms Used in Software Testing Version 3.01 Terms Used in the Expert Level Test Automation - Engineer Syllabus International Software Testing Qualifications Board Copyright International

More information

TESTING FRAMEWORKS. Gayatri Ghanakota

TESTING FRAMEWORKS. Gayatri Ghanakota TESTING FRAMEWORKS Gayatri Ghanakota OUTLINE Introduction to Software Test Automation. What is Test Automation. Where does Test Automation fit in the software life cycle. Why do we need test automation.

More information

Introduction to Automated Testing

Introduction to Automated Testing Introduction to Automated Testing What is Software testing? Examination of a software unit, several integrated software units or an entire software package by running it. execution based on test cases

More information

Test Automation Framework

Test Automation Framework Test Automation Framework Rajesh Popli Manager (Quality), Nagarro Software Pvt. Ltd., Gurgaon, INDIA rajesh.popli@nagarro.com ABSTRACT A framework is a hierarchical directory that encapsulates shared resources,

More information

Quality is the responsibility of the whole team

Quality is the responsibility of the whole team Quality is the responsibility of the whole team Test do not create quality or take it away, it is only a method of assessing the quality of a product. If development schedules get tight, make sure project

More information

Standard Glossary of Terms Used in Software Testing. Version 3.01

Standard Glossary of Terms Used in Software Testing. Version 3.01 Standard Glossary of Terms Used in Software Testing Version 3.01 Terms Used in the Advanced Level - Technical Test Analyst Syllabus International Software Testing Qualifications Board Copyright International

More information

How To Understand And Understand The Cmm

How To Understand And Understand The Cmm W H I T E P A P E R SEI's Capability Maturity Model Integrated (CMMI) Relative to ICM's CMII (Rev B) SUMMARY CMMI is built on a set of integrated processes and includes CM as a supporting process. The

More information

Process Improvement. Process improvement. Process improvement stages. Understanding, Modelling and Improving the Software Process

Process Improvement. Process improvement. Process improvement stages. Understanding, Modelling and Improving the Software Process Process Improvement Understanding, Modelling and Improving the Software Process Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31 Slide 1 Process improvement Understanding existing processes

More information

CSC 408F/CSC2105F Lecture Notes

CSC 408F/CSC2105F Lecture Notes CSC 408F/CSC2105F Lecture Notes These lecture notes are provided for the personal use of students taking CSC 408H/CSC 2105H in the Fall term 2004/2005 at the University of Toronto. Copying for purposes

More information

MTAT.03.243 Software Engineering Management

MTAT.03.243 Software Engineering Management MTAT.03.243 Software Engineering Management Lecture 17: Other SPI Frameworks and QM Systems Dietmar Pfahl Spring 2014 email: dietmar.pfahl@ut.ee Structure of Lecture 17 Other SPI Frameworks People CMM

More information

Standard Glossary of Terms Used in Software Testing. Version 3.01

Standard Glossary of Terms Used in Software Testing. Version 3.01 Standard Glossary of Terms Used in Software Testing Version 3.01 Terms Used in the Foundation Level Syllabus International Software Testing Qualifications Board Copyright International Software Testing

More information

Agenda. The Need 4 Speed. Promises of test automation. Quality of the test case. Quality of the test case

Agenda. The Need 4 Speed. Promises of test automation. Quality of the test case. Quality of the test case Agenda Software Test Automation part I: Techniques for automating test execution BłaŜej Pietrzak blazej.pietrzak@cs.put.poznan.pl Test activities Capture & playback Scripting Script processing Comparisons

More information

Lecture 8 About Quality and Quality Management Systems

Lecture 8 About Quality and Quality Management Systems Lecture 8 About Quality and Quality Management Systems Kari Systä 10.03.2014 10.03.2014 TIE-21100/21106; K.Systä 1 Content of today s lecture Two weeks ago we discussed about testing and inspections, that

More information

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University

Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or

More information

ISTQB Certified Tester. Foundation Level. Sample Exam 1

ISTQB Certified Tester. Foundation Level. Sample Exam 1 ISTQB Certified Tester Foundation Level Version 2015 American Copyright Notice This document may be copied in its entirety, or extracts made, if the source is acknowledged. #1 When test cases are designed

More information

Table of contents. Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability

Table of contents. Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability Enterprise Resource Planning (ERP) functional testing best practices: Ten steps to ERP systems reliability Table of contents Introduction.......................................................2 Step 1:

More information

Software Engineering: Analysis and Design - CSE3308

Software Engineering: Analysis and Design - CSE3308 CSE3308/DMS/2004/25 Monash University - School of Computer Science and Software Engineering Software Engineering: Analysis and Design - CSE3308 Software Quality CSE3308 - Software Engineering: Analysis

More information

Testhouse Training Portfolio

Testhouse Training Portfolio Testhouse Training Portfolio TABLE OF CONTENTS Table of Contents... 1 HP LoadRunner 4 Days... 2 ALM Quality Center 11-2 Days... 7 HP QTP Training Course 2 Days... 10 QTP/ALM Intensive Training Course 4

More information

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there

More information

Chap 1. Software Quality Management

Chap 1. Software Quality Management Chap 1. Software Quality Management Part 1.1 Quality Assurance and Standards Part 1.2 Software Review and Inspection Part 1.3 Software Measurement and Metrics 1 Part 1.1 Quality Assurance and Standards

More information

Example Software Development Process.

Example Software Development Process. Example Software Development Process. The example software development process is shown in Figure A. The boxes represent the software development process kernels. The Software Unit Testing, Software Component

More information

Lecture 1: Introduction to Software Quality Assurance

Lecture 1: Introduction to Software Quality Assurance Lecture 1: Introduction to Software Quality Assurance Software Quality Assurance (INSE 6260/4-UU) Winter 2009 Thanks to Rachida Dssouli for some slides Course Outline Software Quality Overview Software

More information

Aspire's Approach to Test Automation

Aspire's Approach to Test Automation WHITE PAPER Aspire's Approach to Test Automation by Ujjawal Bagaria, Aspire Systems Automation has been seen as the long term solution for cost reduction of manual testing across the globe. A successfully

More information

Fundamentals of Measurements

Fundamentals of Measurements Objective Software Project Measurements Slide 1 Fundamentals of Measurements Educational Objective: To review the fundamentals of software measurement, to illustrate that measurement plays a central role

More information

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919

V. Phani Krishna et al, / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (6), 2011, 2915-2919 Software Quality Assurance in CMM and XP- A Comparative Study CH.V. Phani Krishna and Dr. K.Rajasekhara Rao CSE Department, KL University, Guntur dt., India. Abstract Software Quality Assurance is a planned

More information

SQA Labs Value Assured

SQA Labs Value Assured Q SQA Labs Value Assured QUALITY ASSURANCE TESTING TOOLS QUALITY ASSURANCE TESTING TOOLS Quality Assurance refers to the steps taken to make sure that a company s products or services are of sufficiently

More information

CMSC 435: Software Engineering Course overview. Topics covered today

CMSC 435: Software Engineering Course overview. Topics covered today CMSC 435: Software Engineering Course overview CMSC 435-1 Topics covered today Course requirements FAQs about software engineering Professional and ethical responsibility CMSC 435-2 Course Objectives To

More information

Designing a Software Test Automation Framework

Designing a Software Test Automation Framework 152 Informatica Economică vol. 18, no. 1/2014 Designing a Software Test Automation Framework Sabina AMARICAI 1, Radu CONSTANTINESCU 2 1 Qualitance, Bucharest 2 Department of Economic Informatics and Cybernetics

More information

Business Application Services Testing

Business Application Services Testing Business Application Services Testing Curriculum Structure Course name Duration(days) Express 2 Testing Concept and methodologies 3 Introduction to Performance Testing 3 Web Testing 2 QTP 5 SQL 5 Load

More information

Certified Software Quality Engineer (CSQE) Body of Knowledge

Certified Software Quality Engineer (CSQE) Body of Knowledge Certified Software Quality Engineer (CSQE) Body of Knowledge The topics in this Body of Knowledge include additional detail in the form of subtext explanations and the cognitive level at which the questions

More information

Industrial Adoption of Automatically Extracted GUI Models for Testing

Industrial Adoption of Automatically Extracted GUI Models for Testing Industrial Adoption of Automatically Extracted GUI Models for Testing Pekka Aho 1,2 pekka.aho@vtt.fi, Matias Suarez 3 matias.suarez@f-secure.com, Teemu Kanstrén 1,4 teemu.kanstren@vtt.fi, and Atif M. Memon

More information

Software Process Improvement Software Business. Casper Lassenius

Software Process Improvement Software Business. Casper Lassenius Software Process Improvement Software Business Casper Lassenius Topics covered ² The process process ² Process measurement ² Process analysis ² Process change ² The CMMI process framework 2 Process ² Many

More information

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2). 0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems

More information

Testing Process Models

Testing Process Models Testing Process Models Process Model of a Test Factory EECS 814 Fall 2009 Jennifer Kaufman Agenda 1. Introduction & Abstract 2. Organizational Models 3. Testing Process Models 4. Process Model of a Test

More information

a new generation software test automation framework - CIVIM

a new generation software test automation framework - CIVIM a new generation software test automation framework - CIVIM Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the

More information

Personal Software Process (PSP)

Personal Software Process (PSP) Personal Software Process (PSP) Application of CMM principles to individuals Developed by Watts Humphrey of the Software Engineering Institute (SEI) in the early 1990s Extensive supporting materials: books,

More information

INFORMATION SYSTEMS EXAMINATIONS BOARD

INFORMATION SYSTEMS EXAMINATIONS BOARD INFORMATION SYSTEMS EXAMINATIONS BOARD Practitioner Certificate in Software Testing Guidelines & Syllabus Version 1.1 4th September 2001 Background This document is the syllabus for the second level of

More information

Establishing your Automation Development Lifecycle

Establishing your Automation Development Lifecycle Establishing your Automation Development Lifecycle Frequently I engage clients in assessing and improving their automation efforts. The discussion normally starts from a position of frustration We ve invested

More information

Karunya University Dept. of Information Technology

Karunya University Dept. of Information Technology PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main

More information

<Insert Picture Here> When to Automate Your Testing (and When Not To)

<Insert Picture Here> When to Automate Your Testing (and When Not To) When to Automate Your Testing (and When Not To) Joe Fernandes (Oracle) Alex Di Fonzo (Synchronoss Technologies) Three Myths of Automated Testing 1. Automated testing always results

More information

ISTQB Expert level Improving the testing process

ISTQB Expert level Improving the testing process ISTQB Expert level Improving the testing process First practical experience www.ip-consult.be Isabelle Robrechts Version 1.1 Agenda Training content Practical experience Conclusion 2 2014 Improve Quality

More information

CS314: Course Summary

CS314: Course Summary CS314: Course Summary Prof. Robert B. France Dept. of Computer Science Colorado State University Robert B. France 1 1 Software Development Issues Explored - 1 Software engineering basics Why do we need

More information

Basic Unix/Linux 1. Software Testing Interview Prep

Basic Unix/Linux 1. Software Testing Interview Prep Basic Unix/Linux 1 Programming Fundamentals and Concepts 2 1. What is the difference between web application and client server application? Client server application is designed typically to work in a

More information

Chapter 8 Software Testing

Chapter 8 Software Testing Chapter 8 Software Testing Summary 1 Topics covered Development testing Test-driven development Release testing User testing 2 Program testing Testing is intended to show that a program does what it is

More information

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler Best-Practice Software Engineering: Software Processes to Support Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems Dietmar.Winkler@qse.ifs.tuwien.ac.at

More information

Experiences in Test Automation for Multi-Client System with Social Media Backend

Experiences in Test Automation for Multi-Client System with Social Media Backend Experiences in Test Automation for Multi-Client System with Social Media Backend Tuomas Kekkonen, Teemu Kanstrén, Jouni Heikkinen VTT Technical Research Centre of Finland Oulu, Finland {tuomas.kekkonen,

More information

Application of software product quality international standards through software development life cycle

Application of software product quality international standards through software development life cycle Central Page 284 of 296 Application of software product quality international standards through software development life cycle Mladen Hosni, Valentina Kirinić Faculty of Organization and Informatics University

More information

QTP Open Source Test Automation Framework Introduction

QTP Open Source Test Automation Framework Introduction Version 1.0 April 2009 D ISCLAIMER Verbatim copying and distribution of this entire article are permitted worldwide, without royalty, in any medium, provided this notice is preserved. Table of Contents

More information

Process Improvement. Objectives

Process Improvement. Objectives Process Improvement Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 28 Slide 1 Objectives To explain the principles of software process improvement To explain how software process factors

More information

Process Improvement. Objectives

Process Improvement. Objectives Process Improvement cmsc435-1 Objectives To explain the principles of software process improvement To explain how software process factors influence software quality and productivity To introduce the SEI

More information

SOFTWARE TESTING TRAINING COURSES CONTENTS

SOFTWARE TESTING TRAINING COURSES CONTENTS SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software

More information

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when

More information

Latest Trends in Testing. Ajay K Chhokra

Latest Trends in Testing. Ajay K Chhokra Latest Trends in Testing Ajay K Chhokra Introduction Software Testing is the last phase in software development lifecycle which has high impact on the quality of the final product delivered to the customer.

More information

Software Engineering for LabVIEW Applications. Elijah Kerry LabVIEW Product Manager

Software Engineering for LabVIEW Applications. Elijah Kerry LabVIEW Product Manager Software Engineering for LabVIEW Applications Elijah Kerry LabVIEW Product Manager 1 Ensuring Software Quality and Reliability Goals 1. Deliver a working product 2. Prove it works right 3. Mitigate risk

More information

Introduction to Software Engineering. 8. Software Quality

Introduction to Software Engineering. 8. Software Quality Introduction to Software Engineering 8. Software Quality Roadmap > What is quality? > Quality Attributes > Quality Assurance: Planning and Reviewing > Quality System and Standards 2 Sources > Software

More information

Getting Things Done: Practical Web/e-Commerce Application Stress Testing

Getting Things Done: Practical Web/e-Commerce Application Stress Testing Getting Things Done: Practical Web/e-Commerce Application Stress Testing Robert Sabourin President Montreal, Canada rsabourin@amibug.com Slide 1 Practical Web/e-Commerce Application Stress Testing Overview:

More information

Software Process Improvement CMM

Software Process Improvement CMM Software Process Improvement CMM Marcello Visconti Departamento de Informática Universidad Técnica Federico Santa María Valparaíso, Chile Software Engineering Institute Founded by the Department of Defense

More information

U.S. Navy Automated Software Testing

U.S. Navy Automated Software Testing U.S. Navy Automated Software Testing Application of Standards to the Automated Test and Re-Test (ATRT) Effort Object Management Group (OMG) Technical Meeting June 2007 Approved for public release; distribution

More information

TPI a model for Test Process Improvement

TPI a model for Test Process Improvement TPI a model for Test Process Improvement Jari Andersin Helsinki, 5th October 2004 Seminar on Quality Models for Software Engineering Department of Computer Science UNIVERSITY OF HELSINKI ii TPI a model

More information

The Test Automation Journey

The Test Automation Journey The Test Automation Journey Challenges and Limits 10th Workshop on System Testing and Validation Dr. György Réthy, Ericsson About myself Graduated as Ph.D. in 1991 Hungarian Telekom (now T-Com company)

More information

Figure 1 - Automated Test Lifecycle Methodology (ATLM)

Figure 1 - Automated Test Lifecycle Methodology (ATLM) The Automated Testing Life-cycle Methodology (ATLM) i Elfriede Dustin Software project managers and software developers building today's applications face the challenge of doing so within an ever-shrinking

More information

Quality Assurance Training Program

Quality Assurance Training Program Quality Assurance Training Program Introduction/Summary: This 5-day course focuses on understanding and developing various skills required by QA Developer, preparing to use various tools and techniques

More information

Software testing. Objectives

Software testing. Objectives Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating

More information

Utilizing Domain-Specific Modelling for Software Testing

Utilizing Domain-Specific Modelling for Software Testing Utilizing Domain-Specific Modelling for Software Testing Olli-Pekka Puolitaival, Teemu Kanstrén VTT Technical Research Centre of Finland Oulu, Finland {olli-pekka.puolitaival, teemu.kanstren}@vtt.fi Abstract

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

Software Engineering Best Practices. Christian Hartshorne Field Engineer Daniel Thomas Internal Sales Engineer

Software Engineering Best Practices. Christian Hartshorne Field Engineer Daniel Thomas Internal Sales Engineer Software Engineering Best Practices Christian Hartshorne Field Engineer Daniel Thomas Internal Sales Engineer 2 3 4 Examples of Software Engineering Debt (just some of the most common LabVIEW development

More information

Applied Agile Practices for Large-scale Organizations

Applied Agile Practices for Large-scale Organizations Applied Agile Practices for Large-scale Organizations COMPLIANCE AND EFFICIENCY WITH STAGES AT THE STAGES INSIGHT Peter Pedross - CEO, PEDCO Page 1 Scaled Agility is for nuts OR FOR THE NOT SERIOUS COMPANIES,

More information

Metrics in Software Test Planning and Test Design Processes

Metrics in Software Test Planning and Test Design Processes Master Thesis Software Engineering Thesis no: MSE-2007:02 January 2007 Metrics in Software Test Planning and Test Design Processes Wasif Afzal School of Engineering Blekinge Institute of Technology Box

More information

Codeless Test Automation for Web Apps

Codeless Test Automation for Web Apps Codeless Test Automation for Web Apps Webinar by TestingWhiz December 11, 2012 1PM EST Agenda Functional Test Automation for Agile Teams Developing and Implementing Codeless Automation Frameworks Achieving

More information

Automating Security Testing. Mark Fallon Senior Release Manager Oracle

Automating Security Testing. Mark Fallon Senior Release Manager Oracle Automating Security Testing Mark Fallon Senior Release Manager Oracle Some Ground Rules There are no silver bullets You can not test security into a product Testing however, can help discover a large percentage

More information

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room

More information

Management. Project. Software. Ashfaque Ahmed. A Process-Driven Approach. CRC Press. Taylor Si Francis Group Boca Raton London New York

Management. Project. Software. Ashfaque Ahmed. A Process-Driven Approach. CRC Press. Taylor Si Francis Group Boca Raton London New York Software Project Management A Process-Driven Approach Ashfaque Ahmed CRC Press Taylor Si Francis Group Boca Raton London New York CRC Press is an imprint of the Taylor St Francis Croup, an Informa business

More information

Software Engineering Compiled By: Roshani Ghimire Page 1

Software Engineering Compiled By: Roshani Ghimire Page 1 Unit 7: Metric for Process and Product 7.1 Software Measurement Measurement is the process by which numbers or symbols are assigned to the attributes of entities in the real world in such a way as to define

More information

Understanding, Modelling and Improving the Software Process. Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31 Slide 1

Understanding, Modelling and Improving the Software Process. Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31 Slide 1 Process Improvement Understanding, Modelling and Improving the Software Process Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31 Slide 1 Process improvement Understanding existing processes

More information

Latest Research and Development on Software Testing Techniques and Tools

Latest Research and Development on Software Testing Techniques and Tools General Article International Journal of Current Engineering and Technology E-ISSN 2277 4106, P-ISSN 2347-5161 2014 INPRESSCO, All Rights Reserved Available at http://inpressco.com/category/ijcet Rasneet

More information

Meeting the challenge of software quality and maximizing return on investment Performance driven. Quality assured.

Meeting the challenge of software quality and maximizing return on investment Performance driven. Quality assured. Testing Services Meeting the challenge of software quality and maximizing return on investment Performance driven. Quality assured. Introduction Today, insightful IT departments understand that software

More information

Testing Best Practices

Testing Best Practices ALMComplete, QAComplete, DevComplete This document is used as a guide to improving your testing and quality assurance processes. 1 Test Case Creation Once requirements have been created and approved, while

More information

How To Improve Your Business Recipe Cards

How To Improve Your Business Recipe Cards white paper Measure. Manage. Improve: Unlocking the Business Value of Software Development Optimization EXECUTIVE SUMMARY In 2011 the Standish Group s CHAOS Manifesto showed that 37% of software projects

More information

Creating Business Value with Mature QA Practices

Creating Business Value with Mature QA Practices perspective Creating Business Value with Mature QA Practices Abstract The IT industry across the globe has rapidly evolved in recent times. The evolution has been primarily driven by factors like changing

More information

The Personal Software Process (PSP) Tutorial

The Personal Software Process (PSP) Tutorial The Personal Software Process (PSP) Tutorial Watts Humphrey / Jim Over Speaker: Daniel M. Roy (STPP, visiting scientist SEI) Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213

More information

Manual Tester s Guide to Automated Testing Contents

Manual Tester s Guide to Automated Testing Contents Manual Tester s Guide to Automated Testing Contents Introduction...3 Knowing the Differences...3 Common Misconceptions About Automated Testing...4 How to Transition to a Blended Manual/Automated Approach...7

More information

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info

MANUAL TESTING. (Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info MANUAL TESTING (Complete Package) WEB APP TESTING DB TESTING MOBILE APP TESTING We are ready to serve Latest Testing Trends, Are you ready to learn.?? New Batches Info START DATE : TIMINGS : DURATION :

More information

Baseline Code Analysis Using McCabe IQ

Baseline Code Analysis Using McCabe IQ White Paper Table of Contents What is Baseline Code Analysis?.....2 Importance of Baseline Code Analysis...2 The Objectives of Baseline Code Analysis...4 Best Practices for Baseline Code Analysis...4 Challenges

More information

METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS

METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS METRICS DRIVEN CONTINUAL SERVICE IMPROVEMENT USING AGILE CONCEPTS John Osteen B Cognizant Business Consulting Process Quality Consulting Cognizant Technology Solutions, Chennai, India john.b@cognizant.com

More information

CSTE Mock Test - Part I - Questions Along with Answers

CSTE Mock Test - Part I - Questions Along with Answers Note: This material is for Evaluators reference only. Caters to answers of CSTE Mock Test - Part I paper. 1. A branch is (Ans: d) a. An unconditional transfer of control from any statement to any other

More information

To introduce software process models To describe three generic process models and when they may be used

To introduce software process models To describe three generic process models and when they may be used Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

WHITE PAPER on Test Automation Framework Using MBT. Dec 2013

WHITE PAPER on Test Automation Framework Using MBT. Dec 2013 WHITE PAPER on Test Automation Framework Using MBT Dec 2013 TABLE OF CONTENTS Abstract... 3 Abbreviations... 5 Background... 6 Market... 7 Challenges... 8 Solution... 8 Benefits... 19 Conclusion... 20

More information

How To Understand Software Engineering

How To Understand Software Engineering PESIT Bangalore South Campus Department of MCA SOFTWARE ENGINEERING 1. GENERAL INFORMATION Academic Year: JULY-NOV 2015 Semester(s):III Title Code Duration (hrs) SOFTWARE ENGINEERING 13MCA33 Lectures 52Hrs

More information

Keyword-Driven Testing Framework For Android Applications

Keyword-Driven Testing Framework For Android Applications Keyword-Driven Testing Framework For Android Applications Wu Zhongqian, Liu Shu, Li Jinzhe, Liao Zengzeng School of Software Harbin Institute of Technology Harbin, China {imzhongqian, lijinze909, liaozengzeng}

More information

SOFTWARE QUALITY & SYSTEMS ENGINEERING PROGRAM. Quality Assurance Checklist

SOFTWARE QUALITY & SYSTEMS ENGINEERING PROGRAM. Quality Assurance Checklist SOFTWARE QUALITY & SYSTEMS ENGINEERING PROGRAM Quality Assurance Checklist The following checklist is intended to provide system owners, project managers, and other information systems development and

More information

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas... Software Engineering Introduction... Columbus set sail for India. He ended up in the Bahamas... The economies of ALL developed nations are dependent on software More and more systems are software controlled

More information

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP Know the Difference Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP 1 Copyright 2015 Hewlett-Packard Development Company, L.P. The information contained herein is subject

More information

Modernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC

Modernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC Modernized and Maintainable Code Frank Weil, Ph.D. UniqueSoft, LLC UniqueSoft is a provider of next-generation software development tools and services specializing in modernizing legacy software using

More information

SOFTWARE MANAGEMENT PROGRAM. Software Testing Checklist

SOFTWARE MANAGEMENT PROGRAM. Software Testing Checklist SOFTWARE MANAGEMENT PROGRAM Software Testing Checklist The following checklist is intended to provide system owners, project managers, configuration managers, and other information system development and

More information

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3

IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 INTRODUCTION This course is designed to provide the students with the basic competencies required to identify requirements, document

More information

CUT COSTS, NOT PROJECTS

CUT COSTS, NOT PROJECTS CUT COSTS, NOT PROJECTS Understanding and Managing Software Development Costs A WEBINAR for State of Washington Agencies Critical Logic, Inc. July 9 2009 Starting at 3pm, Pacific Daylight Time Critical

More information

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management International Journal of Soft Computing and Engineering (IJSCE) A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management Jayanthi.R, M Lilly Florence Abstract:

More information

What do you think? Definitions of Quality

What do you think? Definitions of Quality What do you think? What is your definition of Quality? Would you recognise good quality bad quality Does quality simple apply to a products or does it apply to services as well? Does any company epitomise

More information

SOFTWARE TESTING AS A SERVICE

SOFTWARE TESTING AS A SERVICE SOFTWARE TESTING AS A SERVICE ASHFAQUE AHMED (g) CRC Press Taylor & Francis Croup Boca Raton London New York CRC Press is an imprint of the Taylor & Francis Group, an informa business AN AUERBACH BOOK

More information

BY STEVE BROWN, CADENCE DESIGN SYSTEMS AND MICHEL GENARD, VIRTUTECH

BY STEVE BROWN, CADENCE DESIGN SYSTEMS AND MICHEL GENARD, VIRTUTECH WHITE PAPER METRIC-DRIVEN VERIFICATION ENSURES SOFTWARE DEVELOPMENT QUALITY BY STEVE BROWN, CADENCE DESIGN SYSTEMS AND MICHEL GENARD, VIRTUTECH INTRODUCTION The complexity of electronic systems is rapidly

More information