Skip to content

sbeimers/3004-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Contributors Contributors Contributors

COMP 3004 Team Project (Winter 2023)

Developing and Testing a Heart Wave Device Simulator


Table of Contents

  1. About the Project
  2. Team Member Contributions
  3. Getting Started
  4. File Organization

About The Project

This project was created by Sebastian Beimers, Elias Hawa, Zara Ali and Victor Li for Carleton University's COMP 3004 Winter 2023 course, taught by Vojislav Radonjic.

Click here to view our project demo video.

Team Members Contributions

For more information on the team members' contributions, please refer to the pull requests.

Sebastian Beimers

  • Worked on initial system architecture design
  • Created log class and related logic
  • implemented restore feature
  • added UI for battery
  • created plot points for high coherence simulations
  • created coherence data for all 3 simulations
  • added battery ticking, battery recharging, and related logic

Zara Ali

  • Worked on initial system architecture design
  • Created plot points for medium and low coherence simulations
  • Implemented indicator functionality, including coherence and challenge level logic
  • Implemented functionality for device to update every 5 seconds (update functions in MainWindow, Device, and Recording)
  • Implemented plot points, coherence, and achievement scores calculation in Recording class
  • Implemented functionality for UI to update based on coherence, length of session, achievement score, and plot points during a session
  • Implemented functionality for when the skin sensor is interrupted during an active session
  • Created all sequence diagrams

Elias Hawa

  • Worked on UI design and implementation including handling of device state and button handlers
  • Worked on initial system architecture design
  • Implemented functionality for device to update every 5 seconds (update functions in MainWindow, Device, and Recording)
  • Worked on log history and deletion functionality
  • Worked on application to skin functionality

Victor Li

  • Worked on initial system architecture design
  • Implemented power button functionality, including power button logic and power button UI
  • Implemented battery logic and battery UI functionality
  • created all use cases and the use case diagrams
  • created uml diagrams for the system architecture and the class diagram
  • created the traceability matrix
  • created the README file

Getting Started

To get a local copy of this project up and running, please follow the steps below.

Prerequisites

  1. Download the course VM (COMP3004-F21.ova) using this link here. Should the download not start as expected, please connect to the Carleton Remote Access VPN and try again.
  2. Setup a virtualization environment on your computer that allows you to run Virtual Machines. Click here for a Virtual Machine Step-by-Step Guide. More information can be found on the SCS Virtual Machines page.

Installation

  1. Clone the repository by running this command in the course VM terminal:
    git clone git@github.com:sbeimers/3004-project.git
  2. Start the COMP3004-F21 VM and enter the username "student" and the password "student".
  3. Click on "Apps" at the bottom left corner, and then "Qt Creator (Community)".
  4. Once Qt Creator is opened, click on File > Open File or Project... > heartwave > heartwave.pro > Open (bottom right of that window).
  5. Once the project is opened, click on the green right arrow button at the bottom left corner to run the project simulator.

Congratulations! You are now running our project on your VM!

File Organization

The project is organized as follows:

3004-project
├── README.md
├── Documentation
│   ├── Heartwave_Design_Patterns.pdf
│   ├── Heartwave_UML.pdf
│   ├── Heartwave_Use_Cases.pdf
│   ├── Heartwave_Traceability_Matrix.pdf
│   ├── Sequence Diagrams
│   │   ├── battery_low_diagram.pdf
│   │   ├── battery_settings_diagram.pdf
│   │   ├── interruption_of_signaldiagram.pdf
│   │   ├── normal_operation_session_diagram.pdf
│   │   ├── view_session_logs_diagram.pdf
├── heartwave
│   ├── heartwave.pro
│   ├── main.cpp
│   ├── mainwindow.cpp
│   ├── mainwindow.h
│   ├── mainwindow.ui
│   ├── const.h
│   ├── device.cpp
│   ├── device.h
│   ├── devicestate.h
│   ├── log.cpp
│   ├── log.h
│   ├── qcustomplot.cpp
│   ├── qcustomplot.h
│   ├── recording.cpp
│   ├── recording.h

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages