Skip to content

Project Structure

Lee Seunghwa edited this page Jun 22, 2020 · 17 revisions

This page describes the overall structure of the project.

It consists of several major projects to achieve System Architecture.

Server

1. Web Application Server

  • Path: /Test Project/Web Application

  • Language: Angular8 (Javascript, HTML, CSS)

    This is a WEB interface based on Angular8. Through this, the user can transmit data and check the results through various graphs.

2. API Server

  • Path: /Test Project/API Server

  • Language: PHP

    This is a PHP based server. It is the main server that stores user information and processes API requests from users.

3. Data Analysis Server

  • Path: /Test Project/Python Server

  • Language: Python

    It is a server that judges whether or not to drunk driving on user data when a user request is received.

    It is separate from the main server that processes real user information. It communicates with API Server through socket. Since this server is separate, it has the advantage of being able to run heavy process that require Python machine learning on different containers and PCs.

Client (User)

4. Smartphone Application

  • Path: /Test Project/Provider(Tizen)_Consumer(Android)

  • Language: Java This is simply for connecting a smartwatch and a web server. The actual UI is implemented on the web.

    The smartphone is implemented to transmit the collected sensor information to the server using the API at regular time intervals and to check the results.

    But It is the role of the smartphone to determine whether or not you are sitting in the driver's seat through a beacon.

5. SmartWatch Application

  • Path: /Test Project/Provider(Tizen)_Consumer(Android)

  • Language: Javascript, HTML, CSS

    It reads the sensor of the smart watch and sends it to the smartphone. It collects various sensor information.

    you can be found in more detail on the 'Data Analysis' page.

Etc.

6. Dataset

  • Path: /Data

  • Language: .CSV

    This is a training set for drinking detection.

    This files located in this folder are automatically loaded by the API server.

    Here are the rules(regular expression):

    • [label, person's id] Type DateTime.csv

    • label: Categorical data (3 types) (cardio exercise, drink, nothing)

      • We have combined categories such as 'work out' and 'cardio exercise' into one. If you have a lot of data, you can separate it to make more granular predictions.
    • person's id: This is actually a deprecated variable. I just used it to know who is data.

    • type: This is the type of data. Only Health is used here.

    The current number of data is 22. Because data is clipped, the lack of datasets can be overcome.

7. Data Analysis (optional)

  • Path: /Test Project/Python Analysis

  • Language: Python

    This is a note file(based on jupyter). It makes it easy to check the statistics of our dataset.

    However, it is not used in the actual service environment.