- •Содержание
- •Введение
- •1 Построение инфологической концептуальной модели
- •1.1 Анализ предметной области и выявление необходимого набора сущностей
- •1.2 Обоснование требуемого набора атрибутов для каждой сущности и выделение идентифицирующих атрибутов
- •1.3 Определение связей между объектами
- •1.4 Описание полученной модели на языке инфологического проектирования
- •2 Построение схемы реляционной бд
- •2.1 Построение набора необходимых отношений базы данных
- •2.2 Задание первичных и внешних ключей определенных отношений
- •2.3 Приведение отношений бд к третьей нормальной форме
- •2.4 Определение ограничений целостности для внешних ключей отношений и для отношений в целом
- •2.5 Графическое представление связей между внешними и первичными ключами
- •3 Создание спроектированной базы данных
- •4 Запись выражений, указанных в варианте задания типов запросов на языке sql
- •5 Выбор и обоснование средств разработки приложения
- •6 Реализация законченного приложения, работающего с созданной базой данных
- •6.1 Разработка и построение интерфейса главной и рабочих форм
- •6.2 Построение главного меню и кнопок панели инструментов
- •6.3 Выполнение программного кода в среде Microsoft Visual Studio
- •6.4 Тестирование и отладка
- •Заключение
- •Список использованных источников
- •Приложения
6.3 Выполнение программного кода в среде Microsoft Visual Studio
Опишем работу приложения с базой данных. Все необходимые интерфейсы для работы с базами данных находятся в классе DatabaseAgent. Подключение к базе данных начинается с формирования строки подключения и последующим созданием контекста на основе данной строки.
После подключения для осуществления запросов необходимо проверить достоверность базы данных, если проверка проходит успешно, то будут разблокированы возможности по работе с базой. Для этого используются методы: DatabaseExist() и событие ConnectAction.
Все запросы по работе с базой данных обращаются к контексту и строятся с помощью LINQ to Entity. В следствии чего упрощается построение запросов, вызов процедур и фильтрация результатов.
Результат выполненного запроса представляет собой последовательность IQueryable<T>, которую можно назначить в качестве источника данных для таблиц, и прочих элементов управления.
Функционал по работе с отчетами реализован в классе DocumentsManager, в котором представлены методы для создания трех видов отчета и печати документов.
Управление информационными сообщениями и уведомлениями происходит в классе MessagesManager, который содержит все основные тексты уведомления и методы по выводу информационных сообщений и сообщений об ошибках.
Все перечисления и неизменяемые наборы данных расположены в классе Enums.
6.4 Тестирование и отладка
Планом испытаний является проведение тестирования приложения. Для проверки работы приложения будут созданы разного рода ситуации. Тестирование приложения производилось многократно.
Результаты тестирования приведены в таблице 3.6.
Таблица 6.1 – Результаты тестирования
Описание теста |
Выполняемые действия |
Реакция программы |
Вывод |
Запуск программы |
Активирован файл программы |
Появилось окно программы |
Выполнено |
Поиск данных пациента |
Активирован соответствующий пункт меню. Введены данные пациента |
Выведен адрес пациента, дата посещения и диагноз. |
Выполнено |
Определение пациента, который чаще всех посещает врача |
Активирован соответствующий пункт меню. Выбран необходимый врач. |
Выведены данные пациента. |
Выполнено |
Определение врача пациента |
Активирован соответствующий пункт меню. Введены данные пациента. |
Выведены данные врача. |
Выполнено |
Поиск врачей определенной специализации |
Активирован соответствующий пункт меню. Выбрана необходимая специализация из списка. |
Выведен список врачей нужной специализации. |
Выполнено |
Продолжение таблицы 6.1
Описание теста |
Выполняемые действия |
Реакция программы |
Вывод |
Определение пациентов врача |
Активирован соответствующий пункт меню. Введены данные врача. |
Выведен список пациентов выбранного врача. |
Выполнено |
Поиск последних назначений врача пациенту |
Активирован соответствующий пункт меню. Введены данные пациента. |
Выведен список назначений от каждого врача. |
Выполнено |
Поиск врача по кабинету |
Активирован соответствующий пункт меню. Введен номер кабинета. |
Выведены данные врача. |
Выполнено |
Определение количества посещений пациента за прошедшие полгода |
Активирован соответствующий пункт меню. Введены данные пациента. |
Выведен список дат и общее количество посещений пациентом. |
Выполнено |
Определение количества пациентов, обслуженных каждым из врачей за прошедший месяц |
Активирован соответствующий пункт меню. |
Выведен список врачей с количеством обслуженных ими пациентов. |
Выполнено |
Выдача больничного листа пациенту |
Активирован соответствующий пункт меню. Введены данные пациента. |
Подготовлен для печати документ установленного образца. |
Выполнено |
Выдача справки больному |
Активирован соответствующий пункт меню. Введены данные пациента. |
Подготовлен для печати документ установленного образца. |
Выполнено |
Печать расписания работы врачей |
Активирован соответствующий пункт меню. |
Подготовлен документ для печати со список врачей и временем их работы. |
Выполнено |