Материал: Компьютеризированная система комплексной оценки функционального и психофизического состояния человека

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Комплекс поддерживает 5 основных режимов:

-    регистрация пациента, анкетирование по жалобам и перенесенным заболеваниям, ввод основных его характеристик (артериальное давление, жизненная емкость легких, объем форсированного выдоха, динамометрия, антропометрия);

-  выполнение тестирующих процедур;

-  занесение данных об индивидуальных особенностях пациента, его образе жизни и действующих на него факторах окружающей среды;

-  формирование комплексного заключения для последующей квалифицированной оценки результатов тестирования;

-  архивирование и отправка накопленных данных о пациенте по электронной почте в центр приема и обработки.

Программа ValeoTest в отличие от разрабатываемого программного продукта имеет интерфейс, рассчитанный исключительно на опытных пользователей, а также высокую стоимость.

В качестве зарубежного аналога проектируемого программного обеспечения рассмотрим систему "DROMEAS". Данная система предназначена для мониторинга состояния здоровья человека. Система распознает возможные проблемы со здоровьем, формирует медицинские заключения, основываясь на результатах тестов.

Прохождение тестов синхронизировано со снятием физиологических показателей (пульс, давление). Мониторинг физиологических показателей осуществляется посредством датчиков, закрепляемых на теле обследуемого.

Система проводит измерение следующих показателей:

сердечнососудистый ритм;

ЭКГ;

артериальное давление до нагрузки;

артериальное давление после нагрузки;

респираторные показатели;

температура тела;

Анализ показателей возможен как в режиме реального времени, так и после записи в базу данных. Возможно сохранение результатов на переносном компьютере и последующая синхронизация с базой данных.

Потенциальными пользователями системы являются:

спортсмены;

тренеры;

профессиональные медицинские специалисты;

средний медперсонал.

Результаты обзора со сравнением по наиболее важным критериям оформлены в виде таблицы

Таблица 1.1 - Сравнительный обзор систем анализа ПФС


Функции

Омега-Медицина

ValeoTest

Dromeas

1

Регистрация физиологических показателей

+

+

+

2

Диагностика ПФС

+

+

+

3

Формирование заключения по результатам теста

+

+

+

4

Сохранение результатов в базе данных

-

-

+

5

Возможность подключения дополнительных диагностических модулей

-

+

+

6

Возможность работы через Интернет

-

-

+

7

Наличие портативной версии

-

-

+


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

2. Основная часть

.1 Анализ и уточнение требований к программному обеспечению


На основе анализа отечественных и зарубежных аналогов, выполненного в предыдущей главе, сформулируем требования к составу выполняемых функций проектируемого программного обеспечения.

2.1.1 Требования к составу выполняемых функций проектируемого программного обеспечения

Программа должна обеспечивать выполнение перечисленных ниже функций:

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

-  формирование заключения о психофизиологическом состоянии обследуемого;

-  сохранение результатов тестирования в базе данных с возможностью последующего анализа;

-  формирование отчетов по результатам анализа;

-  группировка результатов по ВУЗу;

-  группировка результатов по институту;

-  группировка результатов по группе;

-  группировка результатов по дате тестирования;

-  группировка результатов по полу;

-  группировка результатов по возрасту;

-  просмотр результатов теста конкретного человека;

-  возможность сравнения результатов нескольких объектов обследования;

-  просмотр личных данных пациентов

.1.2 Требования к организации входных данных проектируемого программного обеспечения

Входными данными будут являться личные данные пациентов, а также числовые значения, полученные в результате проведения тестов. Предполагается хранение всей вводимой информации в базе данных.

.1.3 Требования к организации выходных данных проектируемого программного обеспечения

Полученные результаты тестов программа должна отображать следующим образом:

Рисунок 1.2 - структура отображения результатов тестирования

.1.4 Структура программного взаимодействия

Экранные формы, с которыми работает тестируемый, отличаются от форм, используемых исследователем. Последний будет видеть информацию об обследуемом, результаты тестов и функциональных характеристик, их краткий анализ.

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

Рассмотрим алгоритм прохождения обследования:

.     Проверка наличия учетной записи в базе данных;

2. Если пациент проходит обследование впервые, то сначала осуществляется процедура его регистрации;

.   Если человек проходит обследование повторно - ему необходимо лишь авторизоваться в системе;

.   Пациент переходит в диагностический модуль;

.   Затем в диагностическом модуле пациента выбирает необходимый пакет тестов;

.   После этого осуществляется тестирование;

.   Проводится предварительная проверка результатов обследования;

.   Если они корректны, то записываются в базу данных, если нет - выводится сообщение об ошибке с просьбой проведения повторного тестирования.

.   Сохранение результатов в базе данных;

.   В итоге формируется заключение по психофизиологическому состоянию человека, прошедшему тестирование.

.   Данные выводятся на экран в виде таблиц либо диаграмм.

Структуру программного взаимодействия можно изобразить следующим образом (рис. 1.4).

Рисунок 1.4 - Структура программного взаимодействия системы

2.2 Выбор технологии, среды и языка программирования

.2.1 Выбор технологии программирования

Рассмотрим основные подходы к программированию: объектно-ориентированный и структурный.

При объектно-ориентированном программировании (ООП) программа представляет собой описание объектов, их атрибутов, совокупностей (или классов), отношений между ними, способов их взаимодействия и операций над объектами.

Одним из существенных недостатков данного подхода является сложность формализации предметной области, что вызывает трудности при тестировании и отладке созданного программного обеспечения.

При разработке программного обеспечения было отдано предпочтение структурному подходу к программированию. При данном подходе программа разбивается на отдельные модули, следующие один за другим. У каждого модуля один вход и один выход - законченная конструкция для решения поставленной задачи. Цель создаваемой программы достигается составлением композиции из отдельных модулей, разработанных применительно к поставленной задаче [4].

Рисунок 2.1 - Пример структурного подхода к программированию

Преимущества структурного программирования заключаются в следующем:

-    отдельные блоки могут разрабатываться и проходить тестирование независимо от остальной части программы;

-  несколько программистов могут работать над разными частями программы независимо друг от друга;

-  модули, написанные для одной программы, могут быть использованы в другой;

-  существенно упрощается построение программы и её отладка.

.2.2 Выбор языка программирования

Для решения поставленной задачи был выбран язык С++, который является языком высокого уровня и позволяет быстро и эффективно создавать приложения.

К достоинствам данного языка можно отнести:

-    поддержка различных стилей и технологий программирования, включая традиционное процедурное программирование и ООП;

-  возможность работы на низком уровне с памятью, адресами, портами;

-  возможность создания обобщённых алгоритмов для разных типов данных, их специализация и вычисления на этапе компиляции, используя шаблоны;

-  кроссплатформенность;

-  эффективность. Язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы;

2.2.3 Выбор среды разработки

Microsoft Visual Studio - линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы [5].Studio включает в себя редактор исходного кода, отладчик исходного кода, отладчик машинного уровня. Остальные встраиваемые инструменты включают в себя редактор форм для упрощения создания графического интерфейса приложения, веб-редактор, дизайнер классов и дизайнер схемы базы данных.Studio является одним из лидирующих продуктов на рынке программных средств, используемых для разработки программного обеспечения. психофизиологический мониторинг пациент статистика

Основной причиной отказа от данной среды разработки является отсутствие абсолютная коммерциализованность продукта. Данная среда наиболее подходит для крупномасштабных коммерческих проектов, а разрабатываемое программное обеспечение на данном этапе является некоммерческим.IDE - свободная интегрированная среда разработки приложений на языках программирования Java, JavaFX, Python, PHP, JavaScript, C++ [6].

Для разработки программ в среде NetBeans и для успешной инсталляции и работы самой среды NetBeans должен быть предварительно установлен Sun JDK.

По качеству и возможностям последние версии NetBeans IDE не уступают лучшим коммерческим средам разработки.

Основной причиной отказа от данной среды разработки являются высокие требования к аппаратному обеспечению. Другими словами, комфортная разработка возможна только на мощном компьютере. Помимо этого, исполняемые модули требуют наличия установленного ПО Sun JDK, что повышает требования к клиентским рабочим местам.

С++ Builder - это продукт Borland International для быстрого создания приложений. Высокопроизводительный инструмент визуального построения приложений включает в себя компилятор кода и предоставляет средства визуального проектрирования.

В С++ Builder также входят локальный SQL-сервер, генераторы отчетов, библиотеки визуальных компонентов, и прочие компоненты, необходимые для профессиональной разработки информационных систем.

С++ Builder производит небольшие по размерам (до 15-30 Кбайт) высокоэффективные исполняемые модули (.exe и.dll) [7]. Таким образом, за счет небольших по размерам и быстро исполняемых модулей требования к клиентским рабочим местам существенно снижаются - это имеет немаловажное значение и для конечных пользователей.

Преимущества С++ Builder по сравнению с аналогичными программными продуктами:

-    быстрота разработки приложения;

-  высокая производительность разработанного приложения;

-  низкие требования разработанного приложения к ресурсам компьютера;

-  наращиваемость за счет встраивания новых компонент и инструментов;

-  возможность разработки новых компонент и инструментов собственными средствами.

.3 Выбор СУБД

.3.1 Общие требования

В качестве хранилища информации предполагается использование базы данных. База данных должна обеспечивать сбор и эффективное хранение большого количества информации с клиентских компьютеров. Предполагаемый объем данных от 5 до 10 Мб в день.

При выборе СУБД было уделено внимание следующим критериям:

-    наличие триггеров и хранимых процедур. Хранимая процедура - программа, которая хранится на сервере и может вызываться клиентом. Поскольку хранимые процедуры выполняются непосредственно на сервере базы данных, обеспечивается более высокое быстродействие, нежели при выполнении тех же операций средствами клиента БД [8].

-  масштабируемость. При выборе СУБД необходимо учитывать, сможет ли данная система соответствовать росту информационной системы, причем рост может проявляться в увеличении числа пользователей, объема хранимых данных и объеме обрабатываемой информации.

-  рейтинг TPC (Transactions per Cent). Для тестирования производительности применяются различные средства, и существует множество тестовых рейтингов. Показатель TPC - это отношение количества запросов обрабатываемых за некий промежуток времени к стоимости всей системы.

-  восстановление после сбоев. При возникновении программных или аппаратных сбоев целостность, да и работоспособность всей системы может быть нарушена.

-  резервное копирование. В результате аппаратного сбоя может быть поврежден носитель информации и тогда восстановление данных будет невозможно, если не было предусмотрено резервное копирование базы данных. Резервное копирование спасает и в ситуациях, когда происходит логический сбой системы, например при ошибочном удалении таблиц. Существует множество механизмов резервирования данных (хранение одной или более копий всей базы данных, хранение копии ее части, копирование логической структуры и т.д.). Зачастую в систему закладывается возможность использования нескольких таких механизмов.

-  откат изменений. При выполнении транзакции применяется простое правило - либо транзакция выполняется полностью, либо не выполняется вообще. Это означает, что в случае сбоев, все результаты недоведенных до конца транзакций должны быть аннулированы. Механизм отката может иметь различное быстродействие и эффективность [8].

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