Диплом: Разработка системы оптимизации управления запасами на примере ООО «Авиагамма»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
26
ГЛАВА 2. ПРОЕКТИРОВАНИЕ ИНФОРМАЦИОННОЙ
СИСТЕМЫ
2.1. Выбор средств разработки
2.1.1. Выбор среды и языка программирования
Delphi XE5 является одной из мощнейших сред программирования, что
позволяет быстро создавать программы под Microsoft Windows, Mac OS,
Android, IOS, с помощью языка программирования высокого уровня Object
Pascal. Интегрированная среда разработки Delphi XE5 включает в себя
встроенный отладчик, подсветку синтаксиса и позволяет обеспечивать
навигацию по исходному коду с системой закладок[22].
Delphi XE5 включает в себя огромную библиотеку визуальных
компонентов VCL и позволяет разрабатывать приложения баз данных с
использованием этих компонентов, а также подключать компоненты
сторонних разработчиков и разрабатывать свои собственные. Delphi XE5
также включает в себя компилятор командной строки.
Delphi XE5 позволяет разрабатывать приложения на основе BDE
(Borland Database Engine), с поддержкой форматов локальных баз данных DBF
и Paradox, а также включает драйвер SQLink для серверов баз данных
InterBase, Oracle, MS SQL и MySQL.
Delphi XE5 также позволяет создавать сервера приложений на базе
Remote Data Module и технологии MIDAS/DataSnap, и включает лицензию на
их распространение.
Обозначим основные преимущества семейства Delphi:
поддержка языков программирования для Win32 (Delphi и C/C++)
и для .NET (Delphi и C#) в единой среде разработки, что позволяет упростить
сопровождение и создание новых приложений Win32 и более легко освоить
технологии .NET;
27
используемая платформа ECO III обеспечивает создание надежных
корпоративных приложений (object relational mapping, transparent object
persistence, поддержка исполняемых диаграмм состояний);
возможность как для разработчиков традиционных приложений под
Windows, так и для разработчиков, использующих Java, разрабатывать
приложения .NET без отказа от используемого инструментария, с
сохранением навыков и с аналогичными концепциями программирования;
обновленная библиотека визуальных компонент (VCL) позволяет
ускорить и упростить разработку графического пользовательского интерфейса
(GUI), автоматически располагая компоненты в соответствии с
настраиваемыми правилами, для соблюдения целостности GUI или его
соответствия корпоративным стандартам;
новая система шаблонов кода и другие нововведения среды
разработки качественно улучшают работу с исходными текстами и повышают
производительность разработки[28].
Именно поэтому было решено выбрать в качестве среды
программирования Delphi XE5. Данная среда позволит быстро создать
информационную систему, что будет взаимодействовать с базой данных.
2.1.2. Выбор СУБД
Система управления базами данных (СУБД) MySQL - разработка
шведской компании MySQL AB. СУБД MySQL является программным
обеспечением с открытым исходным кодом, распространяемым по лицензии
GNU (GPL) и коммерческой лицензии для ситуаций, которые не подпадают
под действие лицензии GPL. MySQL поддерживает реляционную модель
данных, то есть представляет собой реляционную СУБД[1].
Рассмотрим основные преимущества СУБД MySQL:
высокое качество - MySQL характеризуется устойчивой работой;
28
наряду с Oracle, MySQL считается одной из самых быстрых СУБД в
мире;
открытый код доступен для просмотра и модернизации, что
позволяет постоянно улучшать программный продукт;
СУБД MySQL, разработана с использованием языков C/C++.
Тестирование СУБД производилось для многих платформ, среди которых
Windows, Linux, FreeBSD, Mac OSX, OS/2, Solaris и др.;
MySQL поддерживает API (Application Programming Interface) для
PHP, С, C++, Eiffel, Java, Perl, Python, Ruby и т.д. MySQL можно использовать
как для построения Web-страниц с использованием Perl, PHP и Java, так и для
работы с приложениями, которые созданы в среде Delphi, Builder C++ или
платформы NET;
СУБД MySQL даёт возможность работать с широким выбором типов
таблиц, в том числе и сторонних разработчиков. Позволяет создавать
оптимальную для решаемой задачи производительность и функциональность;
локализация в MySQL выполнена корректно. У пользователей,
практически никогда, не возникают проблемы при работе с русским
текстом[2].
В версии MySQL 4.1 появились такие важные нововведения, как
полная поддержка вложенных запросов и поддержка транзакций. А в версии
MySQL 5.0 стали доступны следующие важные механизмы:
хранимые процедуры и функции, которые объединяют в себе цели
последовательности запросов;
триггеры, т.е. хранимые процедуры, привязанные к событию
изменения таблицы;
представление - выборки данных, которые можно представить как
полноценные реально существующие таблицы базы данных;
курсоры, позволяющие в цикле просмотреть каждую строку
результирующей таблицы запросов
29
информационная схема, т.е. набор представлений системной
таблицы, в которой хранится разнообразная внутренняя информация.
обработчики ошибок[4].
Именно поэтому было решено выбрать в качестве СУБД именно
MySQL, поскольку данная СУБД позволит создать надёжную, практичную и
функциональную систему.
2.2. Проектирование базы данных
2.2.1. Логическое проектирование
В процессе создания базы данных важнейшее значение имеет процесс
её проектирования. Создание концептуальной модели представляет собой
процесс моделирования смыслового наполнения базы данных.
Концептуальная модель состоит из трёх основных компонентов[15]:
I. Сущности. Это элементы реального мира, которые могут
существовать независимо. В данном случае сущностями являются:
«Контракты», «Фирмы», «Двигатели», «Заказы», «Должности», «Учет
запасов», «Сотрудники», «Пользователи».
II. Атрибуты. Они описывают сущность.
Сущности «Контракты» соответствуют следующие атрибуты:
ключ (уникальный номер);
фирма;
двигатель;
количество;
дата;
признак выполненности;
сотрудник.
Сущности «Фирмы» соответствуют следующие атрибуты:
ключ (уникальный номер);
30
название;
адрес;
телефон.
Сущности «Двигатели» соответствуют следующие атрибуты:
ключ (уникальный номер);
название;
информация;
стоимость;
масса;
мощность;
объем;
изображение.
Сущности «Заказы» соответствуют следующие атрибуты:
ключ (уникальный номер);
двигатель;
количество;
дата;
примечание;
признак выполненности;
сотрудник.
Сущности «Должности» соответствуют следующие атрибуты:
ключ (уникальный номер);
название.
Сущности «Учет запасов» соответствуют следующие атрибуты:
ключ (уникальный номер);
двигатель;
количество;
дата;
сотрудник.
31
Сущности «Сотрудники» соответствуют следующие атрибуты:
ключ (уникальный номер);
ФИО;
должность;
телефон;
Email.
Сущности «Пользователи» соответствуют следующие атрибуты:
ключ (уникальный номер);
логин;
пароль;
тип пользователя.
III. Связи. Связь представляет взаимодействие между
сущностями[19]. В данном случае имеем следующие связи:
связь между «Фирмы» и «Контракты» – «один ко многим»;
связь между «Контракты» и «Двигатели» – «один ко многим»;
связь между «Контракты» и «Сотрудники» – «один ко многим»;
связь между «Двигатели» и «Заказы» – «один ко многим»;
связь между «Двигатели» и «Учет запасов» – «один ко многим»;
связь между «Сотрудники» и «Заказы» – «один ко многим»;
связь между «Сотрудники» и «Должности» – «один ко многим»;
связь между «Сотрудники» и «Учет запасов» – «один ко многим».
Концептуальная информационная модель (ER диаграмма) предметной
области представлено на рисунке 7[20].
32
Рисунок 7 — ER диаграмма предметной области
2.2.2. Физическое проектирование
Физическая модель базы данных определяет способ размещения
данных в среде хранения и способы доступа к этим данным, которые
поддерживаются на физическом уровне[3].
Опишем структуру таблиц базы данных в таблице 1.
Таблица 1
Структура таблиц базы данных
Название поля
Длина поля
Доп. данные
contract
id
11
Ключевое поле
idfirm
11
idmotor
11
count
11
data
isdone
4
idstaff
11
idstaff
11
firm
id
11
Ключевое поле
name
50
address
150
33
Продолжение таблицы 1
phone
20
motor
id
11
Ключевое поле
title
100
info
price
mass
power
capacity
image
ordermotor
id
11
Ключевое поле
idmotor
11
count
11
data
comment
200
isdone
4
idstaff
11
post
id
11
Ключевое поле
title
100
sklad
id
11
Ключевое поле
idmotor
11
count
11
data
idstaff
11
staff
id
11
Ключевое поле
fio
100
idpost
11
phone
20
email
50
users
id
11
Ключевое поле
login
255
password
255
typeuser
11
34
На рисунке 8 представлена физическая схема данных базы данных.
Рисунок 8 — Физическая схема данных базы данных
Представим SQL код, который позволит создать указанную базу
данных в СУБД MySQL[5]:
CREATE TABLE `contract` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`idfirm` int(11) NOT NULL,
`idmotor` int(11) NOT NULL,
`count` int(11) NOT NULL,
`data` datetime NOT NULL,
`isdone` tinyint(4) NOT NULL,
`idstaff` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT
CHARSET=cp1251;
CREATE TABLE `firm` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
35
`address` varchar(150) NOT NULL,
`phone` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT
CHARSET=cp1251;
CREATE TABLE `motor` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(100) NOT NULL,
`info` text NOT NULL,
`price` float NOT NULL,
`mass` float NOT NULL,
`power` float NOT NULL,
`capacity` float NOT NULL,
`image` mediumblob NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT
CHARSET=cp1251;
CREATE TABLE `ordermotor` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`idmotor` int(11) NOT NULL,
`count` int(11) NOT NULL,
`data` datetime NOT NULL,
`comment` varchar(200) NOT NULL,
`isdone` tinyint(4) NOT NULL,
`idstaff` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT
CHARSET=cp1251;
CREATE TABLE `post` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT
CHARSET=cp1251;
CREATE TABLE `sklad` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`idmotor` int(11) NOT NULL,
`count` int(11) NOT NULL,
`data` datetime NOT NULL,
`idstaff` int(11) NOT NULL,

Смотрите также:

Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран
Work-life balance подход в управлении рабочим временем молодых сотрудников (на примере ООО «МГТ-сервис»)
Актуализация контента, отражающего концепцию «диалога культур», при освоении английского языка взрослыми обучающимися
Актуализация приемов инсценирования и драматизации в рамках интерактивной модели обучения английскому языку в старших классах
Актуальные подходы в построении внутреннего pr строительной компании (на примере ООО "Ренессанспроект")
Анализ деловой активности и экономической эффективности деятельности организации (на примере АО «СГ-Транс»)
Анализ деловой активности организации как инструмент повышения эффективности ее деятельности (на примере Косинского районного потребительского общества)