This page has a few examples for SummerOfCode2012 projects, all of them are fictional, and are meant to show what it takes to have a good project description, and what makes a bad one.

For actual projects, see SummerOfCode2012/Projects.

Improve the debbugs SOAP interface (a bad example)

Improve the debbugs SOAP interface (a good example)

The Debian Bug Tracking System (debbugs, for short) is the software Debian uses for tracking bugs, from the time they get reported until it's fixed and subsequently archived forever more.

The primary interface for this is e-mail, with a web-based read-only view available aswell. Neither of these is particularly suitable for querying the database in complex ways, or in bulk.

Therefore, a SOAP (Simple Object Access Protocol) interface has been written for it, but it's not working reliably. The goal of this project is to make this interface work again, reliably, with documentation and test cases, so that it can be kept functional in the future.

Communicating with other teams that build on debbugs (the QA team, the package tracking system developers, etc) is also a great place to collect improvement and feature ideas from. Thus, this task also involves communicating with these teams to find out their needs, and lay out a plan to implement them.