Applied Software Project Management SOFTWARE TESTING Applied Software Project Management 1.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

1 Test Planning CSSE 376, Software Quality Assurance Rose-Hulman Institute of Technology March 9, 2007.
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)
(c) 2007 Mauro Pezzè & Michal Young Ch 24, slide 1 Documenting Analysis and Test.
SE 555 Software Requirements & Specification Requirements Validation.
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.
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.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
S/W Project Management
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 1 Applied Software.
Software Testing Lifecycle Practice
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Software Engineering Chapter 12 The Generic Iteration Workflow Fall 2000.
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
Software Systems Verification and Validation Laboratory Assignment 3 Integration, System, Regression, Acceptance Testing Assignment date: Lab 3 Delivery.
RUP Implementation and Testing
Independent User Acceptance Test Process (IUAT)
Testing Challenges in an Agile Environment Biraj Nakarja Sogeti UK 28 th October 2009.
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.
1.  Describe an overall framework for project integration management ◦ RelatIion to the other project management knowledge areas and the project life.
Testing Workflow In the Unified Process and Agile/Scrum processes.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
Chair of Software Engineering Exercise Session 6: V & V Software Engineering Prof. Dr. Bertrand Meyer March–June 2007.
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.
The Project Management Process Groups
Use Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
1 March 19, Test Plans William Cohen NCSU CSC 591W March 19, 2008.
Configuration Management
Applied Software Testing
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Configuration Management
Software Quality Control and Quality Assurance: Introduction
Regression Testing with its types
Software Engineering (CSI 321)

Use Cases Discuss the what and how of use cases: Basics Benefits
Testing Process Roman Yagodka ISS Test Leader.
Project Management Processes
IT Roles and Responsibilities
Regression testing is a type of software testing that seeks to uncover new software bugs, or regressions, in existing functional and non-functional areas.
Applied Software Implementation & Testing
Strategies For Software Test Documentation
Design and Programming
Lecture 09:Software Testing
CLINICAL INFORMATION SYSTEM
Introducing ISTQB Agile Foundation Extending the ISTQB Program’s Support Further Presented by Rex Black, CTAL Copyright © 2014 ASTQB 1.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Applied Software Project Management
Welcome to Corporate Training -1
Project Management Processes
Systems Construction and Implementation
Planning and Estimation.
Systems Construction and Implementation
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Extreme Programming.
Software Testing Lifecycle Practice
Chapter 3: Project Integration Management
Iteration Planning.
Presentation transcript:

Applied Software Project Management SOFTWARE TESTING Applied Software Project Management 1

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. 2

Applied Software Project Management 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. 3

Applied Software Project Management TEST PLAN OUTLINE  Purpose  A description of the purpose of the application under test.  Features to be tested  A list of the features in the software that will be tested. It is a catalog of all of the test cases (including a test case number and title) that will be conducted, as well as all of the base states.  Features not to be tested  A list of any areas of the software that will be excluded from the test, as well as any test cases that were written but will not be run.  Approach  A description of the strategies that will be used to perform the test.  Suspension criteria and resumption requirements  Suspension criteria are the conditions that, if satisfied, require that the test be halted. Resumption requirements are the conditions that are required in order to restart a suspended test. 4

Applied Software Project Management TEST PLAN OUTLINE  Environmental Needs  A complete description of the test environment or environments. This should include a description of hardware, networking, databases, software, operating systems, and any other attribute of the environment that could affect the test.  Schedule  An estimated schedule for performing the test. This should include milestones with specific dates.  Acceptance criteria  Any objective quality standards that the software must meet, in order to be considered ready for release. This may include things like stakeholder sign-off and consensus, requirements that the software must have been tested under certain environments, minimum defect counts at various priority and severity levels, minimum test coverage numbers, etc.  Roles and responsibilities  A list of the specific roles that will be required for people in the organization, in order to carry out the test. This list can indicate specific people who will be testing the software and what they are responsible for. 5

Applied Software Project Management 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. 6

Applied Software Project Management 7

8

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. 9

Applied Software Project Management 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. 10

Applied Software Project Management 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. 11

Applied Software Project Management 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. 12

Applied Software Project Management 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. 13