Выбор архитектуры приложения


Контекст

Для работы приложения необходимо обеспечить обработку и диагностику изображений дачных растений. Выполнить это можно на самом устройстве или делегировать задачу удаленному серверу, содержание и поддержка которого требует дополнительных усилий и вложений. Предполагается, что использование приложения будет производиться преимущественно в пригородных или сельских местностях с нестабильным или отсутсвующим интернетом. Повторим, что согласно исследованию ВШЭ полностью удовлетворенны качеством интернет-соединения только 39% сельских и 59% городских домохозяйств [1].

Рассматриваемые варианты

  • Монолитное приложение, в котором AI-модель и база данных являются частью одного приложения;
  • Клиент-серверное приложение, в которой мобильное приложение обращается к удаленным серверам с AI-моделью и базой данных.

Диаграммы компонентов, отражающие варианты расположение компонентов системы для сравниваемых архитектур приведены на рисунке:

Решение

Монолитное приложение, в котором AI-модель и база данных являются частью одного приложения

Обоснование

  • Не требуется приобретать и поддерживать дополнительные сервера, что снижает денежные расходы;
  • Монолитное приложение с локальной базой данных и AI-моделью в значительной мере снижает необходимость взаимодействия с сетью, что повышает доступность использования приложения [2] при нестаблином подключении к сети или его отсутсвии;
  • У команды разработчиков есть экспертиза в области реализации мобильных приложений со встроенной ИИ-моделью.

Последствия

  • ✅ Доступность функций приложения в любое время в любом месте;
  • ✅ Отсутсвие расходов на сервера и их обслуживание;
  • ❌ На менее производительных мобильных устройствах обработка изображений может занимать больше времени.

Источники

  1. issek.hse.ru - Девять из десяти российских семей подключены к интернету [Электронный ресурс]. - URL: https://issek.hse.ru/news/1038792738.html?ysclid=mgva0s69lp904512695
  2. Pothineni, S. H. Offline-First Mobile Architecture: Enhancing Usability and Resilience in Mobile Systems // Journal of Artificial Intelligence General Science (JAIGS) №7(01), 2024. P. 320–326. ISSN: 3006-4023. DOI: 10.60087/jaigs.v7i01.387