<strong>Цель:</strong><br>
Разработка архитектуры программного обеспечения для взаимодействия оборудования с Backend и Frontend компонентами системы охраны. <br>
<br>
<strong>Объект разработки:</strong><br>
Система охраны, состоящая из:<br>
<ul>
<li>контроллер на объекте</li>
<li>сервер</li>
<li>пульт охраны / модуль интеграции в сторонний пульт</li>
<li>пользовательское приложения</li>
<li>приложение для монтажников.</li>
</ul>
<br>
Данные о системе:<br>
<ul>
<li>Контроллер. Основан на микроконтроллере АМУР МИК32, Ethernet контроллере W5500, и модеме Прогресс ПР1603. Контролер собирает информацию о состоянии датчиков на объекте и прочие параметры и передаёт эту информацию на сервер и, в ограниченном виде, на пульт охранного предприятия. Не требуется описания взаимодейсвия контроллера с датчиками и прочей переферией/</li>
<li>Сервер, обеспечивающий обмен информацией между: Контроллером, пультом охраны (как один из двух путей), приложением пользователя и приложением монтажника. Архитектура должна позволять подключить контроллер напрямую к пульту охраны, оставив серверу роль страхующего канала связи. Сервер должен хранить доступ о пользователях контроллеров и их правах доступа. </li>
<li>Модуль интеграции для стороннего Пульта охраны. На начальном этапе планируется разработка модуля интеграции для пультов (по аналогии с Ajax Translator): Андромеда Центр Охраны, Си-Норд Центр Охраны. </li>
<li>Пульт охраны: С дальнейшим планируется разработка своего пульта в виде ПО под Windows или Российских ОС на базе Linux</li>
<li>Приложение пользователя. Полный доступ к настройкам, диагностике и управлению контроллером, получение уведомлений о тревогах/смене состояния охраны и тд. Приложение является основным способом управления контроллером. Планируется под iOS, Android и, возможно, под ОС Аврора. Связь с контроллером только через сервер. </li>
<li>Приложение монтажника (для обслуживания). Аналогично приложению пользователя, но с ограничением в правах: пользователь может ограничивать права монтажника в виде ограничения доступа к функциям и/или по времени. </li>
</ul>
<br>
Требования к системе<br>
<ul>
<li>Учётные Записи Пользователей и Монтажников разные. </li>
<li>Предпочтительно использование алгоритма Кузнечик для шифрования передаваемых данных</li>
<li>Реализация обновлений по воздуху для Контроллера</li>
<li>Резервирование и отказоустойчивость</li>
<li>Легкая масштабируемость системы</li>
<li>Желателен упор на российские решения по возможности, например (ROSA Linux, Postgres Pro)</li>
</ul>
<br>
Ожидаемые результаты<br>
<ul>
<li>Разработанная архитектура ПО, описывающая взаимодействие компонентов, используемые языки программирования, фреймворки, платформы.</li>
<li>Описание хранимых данных. Что требуется хранить и как долго, какие объёмы? Права доступа? </li>
<li>Описание структуры БД и СУБД</li>
<li>Методология шифрования и защиты передаваемых и хранимых данных.</li>
<li>Обоснование используемых решений</li>
<li>Подробные рекомендации по разработке Backend, Frontend и мобильных приложений</li><li>Учёт технологических особенностей и ограничений контроллера</li></ul><br><br>