- •Минобрнауки россии
- •Дипломный проект
- •Аннотация
- •О главление
- •Введение
- •Глава 1 анализ предметной области
- •1.1 Информационные системы и система здравоохранения
- •1.2 Классификация мисс
- •1.3 Мисс территориального уровня
- •1.5 Автоматизация бизнес-процессов
- •1.6 Мисс «MedTime»
- •1.7 Мисс «ums – avrora»
- •1.8 Мисс «MedWork»
- •1.9 Сравнительная характеристика рассмотренных систем
- •1.11Методология создания автоматизированных больничных информационных систем
- •1.12 Стратегии разработки информационных систем
- •1.13 Требования к информационному обеспечению
- •Глава 2 проектно-конструкторская часть
- •2.1 Структура автоматизированной системы управления
- •2.2 Создание базы данных
- •2.3 Схема базы данных
- •2.4 Интерфейс программы
- •Глава 3 технологическая часть
- •3.1 Обоснование и описание методов и средств, которые нужно применить для выполнения разработки
- •3.2 Процесс нормализация отношений
- •3.3 Программное обеспечение
- •3.4 Анализ существующих систем управления базами данных и выбор наилучшей
- •3.5 Организация файлов баз данных
- •3.6 Программный продукт dbForge Studio for mysql
- •3.7 Установка dbForge Studio for mysql
- •Глава 4 оценка качества объекта разработки
- •4.1 Общие положения
- •4.2 Оценка качества разработанной программы
- •Глава 5 организационно-экономическая часть
- •5.1 Техническо-экономическое обоснование дипломного проекта
- •5.2 Расчет трудоемкости и цены разработки
- •5.3 Определение затрат на разработку программной продукции
- •Глава 6 информационная безопасность
- •Часть 1. Введение и общая модель.
- •Часть 2. Функциональные требования безопасности.
- •Часть 3. Требования доверия к безопасности.
- •6.1 Объект оценки
- •6.2 Активы, нуждающиеся в защите
- •6.3 Информация о среде безопасности
- •6.3.1 Предположения о безопасном использовании
- •6.3.2 Угрозы безопасности
- •6.3.3 Политика безопасности организации
- •6.3.4 Цель безопасности
- •6.4 Требования безопасности
- •6.5 Определение класса безопасности
- •Глава 7 охрана труда
- •7.1 Электробезопасность
- •7.2 Электромагнитные излучения
- •7.3 Требования к освещенности, эргономике и микроклимату
- •7.4 Пожарная безопасность
- •Последний лист дипломного проекта
7.2 Электромагнитные излучения
Спектр излучения, который оказывает влияние на человека в условиях производства, имеет диапазон длины волн от мизерной доли миллиметра до тысяч километров. Воздействие на человека электромагнитного излучения в разных диапазонах различается.
В работе с ПК мы сталкиваемся с инфракрасным излучением. Его влияние выражается в повышении температуры на рабочем месте. Исправить данную проблему можно с помощью установки вентиляции и кондиционирования для поддержания нужной температуры.
У современных мониторов уровень вредного излучения крайне мал в сравнении со старыми моделями приборов с электронно-лучевой трубкой, которые в небольшой степени являются источниками рентгеновского излучения. Дабы снизить излучение, мониторы включают только в заземлённые электрические розетки. То же может быть сказано и о самом компьютере.
7.3 Требования к освещенности, эргономике и микроклимату
Контрольными организациями определены следующие предписания, обеспечивающие безопасную работу сотрудников:
- при организации рабочего места необходимо учитывать, что его конструкция, размеры и расположение элементов должны соответствовать данным человека, физиологическим и психофизиологическим, а также его характеру. Учитывая выбор положения сотрудника необходимо обратить внимание на пункты: физическая тяжесть работы; различные особенности процесса ее выполнения; статические нагрузки на организм; время пребывания на работе;
- при работе с компьютерными приложениями значительная часть делается в сидячем положении, и, организуя рабочее место, необходимо обратить внимание на следующие факторы:
- высота и строение опорной поверхности или седловидная опорная поверхность, наклонные опорные поверхности);
- параметры микроклимата: температура окружающего воздуха ~22-24 градуса, относительная влажность 40-60 %, отсутствие сквозняков
- высота рабочей поверхности и габариты рабочей зоны, возможность регулировки этих параметров под индивидуальные особенности сотрудника;
- в помещениях с персональными компьютерами должен иметься достаточный уровень естественного и искусственного освещения, - уровень шумов не должен превосходить 50 дБ.
- пространство для ног.
- современные тенденции в организации рабочих мест должны учитывать особенности работника. Кресло, используемое для длительной работы за компьютером должно иметь подлокотники и достаточно широкую спинку высотой как минимум до плечевого пояса, а ее рельеф должен предусмотреть наличие поддержки для поясницы. Если конструкцией предусмотрена регулировка сидения и спинки, а кроме того высоты подлокотников – это позволит меньше утомляться.
Помещения с персональными компьютерами должны быть оборудованы системами отопления, кондиционирования либо приточно-вытяжной вентиляцией.
7.4 Пожарная безопасность
Пожары в помещениях, оборудованных ПК представляют особенную опасность, так как связаны с большими материальными потерями. Пожар может возникнуть при контакте горючих веществ, окислении и различных источников возгорания.
Горючими компонентами являются: стройматериалы отделки помещений, двери, перегородки, полы, различные носители информации, изоляция и т.п.
Источниками возгорания могут быть различные электронные схемы от приборов, устройства, применяющиеся для технического обслуживания, устройства для электропитания, кондиционер, где в результате различных нарушений могут образоваться перегретые части.
Противопожарная защита – комплекс различных организационных и технических мероприятий, которые направлены на обеспечение безопасности сотрудников, предотвращение пожаров, ограничение их распространения, а кроме того на создание всех условий для успешного их тушения.
Важным средством защиты людей от опасностей связанных с пожарами является планировочное решение зданий. В случае продолжительных коридоров, где нет естественного освещения, требуется организовывать удаление дыма с путей эвакуации. Системы, которые это обеспечивают, должны запускаться пожарной сигнализацией.
Непосредственная борьба с пожарами (тушение пожара) производится огнетушителем, который может иметь различное наполнение, а так же песком, либо другими негорючими материалами, которые мешают огню распространяться и поддерживаться. Необходимо использовать установку автоматического пожаротушения в случае, когда таковая имеется в здании.
Вывод
Разработка дипломного проекта основывается на организации автоматизированных служебных мест, которые оснащаются персональной ЭВМ и различной оргтехникой. В данной главе приведены основные неблагоприятные факторы при работе с персональным компьютером, а также рассмотрены способы минимизации их отрицательного влияния.
ЗАКЛЮЧЕНИЕ
В процессе выполнения квалификационной работы разработана автоматизированная система управления офтальмологической клиникой. Тематика работы является актуальной, она отвечает направлениям, определенным в Концепции государственной программы информатизации, приоритетным направлениям развития науки и техники, определенным Министерством образования. В процессе разработки рассмотрен опыт медицинских информационных систем на примере «MedTime», «UMS-AVRORA», «MedWork», сопоставлены их характеристики. Важную роль в проектировании базы данных играет нормализация отношений. Описана и создана сбалансированная структура БД в 3НФ.
Приложения MYSQL и C++ представляются проще и более удобными в написании дополнений для базы данных.
Для создания БД был избран программный продукт dbForge Studio for MYSQL. Рассмотрена его характеристика и установка.
При разработке дополнению избран язык программирования С++. Интерфейс программы создан с помощью программы Builder C++6.0. Дружественный интерфейс дополнению офтальмологической клиники, не требует от пользователя знаний программирования.
Вся необходимая работа по осуществлению доступа к информации что сохраняется в базе данных, ее модификации, поддержке базы данных в целостном виде скрытая внутри и пользователю нет необходимости знать о ней, чтобы успешно решать весь вокруг возникающих заданий связанных с использованием информации что сохраняется в базе данных.
Основным результатом работы является разработанная система управления базой данных офтальмологической клиники.
Практическое значение работы – результат разработанного дополнению может быть использован для создания реальной информационной системы.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
1 |
Базилевич Я., Огирко И. Пислядипломна медицинское образование из информатизации и моделирования //Укр. Мед. Вести. – 1998. – Т. 2: Материалы VII Конгр. Мировой федерации |
2 |
Информатизация системы здравоохранения – Режим доступа: http://www.personal.in.ua/article.php?ida=204 .
|
3 |
Классификация международных информационных систем – Режим доступа: http://www.ukrreferat.com/index.php?referat=49868&pg=2 .
|
4 |
Классификация международных информационных систем, конспект – Режим доступа: http://refmaniya.org.ua/nformatika/klasif-kats-ya-m-s .
|
5 |
Бабенко Л.П., Лаврищева К.М. Основы программной инженерии: Навч.посиб.– К .:ЗнанняКОО, 2001. – 209 с . – (Высшее образование ХХІ века ).
|
6 |
Информационные технологии. Процессы жизненного цикла программного обеспечения .–К .: Госстандарт Украины, 2002. – 49 с.
|
7 |
Автоматизация клиники и стаціонара – Режим доступа: http://mgerm.ru/possibilities .
|
8 |
Медицинская информационная система «MedTime» - Режим доступа: http://www.med-soft.net/ .
|
9 |
Медицинская информационная система «UMS-AVRORA» - Режим доступа: http://www.umssoft.com/soft_avrora.html .
|
10 |
Медицинская информационная система «MedWork» - Режим доступа: http://www.medwork.ru/ .
|
11 |
Офтальмологическая клиника «Мир Зрения» - Режим доступа: http://svit-zory.com.ua/ .
|
12 |
Информационные системы и технологии на предприятиях, конспект лекций – Режим доступа: http://eprints.kname.edu.ua/17149/1/Inform_systens_et_technologies_Ochrimenko.pdf
|
13 |
Главные аспекты информационных систем – Режим доступа: http://www.microsoft.com/Ukraine/Government/Newsletters/IT/Part1/Architecture/Default.mspx .
|
14 |
Пономаренко В.М., Кальниш В.В., Майоров О.Ю. Пути информатизации медицинской отрасли //Вісн. Соц. Гигиены и организации здравоохранения Украины. – 2000. – № 2. – С. 54-58
|
15 |
План перспективного развития Офтальмологической клинической больницы на 2008 – 2009 гг. // Машинопись, 2007. – 35 с.
|
16 |
Устав Офтальмологической клинической больницы // Машинопись, 2007. – 50 с.
|
17 |
Теоретические основы базы данных – Режим доступа: http://toloka.org/kn/files/7//Conspekt_z_OBD.pdf .
|
18 |
Системы управления базами данных – Режим доступа: http://www.ukrreferat.com/lib/computer/informat2/10.htm .
|
19 |
Структура языка SQL – Режим доступа: http://ua-referat.com _SQL_Structured_Query_Language .
|
20 |
Язык запросов SQL – Режим доступа: http://myrefs.org.ua/index.php?view=article&id=892 .
|
21 |
СУБД MySQl – Режим доступа: http://udau.edu.ua/library.php?pid=308 .
|
22 |
Организация современных СУБД – Режим доступа: http://myref.org.ua/index.php/option/content/task/view/id/771
|
23 |
Программный продукт dbForge Studio for MySQl – Режим доступа: http://www.devart.com/ru/dbforge/mysql/studio/
|
24 |
Программный продукт Builder C++ 6.0 – Режим доступа : http://cubook.supernew.org/ .
|
25 |
Основы С++ - Режим доступа: http://books.google.com.ua/books/Builder+C%2B%2B+6.0
|
ПРИЛОЖЕНИЕ А
Код главной страницы дополнению Unit1
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "Unit8.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
void __fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm1::FormCreate(TObject *Sender) //при создании формы
{
//задаем путь к базе(в папке программы с именем klinicaSZ.mdb)
AnsiString Path = ExtractFilePath(ParamStr(0))+"klinicaSZ.mdb";
//если файл есть, то устанавливаем соединение с базой
if(FileExists(Path))
{
ADOConnection1->Connected = false;
ADOConnection1->ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=;Password=\"\";Data Source=KlinicaSZ.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False";
ADOConnection1->Connected = true;
}
//иначе предлагаем выбрать другую базу и устанавливаем соединение с ней
else
if(open_db->Execute())
{
ADOConnection1->Connected = false;
ADOConnection1->ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=\"\";Password=\"\";Data Source="+open_db->FileName+";Mode=ReadWrite|Share Deny None;Persist Security Info=True";
ADOConnection1->Connected = true;
}
}
void __fastcall TForm1::Button1Click(TObject *Sender) //нажатие кнопки вход
{
AnsiString login=Edit1->Text;
AnsiString pass=Edit2->Text;
//если не заполнено один из полей, то выходим
if(login==""||pass=="") { ShowMessage("Заполнены не все поля!"); return;}
//делаем запрос к базе по введенным логину и паролю
AnsiString query="SELECT id_vracha FROM avtorizacija WHERE login=\""+login+"\" and password=\""+pass+"\"";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
ADOQuery1->Open();
switch(DBGrid1->Fields[0]->AsInteger)
{
case 1: //если ид=1, то показываем админскую форму
Form2->Show();
query="SELECT Familija, Imya, Otchestvo FROM vrachi";
Form1->ADOQuery1->Close();
Form1->ADOQuery1->SQL->Clear();
Form1->ADOQuery1->SQL->Add(query);
Form1->ADOQuery1->Open();
Form1->Visible=false;
break;
case 2: //если ид=2, то показываем форму врача
Form8->Show();
break;
default: //во вторых случаях логин или пароль неверен
ShowMessage("Неверный логин или пароль!");
return;
}
}
void __fastcall TForm1::Button2Click(TObject *Sender) //по нажатию кнопки выход
{
Close(); //закрываем
}
Код стартовой страницы заведующего клиники Unit2
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "Unit1.h"
#include "Unit3.h"
#include "Unit4.h"
#include "Unit5.h"
#include "Unit6.h"
#include "Unit7.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
void __fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
Form1->Visible=true;
}
void __fastcall TForm2::Button1Click(TObject *Sender)
{
Form1->Visible=true;
Close();
}
void __fastcall TForm2::FormCreate(TObject *Sender)
{
//настраиваем подключение к базе
AnsiString Path = ExtractFilePath(ParamStr(0))+"klinicaSZ.mdb";
if(FileExists(Path))
{
ADOConnection1->Connected = false;
ADOConnection1->ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=;Password=\"\";Data Source=KlinicaSZ.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=True";
ADOConnection1->Connected = true;
}
else
if(Form1->open_db->Execute())
{
ADOConnection1->Connected = false;
ADOConnection1->ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;User ID=\"\";Password=\"\";Data Source="+open_db->FileName+";Mode=ReadWrite|Share Deny None;Persist Security Info=True";
ADOConnection1->Connected = true;
}
//запрос: выбрать ФИО из таблицы врачей, расписание и номер кабинета из таблицы расписание
AnsiString query="SELECT A.Familija, A.Imya, A.Otchestvo, B.Raspisanie, B.Nomer_kabineta FROM vrachi A, grafic_roboty B WHERE A.id_vracha=B.id_vracha";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
//выполняем запрос
ADOQuery1->Open();
}
void __fastcall TForm2::Button2Click(TObject *Sender)
{
Form3->Show(); //при нажатии кнопки врачи показываем форму 3
}
void __fastcall TForm2::Button3Click(TObject *Sender)
{
Form4->Show(); //при нажатии кнопки пациенты показываем форму 4
}
void __fastcall TForm2::Button4Click(TObject *Sender)
{
Form5->Show(); //при нажатии кнопки анализы показываем форму 5
}
void __fastcall TForm2::Button5Click(TObject *Sender)
{
Form6->Show(); //при нажатии кнопки процедуры показываем форму 6
}
void __fastcall TForm2::Button6Click(TObject *Sender)
{
Form7->Show(); //при нажатии кнопки операции показываем форму 7
}
Код окна «Враче клиники» Unit3
#include <vcl.h>
#pragma hdrstop
#include "Unit3.h"
#include "Unit1.h"
#include "Unit11.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm3 *Form3;
int id_otdelenie=0; //выбранное отделение
void __fastcall TForm3::TForm3(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm3::RadioButton1Click(TObject *Sender)
{
if(RadioButton1->Checked) id_otdelenie=1; //выбрали 1 отделение
}
void __fastcall TForm3::RadioButton2Click(TObject *Sender)
{
if(!RadioButton1->Checked) id_otdelenie=2; //выбрали 2 отделение
}
void __fastcall TForm3::RadioButton3Click(TObject *Sender)
{
if(!RadioButton1->Checked) id_otdelenie=3; //выбрали 3 отделение
}
void __fastcall TForm3::Button1Click(TObject *Sender) //при нажатии кнопки поиск
{
if(id_otdelenie==0) {ShowMessage("Не выбрано отделение!"); return;} //если не выбрано отделение выходим
//запрос: выбрать полную информацию о пациентах из таблицы пациентов, для которых врач, проводивший осмотр, относится к выбранному отделению
AnsiString query="SELECT A.Familija, A.Imya, A.Otchestvo, A.Adres, A.Data_rogdenija, A.Dom_telefon, A.Rob_telefon, B.Nazvanie, C.Nazvanie FROM vrachi A, dolzhnost B, otdelenija C WHERE A.id_otdelenija="+(AnsiString)id_otdelenie+" and B.id_dolzhnost=A.id_dolzhnost and C.id_otdelenija=A.id_otdelenija";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
//выполняем запрос
ADOQuery1->Open();
}
void __fastcall TForm3::Button2Click(TObject *Sender) //при нажатии кнопки поиск по фамилии
{
//ищем пациентов для которых полет фамилия совпадает с выбранной из списка
AnsiString query="SELECT A.Familija, A.Imya, A.Otchestvo, A.Adres, A.Data_rogdenija, A.Dom_telefon, A.Rob_telefon, B.Nazvanie, C.Nazvanie FROM vrachi A, dolzhnost B, otdelenija C WHERE A.Familija=\""+ComboBox1->Text+"\" and B.id_dolzhnost=A.id_dolzhnost and C.id_otdelenija=A.id_otdelenija";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
//выполняем запрос
ADOQuery1->Open();
}
void __fastcall TForm3::FormCreate(TObject *Sender) //при создании формы
{
int n=0;
AnsiString query="SELECT MAX(id_vracha) FROM vrachi"; //смотрим количество записей(по макс. ид)
ADOQuery2->Close();
ADOQuery2->SQL->Clear();
ADOQuery2->SQL->Add(query);
ADOQuery2->Open();
n=ADOQuery2->Fields->Fields[0]->AsInteger;
//запрос на выбор фамилий всех врачей
query="SELECT Familija FROM vrachi";
ADOQuery2->Close();
ADOQuery2->SQL->Clear();
ADOQuery2->SQL->Add(query);
ADOQuery2->Open();
for(int i=0;i!=n;i++) //выводим фамилии врачей в список
{
ComboBox1->Items->Insert(і,ADOQuery2->FieldByName("Familija")->AsString);
ADOQuery2->Next();
}
}
Код окна «Пациенты клиники» Unit4
#include <vcl.h>
#pragma hdrstop
#include "Unit4.h"
#include "Unit1.h"
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm4 *Form4;
int id_otdelenie=0;
void __fastcall TForm4::TForm4(TComponent* Owner)
: TForm(Owner)
{
}
void __fastcall TForm4::Button2Click(TObject *Sender) //нажата кнопка поиск
{
AnsiString f = ComboBox1->Text; //запоминаем выбраную фамилию из списка
if(f==""){ShowMessage("Не выбрана фамилия!"); return;}
//запрос на выбор информации о пациенте по выбранной фамилии
AnsiString query="SELECT A.Familija, A.Imya, A.Otchestvo, A.Data_rogdenija, A.Pol, A.Mesto_raboty, A.Dolgnost, A.Adres, A.Gruppa_krovi, B.Nazvanie FROM pacienty A, soc_satus B WHERE A.Familija=\""+f+"\" and B.id_status=A.id_status";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
//выполнение запроса
ADOQuery1->Open();
}
void __fastcall TForm4::RadioButton1Click(TObject *Sender) //выбор отделений
{
if(RadioButton1->Checked) id_otdelenie=1;
}
void __fastcall TForm4::RadioButton2Click(TObject *Sender)
{
if(RadioButton2->Checked) id_otdelenie=2;
}
void __fastcall TForm4::RadioButton3Click(TObject *Sender)
{
if(RadioButton3->Checked) id_otdelenie=3;
}
void __fastcall TForm4::RadioButton4Click(TObject *Sender)
{
if(RadioButton4->Checked) id_otdelenie=5;
}
void __fastcall TForm4::Button1Click(TObject *Sender)
{
AnsiString query;
if(id_otdelenie==0) {ShowMessage("Не выбрано отделение!"); return;}
if(id_otdelenie>0&&id_otdelenie<=3) //если выбрано отделение 1-3, то выводим информацию о выбранных отделениях
query="SELECT A.Familija, A.Imya, A.Otchestvo, A.Data_rogdenija, A.Pol, A.Mesto_raboty, A.Dolgnost, A.Adres, A.Gruppa_krovi, B.Nazvanie FROM pacienty A, soc_satus B, osmotr C, vrachi D WHERE B.id_status=A.id_status and C.id_pacienta=A.id_pacienta and C.id_vracha=D.id_vracha and D.id_otdelenija="+(AnsiString)id_otdelenie;
else //иначе выбираем пациентов с операциями
query="SELECT A.Familija, A.Imya, A.Otchestvo, A.Data_rogdenija, A.Pol, A.Mesto_raboty, A.Dolgnost, A.Adres, A.Gruppa_krovi, B.Nazvanie FROM pacienty A, soc_satus B, osmotr C WHERE B.id_status=A.id_status and C.id_osmotra=3 and C.id_pacienta=A.id_pacienta";
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(query);
//выполняем запрос
ADOQuery1->Open();
}
void __fastcall TForm4::FormCreate(TObject *Sender)
{
//по созданию формы формируем список всех фамилий пациентов
int n=0;
AnsiString query="SELECT MAX(id_pacienta) FROM pacienty";
ADOQuery2->Close();
ADOQuery2->SQL->Clear();
ADOQuery2->SQL->Add(query);
ADOQuery2->Open();
n=DBGrid2->Fields[0]->AsInteger;
query="SELECT Familija FROM pacienty";
ADOQuery2->Close();
ADOQuery2->SQL->Clear();
ADOQuery2->SQL->Add(query);
ADOQuery2->Open();
for(int i=0;i!=n;i++)
{
ComboBox1->Items->Insert(і,ADOQuery2->FieldByName("Familija")->AsString);
ADOQuery2->Next();
ПРИЛОЖЕНИЕ B
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Чувашский государственный университет имени И.Н.Ульянова»
