Project Report Sections:
Design
- What was your original design for the project?
- How did you split up the disjoint parts of the program?
- What steps did you take to make the program efficient, easy to
program, easy to use?
- How did you plan to display the results to the user?
Stages of Implementation
- How did the program evolve?
- What parts of your design did you need to change as you started
to code the program?
- Did everyone work independently and plug it together at the end,
or were there intermediate versions?
- What were the events (implementation problems, unexpected
behaviors during testing, new ideas you wished to incorporate) that led
you to change your program design and/or plans for completing the work?
- In what order were the major items / functionality finished?
Testing
- What steps did you take to demonstrate that your program meets
its design specifications in terms of both correctness and efficiency?
- Describe how you used debugging output to understand the
behavior of your code. Include sample logs, and explain their format
and how they were helpful.
- Describe how you used tcpdump-style network activity traces to
understand and validate the communications patterns among different
processes.
- Describe any auxilliary programs you wrote for unit testing of
individual modules.
- Describe all the test cases you used for debugging and
validation. Which of them was created in advance while you were
designing and implementing the program, and which of them created
later, during testing and debugging to track down the cause of some
observed problem.
Division of labor between members
- What did each team member do? Please be very specific and list
items.
- Why did you each pick the sections that you did?
How your team collaborated
- Did you only meet in lab, or did you contact each other outside
of the lab as well?
- Did you use email, IM, phone calls, etc?
- Did you share code, or have some kind of unified versions /
backup (SVN, email, etc)?
Results:
- Please show the output that the user of your program will be
presented and explain what it should mean to them.
- Also explain how to use your program (inputs, button functions,
etc).
Please email your completed document to both the TA,
anthony.williams001@email.ucr.edu and the
professor, mart@cs.ucr.edu, before you do your final demo of the
project.
Program README:
This is a document external to the
Project Report, which should be included with your code files. Please
give a
brief explanation of what each of your program / script files does,
along with any input requirements and outputs. Your code should be
reasonably commented; another student may be extended this program in
the future, so explain any weird code blocks / hacks.