Joy Shafer October, 2011  Why am I here?  Why are you here?

Slides:



Advertisements
Similar presentations
xUnit Test Patterns (Some) xUnit Test Patterns (in practice) by Adam Czepil.
Advertisements

Java Software Quality Assurance Tools Michael Slattery Indianapolis Java Users Group Meeting April 24, 2002.
Automation is What We Do
Test Automation Success: Choosing the Right People & Process
Test-Driven Development. Why Testing is Important? “If you don’t have tests, how do you know your code is doing the thing right and doing the right thing?”
Prashant Lambat Sr. Manager SQA Engineering Symantec Corporation, Pune Date: 29 th January 2011.
Software Engineering CSE470: Process 15 Software Engineering Phases Definition: What? Development: How? Maintenance: Managing change Umbrella Activities:
Software Development Methodologies 1. A methodology is: A collection of procedures, techniques, principles, and tools that help developers build a computer.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Estimating Defect Density. True genius resides in the capacity for evaluation of uncertain, hazardous and conflicting information Winston Churchill.
How to: Design and Develop an Application to Ensure its Quality James Hippolite Senior.NET Developer Telecom New Zealand Limited James Hippolite Senior.NET.
Review: Agile Software Testing in Large-Scale Project Talha Majeed COMP 587 Spring 2011.
EXtreme.NET Dr. Neil Roodyn. eXtreme.NET Who is Dr. Neil? MISSION: To increase the value of your Software Business Working with software for way too long.
Systems maintenance Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Updated: November 2009.
Systems maintenance & adoption Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Updated: November 2013.
Test Environments Arun Murugan – u Rohan Ahluwalia – u Shuchi Gauri – u
1 SOFTWARE QUALITY ASSURANCE Basic Principles. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance SW Quality:
Object-Oriented Analysis and Design Lecture 11 Maintenance (from Schach, “O-O and Classical Software Engineering”)
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
Agile Testing with Testing Anywhere The road to automation need not be long.
Software Testing Test Design and Implementation. Agenda Test Design Test Implementation Test Design Sources Automated Testing 2.
Introduction to Agile.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
October 15, 2004 – 1 Welcome IPMA and SolutionsIQ Professional Event Testing, Testing, 1…2…3… Improving software quality -- one bug at a time.
Terms: Test (Case) vs. Test Suite
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
QWise software engineering – refactored! Testing, testing A first-look at the new testing capabilities in Visual Studio 2010 Mathias Olausson.
MGS Testing A High Level Overview of Testing in Microsoft Games Studio Joe Djorgee – Test Lead.
Dillon: CSE470: SE, Process1 Software Engineering Phases l Definition: What? l Development: How? l Maintenance: Managing change l Umbrella Activities:
Transaction Processing Systems and System Development Life Cycle
Software Testing Life Cycle
資工 4A 陳怡秀 Microsoft Visual Studio’s Journey to Continuous Delivery.
College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 1 (Ch. 1, 2, & 3)
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
Understand Application Lifecycle Management
The Program Development Cycle
CSE 7314 Software Testing and Reliability Robert Oshana Lecture 16
Software Metrics and Reliability. Definitions According to ANSI, “ Software Reliability is defined as the probability of failure – free software operation.
From Quality Control to Quality Assurance…and Beyond Alan Page Microsoft.
Program Development Cycle Modern software developers base many of their techniques on traditional approaches to mathematical problem solving. One such.
Rational Unified Process Mr Hisham AlKhawar. Iterative versus Waterfall  We need to use a life cycle model in order to approach developing a system easily,
Systems Analysis and Design in a Changing World, Fourth Edition
Reduce Development and Testing Time on Embedded Space Programs With Auto- Generated Code Software Engineer Northrop Grumman Electronic Systems Matthew.
MSF 4.0 for Agile Software Development Ron Tolido Capgemini.
EMI INFSO-RI SA2: Quality Assurance Status Report Alberto Aimar(SA2) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
Software Development. The Software Life Cycle Encompasses all activities from initial analysis until obsolescence Analysis of problem or request Analysis.
Tools and technology usage in PFMS application lifecycle management process LEPL Financial-Analytical Service, Ministry of Finance October, 2015 Dimitri.
Trends in Training Manual Testing Online. Manual Testing is a process that is being carried out to find the defects in software before it gets released.
AGILE METHODS Curtis Cook CS 569 Spring 2003.
Embedded Systems Software Engineering
Software Development.
Software Testing Lab 1.
A Case Study: Automated Continuous Software Engineering Cycle (ACSEC)
Where Agile Business Meets Agile Development
aBAP – NextGen QA Delivery Gear
Systematic Manual Testing
Automation – “A Critical Component of Agile testing”
VENDORS, CONSULTANTS AND USERS
Script-less Automation: An Approach to Shift-Left.
Some Important Techniques For Regression Testing That You Must Know.
DevOps CSCI 577b.
FOUNDATIONAL CONCEPTS
Definitions of Done Every team’s definition of done will be different
Quality Assurance in an Agile Development Team Michelle Wu 2018 PNSQC
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Software visualization and analysis tool box
Chapter 3: Agile Software Processes
Addressing Test coverage in Continuous Testing
Software Testing Software Testing is a process of evaluating a system by manual or automatic means and verify that it satisfies specified requirements.
Open Source Tool Based Automation solution with Continuous Integration and end to end BDD Implementation Arun Krishnan - Automation Manager Maria Afzal-
Presentation transcript:

Joy Shafer October, 2011

 Why am I here?  Why are you here?

 Investment in test, particularly test automation  Software quality  Ability to maintain software or service  Investment in infrastructure  Employee morale and vitality Most of the time, no one sets out to sabotage quality, things just get away from them.

 Automated BVTs  Continuous Integration  Unit testing  Automated regression tests  The ability to emulate external components

 Robust (reliably functional)  Not dependent on other systems or services  Definitive  If it fails it’s because of a code issue not a timing issue, data issue, setup issue, etc.  Start with basic tests and add on

 Daily integration  Scheduled BVTs & Automated Regression tests A cornerstone of efficient software development Adequate test automation is required

 Cleaner code  Better designed code  Tools  Test hooks  Mock objects  Better appreciation by developers of the challenges testers face Management support is required

Without automated regression testing, teams of manual testers will need to comb through the software with every release, laboriously running the same tests they’ve run countless times before.

 Don’t get too complicated  Check with other teams for emulators you can modify  Keep up-to-date  Extremely useful, maybe essential, for performance testing Invest early, invest often

 Fix bugs as you find them  Less time overall on bug fixes  Ship cycles will be shorter and more predictable  No backlog to carry from release to release  Cleaner code  Consider refactoring  Techniques for quality improvement  Do a ‘quality release’  Implement a ‘bug jail’

 Think about maintenance during the design phase  Design for ease of deployment  Keep hardware/OS/software current 20% Productive Non- Productive 80% 20%

 Physical Infrastructure  Logging  Metrics

 Long hours lead to  Low productivity  Job dissatisfaction/Burnout  High turnover  Mistrust of management

 Software development is a team sport  Reward successful teams

 Know best practices  Be polite but persistent  Find your allies  Understand the real problem  Measure yourself  Set clear goals  Celebrate success Most importantly, don’t give up!