Software Testing Science EXPERIENCE OF TESTING GUI APPLICATIONS IN A RAD ENVIRONMENT Graham Thomas Software Testing Science.

Slides:



Advertisements
Similar presentations
Chapter 7: Software production process Refers to the activities that are used for building, delivering, deploying, and evolving a software product, from.
Advertisements

Software development process improvement Ville Wettenhovi Master thesis presentation Supervisor:Professor Jukka Manner Instructor:M.Sc. Markus Aalto Date:23th.
Software Process Models
Designing and Developing Decision Support Systems Chapter 4.
Systems Analysis and Design II
Modeling the Process and Life Cycle CSCI 411 Advanced Database and Project Management Monday, February 2, 2015.
Software Process Models
Agile Usability Testing Methods
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
ITIL: Service Transition
Agile development By Sam Chamberlain. First a bit of history..
Part 1: Introducing User Interface Design Chapter 1: Introduction –Why the User Interface Matters –Computers are Ubiquitous –The Importance of Good User.
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
Object-oriented Analysis and Design
Fundamentals of Information Systems, Second Edition
Objectives By the end of today’s class you will be able to… –Describe the major steps in the interaction design process –Explain the importance of iterative.
CHAPTER 19 Building Software.
Software Construction and Evolution - CSSE 375 Software Documentation 1 Shawn & Steve Right – For programmers, it’s a cultural perspective. He’d feel almost.
CBIIT Quality Assurance and Compliance Process August 8, 2012.
CSI315 Web Technology and Applications
1 Building and Maintaining Information Systems. 2 Opening Case: Yahoo! Store Allows small businesses to create their own online store – No programming.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Test Organization and Management
Tietojärjestelmien peruskurssi Systeemisuunnittelu ja prototyyppimenetelmä Malin Brännback.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
IT Systems Analysis & Design
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
ITEC224 Database Programming
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
Teaching material for a course in Software Project Management & Software Engineering – part II.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem Darwish.
1 TIME BOXED TESTING BCS SIGIST 13 th July 1998 Graham Thomas - OSI Group.
Rapid Application Development. What is RAD……..?  Rapid Application Development (RAD) is a software development process.  first developed during the.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
13-January-2003cse LifeCycle © 2003 University of Washington1 Lifecycle CSE 403, Winter 2003 Software Engineering
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
Fundamentals of Information Systems, Second Edition 1 Systems Development.
Lecture 2 –Approaches to Systems Development Method 10/9/15 1.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Chapter 2: Testing in Software Life Cycle MNN1063 System Testing and Evaluation.
Week 1a: Introduction to the Module Graham Logan Building 303, Room 30 CO5021 Systems Development.
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Systems Development AIMS 2710 R. Nakatsu. Overview Two philosophies of systems development –Systems Development Life Cycle (SDLC) –Prototyping Alternative.
1 - 1 Systems Analysis and Design, Key Ideas Many failed systems were abandoned because analysts tried to build wonderful systems without understanding.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Developing a Project Management Standard for Your Organization Francine DiMicele, PMP June 08, 2015 NC Piedmont Triad Chapter.
Rational Unified Process (RUP)
Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. INTRODUCTION.
User Acceptance Testing The Hard Way Graham Thomas BCS SIGIST 10 th May 1996.
Chapter 2- Software Development Process  Product Components  Software Project Staff  Software Development Lifecycle Models.
Software Development.
ITIL: Service Transition
Lecture 3 Prescriptive Process Models
Preparation for coding
Software Development methodologies
Software Development Life Cycle
Software Process Models
IT Systems Analysis & Design
Process Models Coming up: Prescriptive Models.
Software Process Models
SDLC (Software Development Life Cycle)
Preparation for coding
Presentation transcript:

Software Testing Science EXPERIENCE OF TESTING GUI APPLICATIONS IN A RAD ENVIRONMENT Graham Thomas Software Testing Science

CONTENTS l Background l What is RAD? l Experience of RAD ! l What is the impact of RAD? l Recommendations

Software Testing Science BACKGROUND l Large RAD project l Project Office l Incident & Problem Management l Change Control l Configuration Management l GUI Testing Automation

Software Testing Science WHAT IS RAD ? l Iterative development l Prototyped deliverables l Hands-off trust l Minimum documentation l Interactive on-line decision making l User participation l Time boxing

Software Testing Science RAD is Not ! l A QAD (Quick And Dirty) approach l A thorough or detailed methodology l A cook-book approach

Software Testing Science EXPERIENCE OF RAD l Documentation l Standards l Ownership l Change Control l Hand-over Acceptance Criteria l Problem/Incident Management l Configuration Management

Software Testing Science Documentation l Little documentation is produced l It is never early l Often in draft form l Has a high degree of redundancy l Implicit documentation is produced l Sometimes incomplete

Software Testing Science Standards l Few and far between l Not adhered to l Not enforced l Slow down the RAD process l Tendency towards guidelines within ground rules

Software Testing Science Ownership l Devolved through empowerment l The builder becomes the owner l Leads to fiefdoms l Hampers change

Software Testing Science Change Control l Difficult to administer & control change l Devolved ownership leads to a matrix approach RADTRAD

Software Testing Science Hand-over Acceptance Criteria l Hand-over only happens once in RAD, at the end of the iterative build cycle l RAD acceptance criteria l Will the system realize the proposed benefits l Has RAD cut costs l Has RAD reduced development time

Software Testing Science Problem/Incident Management l The requirement for an Incident/Problem Management System was driven by Testing l The RAD approach is not geared to fixing faults found during testing

Software Testing Science Configuration Management l Addressed too late l Uncertain what the system will contain until the build is complete l The iterative nature of RAD makes it difficult to decide when to baseline l Traceability through the lifecycle is not a key element of RAD l Code version control is a must

Software Testing Science WHAT IS THE IMPACT OF RAD? l The foundations that we have traditionally based structured testing upon no longer hold true l Baselined Requirements, Analysis & Design l Measurement of completeness l Validation of the conversion process l Producing error free software

Software Testing Science Timescales l Structured Testing looks out of place in a RAD lifecycle l Testing is targeted as a high cost & critical activity 40%+ RAD 25% WATERFALL Testing

Software Testing Science Testing Methodology l RAD projects end at the bottom of the structured testing V because testing is incorporated within the build iterations RADStructured

Software Testing Science RECOMMENDATIONS l Incorporate all levels of testing within the build cycle l Requirements l Functionality l Task level l Develop a release philosophy l Establish a candidate l Regress changes which don't work

Software Testing Science Recommendations l Realize the benefits of automation l Plan to build an automated regression test pack l Use the inherent resilience qualities of today's automated test tools to minimize the impact of change l Test all changes with the full regression test pack l Provide direct testing feedback

Software Testing Science SUMMARY l A Structured testing approach will not work in a RAD environment l Change your testing process and expectations l Test more of the product more often l Be prepared for change l Don't forget to Monitor your results