Меню Услуги

Проектирование информационной системы для медико-социальной экспертизы. Часть 2.

Страницы:   1   2

Узнай стоимость написания такой работы!

Ответ в течение 5 минут! Без посредников!

2.3. Физическое проектирование базы данных

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

Фаза физического проектирования базы данных предусматривает принятие разработчиком окончательного решения о способах реализации создаваемой базы. Поэтому физическое проектирование обязательно производится с учетом всех особенностей используемой СУБД.

Для создания базы данных выбрана СУБД PostgreSQL – свободная объектно-реляционная система управления базами данных. Существует в реализациях для следующих платформ: Linux, Solaris/OpenSolaris, Win32,
Win x86-64, Mac OS X, FreeBSD, QNX 4.25, QNX 6. PostgreSQL базируется на языке SQL и поддерживает многие из возможностей стандарта SQL: 2003 (ISO/IEC 9075).

Сильными сторонами PostgreSQL считаются:

  • поддержка БД практически неограниченного размера;
  • мощные и надёжные механизмы транзакций и репликации;
  • расширяемая система встроенных языков программирования: в стандартной поставке поддерживаются PL/pgSQL, PL/Perl, PL/Python и PL/Tcl; дополнительно можно использовать PL/Java, PL/PHP, PL/Py, PL/R, PL/Ruby, PL/Scheme и PL/sh, а также имеется поддержка загрузки
    C-совместимых модулей;
  • наследование;
  • легкая расширяемость [6].

Структура полей таблиц спроектированной базы данных подробно рассмотрена в таблице 3.

Таблица 3 – Структура таблиц базы

Имя поля Содержание поля Тип данных Тип данных PostgreSQL Примечание
Населенные пункты (list_city)
id_city id населенного пункта числовой integer первичный ключ
n_city населенный пункт символьный varchar
Названия улиц (list_street)
id_str id улицы числовой integer первичный ключ
str_type тип улицы символьный varchar
street название улицы символьный varchar
Заболевания (diag)
id_diag id диагноза числовой integer первичный ключ
diagnosis диагноз символьный varchar
Группы инвалидности (groups)
id_res id группы числовой integer первичный ключ
grp группа инвалидности символьный varchar
Категории населения (categ)
id_cat id категории числовой integer первичный ключ
category категория населения символьный varchar
Степени нетрудоспособности (ratio_strict)
ratio id степени числовой integer первичный ключ
ratio_descr степень нетрудоспособности символьный varchar
Медицинские средства реабилитации (msr)
id_msr id числовой integer первичный ключ
msr МСР символьный varchar
Профессиональные средства реабилитации (psr)
id_psr id числовой integer первичный ключ
psr ПСР символьный varchar
Технические средства реабилитации (tsr)
id_tsr id числовой integer первичный ключ
tsr ТСР символьный varchar
Социальные средства реабилитации (ssr)
id_ssr id числовой integer первичный ключ
ssr ССР символьный varchar
Население (population)
id_pop id числовой integer первичный ключ
years год переписи числовой integer
pop_rn население района числовой integer
pop_rn_t население района трудоспособное числовой integer
pop_bg население Богучан числовой integer
pop_bg_t население Богучан трудоспособное числовой integer
Пациенты (pacient)
id_p id пациента числовой integer первичный ключ
s_name имя символьный varchar
f_name отчество символьный varchar
l_name фамилия символьный varchar
sex пол символьный varchar
birth_day дата рождения дата date
city населенный пункт символьный varchar
street улица символьный varchar
build дом числовой integer
korp корпус символьный char
flat квартира числовой integer
Направления (dispatch)
id_p id направления числовой integer первичный ключ
id_kat категория населения числовой integer внешний ключ
id_diag диагноз числовой integer внешний ключ
date_disp дата направления дата date
rem примечание символьный char
Результаты (result)
id_p id пациента числовой integer первичный ключ
date_res дата результата дата date
id_res группа инвалидности числовой integer внешний ключ
ratio степень нетрудоспособности числовой integer внешний ключ
date_exrip срок действия группы числовой integer
Программы реабилитации (ipr)
id_p id пациента числовой integer первичный ключ
msr1 МСР числовой integer
msr2 МСР числовой integer
msr3 МСР числовой integer
psr1 ПСР числовой integer
psr2 ПСР числовой integer
ssr1 ССР числовой integer
ssr2 ССР числовой integer
tsr1 ТСР числовой integer
tsr2 ТСР числовой integer
tsr3 ТСР числовой integer
Пользователи (users)
id id пользователя числовой integer первичный ключ
u_name логин символьный varchar
u_pass пароль символьный varchar
u_level уровень доступа числовой integer
sname имя символьный varchar
fname отчество символьный varchar
lname фамилия символьный varchar

 

Кроме того, для удобства обработки созданы три вспомогательные таблицы: list_disp, list_r и list_ipr, отображающие информацию о направленных на МСЭ, результаты МСЭ и индивидуальные программы реабилитации соответственно. Эти таблицы заполняются данными из нескольких таблиц (рабочих и справочных) при помощи триггеров.

Физическая структура базы представлена на рисунке 2.

Рисунок 2 – Физическая структура базы данных

 

2.4. Выводы по главе

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

 

ГЛАВА 3. РАЗРАБОТКА ПРОГРАММНОГО ПРОДУКТА

3.1. Структура программного продукта

Программный продукт в технологическом плане представляет собой информационную систему, построенную на основе СУБД и Web-технологий. Это позволит в качестве клиентского места использовать Web-браузер, а при необходимости – организовать удаленный доступ к базе данных через Internet/Intranet.

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

В содержательном плане программный продукт должен выполнять следующие функции:

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

Предусмотрено два вида пользователей: администратор и пользователь (врач). На рисунке 3 представлена диаграмма вариантов использования программы.

Рисунок 3 – Диаграмма вариантов использования

 

3.2. Руководство программиста

Программный продукт представляет собой информационную систему, построенную на основе СУБД и программных модулей, написанных на языке PHP. Для работы системы необходимы установленные в операционной системе СУБД PostgreSQL, PHP5 и Web-сервер Apache. Наличие PHP именно пятой версии критично – поддержка полноценной работы с классами появилась только в PHP5.

Системные требования:

  • Оперативная память: объем, достаточный для нормальной работы Web-сервера и сервера баз данных. Для работы в среде Linux достаточен объем ОЗУ 256 Мб.
  • Объем дискового пространства: приблизительно 100-150 Мб с учетом СУБД PostgreSQL (дополнительный требуемый объем зависит от объема электронных документов).
  • Операционная система: хотя информационная система разрабатывалась и писалась в среде Linux, она является кроссплатформенной и с одинаковым успехом может работать в различных ОС, таких как: Windows, MacOS, FreeBSD, Solaris, Qnx и др.

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

  • php – основной управляющий файл, «сердце» системы. Именно из него вызываются почти все функции и процедуры, он перенаправляет неавторизованных пользователей на страницу аутентификации, проверяет уровень доступа (привилегии) пользователей.
  • php – в этом файле реализован механизм аутентификации и распределения прав пользователей. Он содержит функцию аутентификации, проверяющую правильность введенных имени и пароля и устанавливающую cookies браузера, на основе которых определяется уровень доступа пользователей. Так же он содержит функции закрытия сессии, и извлечения значения уровня доступа из cookies.
  • php – шаблоны HTML. Файл содержит набор функций, формирующих HTML-страницы, а также обеспечивающих отображение данных, полученных из БД в табличной форме.
  • php – здесь находятся функции, обеспечивающие соединение с БД.
  • php – содержит функции для просмотра БД и поиска. Также здесь располагаются некоторые вспомогательные функции.
  • php – содержит функции для редактирования из занесения данных в БД.
  • php – содержит функции формирования статистических
    отчетов.
  • php – содержит объявления классов.
  • php – содержит некоторые конфигурационные параметры для соединения с БД.

Наиболее часто используемые операции: извлечение, вставка, удаление и модификация информации в базе данных – реализованы с помощью классов, объявленных в модуле classes.php. Все многообразие запросов к БД осуществляется с помощью четырех классов:

  • Класс DB_view реализует запросы к БД на извлечение информации, обрабатывает полученные от PostgreSQL данные и выводит их пользователю в виде таблиц. Экземпляры класса вызываются из модулей dbedit.php, php и reports.php.
  • Класс DB_list реализует запросы к справочным таблицам БД и заполняет полученными от сервера SQL данными поля тега HTML <select> в пользовательских формах на вставку данных в БД. Экземпляры класса вызываются из модуля php.
  • Класс DB_insert реализует вставку данных в БД. Вызывается из модуля dbedit.php.
  • Класс DB_insert_p является расширением класса DB_insert (дочерний класс) и реализует UPDATE-запросы к БД на модификацию данных. Вызывается из модуля dbedit.php.

Дистрибутив программы представляет собой архив, содержащий
php-файлы, копируемые в рабочий каталог Web-сервера и скрипт install_db.sql, обеспечивающий создание структуры БД на PostgreSQL.

3.3. Руководство пользователя

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

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

Для работы с программой необходим любой Web-браузер, например Opera, Firefox или Internet Explorer.

В начале работы на запрос программы нужно ввести логин и пароль для входа, полученные у администратора (Рисунок 4).

Рисунок 4 – Запрос авторизации

 

После успешной авторизации отобразится главное меню программы (Рисунок 5).

Рисунок 5 – Главное меню

 

При щелчке на пункте меню «Просмотр БД» откроется страница просмотра информации о пациентах, хранящихся в БД.

На этой странице отображается информация о всех пациентах, направленных на МСЭ, кнопки расположенные в правом верхнем углу позволяют переключиться на отображение информации о результатах МСЭ, о пациентах направленных на МСЭ, но не прошедших ее, либо вернуться в главное меню. Здесь же можно осуществлять поиск по различным критериям и управлять сортировкой найденной информации. Обеспечивается «неточный» поиск записей: запись считается удовлетворяющей условию поиска, если она содержит часть поискового контекста, например, по запросу на поиск «Ив» будут выданы записи со значениями «Иванов», «Ивашкин» и т.п.

Кнопки «Результаты МСЭ» и «Без результатов МСЭ» включают отображение информации о пациентах, прошедших МСЭ и получивших группу инвалидности и о пациентах, направленных, но не прошедших МСЭ (Рисунок 6).

Рисунок 6 – Просмотр БД

 

Кнопка «Работа с БД» позволяет переключиться в режим ввода данных в БД. В этот режим можно войти также по щелчку на пункте «Работа с БД» в главном меню. При этом отображается подменю работы с БД
(Рисунок 7).

Рисунок 7 – Подменю работы с БД

 

Узнай стоимость написания такой работы!

Ответ в течение 5 минут! Без посредников!

Пункт «Добавить новую запись» открывает страницу для ввода информации о новых пациентах (Рисунок 8).

Рисунок 8 – Добавление новой записи о пациенте

 

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

Если на момент ввода данных известны результаты МСЭ, для их ввода нужно отметить галочку «Результат МСЭ» и ввести необходимые данные.

Щелчок на кнопке «Применить» заносит информацию в БД, при этом в нижней части окна отображается информация о только что введенном пациенте.

Кнопка «Отмена» очищает все поля формы.

Пункт «Добавить результаты освидетельствования МСЭ» открывает страницу для ввода информации о результатах МСЭ для пациентов, уже существующих в БД (Рисунок 9).

Рисунок 9 – Добавление результата освидетельствования

 

В нижней части окна отображаются записи о пациентах, не имеющих результата МСЭ. Для добавления информации о результатах необходимо определить id пациента (первая колонка в таблице) и ввести его в поле «id пациента», ввести данные о группе инвалидности, степени ограничения трудоспособности, дате заключения МСЭ, сроке действия группы и щелкнуть на кнопке «Применить». Данные запишутся в БД, и в нижней части окна отобразится только что введенная запись. Для ввода следующей записи нужно щелкнуть по кнопке «Добавить еще».

Пункт главного меню «Анализ данных» открывает страницу, на которой можно сформировать различные сводные отчеты на основе анализа информации из БД за произвольные календарные периоды (Рисунок 10).

Рисунок 10 – Страница анализа данных

 

Для получения отчета в соответствующих полях нужно определить начальную и конечную даты периода, за который будут анализироваться данные, и щелкнуть по кнопке «Запрос».

Помимо описанных выше элементов интерфейса, для пользователя с уровнем доступа «администратор», в главном меню добавляется пункт «Полный доступ к БД» (Рисунок 11).

Рисунок 11 – Главное меню пользователя с уровнем доступа «администратор»

 

При выборе полного доступа к базе данных открывается подменю (Рисунок 12).

Рисунок 12 – Административные функции системы

 

На страничке управления учетными записями пользователей можно добавить нового пользователя, удалить ученую запись и изменить пароль пользователя (Рисунок 13).

Рисунок 13 – Управление пользователями системы

 

На странице «Удаление информации из БД» администратор может удалить ошибочно введенную пользователями информацию (Рисунок 14).

Рисунок 14 – Удаление записей из БД

 

Здесь же можно осуществлять поиск с различными критериями по пациентам.

И, наконец, самый мощный инструмент администратора – «Прямой доступ к БД» (Рисунок 15).

Рисунок 15 – Прямой доступ к базе данных

 

На этой страничке в текстовом поле можно выполнять любые запросы к БД: выборку данных, удаление, редактирование создание и удаление таблиц и т. д., используя стандартный язык SQL.

Также для отслеживания возможных ошибок, в режиме администратора текст всех запросов, переданных в БД, отображаются в окне браузера в том виде, в каком их получает PostgreSQL (Рисунок 16).

Рисунок 16 – Отображение администратору строки запроса к PostgreSQL

 

3.4. Отладка и тестирование

Все возможные ошибки программы были выявлены в ходе отладки автоматизированной системы.

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

3.5. Выводы по главе

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

 

ЗАКЛЮЧЕНИЕ

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

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

Так же в ходе работы были достигнуты следующие результаты:

  • проанализирована технология проектирования Web-приложений;
  • рассмотрено существующее программное обеспечение для работы бюро МСЭ;
  • спроектирована БД для хранения информации о пациентах;
  • спроектировано и реализовано приложение для учета выхода на инвалидность.

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

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

 

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Гутманс, Э. PHP Профессиональное программирование [Текст] : пер. с англ. А. Киселев / Э. Гутманс, С. Баккен, Д. Ретанс. – СПб. : Символ-Плюс, 2006. – 704 с.
  2. Клайн, К. SQL. Справочник. 2-е издание [Текст] : пер. с англ. С.М. Лунин / К. Клайн. – М. : КУДИЦ-ОБРАЗ, 2006. – 832 с.
  3. Коггзолл, Дж. PHP Полное руководство [Текст] / Дж. Коггзолл. – М. : Вильямс, 2006. – 752 с.
  4. Олищук, А.В. Разработка WEB-приложений на PHP Профессиональная работа [Текст] / А. В. Олищук, А. Н. Чаплыгин. – М. : Вильямс, 2006. – 352 с.
  5. Уорсли, Дж. PostgreSQL. Для профессионалов [Текст] : пер. с англ. Е. Матвеев / Дж. Уорсли, Дж. Дрейк. – СПб. : Питер, 2003. — 496 с.
  6. Федеральный закон от 20.07.1995 № 181-ФЗ (ред. от 30.11.2011) «О социальной защите инвалидов в Российской Федерации» // Официальный интернет-портал правовой информации pravo.gov.ru, 01.12.2011.
  7. Документация | PostgreSQL [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://postgresql.ru.net/docs.html. – Загл. с экрана.
  8. Интеграция Internet-технологий и СУБД [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://citforum.ru/internet/intranet_app/
    interintrshtml. – Загл. с экрана.
  9. Информационные системы по проблемам инвалидности и инвалидов [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://www.sparm.com/files/sparm_invalidnost.pdf. – Загл. с экрана.
  10. Компания СП.АРМ «Информационные технологии в медицине и социальной защите населения» [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://www.sparm.com/. – Загл. с экрана.
  11. Технологии баз данных для World Wide Web: обзор [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://www.hardline.ru/2/22/526/. – Загл. с экрана.
  12. Фаворская, М.Н. Базы Данных [Электронный ресурс] : учебно-методический электронный комплекс / М. Н. Фаворская. – Красноярск,
    СибГАУ.
  13. Apache Software [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://projects.apache.org/. – Загл. с экрана.
  14. PHP, MySQL и другие веб-технологии [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://php.su/. – Загл. с экрана.
  15. PostgreSQL4.4 Documentation [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://www.postgresql.org/docs/8.4/static /index.html. – Загл. с экрана.

Узнай стоимость написания такой работы!

Ответ в течение 5 минут!Без посредников!

Страницы:   1   2