Milestone One Documentation
From SoftwarePractice.org
Contents |
Documentation for Milestone One
Scope
To design and develop a software simulation of a wearable medical device to measure Galvanic Skin response, skin temperature and pulse rate. The software package will include software to simulate and test the functions of the wearable device. The project will only develop the software simulation and test modules. Implementation of the software on any physical device will not be part of the project.
Usage Scenarios
Case 1: Visit the Doctor
The user is at the doctor’s office waiting to receive their new wearable medical device for monitoring purposes. User is sat at computer to fill in details of name, height, weight, age etc, in each progressive Windows (JOptionPanes) of the software program being used. The device is now ready for use this user
Case 2: First Use
Jane switches on the medical device for the first time. She is welcomed with a screen prompting her to spend 30 minutes setting up a baseline reading. Jane does not have the time to complete the baseline assessment right now, so she declines. The device shows a warning that continuing without a baseline will render any data collected meaningless. Jane exits the warning screen and continues without saving a baseline. The next time Jane switches on the device, a check of available files indicates that there is no baseline recorded. The device warns that there is no baseline recorded and that the user needs to send 30 minutes setting up a baseline. Jane is aware of the time required now, so she agrees to set up the baseline readings. First the device prompts Jane to rest for ten minutes. After the ten minutes have elapsed, Jane is asked to exercise vigorously for ten minutes. The last ten minutes of the activity is spent cooling down with light exercises and rest periods. These readings are saved in a separate file labelled “baseline” within the device memory.
Case 3: Field Use of the Device
Kate has been asked by her doctor to use the device while exercising. Kate attaches the device to her wrist and then presses the "On" button, on the device. The device starts to record the data coming from the sensors touching Kate. Kate likes that she dose not need to change any of the settings and she can just turn it on and start. Kate decides to go for a run for her exercise today. During the run, she decides to look at the display on the device. The device is showing her current heart rate, GSR and skin temperature all on the same graph, while displaying the latest values on the right side of the screen. Kate then presses the button to change the graph that is being displayed. After this brief stop, Kate continues with her run. Once Kate gets back home, she turns off the device and removes it from her wrist. Overall she is happy at how easy it was to use and how little it infringed upon her normal routine.
Case 4: Connecting Device to the Computer
Lana check her watch and realised that it was time to send her doctor her devices data. She connects her device to her desktop computer, using a USB cable and opens the devices interface software on the computer. Lana clicked the download button and after choosing where to save the data, opens her internet browser to access her email account. Lana sends the data file as an attachment to her doctor. Lana thought that the process was fairly easy, once she had been shown what to do.
Sequence Diagrams
Class Diagram
Class Descriptions
Sensor Generator
This class will create the simulated sensor information for the prototype. It sends this information to the GUI_Device class where it uses it. The Sensor generator class produces 3 different types of data, one to simulate the pulse, one to simulate the GSR and the last one to simulate the skin temperature.
| Responsibilities | Collaborations |
|---|---|
| To generate data in a reliable way that simulates a persons *pulse *GSR* skin temperature. | GUI_Device |
GUI_Device
This is the main class, it is the one that takes that data provided to it and then displays it graphically on the screen. It is also the class which controls when the data is to be saved, it does this by sending the data to the File Operation class. It also has a sub part which allows the doctor to reset the user. This part will put the device into a mode where the first 30 minutes of data will be saved separately to be used as a baseline for future reference. The GUI_Device class also talks to the Device to computer interface class, which is how the device and computer talk to each.
| Responsibilities | Collaborations |
|---|---|
| To control the display of the device. To take the data coming from Sensor Generator and put that into a graph. To send the data to File Operations so it can be saved. To know when a new user is using the device for the first time. The ability to send data to Device to computer interface. | SensorGenerator FileOperations DeviceComputerInterface |
File Operations on Device
This class is the class that takes the data and saves. It also lets the GUI_Device class know when the allotted time for the baseline has been completed.
| Responsibilities | Collaborations |
|---|---|
| To take incoming data and save it to file. To know when a period of 10 minutes, 20 minutes and 30 minutes have elapsed. | GUI_Device |
Device Computer Interface
This class is the one that communicates with the computer from the device. It sends requests to the GUI which will send it the data from File Operations and then this class sends that data to the computer.
| Responsibilities | Collaborations |
|---|---|
| To communicate between the device and the computer. | GUI_Device FileOp_computer |
FileOp_computer
Similar to the similarly named class on the device but this class has to save different files in different places depending on the user. This is the class that simulates the operations on the computer such as better graphing or having larger graphs and more data available to the user.
| Responsibilities | Collaborations |
|---|---|
| To save and display the data in a more detailed format that what was on the device. | DeviceComputerInterface GUI_Computer |
GUI_Computer
| Responsibilities | Collaborations |
|---|---|
| To save data in such a way that GUI_Computer can tell which users data is which | FileOp_computer DeviceComputerInterface |








