Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.
Процесс преобразования отношений базы данных к виду, отвечающему нормальным формам, называется нормализацией. Нормализация предназначена для приведения структуры БД к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации.
Первая нормальная форма (1 НФ) – Отношение находится в первой нормальной форме, если все его атрибуты имеют простые (атомарные) значения. Понятие атомарности определяется исходя из использования информационной системы.
Вторая нормальная форма (2 НФ) - Отношение находится во второй нормальной форме, если оно находится в 1 НФ и все его поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом. Если ключом является только один атрибут, то такое отношение уже находится во 2 НФ.
Третья нормальная форма (3 НФ) - Отношение находится в третьей нормальной форме, если оно находится во 2 НФ и ни одно из его не ключевых полей не зависит функционально от любого не ключевого поля.
Dolzhnost'(Id-post, Post_Title, workers)
1 НФ – все значения атомарные
2 НФ – все не ключевые атрибуты функционально полно зависят от ключа
3 НФ – отсутствуюттранзитивныезависимости
|
Zakazy(ID-order, ID-services,ID-client, service_price,Price)
1 НФ – все значения атомарные
2 НФ – ключ состоит только из одного атрибута ID-order
3 НФ – отсутствуюттранзитивныезависимости
Kliyenty(ID-clients, Full_name, The_name_of_the_office,physical_person, Entity)
1 НФ – все значения атомарные
2 НФ – ключ состоит только из одного атрибута ID-clients
3 НФ – отсутствуюттранзитивныезависимости
Sotrudniki (ID-worker, Full_name, Address, Phone, ID-post)
1 НФ – все значения атомарные
2 НФ – ключ состоит только из одного атрибута ID-worker
3 НФ – отсутствуюттранзитивныезависимости
Uslugi (ID-services, service_name,Deadline,Price, Note, Id-post)
1 НФ – все значения атомарные
2 НФ – ключ состоит только из одного атрибута ID-services
3 НФ – отсутствуют транзитивные зависимости
Все таблицы находятся в третьей нормальной форме, следовательно, база данных также находится в третьей нормальной форме.
2.4 Схема данных
Рисунок 2.2. Схема данных
Описание работы
Работать будем в MicrosoftVisualC#. Для начала создаем основу нашей работы. Это пустая форма Windows
Рисунок 3.1. Шаблоны VisualC#
Задаем ей имя, после нажимаем кнопку далее. Теперь перед нами появляется пустая форма. Здесь будем работать. Справа в разделе свойства, настраиваем размеры формы и ее вид. Открыв панель элементов перетащимLabel(Текстовое поле), и несколько Button(кнопки с элементами управления). После чего в свойствах даем каждой кнопке имя, настраиваем ее размер и размещаем на нашей форме. В Labelже в свойствах указываем название
.
Рисунок 3.2. Пример готовой формы
Получилось довольна милая форма, но пока она представляет собой только пустое поле с кнопками и текстом. Для упрощения работы создаем еще несколько форм для наших кнопок, дабы при нажатии нас переносило на нужную форму с нужной таблицей данных.
|
Рисунок 3.3. Созданные формы
Для того, что бы наши кнопочки(Button) не просто нажимались, а еще и работали нужно прописать программный код для каждой кнопки. Дважды кликаем на кнопку, открывается редактор кода, тут вписываем нужные нам свойства для каждой клавиши.
Рисунок 3.4. Программный код
После чего нажимаем F5(начать отладку),и наша программа запускается.
Рисунок 3.5 Отладка программы
Нажатие на клавишу «Заказы» переносит на новую форму.Это говорит о том, что все работает, проверяем остальные кнопки.
Рисунок 3.6 Новая форма
Так как у меня База данных мне нужно ее привязать к моей программе, для этого в меню выбираем «Сервис, подключиться к базе данных». Настроив базу, проверяем подключение, добавляем СУБД
Рисунок 3.7. Подключенная база данных
Теперь на формы можно разместить наши таблицы и уже непосредственно работать с ними в самой программе.
Рисунок 3.8 Таблицы базы данных
Повторяем все действия к остальным формам, размещая на них кнопки(Button) и задаем им свойства. Так же размещаем (BindingNavigator), для перемещения между самими таблицами.
Рисунок 3.9 BindingNavigator
Для того что бы каждый раз не перезапускать программу добавляем кнопку возвращения в меню. А так же кнопки для редактирования таблиц.(Создать, Удалить, Сохранить, В начало таблицы, В конец)
Рисунок 3.10. Код для кнопок редактирования
На примере формы «Услуги», это будет выглядеть так:
Рисунок 3.11. Готовая форма с элементами управления
|
Повторяем все действия аналогично к остальным формам.
Для упрощения пользование на некоторых формах можно задать «Типы данных». На примере формы «Сотрудники», есть таблица с номерами телефонов рабочих, дабы упростить и улучшить читаемость данных можно задать «Формат данных», с помощью «MaskedTextBox».
Рисунок 3.12. Маска ввода
Тем самым ограничив вод данных теми символами которые нам нужны. Теперь же можно поиграться с Дизайном программы или же с упрощениемкаких либо действий.
Заключение
В данной работе описывается проектирование информационной системы типографии. ИС была спроектирована с использованием методов структурного анализа и проектирования.
ИС типографии требуется для автоматизации процессов оформления заказов клиентов. Это позволит сократить время оформления и улучшить качество обслуживания. Следовательно, клиенты буду заинтересованы в данной типографии.
Были разработаны логическая и физическая (ER –диаграмма) модели системы, а так же проведена проверка таблиц базы данных на соответствие 3НФ. Спроектированная система полностью отвечает поставленным требованиям.Быстрое оформление заказов и накладных, удобный и понятный интерфейс, работа ИС без сбоев и ошибок, Быстрый доступ к базе данных.
Так же, в данной работе обоснована польза внедрения системы, описаны возможные последствия данного процесса. За время выполнения курсовой работы был получен опыт по работе с программным обеспечением, разработкой ИС, а так же логическим моделирование и пониманием принципов работы автоматизированных систем.
Список литературы
1. Вендров А.М. CASE-технологии. Современные методы и средства проектирования информационных систем –– М.: Финансы и статистика, 2013, 98 стр.
2. Емельянова Н.З., Партыка Т.П., Попов И.И. Проектирование информационных систем –– М.: ФОРУМ, 2015, 416 стр.
3. Калянов Г.Н. CASE-структурный системный анализ –– М.: ЛОРИ, 2014, 242 стр.
4. Мазный Г.Л., Савватеева Т.П. Теория и технология проектирования –– Дубна, 2014.
5. «Полиграфия: вчера, сегодня, завтра» https://pechatnick.com/analitika/articles/index.phtml?id=1237
6. «Информационная система»https://ru.wikipedia.org/wiki/Информационная_система
7. «Проблемнаяситуация» https://www.inventech.ru/lib/glossary/problemsit/
8. «Логическая модель» https://www.mista.ru/isu/#Логическая модель