Источник: https://basegroup.ru/community/articles/monitoring-narko-3


Проект «Мониторинг наркоситуации», ч.3: архитектура программного комплекса

Заключительная часть статьи по итогам участия в проекте по мониторингу наркоситуации в Брянской области, подготовленной кафедрой «Информатики и программного обеспечения» Брянского государственного технического университета.

Кафедра «Информатики и программного обеспечения» Брянского государственного технического университета [1] приняла участие в проекте по мониторингу наркоситуации в Брянской области, который проводится ежегодно по заказу УФСКН РФ по Брянской области кафедрой социально-гуманитарных дисциплин [2] Брянского филиала Российской академии народного хозяйства и государственной службы. Целью проекта является анализ и оценка состояния наркоситуации в Брянской области.

С описанием задачи и информацией об исходных данных можно познакомиться в первой части статьи [3]. Об архитектуре ансамбля моделей можно прочитать во второй части [4].

Архитектура

В рамках данного проекта создан программный комплекс, общая архитектура которого представлена на рисунке 1. Его основные компоненты - windows сервер и ubuntu server 14.04. На сервере ubuntu расположено веб приложение, в обязанности которого входит получение данных от пользователей через веб интерфейс, сохранение в БД (PostgreSQL), а также взаимодействие с серверными компонентами аналитической платформой Deductor. На windows сервере находится Deductor Enterprise и сценарий со скоринговой моделью.

Рисунок 1. Архитектура приложения [5]

На рисунках 2 и 3 схематически представлены основные компоненты программного комплекса - windows сервер и ubuntu server 14.04.

Рисунок 2. Подсистема взаимодействия с внешними клиентами [6]
Рисунок 3. Визуальная и административная подсистемы [7]

Основные компоненты сервера Ubuntu:

  • Nginx – веб-сервер, основная обязанность которого - взаимодействие с внешними веб приложениями, написанными на (php, python, ruby etc), а также отдача статических html документов.
  • Puma - ПО для веб-приложений написанных на ruby, генерирует динамические веб страницы и передает их nginx.
  • PostgreSQL - реляционная СУБД для хранения анкет и результатов опроса.
  • Redis – используется для обработки анкет в очереди.

На рисунке 4 показана структура wsdl-сервиса.

Рисунок 4. Структура wsdl-сервиса. [8]

Разработанный сервис доступен по адресу https://deductorbstu.herokuapp.com/admin/questionnaires [9].
Учетные данные для входа:
логин guest@deductorbstu.com
пароль 43ce4bf4

Процесс создания и заполнения новой анкеты интуитивно понятен и несложен.

Текущее состояние, планы и апробация.

Построена скоринговая модель для выявления группы риска относительно наркозависимости. Разработаны соответствующие веб-приложения, которые используют серверные компоненты аналитической платформы Deductor Enterprise:

  • веб-приложение для анкетирования респондентов;
  • веб-приложение для социолога (просмотр результатов опроса и классификация респондентов).

В ближайшее время планируется:

  • представить проект заказчику;
  • выполнить экспериментальную проверку на реальном социологическом опросе;
  • опубликовать полученные результаты.

Руководитель проекта
Лагерев Дмитрий
к.т.н., доцент


Источник: https://basegroup.ru/community/articles/monitoring-narko-3

Ссылки
[1] http://iipo.tu-bryansk.ru/
[2] http://br.ranepa.ru/about/kafedry/kafedra-obshchepravovykh-i-sotsialno-gumanitarnykh-distsiplin/
[3] https://basegroup.ru/community/articles/monitoring-narko-1
[4] https://basegroup.ru/community/articles/monitoring-narko-2
[5] https://basegroup.ru/sites/default/files/article_img/risunok_1.jpg
[6] https://basegroup.ru/sites/default/files/article_img/risunok_2.jpg
[7] https://basegroup.ru/sites/default/files/article_img/risunok_3.jpg
[8] https://basegroup.ru/sites/default/files/article_img/risunok_4.jpg
[9] https://deductorbstu.herokuapp.com/admin/questionnaires