Курсовые работы / ПРИС КП_И_8
.pdfТаблица 2.3.1 – Результаты количественного анализа модели
|
Номер уровня |
|
|
|
|
|
эл.ф |
|
|
|
|
|
|||||
|
|
|
б |
эл.ф |
ф |
|
|
|
|
|
|
|
|
|
|
|
|
1 |
(А0) |
4 |
1,5 |
3 |
1 |
|
3 |
|
2 |
(А1) |
1,5 |
1 |
4 |
0,67 |
|
0,33 |
|
2 |
(А2) |
1,5 |
1,67 |
1 |
0,67 |
|
0,33 |
|
2 |
(А3) |
1,5 |
1,6 |
2 |
1 |
|
0,5 |
|
3 |
(А11) |
1,3 |
0,5 |
3 |
2,25 |
|
0,75 |
|
3 |
(А21) |
1,3 |
0,5 |
4 |
3 |
|
1 |
|
3 |
(А31) |
1 |
0 |
3 |
3 |
|
1 |
|
3 |
(А34) |
1 |
0,6 |
5 |
2,5 |
|
0,83 |
|
Коэффициент сбалансированности находится в пределах допустимых значений, следовательно, можно сделать вывод, что построенная модель обладает сбалансированностью соотношения входных и выходных стрелок.
Кроме того коэффициент сбалансированности находится в пределах от 0 до
1,67.
Коэффициент применения элементарных функций показывает, что могут быть более детально рассмотрены уровни А1 и А2. Однако на данных уровнях содержится ряд работ, которые для рассматриваемого узкоспециализированного бизнес-процесса не являются необходимыми для дальнейшей детализации. Следовательно, можно делать вывод, что построенная функциональная модель достаточно декомпозирована.
Вывод: таким образом, в ходе лабораторной работы была построена модель бизнес-процесса учета продаж и технического обслуживания газобаллонного оборудования. В результате построенная модель сбалансирована, коэффициент уровня имеет тенденцию снижения, а также модель достаточно декомпозирована.
22
2.4 Модель данных учета продаж газобаллонного оборудования для автотранспортных средств
Диаграмма сущность-связь является самым высоким уровнем в модели данных и определяет набор сущностей и атрибутов проектируемой системы.
Цель разработки – формирование общего взгляда на систему для ее дальнейшей детализации.
Для построения модели нужно четко разграничить и выделить сущности
(объекты) системы. В разрабатываемой ИС таковыми являются следующие:
Организация, Информация о ГБО, Автомобили, Прайс, Клиенты, Машины с ГБО, Тех. Осмотр.
Так как каждый объем модели имеет свои характеристики, то можно выделить следующие атрибуты для определенных объектов:
-Организация: Название, ИНН, ОГРН, Адрес, Телефон
-Информация о ГБО: Наименование, Производитель, Объем баллонов,
Поколение;
-Автомобили: Марка, Модель ГБО, Стоимость обслуживания;
-Прайс: Марка авто, Количество цилиндров, Объем баллона, Цена установки;
-Клиенты: Авто клиента, ФИО, Дата, Сумма, Оплата;
-Машины с ГБО: Марка авто, Год выпуска, Гос. Номер, Владелец, Дата
учета;
-Тех. Осмотр: Авто, Клиент, Дата осмотра, Осмотр, Стоимость.
Далее необходимо установить логические взаимосвязи между объектами.
В данной модели можно выделить следующие взаимосвязи между сущностями,
представленные на рисунке 2.4.1.
23
|
|
Обращается |
|
Содержит |
||
|
|
|
Организация |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Клиенты |
|
|
|
Инфо о ГБО |
||
|
|
|
|
|
|
|
Регулирует |
|
Осуществляет |
|
Обслуживает |
|
Оценивает |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Прайс |
|
Тех. осмотр |
|
Машины с |
|
Автомобили |
||||
|
|
|
ГБО |
|
|||||||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 2.4.1 - Диаграмма ERD
Модель данных, основанная на ключах, отражает структуру данных системы, в которую включены все сущности и атрибуты, в том числе ключевые. Целью разработки модели является детализация модели сущность-
связь.
Сначала необходимо выделить группы атрибутов, которые потенциально могут стать первичным ключом. Для этого каждой сущности присвоим новый атрибут – идентифицирующий номер, который и будет выступать первичным
ключом.
Следовательно, можно представить следующую таблицу атрибутов –
таблица 2.4.1.
Таблица 2.4.1 – Типы атрибутов
Атрибут |
|
Тип |
ID |
|
number |
Название |
|
string |
ИНН |
|
integer |
ОГРН |
|
integer |
Адрес |
|
string |
Телефон |
|
integer |
Наименование |
|
string |
Производитель |
|
string |
Объем баллонов |
|
integer |
Поколение |
|
integer |
Марка авто |
|
string |
Модель ГБО |
|
belongs_to |
|
24 |
Продолжение таблицы 2.4.1 – Типы атрибутов
Стоимость обслуживания |
float |
Количество цилиндров |
integer |
Объем баллона |
belongs_to |
Цена установки |
float |
ФИО |
string |
Дата |
date |
Сумма |
belongs_to |
Оплата |
boolean |
Год выпуска |
integer |
Гос. Номер |
string |
Владелец |
belongs_to |
Дата учета |
date |
Исходя из распределения атрибутов и их типов, получим новую диаграмму, где все ключевые атрибуты будут находиться над горизонтальной чертой внутри рамки, изображающей сущность (рисунок 2.4.2).
|
|
Клиенты |
|
|
|
Организация |
|
Инфо ГБО |
||||||||
|
|
z_id |
|
|
|
|
o_id |
|
|
|
|
igbo_id |
|
|
||
|
|
Авто клиента |
|
|
|
|
Название |
|
|
|
|
Наименование |
|
|
||
|
|
ФИО |
|
Обращается |
|
ИНН |
|
|
Содержит |
|
Производитель |
|
|
|||
|
|
Дата |
|
|
ОГРН |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
Объем баллонов |
|
|
|||
|
|
Сумма |
|
|
|
|
Адрес |
|
|
|
|
Поколение |
|
|
||
|
|
Оплата |
|
|
|
|
Телефон |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Регулирует |
Осуществляет |
|
|
Обслуживает |
|
Оценивает |
||||||||||
|
Прайс |
Тех. осмотр |
|
Машины |
с ГБО |
|
Автомобили |
|
||||||||
|
p_id |
|
|
to_id |
|
|
|
mgbo_id |
|
|
avto_id |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Марка авто |
|
|
Авто |
|
|
|
Марка авто |
|
Марка |
|||||||
Кол-во цилиндров |
|
|
Клиент |
|
|
|
Год выпуска |
|
Модель ГБО |
|||||||
Объем баллона |
|
|
Дата |
|
|
|
Гос. Номер |
|
Стоимость обслуживания |
|||||||
Цена установки |
|
|
Осмотр |
|
|
|
Владелец |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
Стоимость |
|
|
|
Дата |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 2.4.2 - Модель данных, основанная на ключах
Нормализуем полученную модель данных до третьей нормальной формы.
Для приведения в первую нормальную форму необходимо выполнить условие,
при котором все атрибуты содержат атомарные значения.
Например, сущность «Клиенты» - один клиент может иметь сразу
25
несколько номеров телефонов. Такие отклонения наблюдаются и в ряде других сущностей. Проверим соответствие второй нормальной форме. Все не ключевые атрибуты полностью должны зависеть от первичного ключа. Данное условие выполняется для всех сущностей; следовательно, можно сделать вывод о том, что она находится во второй нормальной форме.
Для приведения модели к третьей нормальной форме необходимо обеспечить отсутствие транзитивных зависимостей не ключевых атрибутов.
Такая зависимость не наблюдается, так как ключевыми атрибутами выступают идентифицирующие номера у каждой сущности и они не являются составными.
Таким образом, получим модель в третьей нормальной форме, так как других транзитивных зависимостей не ключевых атрибутов нет (рисунок 2.4.3).
|
|
|
|
|
Клиенты |
|
|
|
|
|
|
Организация |
|
Инфо ГБО |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
z_id |
|
|
|
|
|
|
|
|
o_id |
|
|
|
|
|
|
igbo_id |
|
|
||
|
|
|
Имеет |
Авто клиента |
|
Обращается |
|
Название |
|
|
|
|
|
Наименование |
|
|
|||||||||
|
tk_id |
|
|
|
Содержит |
|
|
||||||||||||||||||
|
ФИО |
|
|
ИНН |
|
Производитель |
|
|
|||||||||||||||||
|
Номер |
|
Дата |
|
|
|
|
|
|
|
ОГРН |
|
|
|
|
|
Объем баллонов |
|
|
||||||
|
|
|
|
|
Сумма |
|
|
|
|
|
|
|
Адрес |
|
|
|
|
|
Поколение |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
Оплата |
|
|
|
|
|
|
|
Телефон |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Телефон |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
организации |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
t_id1 |
|
|
|
Имеет |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
Номер |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
Регулирует |
|
|
Осуществляет |
|
|
|
|
|
Обслуживает |
Оценивает |
||||||||||||||
|
|
|
|
|
Тех. осмотр |
|
|
|
|
|
|
Машины с |
|
|
|
|
|
||||||||
|
|
Прайс |
|
|
|
|
|
|
|
ГБО |
|
|
|
|
Автомобили |
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
p_id |
|
|
|
|
to_id |
|
|
|
|
|
|
|
mgbo_id |
|
|
|
avto_id |
||||||
|
Марка авто |
|
|
Авто |
|
|
|
|
|
|
Марка авто |
|
|
|
Марка |
||||||||||
|
Кол-во цилиндров |
|
|
Клиент |
|
|
|
|
|
|
Год выпуска |
|
|
Модель ГБО |
|||||||||||
|
Объем баллона |
|
|
Дата |
|
|
|
|
|
|
Гос. Номер |
|
|
Стоимость обслуживания |
|||||||||||
|
Цена установки |
|
|
Осмотр |
|
|
|
|
|
|
Владелец |
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
Стоимость |
|
|
|
|
|
|
Дата |
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 2.4.3 - ER-диаграмма в третьей нормальной форме
Далее переходим к построению физической модели. Для построения физической модели необходимо скорректировать типы и размеры полей. А
26
именно ввести правила валидации колонок, определяющие списки допустимых значений и значения по умолчанию (таблица 2.4.2).
Таблица 2.4.2 - Свойства колонок таблиц физической модели
Колонка |
Тип |
Размер |
Правило валидации |
ID |
number |
|
|
Название |
string |
50 |
|
ИНН |
integer |
|
|
ОГРН |
integer |
|
|
Адрес |
string |
100 |
|
Телефон |
integer |
|
|
Наименование |
string |
|
|
Производитель |
string |
100 |
|
Объем баллонов |
integer |
|
>5 |
Поколение |
integer |
|
>2 |
Марка авто |
string |
100 |
|
Модель ГБО |
belongs_to |
|
|
Стоимость обслуживания |
float |
|
|
Количество цилиндров |
integer |
|
>4 |
Объем баллона |
belongs_to |
|
|
Цена установки |
float |
|
|
ФИО |
string |
100 |
|
Дата |
date |
10 |
|
Сумма |
belongs_to |
|
|
Оплата |
boolean |
|
|
Год выпуска |
integer |
|
>1990 |
Гос. Номер |
string |
|
|
Владелец |
belongs_to |
|
|
Дата учета |
date |
10 |
|
Проделав все вышеописанные действия, мы получили модель, готовую для помещения в СУБД (рисунок 2.4.4).
Таким образом, в ходе лабораторной работы была построена логическая модель информационной системы по автоматизации процесса продажи газобаллонного оборудования для автотранспортных средств, а также была построена ее физическая модель, рассчитанная под конкретную СУБД.
27
|
|
|
|
|
|
Кленты |
|
|
|
Организация |
Инфо ГБО |
|||||||||||||
Телефон клиента |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
Z_ID (FK) |
|
|
|
|
|
|
|
|
|
|
IGBO_ID (FK) |
||||||||||
|
|
|
|
|
|
|
|
|
O_ID |
|
|
|
||||||||||||
TK_ID (O) (FK) |
|
Имеет |
O_ID |
|
|
|
|
|
|
O_ID |
||||||||||||||
|
|
|
|
|
|
|
|
Содержит |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
Z_ID |
|
|
|
Авто клиента (TEXT) Обращается |
Название (TEXT50) |
Наименование (TEXT) |
||||||||||||||||||
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|||||||||||||||||||
O_ID (FK) |
|
|
|
|
|
|
||||||||||||||||||
|
|
|
ИНН (INTEGER15) |
|
|
|
||||||||||||||||||
|
|
|
|
|
|
ФИО (TEXT100) |
|
|
|
ОГРН (INTEGER15) |
|
|
|
Производитель (TEXT) |
||||||||||
Номер (INTEGER10) |
|
|
|
Дата (DATETIME10) |
|
|
|
|
|
|
|
|
|
Объем баллонов (INTEGER) |
||||||||||
|
|
|
|
|
|
|
|
Адрес (TEXT100) |
|
|
|
|||||||||||||
|
|
|
Сумма (INTEGER) |
|
|
|
|
|
|
Поколение (INTEGER) |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
Телефон (INTEGER) |
|
|
|
||||||||||||
|
|
|
|
|
|
Оплата (TEXT) |
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
Телефон организации |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
T_ID1 (FK) |
Имеет |
|
|
|
Обслуживает |
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
O_ID |
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
Регулирует |
Номер (INTEGER10) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Оценивает |
||
|
|
|
|
|
|
|
Осуществляет |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
Машины с ГБО |
|
|
|
|
|
Автомобили |
||||||||||
|
Прайс |
|
|
|
|
|
Тех. осмотр |
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
P_ID (FK) |
|
|
|
|
TO_ID (FK) |
|
|
|
|
MGBO_ID (FK) |
|
O_ID |
|||||||||||
|
|
|
|
|
|
|
|
|
O_ID |
|
|
|
||||||||||||
|
|
|
|
|
|
|
O_ID |
|
|
|
|
|
Марка (TEXT) |
|||||||||||
|
Марка авто (TEXT) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Марка авто (TEXT) |
|
Модель ГБО (TEXT) |
||||||||
|
Кол-во цилиндров (INTEGER) |
|
Авто (TEXT) |
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
Год выпуска (INTEGER1990) |
|
Стоимость обслуживания (INTEGER) |
||||||||||||||||
|
Объем баллона (INTEGER) |
|
Клиент (TEXT) |
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
Гос. номер (TEXT) |
|
|
|
|||||||||||||||
|
Цена установки (INTEGER) |
|
Дата (DATETIME10) |
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
Владелец (TEXT) |
|
|
|
|||||||||||||||
|
O_ID (O) |
|
|
|
|
Осмотр (TEXT) |
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
Дата (DATETIME10) |
|
|
|
||||||||||||
|
|
|
|
|
|
|
Стоимость (INTEGER) |
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 2.4.4 - Физическая модель
Выводы по второму разделу
Таким образом, в результате выполнения второго раздела курсового проекта был проведен анализ предметной области, а именно проанализированы основные бизнес-процессы, их информационной обеспечение и формы первичных и выходных документов. Также были выявлены основные категории пользователей, которым необходима разрабатываемая система.
На основе проведенного анализа предметной области было определено основное назначение системы – повышение эффективности работы отдела продаж. Также была определена цель и задачи разрабатываемой системы.
После чего была определена структура и необходимый функционал информационной системы.
Следовательно, функциональная модель для автоматизируемого бизнес-
процесса была построена по стандарту IDEF0. Модель данных, которая отражает структуру хранимой информации была построена в логической и физической форме. Для построения логической модели использовался стандарт
28
IDEF1.X, физическая модель была построена и представлена диаграммой классов, так как данная модель должна отражать конкретную СУБД.
Таким образом, в разделе был проведен анализ предметной области и бизнес-процессов, на основе которого было проведено проектирование информационной системы по автоматизации отдела продаж в организации,
занимающейся продажей и обслуживанием газобаллонного оборудования.
29
3 РАЗРАБОТКА И ТЕСТИРОВАНИЕ ИНФОРМАЦИОННОЙ СИСТЕМЫ ДЛЯ АВТОМАТИЗАЦИИ УЧЕТА ПРОДАЖ ГАЗОБАЛОННОГО ОБОРУДОВАНИЯ ДЛЯ АВТОТРАНСПОРТНЫХ СРЕДСТВ
3.1 Описание таблиц базы данных
База данных системы была разработанная в Web-Фреймворке «Ruby on Rails».
Для работоспособности системы было создано 6 справочников, которые и содержат информацию в таблицах.
Справочник «Информация о ГБО» служит для хранения информации об имеющемся у организации оборудовании, которое они могут устанавливать и обслуживать.
Справочник «Прайс-лист» содержит переменно-изменяющуюся информацию о ценах, как на установку/продажу газобаллонного оборудования,
так и на его обслуживание для конкретной марки автомобиля.
Справочник «Стоимость обслуживания для отдельных марок» создан для того, чтобы разграничить все автотранспортные средства в соответствии с их маркой, годом выпуска. То есть цена для определенной модели автомобиля разная, зависит от года выпуска и других характеристик.
Справочник «Клиентская база» хранит в себе информацию о всех клиентах организации, как бывших, так и будущих. Так же тут ведется учет автомобилей, которые нуждаются в техническом обслуживании.
Справочник «База авто с установленными системами ГБО» хранит информацию обо всех клиентах, которым было установлено оборудование не только в нашей организации, но и в других.
Справочник «База авто, проходящих ТО» служит для текущего контроля автомобилей, которым необходимо срочно, либо в ближайшее время пройти техническое обслуживание своего оборудования.
30
Более подробная структура таблиц базы данных и их свойства при миграции представлены в приложении Б.
3.2 Дерево программных модулей системы
Система «Ruby on Rails» содержит множество видов модулей [5].
Подключение того или иного происходит при помощи команды include. Как таковых особых названий они не имеют, но по действиям их можно разделить так: модуль обычного приложения, модуль управляемого приложения, модуль внешнего соединения, модуль сеанса, модуль команды, общие модули, модули форм, модули объектов.
Дерево программных модулей разработанной информационной системы представлено на рисунке 3.1.
|
Действие, перед |
|
Разграничение |
началом работы |
Автоматизация |
прав доступа |
|
отдела продаж |
Изменение данных
Ввод и хранение информации
Хранение
Информация о ГБО
Infos_controller.rb
Хранение
Прайс-лист
Prices_controller.rb
Хранение
Клиентская база
Bd_klientis_controll er.rb
Стоимость |
Хранение |
|
обслуживания для |
Mashini_gb_os_con |
|
отдельных марок |
||
troller.rb |
||
|
База с |
Хранение |
|
установленными |
Ustanov_gbo_contr |
|
ГБО |
||
oller.rb |
||
|
Хранение
База авто с ТО
Avtos_controller.rb
Обработка
информации
|
Авто с ТО в месяце |
Обработка |
|
To_mecyac_controll |
|
|
|
|
данныхОбработка изменениипри |
|
er.rb |
Отчет |
Обработка |
|
|
установленных ГБО |
Ustaniv1_gbo_contr |
|
для клиентов |
|
|
oller.rb |
|
|
|
|
|
Причины |
Обработка |
|
неисправностей |
Neispravnost_contr |
|
авто на ТО |
|
|
oller.rb |
|
|
|
|
|
Форма |
Обработка |
|
|
|
|
пользователя |
Home_page_control |
|
|
ler.rb |
Рисунок 3.1 - Дерево программных модулей
31