Homework 2
CS 562
Software Engineering II
10 Points
Due Friday, Feb. 21, 2014 at the
beginning of class
1. Showing all work, complete problems 11-20 of the Computer Science
GRE Sample Exam available at the class eCompanion website (5 points).
Examples of Open Source Software projects follow below in no particular
order.
Ubuntu (an operating system)
Octave (a mathematical program similar to Matlab)
gcc (a C/C++ compiler)
PySol (a Python based solitaire game)
OpenMPI (a Multi-processing library)
Apache (various web related projects)
Mono (an IDE used primarily with Linux)
Firefox (a web browser)
w3m (a text based web browser)
a2ps (a tool to convert ASCII to postscript)
xboard (a display tool for chess games)
gnuchess (the back end of a chess game)
Synaptic Package Manager (a GUI tool to display available packages in
Linux)
evince (a PDF viewer)
ghostscript (a tool to convert documents and images to and from PDF)
bc (a basic calculator)
xsane (a GUI flatbed scanner interface)
Windows users will need cygwin to deal with some of these projects. An
example of how to install cygwin and several of its utilities is
provided here.
2. Investigate a critical or high priority bug in an Open Source
Software (OSS) project. Why is that bug listed as such? Explain. How
would you propose to fix it? You don't have to fix it yourself, but
explain what files you might need to look at and any functions you
might need to fix, if you can find them. If you can't figure out where
to look, explain why. Don't spend more than an hour or two looking for a
solution (2 points)!
3. Investigate two README or INSTALL files from two different OSS
projects. How do these compare to your project? Do you expect you will
need a huge README/INSTALL file or a small one? Explain (1 point).
4. Compile from source one OSS program. Was this easy or difficult? Why
or why not (1 point)?
5. Assume you were going to add a module to an OSS project of your
choice. Would it be easy or hard? Why? What difficulties do you forsee,
especially those related to testing (1 point)?