[Xapian-devel] Project for a group of 5
Olly Betts
olly at survex.com
Sun Mar 9 23:47:36 GMT 2014
On Fri, Mar 07, 2014 at 10:05:08PM +0530, Siddhant Mutha wrote:
> We're a group of 5 CS undergrads. As a part of our Software Engineering
> course, we are required to work on a large scale software to understand the
> design of such software. For this, open source is the best choice.
> We have around 1.5 months for the project (mid-March to April end) and
> would like to know whether there is any sort of work which can be taken up
> by us.
(For the benefit of other list readers who aren't on IRC, this was asked
first on IRC and I suggested asking on the list in case other people had
any good ideas).
Having thought had a chance to think about it, I've come up with a
couple of fairly open ended projects, either of which would give you a
good idea of what working on a large scale piece of software is like,
yet offer a fairly gentle introduction (no need to understand the
whole system before you can start):
* One possible project would be to set up a system using Xapian to index
and search a large number of documents, and use profiling tools to
identify bottlenecks in the code.
Where you find code which is taking a lot of time, you can try to
improve the situation.
* Another is to improve test coverage. We can generate reports of how
well our testsuite covers the code by using gcov and lcov - you can
see a regularly updated report here:
http://lcov.xapian.org/
Currently we have around 90% of source code lines and 90% of functions
exercised by the testsuite, but it's quite uneven - many files are
over 90% but some are much lower. And coverage of branches (i.e.
whether a branch in the code is both taken and not taken during a run
of the testsuite) is rather poor.
A useful project would be looking through the coverage report, and
finding places where writing a new testcase would improve coverage.
You can also try to fix any bugs found by doing this, or at least open
bug reports for them (we've found quite a few bugs in the past by
writing new testcases to improve test coverage).
Do either of those appeal?
If not, do you know what sort of work you're interested in doing?
Cheers,
Olly
More information about the Xapian-devel
mailing list