Development Process & Expert Tools Setup
We will help your embedded software team improve their development efficiency by setting up and training them on proper tools and processes such as:
- Using a version control tool (Git).
- Using a version control hosting service (e.g. GitHub/GitLab).
- Using a Proper Structure of your code (usage of several independent layers).
- Using a proper development process with branches, pull requests, and code reviews.
- Using automation servers (e.g. Jenkins).
- Using static analysis tools.
- Using unit tests to test your own code.
- Using dynamic memory analysis tools.
Unit Tests Services
We offer developers that will write unit tests for your embedded software. Unit tests can be classified into 3 types:
- To test single functions independently (classic unit tests).
- To test modules/drivers (e.g. cyclic logs module) – a cluster of several functions independent of external functions.
- To test your entire app (aka simulation) – all functions of the app layer as a cluster independent of hardware layers (i.e. virtualization of hardware).
Our experts will write unit tests for your legacy (old) code and for your new ongoing development making sure you constantly have 100% testing code coverage.
Why Use Unit Tests?
- Detect bugs in new code before being merged into the main repository.
- Detect bugs in previously checked code after modifications have been made (regression testing).
- Shorten development time.