May 29 th, 2003 Curtis Anderson Sivaprasad Padisetty.

Slides:



Advertisements
Similar presentations
IMA 2.5: Software Architecture and Development Environment Roberto Olivares M.S. Electrical Engineering Vanderbilt University, Spring 2003.
Advertisements

Requirements for a UI Test Framework Stanislaw Wozniak Bernie Miles.
National Database Templates for the Biosafety Clearing-House Application (NDT-nBCH) Overview of the US nBCH Applications.
Configuration management
PREDICT Model for Test Automation. Does it sound familiar to you? Organization has procured test automation tools Management expectations are high Multiple.
Test Automation Success: Choosing the Right People & Process
Automated Software Testing: Test Execution and Review Amritha Muralidharan (axm16u)
HP Quality Center Overview.
Eralp Erat Senior Software Developer MCP,MCAD.NET,MCSD.NET.
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Test Automation An Approach to Automated Software Regression Testing Presented by Adnet, Inc Feb 2015.
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
Alternate Software Development Methodologies
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
© 2004 Visible Systems Corporation. All rights reserved. 1 (800) 6VISIBLE Holistic View of the Enterprise Business Development Operations.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Mike Azocar Sr. Developer Technical Specialist Microsoft Corporation
SE 464: Industrial Information systems Systems Engineering Department Industrial Information System LAB 02: Introduction to SAP.
SYSTEMS DEVELOPMENT Phases, Tools, and Techniques
1 SOFTWARE QUALITY ASSURANCE Basic Principles. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance SW Quality:
Chapter 3.1 Teams and Processes. 2 Programming Teams In the 1980s programmers developed the whole game (and did the art and sounds too!) Now programmers.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
I n t e g r i t y - S e r v i c e - E x c e l l e n c e Business & Enterprise Systems Introduction to Hewlett Packard (HP) Application Lifecycle Management.
EE694v-Verification-Lect5-1- Lecture 5 - Verification Tools Automation improves the efficiency and reliability of the verification process Some tools,
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
Agile Testing with Testing Anywhere The road to automation need not be long.
WDK Driver Test Manager. Outline HCT and the history of driver testing Problems to solve Goals of the WDK Driver Test Manager (DTM) Automated Deployment.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
INTRODUCTION TO CLOUD COMPUTING Cs 595 Lecture 5 2/11/2015.
DNN LOVES JENKINS FOR CONTINUOUS INTEGRATION
Project Proposal: Academic Job Market and Application Tracker Website Project designed by: Cengiz Gunay Client: Cengiz Gunay Audience: PhD candidates and.
Confidential Crisis Management Innovations, LLC. CMI CrisisPad TM Product Overview Copyright © 2011, Crisis Management Innovations, LLC. All Rights Reserved.
Software Configuration Management (SCM)
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
How to Manage the Organizational Change LaMarsh & Associates, Inc.
MGS Testing A High Level Overview of Testing in Microsoft Games Studio Joe Djorgee – Test Lead.
Managing Software Quality
Test Organization and Management
Continuous Integration and Testing
1 Microsoft’s Process Redmond in the 90’s Article by Roger Sherman, Director of Testing, Worldwide Products Group, Microsoft.
1 Lecture 19 Configuration Management Software Engineering.
& Dev Ops. Sherwin-Williams & DevOps Introduction to Sherwin-Williams.
1 G A A new Document Control System “A new system to manage LIGO documents” Stuart Anderson Melody Araya David Shoemaker 29 September, 2008
Identify steps for understanding and solving the
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
Cloud Computing Characteristics A service provided by large internet-based specialised data centres that offers storage, processing and computer resources.
Continuous Deployment JEFFREY KNAPP 8/6/14. Introduction Why is it valuable How to achieve What to consider.
Top Down View of Estimation Test Managers Forum 25 th April 2007.
GBIF Mid Term Meetings 2011 Biodiversity Data Portals for GBIF Participants: The NPT Global Biodiversity Information Facility (GBIF) 3 rd May 2011.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Testing as a Driver for Development Change Wall Street Systems Graham Thomas.
Microsoft Management Seminar Series SMS 2003 Change Management.
Confidential Continuous Integration Framework (CIF) 5/18/2004.
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
HP PPM Center release 8 Helping IT answer the tough questions
Chapter 4 Intranets and Extranets. Awad –Electronic Commerce 2/e © 2004 Pearson Prentice Hall 2 OBJECTIVES Introduction Technical Infrastructure Planning.
Neil Kidd Developer Tools Technical Specialist Microsoft UK.
Built atop SharePoint Online, WorkPoint 365 Offers a Project and Case Management Solution to Boost Business Productivity and Deliver Governance OFFICE.
Project Workspace (Coach) Overview. Copyright © , Compass Partners, Inc. Unauthorized Duplication Prohibited. 2 About SigmaFlow  Founded in.
Automated Testing April 2001WISQA Meeting Ronald Utz, Automated Software Testing Analyst April 11, 2001.
Software Test Plan Why do you need a test plan? –Provides a road map –Provides a feasibility check of: Resources/Cost Schedule Goal What is a test plan?
Configuration Control (Aliases: change control, change management )
1 CASE Computer Aided Software Engineering. 2 What is CASE ? A good workshop for any craftsperson has three primary characteristics 1.A collection of.
Chapter 18 Maintaining Information Systems
Continuous Integration and Testing
Automation Of Software Test
Lecture 1: Multi-tier Architecture Overview
Office 365 and Microsoft Project Integrations for HULAK Project Management Software Enable Teams to Remain Productive and Within Budget OFFICE 365 APP.
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

May 29 th, 2003 Curtis Anderson Sivaprasad Padisetty

Microsoft Confidential Overview of Presentation Part I – Software Development and Automation The Project Cycle Benefits of Automation Effective Automation Part II – Test Distribution and Development Test Distribution Systems Test Development Summary

Software Development and Automation Curtis Anderson

Microsoft Confidential The Project Cycle Test Investment in Automation The investment in test automation starts early Focus on adding testability to spec/design phase Investment usually peaks as Development slows feature coding Planning (M0) Major Milestone Phase M1,2… Release Phase Time Testing Investment Testing Phase

Microsoft Confidential The Project Cycle Automation Payback Planning (M0) Major Milestone Phase M1,2… Release Phase Time Automation Payback Testing Phase Return on Investment is near zero early Largest gains at project end game and sustaining engineering

Microsoft Confidential Benefits of Automation What does Automation Bring to the Project? Consistent Test Execution Stability Guarantees Reliability Metrics Reproduce-able Quality Assessment

Microsoft Confidential Advantages of Automation Why Automate ? Machines instead of People Run existing tests automatically on a new build or version Exact same test happens every time Do More Testing Simplistic, repetitive (BORING) tests are run for free. People spend time looking only at results People are free to ad hoc and search for bugs

Microsoft Confidential Advantages (continued) Automation can perform costly, hard, or impossible to execute tests Perf, Stress, Scalability, Config, OM/API, Matrix Consistency and Reproducibility Performance, Regression Reusability How many File Open drivers are there? Logging, etc. Ensure a level of stability before a human spends time Keeps the ‘patient healthy’ Easy to hand off (external teams & sustaining engineering)

Microsoft Confidential Risks and Problems Over-reliance on automation results Its easy to generate lots of results that creates too much noise Maintenance Exact same test happens every time False failures and false positives Skill set to produce Re-inventing the wheel Time Management is Key!

Microsoft Confidential Test Categorization Unit Test Interoperability Localizability Interoperability Performance Reliability Scalability Security Globalization Checkin Test Build Verification Acceptance Test Pass/Comprehensive Regression DogFood/Deployment System Integration Code Coverage What does it do vs. When does it run Categorizing tests helps target testing and keep things focused.

Microsoft Confidential Make Your Automation Effective Time Management is key Cost of authoring Re-use everything Write solid automation Document well Base all automation on test cases Be willing to punt if it’s not working Run the right automation at the right time Roll up the right metrics to your project

Microsoft Confidential Test Distribution System Overview Why do we need a system? Standard way to execute tests Automate the execution Standard reporting and history What does it do? Repository for managing automation Test distribution Report Results Track & manage failures

Test Distribution and Development Sivaprasad Padisetty

Microsoft Confidential Test Distribution System Components User Interface Middle Tier Database Machine Management/Controller Client Agent Test Harness Machine Imaging and other common tasks Results Viewer

Microsoft Confidential Test Distribution System Features/Requirements of a good system User Friendly, Modular, Flexible Integrated Automated/Manual test support Distributes execution – lab management Multi stage, multi machine Offline execution and Private network support Test Version Control Object Model Queuing and Resource management Hardware and Software tracking Configuration management & Matrix support Deployment/Image management Results reporting

Microsoft Confidential Test Development Abstract from code as much as possible – the less code that changes to add a test case the better Separate infrastructure code from test code Re-use as much code as possible Modeling and Data Driven tests help scale

Microsoft Confidential Test Development Good Authoring is: Focused Consistent Accurate & Reproducible Portable, Easily Leveraged Impervious to Feature Changes Feature churn Language, even application, user, etc. Cost / Benefit is the ONLY measurement (Don’t forget sustain engineering)

Microsoft Confidential Test Development Writing Automation is Software Development Log-Log-Log-Log-Log everything Plan & Design Develop coding standards Write maintainable code Document you code and your test cases Peer-reviews before check in Use a version control system (Source Depot or VSS) Test your test. Log-Log-Log-Log-Log everything This code will last as long as the product code!

Microsoft Confidential Test Development Develop Configuration Agnostic tests No hard coded anything! links like files in the definition No dependency on a specific machine name No dependency on a specific lab Should be package-able. Configuration changes & dependencies should be clearly defined.

Microsoft Confidential Reporting and Metrics Good logging saves time Individual Log files from Test Execution Roll up summary reports for all tests Available through system UI and Project roll up Metrics help with project status

Microsoft Confidential Summary Test Automation is a competitive advantage for MS Lack of Automation hurts innovation in the product Test Development is Software Development Many resources and experts exist across the company

Microsoft Confidential Test Automation Resources Automated Testing Handbook – Linda G. Hayes Software Test Automation, Efffective Use of Test Execution Tools, Mark Fewster and Dorothy Graham Internal Windows (WTT & WCTI) and Test Categoization doc link: Join Partner DL wttpart, to participate in Shared Development community. Office and Automation Strategy Doc Office automation contacts – mailto:offautomailto:offauto DevDiv and MadDog forums - MadDog General Docs -

Questions?