Difference between revisions of "Features/Problem Reports"

From Sugar Labs
Jump to navigation Jump to search
(Created page with '<noinclude>{{GoogleTrans-en}}{{TOCright}}</noinclude> '''Comments and Explanations:''' There are comments (in italic) providing guidance to fill out each section, see also [[Fe…')
 
Line 1: Line 1:
 
<noinclude>{{GoogleTrans-en}}{{TOCright}}</noinclude>
 
<noinclude>{{GoogleTrans-en}}{{TOCright}}</noinclude>
  
'''Comments and Explanations:'''
+
== Summary ==
 +
The "Report a problem" control panel provides a way for the user to report issues with the Sugar shell and activities.  The control panel uploads system information and logs, along with the user's description of the problem.
 +
 
 +
== Owner ==
 +
* Name: [[User:Wade|Wade Brainerd]]
 +
* Email: wadetb@gmail.com
 +
 
 +
== Current status ==
 +
* Targeted release: 0.88
 +
* Last updated: September 9th, 2009
 +
* Percentage of completion: 80%
  
There are comments (in italic) providing guidance to fill out each section, see also [[Features/Policy]]. '''Copy the source to a ''new page'' named Features/''Your Feature Name'' before making changes! DO NOT EDIT THIS TEMPLATE.'''
+
== Detailed Description ==
 +
A new control panel will be added, titled "Report a problem".  This panel contains a description box and an Upload report button. When the button is pressed, the description and system logs are uploaded to a central Sugar Labs server.  
  
<!-- All fields on this form are required to be accepted.
+
The central server logs the problem reports in a database and stores a copy of the logsIt also analyzes the logs for specific errors (such as Python Tracebacks).  When a problem report is added, the server sends an email out to a mailing list of developers and interested parties.
  We also request that you maintain the same order of sections so that all of the feature pages are uniform. -->
 
  
<!-- The actual name of your feature page should look something like: Features/Your Feature Name.  This keeps all features in the same namespace -->
+
When a problem is detected in an Activity, such as failure to launch, Sugar will offer a "Report problem" button which takes the user directly to the control panel.
  
== Summary ==
+
After uploading, the user is given a Report ID number (a small decimal number). They can use this if they wish to follow up with the Sugar developers by email.
''A sentence or two summarizing what this feature is and what it will do. This information is used for the overall feature summary page for each release.''
 
  
== Owner ==
+
== Benefit to Sugar ==
''This should link to your home wiki page so we know who you are''
+
Currently there is no mechanism for non-technical users to submit problem reports.  In order to inform the Sugar or Activity developers of a problem, a user has two options:
* Name: [[User:AcountName| Your Name]]
 
  
''Include you email address that you can be reached should people want to contact you about helping with your feature, status is requested, or technical issues need to be resolved''
+
* Create a Trac account and enter a bug.
* Email: <your email address so we can contact you, invite you to meetings, etc.>
+
* Write an email to sugar-devel@lists.sugarlabs.org.
  
== Current status ==
+
The first option is time consuming and requires the user to fill in confusing fields such as Component and Version manually.  The second option requires the user to have an email account, and the report is not logged anywhere.  Neither option is convenient or provides relevant details about the problem.
* Targeted release: (SUGAR_VERSION)
 
* Last updated: (DATE)
 
* Percentage of completion: XX%
 
  
== Detailed Description ==
+
The new control panel offers a way for casual users to report problems encountered in SugarIt also supplies a high level of detail about the problem to the developers.
''Expand on the summary, if appropriateA couple sentences suffices to explain the goal, but the more details you can provide the better.''
 
  
== Benefit to Sugar ==
+
The reason problem reports are not added directly to Trac is that we don't want to spam the database with spurious reports.  Problem reports are intended to be triaged by subscribers to the mailing list, and then either bugged or noted on an existing ticket.
''What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Sugar become a better platform or project because of this feature?''
 
  
 
== Scope ==
 
== Scope ==
''What work do the developers have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?''
+
A prototype of the control panel and server have been finished and posted to Trac #NNN as patches.
 +
 
 +
Work left to do:
 +
* The control panel needs a SVG icon.
 +
* When an activity exits, if its log contains an exception report, Sugar should offer to report the problem. When an activity fails to launch, Sugar should display an error on the launch window and offer to report the problem instead of timing out.
 +
* The server needs to be installed on the SugarLabs infrastructure.
 +
* For deployments, there should be a way to override the server URL.
  
 
== How To Test ==
 
== How To Test ==
 
{{:{{PAGENAME}}/Testing}}
 
{{:{{PAGENAME}}/Testing}}
 +
 
== User Experience ==
 
== User Experience ==
''If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice.''
+
The user will notice a new control panel. When an activity fails to launch or otherwise suffers an exception, the user will be offered an opportunity to report the problem.
  
 
== Dependencies ==
 
== Dependencies ==
''What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like python?''
+
None
  
 
== Contingency Plan ==
 
== Contingency Plan ==
''If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour." Or it might not.  If you feature is not completed in time we want to assure others that other parts of Sugar will not be in jeopardy.''
+
Nothing depends on this feature.  If it's not ready in time it can simply be omitted.
  
 
== Documentation ==
 
== Documentation ==
''Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved.''
+
Ideally this feature would be documented as part of the FLOSS manual.
  
 
== Release Notes ==
 
== Release Notes ==
''The Sugar Release Notes inform end-users about what is new in the release. An Example is [[0.84/Notes]]. The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the release team and shipped with the release.''
+
A mention of how to customize the server URL would be useful.
  
 
== Comments and Discussion ==
 
== Comments and Discussion ==
* See [[{{TALKPAGENAME}}|discussion tab for this feature]] <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
+
* See [[{{TALKPAGENAME}}|discussion tab for this feature]]  
 
 
  
 
[[Category:Feature Page Incomplete]]
 
[[Category:Feature Page Incomplete]]

Revision as of 15:23, 27 September 2009

Summary

The "Report a problem" control panel provides a way for the user to report issues with the Sugar shell and activities. The control panel uploads system information and logs, along with the user's description of the problem.

Owner

Current status

  • Targeted release: 0.88
  • Last updated: September 9th, 2009
  • Percentage of completion: 80%

Detailed Description

A new control panel will be added, titled "Report a problem". This panel contains a description box and an Upload report button. When the button is pressed, the description and system logs are uploaded to a central Sugar Labs server.

The central server logs the problem reports in a database and stores a copy of the logs. It also analyzes the logs for specific errors (such as Python Tracebacks). When a problem report is added, the server sends an email out to a mailing list of developers and interested parties.

When a problem is detected in an Activity, such as failure to launch, Sugar will offer a "Report problem" button which takes the user directly to the control panel.

After uploading, the user is given a Report ID number (a small decimal number). They can use this if they wish to follow up with the Sugar developers by email.

Benefit to Sugar

Currently there is no mechanism for non-technical users to submit problem reports. In order to inform the Sugar or Activity developers of a problem, a user has two options:

  • Create a Trac account and enter a bug.
  • Write an email to sugar-devel@lists.sugarlabs.org.

The first option is time consuming and requires the user to fill in confusing fields such as Component and Version manually. The second option requires the user to have an email account, and the report is not logged anywhere. Neither option is convenient or provides relevant details about the problem.

The new control panel offers a way for casual users to report problems encountered in Sugar. It also supplies a high level of detail about the problem to the developers.

The reason problem reports are not added directly to Trac is that we don't want to spam the database with spurious reports. Problem reports are intended to be triaged by subscribers to the mailing list, and then either bugged or noted on an existing ticket.

Scope

A prototype of the control panel and server have been finished and posted to Trac #NNN as patches.

Work left to do:

  • The control panel needs a SVG icon.
  • When an activity exits, if its log contains an exception report, Sugar should offer to report the problem. When an activity fails to launch, Sugar should display an error on the launch window and offer to report the problem instead of timing out.
  • The server needs to be installed on the SugarLabs infrastructure.
  • For deployments, there should be a way to override the server URL.

How To Test

  • Open the Control panel.
  • Click Report a problem.
  • Type in a problem description.
  • Click the Upload Report button.
  • Verify that the upload succeeds.
  • Verify that a report email was sent to the reports list.
  • Verify that the data in the report email attachment is reasonable.
  • Verify that the download link in the report email works.
  • If there are exceptions in any log files (it may help to add one manually), they should be noted in the email.

User Experience

The user will notice a new control panel. When an activity fails to launch or otherwise suffers an exception, the user will be offered an opportunity to report the problem.

Dependencies

None

Contingency Plan

Nothing depends on this feature. If it's not ready in time it can simply be omitted.

Documentation

Ideally this feature would be documented as part of the FLOSS manual.

Release Notes

A mention of how to customize the server URL would be useful.

Comments and Discussion


You can add categories to tie features back to real deployments/schools requesting them, for example [[Category:Features requested by School Xyz]]