Научная статья на тему 'РАЗРАБОТКА МОДУЛЯ ВИЗУАЛИЗАЦИИ НАПОЛНЕННОСТИ ХОЛОДИЛЬНИКОВ ДЛЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ «КРИОБАНК»'

РАЗРАБОТКА МОДУЛЯ ВИЗУАЛИЗАЦИИ НАПОЛНЕННОСТИ ХОЛОДИЛЬНИКОВ ДЛЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ «КРИОБАНК» Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
50
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
визуализация данных / информационная система / базы данных / медицинская информационная система.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Вейкин Дмитрий Александрович

информационная система «Криобанк» является узкоспециализированным программным обеспечением. Данное программное обеспечение разработано для медицинского центра и является частью его комплексной информационной системы. Данная информационная система предназначена для учета крио консервированных биоматериалов в хранилище. В информационной системе нет возможности посмотреть, на сколько наполнены холодильники, которые находятся в медицинской организации. Для этого был создан внешний модуль, который интегрируется с базой данных информационной системы и устраняет этот недостаток.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Вейкин Дмитрий Александрович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «РАЗРАБОТКА МОДУЛЯ ВИЗУАЛИЗАЦИИ НАПОЛНЕННОСТИ ХОЛОДИЛЬНИКОВ ДЛЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ «КРИОБАНК»»

РАЗРАБОТКА МОДУЛЯ ВИЗУАЛИЗАЦИИ НАПОЛНЕННОСТИ ХОЛОДИЛЬНИКОВ ДЛЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ «КРИОБАНК»

Вейкин Д.А.

Вейкин Дмитрий Александрович — магистрант, кафедра практической и прикладной информатики, Институт информационных технологий МИРЭА - Российский технологический университет, г. Москва

Аннотация: информационная система «Криобанк» является узкоспециализированным программным обеспечением. Данное программное обеспечение разработано для медицинского центра и является частью его комплексной информационной системы. Данная информационная система предназначена для учета крио консервированных биоматериалов в хранилище. В информационной системе нет возможности посмотреть, на сколько наполнены холодильники, которые находятся в медицинской организации. Для этого был создан внешний модуль, который интегрируется с базой данных информационной системы и устраняет этот недостаток.

Ключевые слова: визуализация данных, информационная система, базы данных, медицинская информационная система.

УДК 004.021

В настоящее время в медицинском центре хранятся различные крио консервированные биоматериалы в специальных холодильниках. Для их учета применяется информационная система «Криобанк». Информационная система обладает множеством функций. Однако в ней нет возможности посмотреть на сколько заполнен каждый холодильник или стойка холодильника. Существует только возможность посмотреть свободно или нет конкретное место в холодильнике. Для человека проще воспринимать данные, если они представлены в виде визуального формата [1]. Поэтому информацию о наполненности холодильников и стоек лучше всего представить в виде графика, а не таблицы.

Для реализации модуля необходимо проанализировать как информационная система «Криобанк» определяет свободно или нет место в холодильнике. Информационная система построена по клиент-серверной архитектуре и в качестве базы данных используется компактная встраиваемая СУБД - SQLite. В результате анализа базы данных было установлено что сведения о находящихся биоматериалах хранятся в таблице «positions», а сведения о всех доступных местах хранятся в таблице «places» рисунок 1. Места из таблицы «places» группируются в контейнер и в нем может содержаться от 4 до 13 мест в зависимости от типа контейнера. Это прописывается в таблице «containers». Каждые несколько контейнеров образуют стойку. Какие контейнеры принадлежат к какой стойке прописано в таблице «stands». Стойки в свою очередь группируются по холодильникам. И в таблице «fridge» прописано, какие стойки относятся к каждому холодильнику. Таблица «criobank» это задел на будущие, если система будет использоваться в нескольких медицинских организациях, которые хранят замороженные биоматериалы. В таблице «dict_includes» содержатся сведения о том, как хранятся биоматериалы. Например, стойка бывает с ячейками или боксами и биоматериалы могут храниться в пакетах или пробирках.

Рис. 1. Таблицы из базы данных

На отношении количества занятых мест и общего количества мест можно построить алгоритм подсчета общей занятости холодильника или стойки. Для того чтобы определить на сколько наполнена стойка необходимо посчитать сколько в стойке контейнеров. Затем посчитать, сколько позиций содержит каждый контейнер, принадлежащий этой стойке. Перемножая полученные значения можно получить сколько и какие позиции содержатся в стойке, а из таблицы «position» можно получить сведения, какие из них наполнены. Произведя несложные математические операции, можно получить процент наполненности стойки. Применяя этот алгоритм, можно вычислить наполненность каждой стойки.

Для того чтобы определить, на сколько наполнен каждый холодильник, используется тот же алгоритм только теперь еще считается сколько и какие стойки принадлежат холодильнику. Перемножая количество стоек из одного холодильника на количество контейнеров из этих стоек и на количество элементов из контейнера, получаем, сколько и какие позиции находятся в конкретном холодильнике. Затем из таблицы «places» берем эти позиции и в таблице «position» находим, какие из них заняты. После вычислений получаем процент наполненности холодильника.

Модуль был разработан с использованием языка программирования python и Фреймворка Django. При работе с базой данных использовался Django ORM, в котором существующая модель базы данных была описана классами Python [3]. Для пользователя необходимо создавать визуализацию данных в frontend. Frontend — все, что браузер пользователя может читать, выводить на экран и/или запускать. Frontend состоит из HTML, CSS и JavaScript. Для построения визуализации использовалась библиотека Highcharts. Данная библиотек была выбрана из-за того, что содержит пример реализации наиболее подходящего графика, а именно столбчатого с детализацией [5]. Это упрощает разработку, для реализации будет только необходимо подать на график 2 массива массив с данных о наполненности холодильников и массив данных о наполненности стоек [2]. Массивы связаны и при нажатии на одну из построенных колонок графика будет выводиться информация о том какие ячейки или боксы есть в холодильнике и на сколько они наполнены [4]. Элемент массива о наполненности стоек выглядит следующим образом: {name: название холодильника 1; id: название холодильника 1; data: название каждого элемента холодильника 1 и процент его наполненности}. Количество элементов в массиве равно количеству холодильников в медицинской организации. Элемент массива содержащий сведения о наполненности холодильников выглядит так: {name: название холодильника 1; у: % наполненности холодильника 1; drilldown: название холодильника 1}. Количество элементов также равно количеству

холодильников. В результате получаем график, которые представлен на Рисунке 2. На рисунке 3 представлена как выглядят 1 из 6 реализованных детализаций для этого графика.

Рис. 2. Полученный график наполненности холодильников

Рис. 3. Детализация холодильника РЯ02

Заключение

В результате разработки модуля в информационной системе «Криобанк» появится новый функционал. По графику, который строится модулем, персонал медицинского центра сможет увидеть наполненность холодильников и стоек в этих холодильниках. Это позволит избежать ситуации, когда нужно будет положить биоматериал, а холодильник будет полностью заполнен. Также будет видно, в какое место холодильника еще можно что-то положить. Модуль позволит не искать пустое место в холодильнике, а увидеть его на графике.

Список литературы

1. Визуализация данных: основные правила, полезные приемы и инструменты. [Электронный ресурс]. Режим доступа: https://www.owox.ru/blog/articles/data-visualization/ (дата обращения: 27.04.2022).

2. Библиотека Highcharts. [Электронный ресурс]. Режим доступа: https://www.highcharts.com/demo/stock (дата обращения: 10.04.2021).

3. Веб-фреймворк Джанго. [Электронный ресурс]. Режим доступа: https://django.fun/docs/django/ru/4.0/ (дата обращения: 10.04.2021).

4. Highcharts - Краткое руководство [Электронный ресурс]. Режим доступа: https://coderlessons.com/tutorials/bolshie-dannye-i-analitika/uznaite-highcharts/highcharts-kratkoe-rukovodstvo (дата обращения: 20.05.2021).

5. Лучшие библиотеки визуализации данных JavaScript. [Электронный ресурс]. Режим доступа: https ://www. monterail. com/blog/javascript-libraries-data-visualization#first (дата обращения: 27.04.2021).

6. Как выбрать подходящий график исходя из типа данных. [Электронный ресурс]. Режим доступа: https://www.labnol.org/software/find-right-chart-type-for-your-data/6523/ (дата обращения: 27.05.2022).

i Надоели баннеры? Вы всегда можете отключить рекламу.