View on GitHub

COMP 491/492

Dickinson College Computer Science Senior Seminar

Bug Fix Activity

Introduction

In the Bug Gardening Activity you became more familiar with your product and project by investigating issues that appeared in the issue tracker. In this activity you will attempt to fix a bug that appears in the issue tracker.

Many larger well-organized H/FOSS projects will have a collection of bugs/issues that have been tagged as “beginner”, “introductory”, “easy”, etc. The developers have identified these as issues that have, in their opinion, a reasonably low barrier to entry and make good places to start. If your project does not have such a list you should search the issue tracker and find a bug that is well specified and seems approachable. If there is an appropriate communication channel for your project, you might also consider asking the community if they have any suggestions for bugs that might be good for a newcomer to the project. However you identify bugs to work on, be sure to inform the community via the appropriate mechanism that you are working on the bug. If you ultimately fix the bug, or abandon work on it, be sure to also inform the community via the appropriate mechanisms.

Assignment

For this activity each sub-group will identify at least one active bug in the issue tracker and attempt to fix it. Sub-teams are expected to work on this part of the activity for a minimum of two weeks. Work on this activity may require side tracks to learn more about the project, to complete additional tutorials, to discuss the issue with the community, etc. If a bug is identified and fixed in less than two weeks time, sub-teams should select additional bugs to work on.

Track and document what you do using your sub-team’s Slack live-log. Work on the activities will be assessed via the Project Checkpoints as described in the Course Syllabus. When your sub-team believes it has satisfied the Completion Criteria, schedule an appointment with the course faculty for review.

All of the bugs that the team has attempted to fix must be collected together and documented under the heading “Attempted Bug Fixes” on your team’s Bug Activities Wiki page. This section of the Wiki page should include a table with one row for each attempted bug. The information in this table should be brief, full details are of course contained in your Slack live-logs. The table below shows the required columns and a few sample rows:

Bug ID Sub-Team Description Confirmed Result
The identifier for the bug as a link into the issue tracker Initials of sub-team members A short description of the bug Yes/No/Unknown - does the bug exist in the current development version. Description of any action taken on the bug. Include links to any artifacts that document your actions.
7890 GB/XY Withdraw field allows zero amount. No. Appears to have already been fixed. Commented on the ticket suggesting it be closed.
AB392c GB/XY Program crashes on dates before 1970. Yes Claimed in issue tracker. Abandoned and released in issue tracker. After a few hours, this appears to be too complex for our current level of familiarity.
X5432b JP/PQ UI unresponsive when sorting data. Yes Assigned to self in issue tracker. Recoded using Quicksort instead of Bubble Sort. Issued a pull request. Pull request was merged!

It is important to document all of the bugs that you attempt to work on, regardless of the outcome. This will ensure that all sub-teams can learn from each other and do not duplicate work.

Completion Criteria

The completion criteria that each sub-team must demonstrate for this activity are:

The team’s Bug Activities wiki page must be updated to include the following sections and information:

Each team member must be able to:


Acknowledgements: This assignment builds from and adapts ideas and content from the following activities created by others: