Система обновления позволяет получать информацию о состоянии функционала у клиентов. Система представляет собой комплекс программных распределенных решений из собственного хранилища обновлений, средств отправки обновлений, API сборщик информации об обновлениях у клиентов, информатор о состоянии обновления у клиентов.
Система для обновления программного обеспечения реализована в виде отдельного независимого инструментария, имеющего разграничение по правам доступа, что позволяет определить различные уровни доступа для просмотра информации, сборки обновлений и его рассылки, в частности:
1) Права менеджеров:
- Добавлять/исключать клиента из рассылки обновлений
- Включать/отключать отсылку обновлений
- Отправлять обновления клиенту
- Получать информацию и отчетность по клиентам
2) Права разработчиков:
- Составлять список обновлений, как функционала так и патчей, связей между ними
- Получать информацию и отчетность по клиентам
3) Возможности специалистов поддержки
- Получать по клиентам список доступных обновлений
- Получать список недостающих обновлений по клиентам
- Возможность автоматического получения состояния обновлений у клиентов (не хватает, лишнее) с возможностью исключить список обновлений из контроля для всех/для клиента, исключить клиента из контроля
Система сборки обновлений имеет отличия по типам обновляем данным и позволяет комбинировать различные типы (обновление версии ПО, патч, обновление модуля и т.д.). Так же сборщик обновлений поддерживает контроль версионности, т.е. зависимости версий обновлений от требуемых версий функционала на стороне клиента. Например, если для того или иного модуля определена минимальная версия ПО, и версия ПО при этом не соответствует требуемой, система отследит это и не позволит установить данный модуль, пока версия ПО клиента не будет обновлена до требуемой.
Для версионности используется подход Симантической версионности. Каждое обновление перед тем как попасть в рассылку обогащается рядом обязательных реквизитов описаний, например: Краткое наименования, описание обновления, версию согласно описанию, границы версий ПО М-АПТЕКА плюс для которых предназначается/совместимо обновление, отметка о тестировании, отметка об успешности тестирования, комментарии после тестирования сами данные с обновлением, системные имена обновлений. Перечень этих данных позволяет осуществлять контроль распространения обновлений.
- .net C#, Cache'. Интерфейсы на Web – asp.net MVC + jquery + bootstrap(css)
- база данных PostgreSQL
Вся система реализована таким образом, что при необходимости могут быть изменены как средства установки, так и источники данных, т.е. в данный момент в качестве данных обновления используются установочные файлы ПО М-АПТЕКА плюс, а в качестве инсталляторов системные классы ПО М-АПТЕКА плюс, но при необходимости эти структуры могут быть изменены на компоненты любого иного десктопного программного обеспечения, поддерживающего частичное обновление данных.