Как проектировать встроенное ПО, которое работает в полевых условиях
Программа, работающая на столе, проходит совсем другое испытание, когда в поле встречает перебои с питанием и слабую связь.
1 мин чтения

Поле не похоже на стол
На столе разработчика питание стабильно, связь надёжна, а устройство под рукой. В поле ничего из этого не гарантировано. Если принять эти условия с самого начала проектирования, потом не придётся вносить дорогие изменения.
Считайте сбой ожидаемым состоянием
Питание может пропасть, датчик может прислать неверное значение, связь может оборваться. Встроенное ПО должно в таких случаях переходить в безопасное состояние и после перезапуска продолжать с того места, где остановилось.
Планируйте обновления с самого начала
Когда устройство уже в поле, добраться до него сложнее. Удалённое обновление, откат после неудачного обновления и понятные журналы не функции на потом, а то, о чём думают в первый же день.


