- Sia He
- Karim Jundi
- Jiahuizi Luo
- Jonah Habtom
- Zhi Xiao
./neureset/ Code source files to build project in QT
./neureset_docs.pdf Use cases, diagrams (sequence diagrams excluded), and Requirements Traceability Matrix
./SequenceDiagramsTeamProject.html Sequence diagrams. Please download it and open with your explorer
https://www.youtube.com/watch?v=0xTFeFUb3gQ
- Open the Project:
- Download the project or clone it in VM.
- Launch Qt Creator.
- Go to
File > Open File or Project...
. - Navigate to the project directory and select the
neureset.pro
file.
- Build the Project:
- Click on the
Build
menu and then selectBuild Project "neureset"
(click hammer icon).
- Run the Project:
- After the build is successful, click the
Run
button (green play icon) to start the application with its graphical interface.
- After the build is successful, click the
Sia - Initialize device and implement menu in mainwindow
- Click the power button to toggle device on/off and to enable/disable buttons and views accordingly
- Device is off by default. Special case: device can only be turned on when battery level > 0
- Initialize battery to 100%
- Initialize menu and frames. Menu button will toggle the visibility of menu
- Up / down button allows user to navigate through the menu; ok button allows user to select an option in the menu and trigger corresponding handler
- When ok button is not clicked on menu, it should act differently based on corresponding options
- When the menu button is clicked, it will always render the menu
- implement log display in GUI for both device / pc views & output logs into file
Xiao - Session Log option (majorly UC2)
- Refine the treatment flow and breakdown of a treatment session duration.
- Update the GUI to incorporate input band alteration.
- Design the flow work of viewing session logs.
- Inform the availability of logs to enhance user experience.
- Allow the user to select a log by both mouse clicks and up and down button pressed.
- Modify button handlers such as the power button release handler to erase log display on the PC view when the device is turned off.
- Implement a QListWidget on the device GUI to render all completed sessions.
- implement log display in GUI for both device / pc views.
- create a temp class or just mock some record in database class to test if insert record into database works
- Update Therapy class to dynamically store completed sessions to logs and calculate the average pre and post baseline.
- Update Use Case 2 to align with the finalized implementation
- Update the traceability matrix (UC 1&2)
Shirley - New session option(mainly including UC1 and UC4, need to connect with UC3)
- Designed and created two main classes, Therapy.h,Therapy.cpp and SessionLog.h,SessionLog.cpp. Modified related parts in mainwindow.cpp (UC1)
- Display the change of the blue light when a session starts and ends (UC1)
- Display progress bar and remaining time during a session (UC1)
- Display basic information of current therapy log on the device screen when session ends (UC1)
- Implemented the logic of generating data,add five different type of input bands (UC1)
- Connect the time of treatment session with the new time set by user (UC1)
- Added pause,resume and stop action to the device, users can apply these actions during a session (UC1)
- Menu button is disabled when the session is running, and will be released when the session ends or is paused
- Implemented contact related extensions (UC 4-contact loss)
Jonah - Time and date setting
- change default time
- On first power on of the device, the date and time of the device will be set to the real date and time of the machine running the simulator
- User can change the date and time by pressing the arrows on the QDateTimeEdit widget or by using the up and down arrows on the Neureset device. If using the arrows on the Neureset device, they will increase or decrease the year/month/day/hour/minute depending on what section of the QDateTimeEdit widget was last clicked
- User must press OK button on Neureset device to set and save the time and date. If OK is not pressed and the view is changed, the time and date will remain the same
- Time set by the user will continue to update using an elapsed timer
Karim - Implement battery related functions inside mainwindow, add extension operations to step 3
- recharge(button)
- add text view to display “warning”
- battery level bar, change color with the battery level
- battery level->0%,device will shut down and current session will be aborted
Other workflow distribution
- Sequence diagrams - Karim
- Class diagrams - Jonah
- Use case diagram - Jonah
- State diagrams - Sia
- Use cases - Team
- Traceability matrix - Team (corresponding to assigned use cases and implementations)
- Code integration and review - Team
- Progress check-ins with TAs - Karim
- Group Demo - Jonah