Intro to Bug Trackers (Activity)

From Foss2Serve
(Difference between revisions)
Jump to: navigation, search
(Part 1 - Bug Reports)
(Update link to GNOME issues)
 
(18 intermediate revisions by 7 users not shown)
Line 3: Line 3:
 
{{Learning Activity Overview
 
{{Learning Activity Overview
 
|title=
 
|title=
Intro to Bug Trackers
+
Intro to Issue Trackers
 
|overview=  
 
|overview=  
Learners will gain an understanding of the features of bug trackers and how they are used to identify work items to be completed in a FOSS project.  
+
Learners will gain an understanding of the features of issue trackers and how they are used to identify work items to be completed in a FOSS project.  
 
|prerequisites=
 
|prerequisites=
 
None.
 
None.
 
|objectives=
 
|objectives=
# Describe the role that a bug tracker plays in a FOSS project.
+
# Describe the role that a issue tracker plays in a FOSS project.
# Describe the different types of issues stored in a bug tracker and their priorities.
+
# Describe the different types of issues stored in a issue tracker and their priorities.
# Identify and track the status of a particular bug in a project.  
+
# Identify and track the status of a particular issue in a project.  
 
|process skills=
 
|process skills=
 
}}
 
}}
Line 18: Line 18:
 
=== Background ===
 
=== Background ===
  
Bug tracking systems are a tool for change management and organization used by FOSS projects.  
+
Issue tracking systems are a tool for change management and organization used by FOSS projects. Issue trackers are used to hold bug reports, new feature requests, patches, and some tasks. Issue trackers are also called request trackers, bug trackers, and ticket systems. Please read the two readings below for a more complete treatment of issue trackers and their use in FOSS projects.
Bug trackers do far more than simply keep track of bugs.
+
They also are used to hold new feature requests, patches, and some tasks.  
+
Bug trackers are also called request trackers, issue trackers, request trackers and ticket systems.  
+
Please read the two readings below for a more complete treatment of bug trackers and their use in FOSS projects.
+
  
 
* [http://producingoss.com/en/bug-tracker.html Karl Fogel's chapter on bug trackers]
 
* [http://producingoss.com/en/bug-tracker.html Karl Fogel's chapter on bug trackers]
Line 29: Line 25:
 
=== Directions ===
 
=== Directions ===
  
We will begin by looking at a typical Bugzilla instance for a project.
+
# Open a browser and go to GNOME's issue tracker on GitLab: https://gitlab.gnome.org/groups/GNOME/-/issues.
We will be using GNOME's Bugzilla instance, but specifically looking at the bugs for the Accessibility Team.  
+
# GItLab allows groups with multiple projects to view all their issues in an aggregated view. This is what you are viewing now. List some of the projects that these issues belong to (hint - each issue has an issue number prefixed by its project name.)
 
+
# What other information is available about each issue in this view?
== Part 1 - Bug Reports ==
+
# Issues can be assigned labels which are also visible from this view. These are the colorful labeled ovals. List a few of the labels that you see. Feel free to browse through pages.
PART 1 – BUG REPORTS
+
# Browse through a couple of issues. What additional information is provided on individual issues?
2.
+
# Click on "labels" in the left menu. Notice that labels are grouped by number and color. For example, gold (olive?) labels start with "1." and represent the type of the issue, which can be used to quickly search for issues of a certain type and to know what type an issue is at a glance. What other groups are there, and how do you think they are used?
ID stand for bug identification number.
+
# Click on "board" in the left menu. Boards are used to organize issues. This board provides a high-level roadmap of the projects in GNOME. How are cards associated with columns?
SEV stand for Severity and it is used to determine how severe the bug is, or whether it’s an enhancement. The range of values is from blocker to enhancement.
+
# Milestones do three things: 1. they aggregate a set of issues and 2. they associate a deadline with those issues, and 3. they provide a progress bar to visualize the status of a milestone. Milestones can be used to collect issues for an upcoming release, organize a time-boxed development effort (as in a Scrum Sprint), or they can be used to collect issues that compose a larger feature to be implemented. Click on "milestones" in the left menu. Browse through two or three of them. How does GNOME appear to be using milestones?
Pri stand for Priority and an Engineer used to prioritize their bugs using this field. The range of values is from immediate to Low.
+
# Click on "Merge Requests" in the left menu. These look a lot like issues. Browse through a few. What do they have that issues do not? Often merge-requests contain links back to the issue that they are related to. What is the syntax for linking a Merge-Request to an issue?
OS stand for operating system and it is the OS the bug was observed on. The range of values is from All to Other.
+
Product : categorised bugs into products and components. The range of values is from gjs to seed.
+
Status: is used to determine the number of state of a bug. The range of values is from New to Verified.
+
Resolution: is a conditional statement used to verify If a bug is in a resolved state or not , then other reasons will be given for its resolution. The range of values is from Incomplete to No TXIMIAN.
+
Summary : The bug summary is a short sentence which succinctly describes what the bug is about.
+
3.
+
I discovered the definitions of the column name in 2 above after clicking on the search after the browse and then hover my mouse over each field label.
+
4.
+
The bugs are initially displayed as below
+
ID
+
Product
+
Comp
+
Assignee
+
Status
+
Resolution
+
Summary
+
Changed
+
 
+
5.
+
Red: Bug 782877 – [Regression] Defaults for signing and Encrypting all messages are ignored for some accounts. All the fields’ record is in red colors.
+
Gray: Bug 782774 – kmssink: drop last rendered buffer on ALLOCATION and DRAIN queries. All the fields’ record is in gray colors.
+
Black: BUG 782829 – on a virtual machine(Virtualbox), gedit cannot safe opened files on the shared folder. All the fields’ record is in black colors.
+
6.
+
Bug 764211
+
1. Bug was submitted on 2016-03-25 by Mortem Welinder
+
2. Recent discussion on the bug is the lack of transport layer encryption and the Simple mail transfer protocol(SMTP) used by the GNOME contributor is not supporting transport layer session (TLS)
+
3. The bug is current
+
4. The bug is assigned to GNOME sysadmins
+
5. I will write a code to encrypt the mail
+
 
+
== Part 2 - Collective Reports ==
+
 
+
# Click on the “Reports” link on the top of the page.
+
# Click on the "Summary of Bug Activity for the last week".
+
# How many bug reports were opened in the last week? How many were closed?
+
# What was the general trend last week? Were more bugs opened than closed or vice versa?
+
# Who were the top three bug closers? Why is this important to know?
+
# Who were the top three bug reporters? Are these the same as the top three bug closes? What is the overlap in these two lists?
+
# Who are the top three contributors of patches?
+
# Who are the top three reviewers of patches? What is the overlap between these lists and the bug closers and bug reporters? What is the overlap between patch contributors and patch reviewers?
+
# Click on the “Generate Graphical Reports” link.
+
# Plot a line graph of the severity of bugs by component for Orca:
+
## Select "Severity" for the vertical axis
+
## Select "Component" for the horizontal axis
+
## Select "Bar Graph" for type of graph
+
## Leave the "Multiple Images" as <none>
+
## Scroll down and select Orca from the Product menu.
+
## Click "Generate Report".  
+
# What class were the majority of the bugs for braille?
+
# What other reports can you generate?
+
 
+
 
+
===Deliverables ===
+
 
+
POSSE: On your user wiki page, a section describing the results of your exploration below.
+
  
 
= Notes for Instructors =
 
= Notes for Instructors =
Line 142: Line 83:
 
|author=
 
|author=
 
Heidi Ellis
 
Heidi Ellis
 +
Stoney Jackson
 
|source=
 
|source=
 
|license=
 
|license=

Latest revision as of 19:47, 22 May 2019


Title

Intro to Issue Trackers

Overview

Learners will gain an understanding of the features of issue trackers and how they are used to identify work items to be completed in a FOSS project.

Prerequisites

None.

Learning
Objectives
After successfully completing this activity, the learner should be able to:
  1. Describe the role that a issue tracker plays in a FOSS project.
  2. Describe the different types of issues stored in a issue tracker and their priorities.
  3. Identify and track the status of a particular issue in a project.
Process Skills
Practiced


Background

Issue tracking systems are a tool for change management and organization used by FOSS projects. Issue trackers are used to hold bug reports, new feature requests, patches, and some tasks. Issue trackers are also called request trackers, bug trackers, and ticket systems. Please read the two readings below for a more complete treatment of issue trackers and their use in FOSS projects.

Directions

  1. Open a browser and go to GNOME's issue tracker on GitLab: https://gitlab.gnome.org/groups/GNOME/-/issues.
  2. GItLab allows groups with multiple projects to view all their issues in an aggregated view. This is what you are viewing now. List some of the projects that these issues belong to (hint - each issue has an issue number prefixed by its project name.)
  3. What other information is available about each issue in this view?
  4. Issues can be assigned labels which are also visible from this view. These are the colorful labeled ovals. List a few of the labels that you see. Feel free to browse through pages.
  5. Browse through a couple of issues. What additional information is provided on individual issues?
  6. Click on "labels" in the left menu. Notice that labels are grouped by number and color. For example, gold (olive?) labels start with "1." and represent the type of the issue, which can be used to quickly search for issues of a certain type and to know what type an issue is at a glance. What other groups are there, and how do you think they are used?
  7. Click on "board" in the left menu. Boards are used to organize issues. This board provides a high-level roadmap of the projects in GNOME. How are cards associated with columns?
  8. Milestones do three things: 1. they aggregate a set of issues and 2. they associate a deadline with those issues, and 3. they provide a progress bar to visualize the status of a milestone. Milestones can be used to collect issues for an upcoming release, organize a time-boxed development effort (as in a Scrum Sprint), or they can be used to collect issues that compose a larger feature to be implemented. Click on "milestones" in the left menu. Browse through two or three of them. How does GNOME appear to be using milestones?
  9. Click on "Merge Requests" in the left menu. These look a lot like issues. Browse through a few. What do they have that issues do not? Often merge-requests contain links back to the issue that they are related to. What is the syntax for linking a Merge-Request to an issue?

Notes for Instructors

The remaining sections of this document are intended for the instructor. They are not part of the learning activity that would be given to students.

Assessment:

  • How will the activity be graded?
  • How will learning will be measured?
  • Include sample assessment questions/rubrics.
Criteria Level 1 (fail) Level 2 (pass) Level 3 (good) Level 4 (exceptional)
The purpose of the project
Why the project is open source

Comments

  • What should the instructor know before using this activity?
  • What are some likely difficulties that an instructor may encounter using this activity?
ACM BoK
Area & Unit(s)
ACM BoK
Topic(s)
Difficulty

Easy

Estimated Time
to Complete

60 minutes

Environment /
Materials

Access to Internet/Web and web browser.

Author(s)

Heidi Ellis Stoney Jackson

Source
License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png


Suggestions for Open Source Community:

Suggestions for an open source community member who is working in conjunction with the instructor.

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox