Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 1 Applied Software.

Slides:



Advertisements
Similar presentations
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Why Software.
Advertisements

Test process essentials Riitta Viitamäki,
Acceptance Testing.
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Introduction.
Rational Unified Process
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Illinois Institute of Technology
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
(c) 2007 Mauro Pezzè & Michal Young Ch 24, slide 1 Documenting Analysis and Test.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Course Technology Chapter 3: Project Integration Management.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
Senior Design – Acceptance Test Plan Review The goal is to: define the criteria for approving the application. Tightly coupled to the Requirements document.
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
S/W Project Management
Copyright Course Technology 1999
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
INFO 637Lecture #81 Software Engineering Process II Integration and System Testing INFO 637 Glenn Booker.
Applied Software Project Management Andrew Stellman & Jennifer Greenehttp:// Applied Software Project Management Chapter 1: Introduction.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Software Testing Life Cycle
RUP Implementation and Testing
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
Understand Application Lifecycle Management
FCS - AAO - DM COMPE/SE/ISE 492 Senior Project 2 System/Software Test Documentation (STD) System/Software Test Documentation (STD)
Requirements Engineering CSE-305 Requirements Engineering Process Tasks Lecture-5.
By Touseef Tahir Software Testing Basics. Today's Agenda Software Quality assurance Software Testing Software Test cases Software Test Plans Software.
Testing Workflow In the Unified Process and Agile/Scrum processes.
Dr. Tom WayCSC Testing and Test-Driven Development CSC 4700 Software Engineering Based on Sommerville slides.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
CS 350, slide set 5 M. Overstreet Old Dominion University Spring 2005.
Applied Software Project Management
Search Engine Optimization © HiTech Institute. All rights reserved. Slide 1 What is Solution Assessment & Validation?
1 TenStep Project Management Process ™ PM00.9 PM00.9 Project Management Preparation for Success * Manage Quality *
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
Software Development A Proposed Process and Methodology.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
LOGO TESTING Team 8: 1.Nguyễn Hoàng Khánh 2.Dương Quốc Việt 3.Trang Thế Vinh.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Requirements in the product life cycle Chapter 7.
“The Role of Experience in Software Testing Practice” A Review of the Article by Armin Beer and Rudolf Ramler By Jason Gero COMP 587 Prof. Lingard Spring.
Testing and Evolution CSCI 201L Jeffrey Miller, Ph.D. HTTP :// WWW - SCF. USC. EDU /~ CSCI 201 USC CSCI 201L.
Software Testing and Quality Assurance Practical Considerations (1) 1.
Applied Software Project Management SOFTWARE TESTING Applied Software Project Management 1.
Applied Software Testing
Office 365 Security Assessment Workshop
Software Engineering (CSI 321)
Applied Software Implementation & Testing
Design and Programming
Lecture 09:Software Testing
CLINICAL INFORMATION SYSTEM
Testing and Test-Driven Development CSC 4700 Software Engineering
Applying Use Cases (Chapters 25,26)
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 1 Applied Software Project Management Software Testing Slides modified by Gareth Ferneyhough For CS 709B UNR, Spring 2012

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 2 Outline Software Quality Test Plans Test Plan Outline (+) Test Cases Examples (+) Test Execution Acceptance Criteria (+) Defect Tracking Test Environment and Performance Testing (+) Smoke Tests Test Automation Examples (+) Postmortem Reports (+) Signifies slides added by Gareth Ferneyhough

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 3 Quality Quality means “conformance to requirements”  The best testers can only catch defects that are contrary to specification.  Testing does not make the software perfect.  If an organization does not have good requirements engineering practices then it will be very hard to deliver software that fills the users’ needs, because the product team does not really know what those needs are.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 4 Test Plans The goal of test planning is to establish the list of tasks which, if performed, will identify all of the requirements that have not been met in the software. The main work product is the test plan.  The test plan documents the overall approach to the test. In many ways, the test plan serves as a summary of the test activities that will be performed.  It shows how the tests will be organized, and outlines all of the testers’ needs which must be met in order to properly carry out the test.  The test plan should be inspected by members of the engineering team and senior managers.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 5 Test Plan Outline

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 6 Test Cases A test case is a description of a specific interaction that a tester will have in order to test a single behavior of the software. Test cases are very similar to use cases, in that they are step-by-step narratives which define a specific interaction between the user and the software.  A typical test case is laid out in a table, and includes: A unique name and number A requirement which this test case is exercising Preconditions which describe the state of the software before the test case (which is often a previous test case that must always be run before the current test case) Steps that describe the specific steps which make up the interaction Expected Results which describe the expected state of the software after the test case is executed Test cases must be repeatable.  Good test cases are data-specific, and describe each interaction necessary to repeat the test exactly.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 7 Test Cases – Good Example

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 8 Test Cases – Bad Example

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 9 Test Execution The software testers begin executing the test plan after the programmers deliver the alpha build, or a build that they feel is feature complete.  The alpha should be of high quality—the programmers should feel that it is ready for release, and as good as they can get it. There are typically several iterations of test execution.  The first iteration focuses on new functionality that has been added since the last round of testing.  A regression test is a test designed to make sure that a change to one area of the software has not caused any other part of the software which had previously passed its tests to stop working.  Regression testing usually involves executing all test cases which have previously been executed.  There are typically at least two regression tests for any software project.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 10 Test Execution When is testing complete? – No defects found – Or defects meet acceptance criteria outlined in test plan

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 11 Defect Tracking The defect tracking system is a program that testers use to record and track defects. It routes each defect between testers, developers, the project manager and others, following a workflow designed to ensure that the defect is verified and repaired.  Every defect encountered in the test run is recorded and entered into a defect tracking system so that it can be prioritized.  The defect workflow should track the interaction between the testers who find the defect and the programmers who fix it. It should ensure that every defect can be properly prioritized and reviewed by all of the stakeholders to determine whether or not it should be repaired. This process of review and prioritization referred to as triage.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 12 Test Environment and Performance Testing Project manager should ask questions regarding desired performance as early as the vision and scope document – How many users? – Concurrency? Peak times? – Hardware? OS? Security? – Updates and Maintenance? Adequate performance testing will usually require a large investment in duplicate hardware and automated performance evaluation tools. – ALL hardware should match (routers, firewalls, load balancers) – If the organization cannot afford this expense, they should not be developing the software and should seek another solution.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 13 Smoke Tests A smoke test is a subset of the test cases that is typically representative of the overall test plan.  Smoke tests are good for verifying proper deployment or other non invasive changes.  They are also useful for verifying a build is ready to send to test.  Smoke tests are not substitute for actual functional testing.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 14 Test Automation Test automation is a practice in which testers employ a software tool to reduce or eliminate repetitive tasks.  Testers either write scripts or use record-and- playback to capture user interactions with the software being tested.  This can save the testers a lot of time if many iterations of testing will be required.  It costs a lot to develop and maintain automated test suites, so it is generally not worth developing them for tests that will executed only a few times.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 15 Postmortem Reports The postmortem report is an overall account of the team’s experience in building the software, and of the experience of the users and stakeholders in working with the team.  The report should contain an honest assessment of how the team members, users, and stakeholders perceived the end product, and assessed the decisions made throughout the project.  The purpose of the post-mortem report is to highlight the team’s successes and identify any problems which should be fixed in future releases.

Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 16 Videos LoadRunner: Selenium: