3.2 KiB
ADR-001: Use ota-reference-design as the Repository Name
- Status: Accepted
- Date: 2026-07-29
Context
The project requires a repository name that communicates its purpose clearly without tying the design to a single hardware platform, implementation language, or update framework.
The repository will contain:
- architectural documentation;
- OTA design decisions;
- diagrams;
- reference implementations;
- update tooling;
- failure-injection experiments;
- security and reliability analysis.
The initial practical implementation may use Raspberry Pi hardware, but the overall design should remain applicable to other embedded Linux platforms.
The repository is not intended to provide a production-ready OTA framework or a reusable software library. Its primary purpose is to demonstrate and explain the architecture of a reliable and secure OTA update system.
Decision
The repository will be named:
ota-reference-design
The repository will initially remain a standalone top-level repository rather than being placed under a broader group such as engineering, embedded-systems, or systems-engineering.
Alternatives Considered
embedded-ota-lab
This name emphasizes experimentation and practical work.
It was not selected because the project will contain more than experiments. It will also document architecture, security, reliability, design decisions, and implementation trade-offs.
ota-update-lab
This name is simple but somewhat redundant because OTA already means over-the-air updating.
It also makes the project sound more like a temporary collection of experiments than a structured reference design.
reliable-ota
This name emphasizes one of the primary goals of the project.
It was not selected because it does not clearly communicate that the repository is educational and architectural rather than a production-ready OTA product.
A Repository Under an engineering Group
A broader parent group could eventually contain several related repositories.
It was not selected at this stage because a group containing only one repository adds unnecessary hierarchy and does not yet provide meaningful organization.
Consequences
Positive
- The name clearly communicates that the project is an OTA reference design.
- The repository is not tied to Raspberry Pi or any other specific platform.
- The name allows the project to include documentation, code, diagrams, and experiments.
- Readers are less likely to mistake the project for a production-ready framework.
- The name remains appropriate if additional hardware platforms are added later.
Negative
- The name is broader than the initial Raspberry Pi implementation.
- Readers may still require the README to understand the exact project scope.
- The term “reference design” may suggest a more complete implementation than exists during the early stages of development.
Notes
A broader repository group may be introduced later if several related systems-engineering projects are created.
Possible future group names include:
embedded-systems
systems-engineering
Moving the repository into such a group would not require changing the repository name.