CS5123 Software Validation and Quality Assurance

Slides:



Advertisements
Similar presentations
Acronis Jira New Acronis Bug Tracking System March, 2011.
Advertisements

Software Testing Prasad G.
CS4723 Software Validation and Quality Assurance Lecture 9 Bug Report Management.
Open Source Workshop1 IBM Software Group Working with Apache Tuscany A Hands-On Workshop Luciano Resende Haleh.
Software Quality Assurance QA Engineering, Testing, Bug Tracking, Test Automation Software University Technical Trainers SoftUni Team.
1 Advanced Computer Programming Project Management: Software Life Cycle Copyright © Texas Education Agency, 2013.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Work on a Defect from QA Liu Xue Ning.

Tracking The Problem  By Aaron Jackson. What’s a Problem?  A suspicious or unwanted behavior in a program  Not all problems are errors as some perceived.
eMB Bug-Workflow Bugzilla – User overview
Git – versioning and managing your software L. Grewe.
EGEE is a project funded by the European Union under contract IST Testing processes Leanne Guy Testing activity manager JRA1 All hands meeting,
Datzilla Overview / Workflow and Climate Tools from SRCC & SCIPP Kevin Robbins, Director Southern Regional Climate Center.
CS5103 Software Engineering Lecture 11 Versioning and Issue Tracking.
Jira Demo Blame Tony Edgin. Overview What is Jira? Requirement states Terminology Jira demo.
CS5103 Software Engineering Lecture 02 More on Software Process Models.
© 2012 Václav Rajlich Software Engineering: The Current Practice Ch Conclusion of software change The last phase of software change The activities.
Introduction to Bugzilla. May 12, 2011 What is Bugzilla? Bugzilla is a defect- or issue-tracking system Allows individual or groups of developers effectively.
Bug Or Feature Submitting Support Requests and Development Ideas.
ITEC 370 Lecture 20 Testing. Review Questions? Project update on F Test plan –Sections –How / when to use it.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
1 April 14, Starting New Open Source Software Projects William Cohen NCSU CSC 591W April 14, 2008.
BU Power Tools & Accessories – PT&A Task management – Definitions
Open source development model and methodologies.
Introduction to CAST Technical Support
David Hatten Developer, UrbanCode 17 October 2013
Locale—Localization—Release
TOP project – STATUS UPDATE & Workflow demo
SaralTA Batch-07 Software Testing Presented By - Chittaranjan M.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Information Systems and Network Engineering Laboratory II
AP CSP: Cleaning Data & Creating Summary Tables
Software Project Configuration Management
Tracking and Squashing Bugs
Quality Assurance Week 5 Winter quarter 02/04/02 SOS
Let the group project commence!
Testing More In CS430.
REACH 2018 Find your co-registrants and prepare to register jointly.
Chapter 18 Maintaining Information Systems
The COSMO Coding Standards Some Highlights
Version control, using Git
Chapter 8 – Software Testing
Software Quality Assurance
Issue Tracking Systems
Taking an Iteration Down to Code
Hao Zhong Shanghai Jiao Tong University
Software Engineering (CSI 321)
Some Important Techniques For Regression Testing That You Must Know.
TDL Open Source Project (TOP) Input to MTS#71, 31 May / 01 Jun 2017
Strategies For Software Test Documentation
Introduction to CAST Technical Support
Software Quality Assurance
© University of Liverpool
Model-View-Controller
Joel Modisette ROLANDS & ASSOCIATES Corporation
Software Engineering D7032E
TDL Open Source Project (TOP) Input to MTS#70,
KEY PROCESS AREAS (KPAs)
Programming.
Using Github.
Exception Handling Imran Rashid CTO at ManiWeber Technologies.
Software Verification, Validation, and Acceptance Testing
8th Grade Science Content Standard
Introduction to CAST Technical Support
OWASP Application Security Verification Standard
Bug tracking tools.
Project Iterations.
Chapter 2: Building a System
8th Grade Science Content Standard
Presentation transcript:

CS5123 Software Validation and Quality Assurance Lecture 9 Bug Report Management

Issue Tracking System 2 After software testing Testers find a lot of bugs They need to tell the developers about the bugs They usually put them into a so-called issue tracking system Compared with Mailing list Hard to manage, come with all other mails Not categorized by topic No features for describing specific aspects in SE (versions, components, commits, etc) 2

Issue Tracking System A platform for developers to communicate with each other Like a forum People can register and raise a issue The one who raise the issue will describe the issue in details Others can comment 3

Issue Tracking System 4 What is special More structured for describing issues Component, assignees, schedules, status, resolution Customizable Change the contents while progress is made (status, resolution) Sometimes allow anonymous issue raising Users of software are involved They use the software and raise bugs 4

Issue: an example 5

Issues – Life Cycle 6 Submission Reporter Triager Triaging Closed Re-open Triager Triaging Duplicate/Invalid Closed Retriage Assigned Not reproducible Inspecting Developer Fixing Refix Fixed Verifying Developer 6

Issues Type of issues Process of issues Resolution of issues 7

Type of issues Bug reports Feature Requests Patches 8

Type of Issues 9 Bug report (e.g., system shows wrong message) About a bug of the software Raised by a user/developer Should include: Step to reproduce Expected behavior Actual behavior Stack trace or error message if any 9

Example of a bug report https://bugzilla.mozilla.org/show_bug.cgi?id=876495 10

Type of Issues 11 New feature (e.g., add sorting to results) About add a new feature, e.g., add sorting by modify time Raised by a user/developer 11

Example of a feature request https://bugzilla.mozilla.org/show_bug.cgi?id=382491 12

Type of Issues 13 Patch (e.g., add checking for input validity) A fix to the software By a professional user or a developer on a important fix Should include: Version to patch Patch code: basically a code diff, Diff (buggy, correct) 13

Example of a patch https://bugzilla.mozilla.org/show_bug.cgi?id=657763 14

Process of an issue 15 Open/New Assigned The issue is raised Nobody in the project has looked at it yet Assigned A person called triager assign issue to a developer Bug report: the developer will first reproduce the bug, and then try to fix Feature request: discuss with colleagues on whether to accommodate the request, and implement the feature Patch: Validate the patch Milestone: may be assigned to a sub-group 15

Process of an issue 16 Closed Reopened When the decision on the issue is made in any way Fixed, usually accompany with code commits Reject Later Reopened After the issues is closed, something happens and the issue become active again Incomplete fix Start to implement a postponed feature Or revoke any wrong decision before 16

Resolution of an issue 17 Fixed Invalid A bug is fixed A feature is added A patch is applied Invalid Bug cannot be reproduce Feature does not make sense (request is not understandable) Patch is not correct 17

Example of invalid bug reports https://bugzilla.mozilla.org/show_bug.cgi?id=198057 18

Resolution of an issue 19 Duplicate Won’t fix The issue is a duplicate of another existing issue Often happens for user raised issues Usually bug report / feature request Some issue tracking system allows merge of duplicate issues Won’t fix The developers decide to not fix the bug or accommodate the new feature Limited human resource, new version is about to released 19

Example of duplicate bug reports https://bugzilla.mozilla.org/show_bug.cgi?id=137325 20

Example of won’t fix bug reports https://bugzilla.mozilla.org/show_bug.cgi?id=143329 https://bugzilla.mozilla.org/show_bug.cgi?id=290131 21

Existing Issue Tracking Systems Many project hosting websites provide issue tracking systems also Google Code: so you will also have a issue tracking system GIT Hub Source Forge Issue tracking service provider: Bugzilla Companies often has their own issue tracking system Users can submit issues, but the tracking system is not public 22

Tips on submitting an issue report Search for existing reports Specify: product, platform/OS, version Describe Input / Steps to reproduce Expected results / actual results Bug: Always reproducible or happen randomly (maybe related to concurrency, system resource, environ, etc.) Provide Snapshot / bug: error message Bug: Stack trace 23

Submit a bug report 24 Demo on sourceforge, bugzilla, and github https://sourceforge.net/p/sweethome3d/bugs/new/ https://bugzilla.mozilla.org/enter_bug.cgi https://github.com 24

What are the most important part in a bug report? Step to reproduce? Test cases? Screenshots? Error Messages? Stack Traces? Version? … 25

A survey did by a number of German Scientists With 130 developers and 215 reporters Ask about what are the information they provided / used and expect to be useful Information types include: steps to reproduce, stack traces, test cases, observed behavior, screenshots, code examples, summary, version,… 26

Answer of the developers Step to reproduce: 83% Stack trace: 57% Test cases: 51% Observed Behavior: 33% Screenshots: 26% Expected behavior: 22% Code examples: 14% Summary: 13% Version: 12% Error report: 12% 27

Mismatch of understanding 28

Tips on triaging and handling issue reports Search for existing reports Talk with the developers who are familiar with the area Decide the severity and who should handle the report (according to the expertise and workload) Handling an issues report (e.g., fix, add feature) Reproduce For features: communicate on the issue tracking system about whether and how to support it If reproducible Always report progress as comments in the issue tracking system: others may help or change their work accordingly 29

Review of issue tracking system Where the bugs go to after you find them Type of issues Resolution of issues How to write a good bug report? How bug reports are handled? 30