Автор работы: Пользователь скрыл имя, 09 Ноября 2013 в 14:29, курсовая работа
Цель курсовой работы – разработка программного обеспечения для автоматизации салона видеопроката. Задачи:
Изучить теоретический материал, соответствующий тематике создаваемого программного продукта;
Проанализировать существующие аналоги разрабатываемого программного продукта;
Разработать структуру базы данных и графический пользовательский интерфейс программы;
Разработать систему отчетов;
Протестировать программный продукт.
ВВЕДЕНИЕ………………………………………………………………………..3
ГЛАВА I. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ АВТОМАТИЗИРОВАННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ ДЛЯ САЛОНА ВИДЕОПРОКАТА....................................................................................................................4
1.1. Сущность деятельности……………………………………………………..4
1.2. Анализ программ автоматизации……………………………………………5
1.3. Модель жизненного цикла программного обеспечения…………………...6
1.4. Выбор программного обеспечения для разработки АИС………………….8
1.5 Тестирование программного продукта…………………………………….10
ГЛАВА II. ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММЫ АВТОМАТИЗАЦИИ РАБОЧЕГО МЕСТА АДМИНИСТРАТОРА САЛОНА ВИДЕОПРОКАТА…………………………………………………………………………………12
2.1. Анализ требований заказчика к программе……………………………….12
2.2 Описание структуры БД…………………………………………………….13
2.3 Разработка интерфейса программы………………………………………...15
2.4 Разработка программного кода…………………………………................18
СПИСОК ЛИТЕРАТУРЫ……………………………………………………….22
1.5 Тестирование программного
Тестирование программного продукта— процесс исследования программного продукта (ПО) с целью получения информации о качестве продукта.
Виды тестирования
Модульное тестирование (юнит-тестирование) — тестируется минимально возможный для тестирования компонент, например, отдельный класс или функция. Часто модульное тестирование осуществляется разработчиками ПО.
Интеграционное тестирование — тестируются интерфейсы между компонентами, подсистемами. При наличии резерва времени на данной стадии тестирование ведётся итерационно, с постепенным подключением последующих подсистем.
Системное тестирование — тестируется интегрированная система на её соответствие требованиям.
Альфа-тестирование — имитация реальной работы с системой штатными разработчиками, либо реальная работа с системой потенциальными пользователями/заказчиком. Чаще всего альфа-тестирование проводится на ранней стадии разработки продукта, но в некоторых случаях может применяться для законченного продукта в качестве внутреннего приёмочного тестирования.
Иногда альфа-тестирование
выполняется под отладчиком
Бета-тестирование — в некоторых случаях выполняется распространение версии с ограничениями (по функциональности или времени работы) для некоторой группы лиц, с тем, чтобы убедиться, что продукт содержит достаточно мало ошибок. Иногда бета-тестирование выполняется для того, чтобы получить обратную связь о продукте от его будущих пользователей.
Часто для свободного/открытого ПО стадия альфа - тестирования, характеризует функциональное наполнение кода, а бета - тестирования — стадию исправления ошибок. При этом, как правило, на каждом этапе разработки промежуточные результаты работы доступны конечным пользователям.
ГЛАВА II. ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММЫ АВТОМАТИЗАЦИИ РАБОЧЕГО МЕСТА РГИСТРАТУРЫ ПОЛИКЛИНИКИ
2.1. Анализ требований заказчика к программе
Требования к данной программе в первую очередь определяются задачами, которые она должна выполнять и соответствовать техническим требованиям места, где программа будет использоваться.
В соответствии с техническим заданием были определены основные требования и методы реализации этих требований.
Основные требования к программе:
— анализ.
На этапе анализа были проведены:
Так же были выявлены требования к системным требованиям программы. Данная программа должна быть:
2.2 Описание структуры БД
В программе автоматизация салона регистатуры поликлиники используется база данных созданная в MS Access, состоящая из следующих таблиц:
Пациенты, в таблице хранятся все данные о пациентах, по которым можно его легко идентифицировать. Так же можно определить некоторые особенности этого пациента.
Наименование атрибута |
Тип данных |
Назначение |
ID |
счетчик |
Идентификатор пациента |
ФИО |
текстовый |
Фамилия, имя и отчество пациента |
Дата рождения |
Дата/время |
Дата рождения пациента |
Страховой полис |
текстовый |
Серия и номер страхового плиса |
Адрес |
Текстовый |
Адрес пациента |
Участок |
Числовой |
Участок к которому прикреплен пациент |
Врачи, в данной таблице хранятся данные о врачах необходимые для установления связи с ними.
Наименование атрибута |
Тип данных |
Назначение |
ID |
счетчик |
Идентификатор врача |
Фамилия |
текстовый |
Фамилия врача |
Имя |
текстовый |
Имя врача |
Отчество |
текстовый |
Отчество врача |
Специальность |
Текстовый |
Специальность врача |
Место работы |
Текстовый |
Отделение, в котором работает врач |
Кабинет |
Числовой |
Номер кабинета врача |
Расписание, таблица, в которой находятся сведения о расписании врачей.
Наименование атрибута |
Тип данных |
Назначение |
ID |
Числовой |
Идентификатор врача |
День |
Текстовый |
День недели приема |
Начало приема |
Время |
Начало приема |
Конец приема |
время |
Конец приема |
Носители, в данной таблице находятся данные необходимые для определение стоимость видеопроката.
Наименование атрибута |
Тип данных |
Назначение |
ID |
счетчик |
Идентификатор носителя |
Название |
текстовый |
Название носителя |
Цена |
числовой |
Цена за 1 день проката |
Приемы, таблица для хранения всех сведений о приемах, кто и когда и кем был принят .
Наименование атрибута |
Тип данных |
назначение |
ID |
счетчик |
Идентификатор приема |
Пациент |
текстовый |
Пациент, назначенный на прием |
Врач |
текстовый |
Принимающий врач |
Дата приема |
Дата |
Дата, когда приняли пациента |
Причина |
Текстовый |
Причина, по которой назначен прием |
статус |
Логический |
Принят/не принят |
Истории, таблица со сведениями о всех приемах и их результатов
Наименование атрибута |
Тип данных |
назначение |
ID |
счетчик |
Идентификатор истории |
Пациент |
текстовый |
Пациент, прошедший прием |
Врач |
текстовый |
Принимавший врач |
Дата приема |
Дата |
Дата, когда приняли пациента |
диагноз |
Текстовый |
Поставленный диагноз |
примечание |
Мемо |
Необходимые замечания |
Данные таблицы при взаимодействии друг с другом, структурируют данные для последующих отчетов.
Схему взаимодействия данных можно показать следующей ER-диаграммой:
В данной диаграмме видно, чтобы не загружать таблицу фильмов, хранилища вынесены в отдельную таблицу, в которой сразу фиксируется стоимость одного дня проката.
Так же показаны отношения с поставщиками, где сразу фиксируется какие фильмы поставил поставщик.
2.3 Разработка интерфейса
Пользовательский интерфейс соответствует стандартному Windows-приложению.
Каждая форма выполняет определенные функции: заполнение карточек пациентов, врачей, приемов и историй болезни, печать отчетов.
Главная форма программы выглядит так::
На этой форме вынесены ссылки на все необходимые для работы справочники, далее справочники будут показаны более подробно.
Справочник Доктора выглядит следующим образом
При нажатии на кнопки добавляются и удаляются сведения о специалистах клиники. Так же можно добавлять расписания с последующим его распечатыванием.
Одной из самых важных форм является форма фиксирования записи на прием, на этой форме необходимо выбрать пациента и специалиста, к которому вы хотите его записать на прием. Так же существует функция ближайшая дата, которая записывает пациента на самый ближайший день приема
.И в завершении форма приема пациентов, на ней показана очередь из еще не принятых пациентов, при нажатии клавиши «Принять», появляется меню в котором необходимо внести данные о приеме.
2.4 Разработка программного кода
Самыми выдающимися частями кода можно назвать: просмотр сведении о пациенте, запись на прием и печать отчета
Просмотр сведений
panel2.Visible:=true;
a:='пациент';
b:=adotable1.fieldbyname('
ADOQuery1.close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.text:='Select [Hystory].* from [Hystory] where [Hystory].'+a+'='+#39+b+#39;
ADOQuery1.open;
в данном алгоритме можно выявить следующие моменты:
Открывается панель на которой показаны сведения о диагнозах пациентов, на которой происходит выборка из таблицы пациентов
Запись на прием:
dayp:= adotable1.fieldbyname('день').
myDate :=date+1;
myDate := IncDay(myDate,-1);
day := LongDayNames[DayOfWeek(myDate)
if day=dayp then begin
d:=myDate;
label5.Caption:=datetostr(d);
end
else
for i:= 1 to 7 do
begin
myDate :=myDate+1;
myDate := IncDay(myDate,-1);
day := LongDayNames[DayOfWeek(myDate)
if day=dayp then d:=myDate;
if day=dayp then label5.Caption:=datetostr(
myDate :=myDate+1
begin
adotable2.Insert;
adotable2.FieldByName('врач').
adotable2.FieldByName('
adotable2.FieldByName('дата').
adotable2.FieldByName('принят'
adotable2.FieldByName('
if edit3.Text='' then showmessage('введите причину') else adotable2.Post;
end;
form5.Close;
end;
В данном алгоритме устанавливается связь между сущностями пациентов, врачей и их расписаний, заполняются данные, рассчитывается день приема при помощи функции ближайшая дата, которая выбирает ближайший день недели после приема.
Алгоритм печати:
AppProgID:='Word.Application';
ServerIsRunning:= False;
Result:= GetActiveObject(
if (Result=MK_E_UNAVAILABLE) then
App:= CreateOleObject(AppProgID)//
else
begin // с существующей копией сервера
App:=GetActiveOleObject(
ServerIsRunning:=true;
end;
App.Visible:=True;
name:=adotable1.fieldbyname('
app.Documents.Add();
Rng:= App.ActiveDocument.Paragraphs.
sel:=App.Selection;
sel.font.size:=14;
sel.font.bold:=true;
sel.TypeText('Пациент: '+ name+ ': история болезни');
Rng.InsertParagraphAfter;
Rng:= App.ActiveDocument.Paragraphs.
Rng.InsertParagraphAfter;
Rng.InsertAfter('врач, дата приема, диагноз, примечания');
Rng.InsertParagraphAfter;
sel.font.bold:=false;
n:=adoquery1.RecordCount;
adoquery1.First;
for i:= 1 to n do
begin
vr:=adoquery1.fieldbyname('
dia:=adoquery1.fieldbyname('
data:=adoquery1.fieldbyname('
prim:=adoquery1.fieldbyname('
Rng.InsertParagraphAfter;
Rng.InsertAfter(vr+','+data+',
adoquery1.Next;
end;
Печать организована посредством связи с MS Word, все данные экспортируются при связи с сервером, сама печать происходит средствами Word.
СПИСОК ЛИТЕРАТУРЫ
Информация о работе Разработка программы автоматизации регистратуры поликлиники