Virtis-Opis Beta Testing Todd S. Thompson, PE South Dakota DOT Office of Bridge Design August 3, 2011.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Test process essentials Riitta Viitamäki,
Beta Testing: The Contractor’s Perspective Trns·port User Group Meeting October 2005.
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Software Quality Assurance Plan
Software Testing 3 Damian Gordon.
System Construction and Implementation Objectives:
Virtis-Opis Update Virtis-Opis User Group Training Meeting Helena – August 2011.
Software Quality Assurance Inspection by Ross Simmerman Software developers follow a method of software quality assurance and try to eliminate bugs prior.
1 Business (Agency) Process Discovery and Documentation Workshop PeopleSoft Phase II Tuesday, October 23, :00 AM to 12:00 Noon Concourse Theatre.
Testing: Who 3, What 4, Why 1, When 2, How 5 Lian Yu, Peking U. Michal Young, U. Oregon.
Test Environments Arun Murugan – u Rohan Ahluwalia – u Shuchi Gauri – u
SE 555 Software Requirements & Specification Requirements Validation.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
Introduction to Software Testing
1 Principles of Information Systems, Ninth Edition Chapter 13 Systems Development: Design, Implementation, Maintenance, and Review.
Software Testing Test Design and Implementation. Agenda Test Design Test Implementation Test Design Sources Automated Testing 2.
OHT 4.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Release & Deployment ITIL Version 3
Terms: Test (Case) vs. Test Suite
Estimation Wrap-up CSE 403, Spring 2008, Alverson Spolsky.
2013 Design Rating User Group Presentation Virginia Beach, Virginia August 8, 2013.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Commercial Database Applications Testing. Test Plan Testing Strategy Testing Planning Testing Design (covered in other modules) Unit Testing (covered.
MSIS 630: Week 13 System Implementation and Support
CCSB223/SAD/CHAPTER141 Chapter 14 Implementing and Maintaining the System.
Extreme Programming Software Development Written by Sanjay Kumar.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Module CC3002 Post Implementation Issues Lecture for Week 6 AY 2013 Spring.
Software Configuration Management
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
Pass SOX security audits and Improve XA security CISTECH Security Solutions Belinda Daub, Senior Consultant Technical Services
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
Software Testing Testing principles. Testing Testing involves operation of a system or application under controlled conditions & evaluating the results.
End HomeWelcome! The Software Development Process.
 CS 5380 Software Engineering Chapter 8 Testing.
Configuration Management (CM)
SWE © Solomon Seifu CONSTRUCTION. SWE © Solomon Seifu Lesson 13-2 Testing.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
Testing -- Part II. Testing The role of testing is to: w Locate errors that can then be fixed to produce a more reliable product w Design tests that systematically.
BRIDGE DESIGN & RATING REPORTS TECHNICAL ADVISORY GROUP (RTAG) Amjad Waheed, PE 2014 RADBUG Presentation Traverse City, Michigan August 13, 2014.
Software Quality Assurance
Software Development Process.  You should already know that any computer system is made up of hardware and software.  The term hardware is fairly easy.
Systems Life Cycle. Know the elements of the system that are created Understand the need for thorough testing Be able to describe the different tests.
TESTING LEVELS Unit Testing Integration Testing System Testing Acceptance Testing.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
MIS 7003 MBA Core Course in MIS Professor Akhilesh Bajaj The University of Tulsa Introduction to S/W Engineering © All slides in this presentation Akhilesh.
Testing, Testing & Testing - By M.D.ACHARYA QA doesn't make software but makes it better.
CSC 480 Software Engineering Test Planning. Test Cases and Test Plans A test case is an explicit set of instructions designed to detect a particular class.
Bina Nusantara 19 C H A P T E R SYSTEM CONSTRUCTION AND IMPLEMENTATION.
1 Object-Oriented Analysis and Design with the Unified Process Figure 13-1 Implementation discipline activities.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
What is a software? Computer Software, or just Software, is the collection of computer programs and related data that provide the instructions telling.
Test Automation Steffen Goerlitz Barry Lange Mitchell Meerman Harry Schultz Trevor Spees.
Text2PTO: Modernizing Patent Application Filing A Proposal for Submitting Text Applications to the USPTO.
In today’s lesson we will be looking at: what we mean by the software development lifecycle the phases in the lifecycle We will focus particularly on testing:
Principles of Information Systems Eighth Edition
Software Engineering (CSI 321)
SOFTWARE TESTING OVERVIEW
Systems Analysis and Design
Software engineering – 1
Applied Software Implementation & Testing
Information Systems, Ninth Edition
Systems Construction and Implementation
System Construction and Implementation
Systems Construction and Implementation
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

Virtis-Opis Beta Testing Todd S. Thompson, PE South Dakota DOT Office of Bridge Design August 3, 2011

How does this work? So you want to be a Beta Tester? Or maybe you are a Beta Tester? How do I fit in the development process? What is Beta testing? What is Alpha testing? Am I in the wrong presentation?

AASHTOWARE Standards and Guidelines %20SnG%20Notebook.pdf Policies, Guidelines and Procedures October2009final.pdf

Lifecycle

Testing & More Testing Contractor Testing –Unit –Build –System –Alpha Task Force Testing (Beta TAG) –Beta

Contractor Testing Unit testing –Is performed on each class/object or program module to reduce the complexity of testing the entire system. Build testing –Is the means used for testing a component that is made up of lesser components (units or other builds).

Contractor Testing System testing –Is used to test the system as a whole and to ensure that the integration is completed and that the system performs as required. –Ensures that all user and system requirements are met –Allows the contractor to prepare for alpha testing and ensures that the product is complete and ready for formal alpha testing and the subsequent acceptance.

Contractor Testing Alpha testing –Covers the same system and system components as System Testing. –The emphasis is, however, on breaking the system, checking the user and system requirements, and reviewing all documentation for completeness by using the application as if it were in production.

Contractor Testing Alpha testing complete –Contractor documents everything is complete, tested and meets all the requirements –Task Force accepts and approves the start of Beta Testing

Beta Testing Beta TAG role –Confirm operational and functionality requirements are satisfied –Operates in users’ environment –Review of documentation –Confirm ready to implement

Beta Testing Beta TAG Chair/Contractor –Confirm all the various user environments are covered Operating Systems Databases Design vs Rating

Beta Testing Cycle Installation problems are reported Contractor resolves installation issues and re-distributes material, as necessary Testers perform their work and report problems Contractor validates and fixes problems

Beta Testing Process Test using YOUR bridges Report Bugs to Support Center Confirm bugs were fixed in subsequent release(s) Recommend (or not) Acceptance Release is ready for production

What to test? Test variety of your typical bridges Migrate your database –Copy of your production DB? –And/Or copy of your “testing DB”? Test just like you were going to migrate to the next version in production

What to test? Confirm bridges with valid results are still valid Review new enhancements and confirm they work

Test or Check? Is there a difference? What is the difference of testing software or checking software?

Checking Software Is confirming existing beliefs Is a validation or verification Is often done by programmers as they work – making sure they don’t break something Is focusing on making sure the program doesn’t fail

Testing Software Something done with motivation to learn something new Process of exploratory, discovery, investigation and learning Trying to find limits Trying to find everything about the program that works and does NOT work

Checking vs Testing Checking provides a yes or no Checking answers the question “Does this assertion pass or fail?” Testing is open ended Testing is “Is there a problem here?”

Checking vs Testing Checking doesn’t let us know if the program works – it only lets us know it’s working within the scope of our expectation(s) Testing is, in part, finding out if our checks are good enough

Checking vs Testing Testing involves some checking, but if it only involves checking, it will be poor testing Testing involves curiosity and exploration and can’t be automated – it involves human intervention

Checking vs Testing If we find a problem in testing, the checks need to be revised so that the problem doesn’t happen again Automated testing is really automated checking Any “testing” that is looking for a yes/no or an expected result is actually checking

Find a bug? Document any and all errors or bugs you find

Documenting Confirm your problem/issue –Provide the bridge XML –Explain how it happens –Screenshots of error or problem –Explain what it should be –Engine, DB, OS, etc

Test New Features Review new Enhancements –Plan out what you can test –E.g. if you don’t have floor trusses – don’t plan on testing that portion.

Global Testing Check Final results of various bridges –I have various groups of bridges that have “accepted” results –Compare those RF’s with new release(s) –Use of spreadsheet(s) to quickly compare results Look at the “final” result and compare

Global Testing Quick and fairly easy way to feel comfortable with new release –Your bridges –Your results –Good comparison –Identify potential problems

Global Testing Compare Final LF Rating Results with previous version Brass LF 6.2 vs AAHSTO LF 6.3 HS 20 –INV RF = (Version 6.2) –INV RF = (Version 6.3) –Only 2% difference – say ok

Global Testing Life is easy when everything matches But what to do when you get differences? –Confirm same bridge data (same input) –Confirm bridge properties –Confirm same load effects (DL and LL) –Confirm capacities –Confirm rating factors (if load rating)

Global Testing When you get differences – you need your detective hat Think about what input affects the results and where the difference could be found –Spec Change? –Corrected previous error/bug?

Global Testing The more data you can confirm The better you can isolate the difference Greatly reduces the time the developer needs to try to figure out what and where the problem is and get a successful fix.

“Local” Testing Looking into the deep and dirty details of the analysis –Comparing Moments, Shears, Deflections –Comparing M, V, & Service Capacities –Reviewing Specifications and their details –Reviewing other details as necessary –Very time consuming effort at times

Enhancement Testing Testing out new features in the application FY 2011 Work Plan –FP1 User Enhancements Truss LL Distribution Factor

Truss LL DF

Compare LL DF’s Hand Calcs vs Virtis Calcs –Single Lane M LL DF vs 0.87 –Multi Lane M LL DF vs 1.77

Truss LL DF Hand Calcs vs Virtis Calcs –Both used AASHTO for multi lane reduction factors –Both used AASHTO for 12 ft lanes –Both used 2 ft from curb line to first Wheel –Everything agrees with hand calcs –Accept this Enhancement as correct

Other testing areas Reports –Data Correct –Labels match data –Missing data Import/Export Bridge and Library XML files –Conversion works ok, if necessary –Bridge rates ok after migration – same results

Other testing areas Administration –Adding/Removing users –Revising their permissions (groups) Other Configuration revisions –Libraries

Still Want to Test?

Other Beta Test TAG duties Review upcoming enhancements Review GUI changes during design Review enhancement list and short list them for UG meeting Other duties as assigned by TAG Chair and/or Task Force

Why? Why do I test? –I’m going to do the same testing before I’d implement a new version anyway, so might as well have a jump start from ground level. –I learn the product and the new enhancements. –Get to help in direction of the product. –Like to help

Why do you want to test?

Questions?