|
|
Schedule for July/August 2006
Subject to change due to exam schedules, completion issues, etc.
July
- July 4-7
- work on basic UML diagram to serve as a guideline for which classes to implement, how they will all relate to one another, and what basic values are required for each.
July 10-14 July 10-28
- start and try to finish the framework for the GUI. This will involve figuring out exactly how each window will interact with the others (for example, one thing that came up during discussion was, if you select one window twice through the master control, should you get two copies of the same window, or should the second click put the focus on the original one?), which key words to use in code to get the exact functionality.
- This timeframe
is likely to change has changed, especially since I have a midterm the evening of the 11th, and a final on the 29th, and will be cutting down time worked between the 24th and the 29th.
July 17-Aug 2 July 28 - Aug 4
- start implementing the classes to give it some functionality.
- This will require the completion of the framework, and will fill it in so that the application becomes usable. It is also likely to change, and will likely spill over to the next week.
- I also have a final during this period, probably on the 29th.
August
- Aug 5-7
- I will be away for the August long weekend
, starting Thursday, Aug 3.
- Aug 8-18
- Finish any classes not implemented before the August long weekend.
- Begin plugging the application into the Creature framework, as much as possible
- Begin drafting the technical report for Steve and Karon, as well as gleaning information off of these pages for the CDMP report.
- Aug 21-25 (24?)
- Last week!
- Tie off as many loose ends as possible -- make sure classes started are fully completed
- Finalize report drafts
- Clean up messy desk
|
|
|
UML Diagram
Not yet scanned in. Here is a short list of what the classes will be. Each is underlined and followed by a description.
- CreatureFrame: this is what will show up when the application is run. It will have one MasterPanel and one MenuPanel.
- MenuPanel: will have at least the quit command, with lots of room for extra development
- MasterPanel: the main panel that will control the application. It will have an option to display each or all windows that connect to some part of the creature.
- Panels that can be brought up only by the Master Panel. Each will be non-modal; focus will be dictated by the user.
- SensorPanel: will have all of the panels associated with particular sensors.
- FSRPanel: will display the values of every sensor on the creature, organized and labelled by location. Will associate with an FSRObject that holds the value and location of an FSR.
- AccelerometerPanel: will display the values of the accelerometer. Associates with an AccelerometerObject that keeps track of the X- and Y-values of the current acceleration. I am hoping to also add in a dial that shows the intensity of the acceleration as well as the position, which is one of the Visual Basic examples that come with the Phidgets code, but this is extra and will depend on time.
- GestureRecognitionPanel: shows the results of the gesture recognizer.
- EmotionPanel: displays the current emotion of the creature (having emotes would be neat; if I have time I will make up some cool ones in Microsoft Paint).
- EmotionRendererPanel: shows the results of the emotion renderer.
- ActuatorPanel: like the SensorPanel, will have all the panels associated with particular actuators.
- ServoPanel: will show the current positions of each servo, organized by location and labelled.
- ServoObject: keeps track of the position of one servo
- PurrBoxPanel: Shows the value of the purr box (on or off, or will there be a value of intensity?).
- PurrBoxObject: keeps track of the purr box's status
Of the above classes, 1 through 3 will mostly count as part of the basic framework. For all the classes of 4, I will likely only need to do one class to start, to make sure that all the options of the MasterPanel work properly. Once I am sure that all is well, I can duplicate that single class as necessary and customize each one according to its end purpose.
|
|
|