Dev Seminar Project 3:
Design
Summary:
You will begin the final push toward our big project of the semester.
see part II at bottom
Details:
Each group will begin design on their extensions to the open source
project.
Provide one report for the entire group which will lay out the
specifications for the project.
Pyspider: The groups working on
pyspider will add a feature that is desired but not yet implemented in the
0.4.0 release. The exact quote is "a visual interface similar to portia"
Each group will design their own extension. Include two things in your
design:
- A version that can be done in two weeks by a team of 4 (or 5 if your
group has 5). Don't aim low.
- An expanded version which builds on the original to build more
complete functionality. You will have the opportunity to revise this
after finishing the first version.
rdPy: The groups working on rdpy
will add the following feature that has been requested by at least one
user: Create a way to programmaticly send mouse and keyboard events using
a file describing the desired events and the client interface. You will
need the same two parts for your design. This sort of functionality is
very useful for automated testing of user interfaces.
- A version that can be done in two weeks by a team of 4 (or 5 if your
group has 5). Don't aim low.
- An expanded version which builds on the original to build more
complete functionality. You will have the opportunity to revise this
after finishing the first version.
The design documents will be due, one per group, at the beginning of
class next Tuesday March 24th.
Part II: more specific - lots more specific
- If your group didn't define the features you would deliver - do so
- spec out the classes/modules that you will be building to make this
project happen.
- You only have to show the 'public' interface. (anything that any
other class/module might make use of). Any internal functions/methods
are at the desecration of the individual implementers
- Make sure to make a clear link between the modules in your software
design and the features you have promised
- be very careful to limit your code's association with the existing
code - possibly use the mediator pattern.
- divide up the work into 3 or 4 sections (3 for 3 person groups, 4 for
four person groups) of mostly equal workload. The four person groups can
have one section that is a bit more demanding than the other three since
they have grad students in the group.
- do not assign the groups to a person - I'll do that.
This document is due April 1st at the beginning of class.