Skip to content

Continuous integration

NilsDunlop edited this page May 28, 2021 · 11 revisions

Description

The project implements continuous integration by utilizing Github actions. An automated test runs each time a user pushes or creates a pr on the Github page. There are two automated tests, an Arduino CI test, and an Android CI test. All of these tests are run on a universal system ensuring that our product works on all various types of systems. Following the continuous integration principle, allows the developers to easily and quickly know when the app compiling fails. Giving the developers a simple way to notice bugs and ensure that the code and quality of the product are kept at the highest standards. Also, giving new viewers of the GitHub page a view of the functionality rate of the system.

Functional Requirements

  • The continuous integration should check the Arduino code on push/pull requests, to ensure it works.
  • The continuous integration should check the android app on push/pull requests, to ensure it functions.

Non-Functional Requirements

  • The continuous integration should find compiling errors in the code 100% of the time.

Quality Assurance

  • Apply and refactor our code so it follows OOP design principles to ensure reusability and readability.

Example

A new medical facility wants to improve its medical system by adding simple cars that would assist in handing out medicine and equipment. They stumble upon the Medcar app and are a bit doubtful how reliable the system is since they only want the best of the best. Using the continuous integration checks that are seen on the Github page the medical facility can be more confident in our system and trust our app and add the Medcar app into their medical system's procedures.