From Engaging Computing Group

SoftwareEngineeringSpring2008: ClientIdeas


The view will be the graphical user interface for the client with one view for the entire applet. At the top of the screen the user will be required to enter a username, experiment name, and location. Additionally, there will be a 'register experiment' button that will create the experiment in the database prior to collecting data. Next, the user will be required to choose a sensor type (eg. thermometer, voltmeter, etc) as well as a sample rate to collect data at. At this point data will begin being read in and displayed in the visualizer and the table. When the user presses the record button the recorded tables entries will have red background color. Also, certain areas of the interface will be 'blocked out' depending on how far the user has gotten in entering/selecting information. For example, the user would not be able to choose a sensor type or a sample rate until registering the experiment. Likewise, a user would not be able to begin recording data until a sensor type and sample rate have been selected. Below is a diagram of what this may look like.



The model will encapsulate the other classes. It also begins execution and is responsible for instantiating all other classes.


Discussed above.


The controller is the main guts of the program. It will hold the internal data. It will perform 3 tasks: 1) take in data from the dispatch thread 2) send data to the server 3) provide the view with data to display to the user The controller will also have various get and set methods which will determine how the program will execute, for example, the user selected sample rate.


This thread interfaces directly with the serial port and will directly reference the serial libraries. The dispatch thread is responsible for determining whether data read is valid based on user constraints as well as timestamping valid data that is read and sent to the controller. Also, the thread will query the controller to determine the sample rate before reading data from the serial port.

Below is a pseudo UML diagram

Retrieved from
Page last modified on February 10, 2008, at 08:11 PM