Облік роботи діагностичного центра
Курсовая работа, 16 Января 2013, автор: пользователь скрыл имя
Описание работы
У процесі написання даної роботи була досліджена предметна область діагностичного центра. У підсумку було прийняте рішення про написання програми, що зможе привести до зменшення ручної праці робітників, зменшенню витрат на організацію роботи, що приведе чималої економії засобів. Дане програмне забезпечення може використовуватися в діагностичному відділені будь-якої лікарні або безпосередньо у спеціалізованому діагностичному центрі. Для навчання роботи з програмою не потрібно багато часу і засобів, тому немає необхідності бути кваліфікованим фахівцем. З її допомогою один співробітник легко може замінити групу працівників центру і при цьому не випробувати великих навантажень.
Работа содержит 1 файл
Курсова робота.doc
— 2.47 Мб (Скачать)Встановлення асоціацій
Структурні зв’язки між об’єктами створюють на основі аналізу запитальних зв’язків. Для встановлення запитальних зв’язків найбільш важливі такі компоненти:
- Імена початкових об’єктів
- Імена кінцевих об’єктів
- Тип співвідношення між об’єктами
Розглянемо запитальні зв’язки з таблиці запитальних зв’язків і перетворимо їх у структурні за правилами перетворення.
Запит 1
Запит 2
Запит 3
Таблиці структурних зв’язків
Побудова граф-схеми та перевірка коректності інфологічної моделі
Розглянемо дану модель, щоб переконатись що вона є коректною. Всі об’єкти предметної області, що беруть участь у розв’язуванні задачі, включені в граф-схему.
Кожен з цих об’єктів не повторюється. Існує шлях переміщення по граф-схемі для того, щоб задовільнити кожен створений запит. В цьому шляху немає тупиків та циклів.
Граф-схема не є надлишковою: не має надлишкових структурних зв’язків і об’єктів, що не потрібні у предметній області.
Користувач може здійснювати наступні запити:
Запит на пошук конкретного пацієнта по прізвищу:
Головна форма Пошук пацієнта
Запит на пошук інформації про пацієнта для додавання результатів аналізів:
Головна форма Результати аналізів Знайти (перед тим у відповідному полі вказати прізвище пацієнта)
Запит на пошук результатів аналізів по заданому прізвищу:
Головна форма Пошук результатів Вид обстеження
Запит на пошук лікаря по заданому прізвищу:
Головна форма Пошук лікаря
Запит на пошук всіх пацієнтів, яких направив на обстеження певний лікар (прізвище лікаря задає користувач), вказуючи діапазон часу:
Головна форма Успішність лікарів
Запит на пошук видів діагностики:
Головна форма Діагностичні обстеження
Запит на пошук видів лабораторних обстежень:
Головна форма Лабораторні обстеження
Запит на пошук апаратури, яка є в наявності у даному центрі:
Головна форма Апаратура
Окрім того, користувач має можливість створювати звіти для видачі результатів аналізів.
Отже, ми показали, що:
- Всі структурні зв’язки враховані.
- Всі запити виконуються.
- База даних знаходиться в 3 нормальній формі.
Обґрунтування вибору СУБД
Вибір СУБД впливає на основні показники розробки. СУБД є найважливішим компонентом інформаційної системи. Вибір СУБД впливає на такі параметри системи:
- користувальницький інтерфейс;
- ефективність функціонування;
- вартість розробки додатка;
- вартість експлуатації;
- адаптованість системи.
У своїй роботі я використовую Visual FoxPro, оскільки він дозволяє:
- інтерфейс для користувача робиться неважкий та задовольняє більшість потреб;
- використовувати меню;
- використовувати форми та інші візуальні компоненти;
- створювати власні класи та компоненти;
- використовувати ООП;
- формувати зручні звіти;
- використовувати SQL-запити.
SQL-запити, значно полегшують виконання та програмування потрібних запитів. Також Visual FoxPro підтримує можливість легкого підключення зовнішніх баз даних та візуальне зв’язування баз даних між собою, що прискорює процес написання програми.
Розглянемо також для порівняння деякі інші СУБД з їх перевагами та недоліками.
Microsoft Access
Переваги:
Access пропонує користувачеві
Недоліки:
- не можна створити eхе-файл;
- складне створення меню;
- необхідність знання VBA для створення крупних проектів.
- незручність розробки дизайну форм.
MS SQL Server
На відміну від перелічених вище СУБД (Access, FoxPro, Paradox), які є „настольними” СУБД, MS SQL Server є клієнт-серверною СУБД. Це пропонує високий рівень захисту даних. Розглянемо переваги та недоліки даної СУБД.
Переваги:
- висока ступінь захисту даних;
- потужні засоби для обробки даних;
- висока продуктивність;
- широкий спектр можливостей для роботи у мережі;
- потужний механізм реплікацій.
Недоліки:
- складний при вивченні;
- низька швидкість розробки на відміну від „настільних” СУБД;
- складний при адмініструванні;
- відсутня можливість робити усе в одному, тобто потрібно окремо розробляти базу даних, а потім окремо писати інтерфейс для роботи із нею, при чому сторонніми засобами;
- висока вартість ліцензії на використання;
Безпека та таємність системи
Безпека – це захист даних від неправильних змін, видалення, руйнування й інших випадків перекручування даних, що приводить до повного чи часткового порушення цілісності даних і втрати працездатності системи.
Захист даних (таємність) – розмежування інформації з рівнів доступу і запобігання несанкціонованого доступу до записів файлів для виконання якихось дій.
Для реалізації безпеки та таємності в моїй програмі я використовую різні рівні доступу до інформації за допомогою системи паролів. Щоб лікар зміг потрапити до системи, йому необхідно правильно ввести пароль. Всі інші користувачі можуть зайти, не вводячи пароль, але не матимуть можливості користуватися усіма можливостями програми.
.
Паролі користувачів
Ім’я поля |
Тип |
Розмір |
Пояснення |
Login |
Character |
50 |
Містить ім’я користувача |
Password |
Character |
50 |
Містить пароль користувача |
Для захисту від того, що користувач може ввести неправильну інформацію, я роблю перевірки на коректність. Одним зі шляхів підвищення безпеки є не пряме введення даних, а вибір їх зі списку можливих, які перед цим були перевірені на коректність.
Забезпечення основних характеристик систем баз даних
В розробленому програмному середовищі були забезпечені основні характеристики систем баз даних. На етапі проектування була виконана нормалізація об’єктів, виявлених у діалозі з замовником. Нормалізація була проведена з введенням даних, близьких до реальних. Нормалізація до другої і третьої нормальної форми дозволила мінімізувати надлишковість по деяким полям. Крім того, проведена декомпозиція допомогла уникнути аномалій додавання і оновлення.
Для забезпечення ефективного пошуку даних ключові (індексні) поля у таблицях мають цілий тип, що підвищує швидкість виконання запитів. При введенні даних, необхідних для виконання запитів та модифікації даних виконується контроль за типом і за значенням.
В розробленій програмі була також забезпечена таємність та секретність.
Отже, при проектуванні були забезпечені наступні вимоги та характеристики систем баз даних:
- Ефективний пошук даних (програмою та СУБД);
- Цілістність даних;
- Ефективне виконання запитів;
- Розмеження доступу на лікаря та персонал (безпека та таємність);
- Формування зручних звітів для лікаря та персонала;
- Настройка інтерфейсу користувачем
Реалізація систем баз даних
Опис програмного забезпечення
Дана програма розроблена з використанням СУБД Visual FoxPro 9.0.
Пункти меню:
- Новая карта – добавить нового пациента;
- Успеваемость врачей;
- Поиск доктора;
- Лабораторные исследования;
- Диагностические исследования;
- Поиск готових результатов;
- Результаты анализов;
- Апаратура;
При натисканні кнопок на формі виконуються вищезазначені дії
Структурна схема програми
Розробка інтерфейсу
Для входу в систему користувач будь-якого рівня повинен ввести пароль. Лиже після цього користувачеві стають доступними функції системи.
Опишемо використання основних опцій користувачем.
Рис. 1. Початкове діалогове вікно програми Рис.2. Щоб потрапити до системи та мати повний доступ необхідно ввести пароль
Рис. 3. Дії, які може здійснювати лікар, зайшовши під паролем
Рис. 4. Дії, які може здійснювати персонал центру (для цих дій не треба вводити пароль)
Призначення процедур та функцій
В ході розв’язання задачі був створений проект, який містив наступні форми:
- add_karta – додати нового пацієнта;
- begin – початкове діалогове вікно;
- diagnose – список діагностичних досліджень;
- doctors – список лікарів, з якими працює даний центр;
- laborator – список лабораторних досліджень;
- main_doc – форма, яка з¢являється при вході лікарів;
- main_per – форма, яка з¢являється при вході іншого персоналу;
- parol – форма, де лікарю необхідно ввести пароль, щоб потрапити до системи;
- patient – список пацієнтів, які ще не отримали результати аналізів;
- poisk_result – пошук результатів аналізів по прізвищу пацієнта;
- vup_add_karta – оформлення видачі результатів аналізу;
- zapros_na_pat – успішність лікарів;
- zapros_na_vup_pat – предаставлення результатів аналізів пацієнту.
Застосування мови SQL для створення запитів
Запит на пошук результатів аналізів по заданому прізвищу:
CLOSE ALL tables
USE выписанные_пац IN A
INDEX on sh_karta TO index1
SCAN FOR выписанные_пац.surname = ALLTRIM(thisform.edit1.text)
tmp = выписанные_пац.sh_karta
*STORE tmp TO int
USE obzh_an_blood IN B
SELECT B
index on sh_karta to index2
SELECT A
set RELATION to sh_karta into B
SET SKIP TO B
GO bottom
SCAN FOR b.sh_karta = tmp
thisform.edit2.Value = b.bazofilu
thisform.edit3.Value = b.eozinofilu
thisform.edit4.Value = b.eritrozitu
thisform.edit5.Value = b.gematokrit
thisform.edit6.Value = b.gemoglabin
thisform.edit7.Value = b.kolvo_tromb
thisform.edit8.Value = b.leykozitu
thisform.edit9.Value = b.limfocitu
thisform.edit10.Value = b.monocitu
thisform.edit11.Value = b.neytrofilu
thisform.edit12.Value = b.palochko_yadernuy_neytrofilu
thisform.edit13.Value = b.rdw
thisform.edit26.Value = STR(b.sh_karta)
ENDSCAN
ENDSCAN
SELECT a
USE
SELECT b
USE
Запит на пошук лікаря по заданому прізвищу:
SELECT doctors.doc_surname as Фамилия, doctors.telefon as Телефон,;
hoapitals.hospital;
FROM ;
data1!doctors ;
INNER JOIN data1!hoapitals ;
ON doctors.sh_hosp = hoapitals.sh_hosp ;
WHERE doctors.doc_surname = thisform.edit1.Text
Створення та використання класів, тригерів
Для створення класу необхідно ввести команду:CREATE CLASS
З’явиться наступне вікно: