Главная страница
Навигация по странице:

  • ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ГОРОДА МОСКВЫ «МОСКОВСКИЙ КОЛЛЕДЖ УПРАВЛЕНИЯ, ГОСТИНИЧНОГО БИЗНЕСА И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ «ЦАРИЦЫНО»

  • Разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники

  • Глава 1 Обоснование выбора технологии и программных средств 1.1 Выбор СУБД

  • 1.2 Выбор технологии доступа к БД

  • 1.4 Выбор среды разработки

  • Глава 2 Раздел проектирования базы данных 2.1 Формирование множества сущностей

  • 2.2 Описание множества сущностей

  • 2.3 Формирование матрицы связей

  • 2.5 Построение диаграммы уровня сущностей

  • 2.7 Построение полноатрибутной диаграммы Была построена полноатрибутная диаграмма. Диаграмма представлена в Приложении 3. Полноатрибутная диаграмма. 2.8 Нормализация таблиц

  • 2.9 Генерация скрипта создания таблиц

  • Глава 3 Описание клиентского приложения 3.1 Описание пользовательского интерфейса

  • 3.2 Описание алгоритма расчёта дня выполнения заказа на ремонт

  • Глава 4 Тестирование базы данных 4.1 Описание входных данных

  • 4.2 Описание выходных данных

  • 4.3 Численные характеристики тестирования

  • 4.4 Вывод о результатах тестирования

  • Список источников и литературы

  • Диаграмма уровня сущностей 37 Приложение 2 Диаграмма уровня ключей 38 Приложение 3 Полноатрибутная диаграмма

  • Нормализация таблиц 40 Приложение 5 Скрипт создания таблиц

  • Разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники. Бабаян курсовой проект. Курсовой проект разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники


    Скачать 0.85 Mb.
    НазваниеКурсовой проект разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники
    АнкорРазработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники
    Дата14.03.2022
    Размер0.85 Mb.
    Формат файлаpdf
    Имя файлаБабаян курсовой проект.pdf
    ТипКурсовой проект
    #395971


    ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ПРОФЕССИОНАЛЬНОЕ
    ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ГОРОДА МОСКВЫ
    «МОСКОВСКИЙ КОЛЛЕДЖ УПРАВЛЕНИЯ, ГОСТИНИЧНОГО БИЗНЕСА И
    ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ «ЦАРИЦЫНО»
    КУРСОВОЙ ПРОЕКТ
    Разработка базы данных для системы планирования услуг ремонта
    и гарантийного обслуживания товаров сервиса бытовой техники
    ПМ.02 РАЗРАБОТКА И АДМИНИСТРИРОВАНИЕ БАЗ ДАННЫХ
    09.02.07 Информационные системы и программирование
    Студент:
    __________
    Бабаян Артур Андраникович
    (подпись)
    (фамилия, имя, отчество)
    «____» ___________ 2021 г.
    Оценка выполнения и защиты курсовой работы
    ____________
    Руководитель:__________
    Смирнов Евгений Михайлович
    (подпись)
    (фамилия, имя, отчество)
    «____» ___________ 2021 г.
    Москва, 2021

    2
    Содержание
    Введение .................................................................................................................... 4
    Глава 1 Обоснование выбора технологии и программных средств ...................... 7 1.1 Выбор СУБД ..................................................................................................... 7 1.2 Выбор технологии доступа к БД ..................................................................... 8 1.4 Выбор среды разработки ............................................................................... 13
    Глава 2 Раздел проектирования базы данных ....................................................... 16 2.1 Формирование множества сущностей .......................................................... 16 2.2 Описание множества сущностей .................................................................. 16 2.3 Формирование матрицы связей .................................................................... 17 2.4 Описание связей ............................................................................................. 18 2.5 Построение диаграммы уровня сущностей.................................................. 21 2.6 Построение диаграммы уровня ключей ....................................................... 21 2.7 Построение полноатрибутной диаграммы ................................................... 21 2.8 Нормализация таблиц .................................................................................... 21 2.9 Генерация скрипта создания таблиц............................................................. 22
    Глава 3 Описание клиентского приложения ......................................................... 23 3.1 Описание пользовательского интерфейса .................................................... 23 3.2 Описание алгоритма расчёта дня выполнения заказа на ремонт ............... 26
    Глава 4 Тестирование базы данных ....................................................................... 28 4.1 Описание входных данных ............................................................................ 28 4.2 Описание выходных данных ......................................................................... 29 4.3 Численные характеристики тестирования ................................................... 30 4.4 Вывод о результатах тестирования ............................................................... 31
    Заключение .............................................................................................................. 32
    Список источников и литературы .......................................................................... 33
    Приложение 1 .......................................................................................................... 36
    Приложение 2 .......................................................................................................... 37
    Приложение 3 .......................................................................................................... 38

    3
    Приложение 4 .......................................................................................................... 39
    Приложение 5 .......................................................................................................... 40

    4
    Введение
    В современном мире невозможно обойтись без использования бытовой техники. Пылесосы, холодильники, стиральные машины, утюги, фены и. т.д.
    Всё это мы используем в нашей повседневной жизни каждый день. Но иногда бывают случаи, при которых наша техника выходит из строя и её приходится чинить. Такие случаи происходят каждый день и многие сервисы завалены запросами о ремонте каких-либо товаров. Отсюда возникает острая необходимость быстро оценивать стоимость ремонта и оперативно решать проблемы клиентов.
    В данном проекте рассматривается сервис бытовой техники, в котором осуществляется ремонт, обслуживание, установка и подключение бытовой, а также цифровой техники. Заявка на ремонт и обслуживание оформляется двумя способами:
    1) Прийти в сервис лично и оставить заявку у администратора сервиса.
    Клиент подходит к администратору и заполняет заявку, указывая в бланке на неисправности и что ему требуется починить, дату и время, в которое ему будет удобно принять работника сервиса и свои контактные данные. Оплата производится после успешной починки или установки работником техники клиента.
    2) Выбрать необходимую услугу на сайте онлайн. Клиент выбирает услугу, заполняет заявку, указывая в заявке на неисправности и что ему требуется починить, дату и время, в которое ему будет удобно принять работника сервиса и свои контактные данные. По этому номеру ему перезванивает работник сервисного центра для согласования цены на ремонт, а также выбранного им даты и времени
    После проведения работ клиент оплачивает стоимость проведенных мастером услуг. Затем мастер приходит в сервис и заполняет лист, в котором

    5 находится план работ вручную. Поскольку мастера вручную вносят информацию о последующих датах выполнения услуг, они тратят большое количество времени на бумажную работу. Из-за этого накапливается количество бумаг и мастеру становится сложнее рассчитывать время на выполнение заказов и планирование последующих работ.
    Для планирования работ каждый мастер должен передавать информацию об оказываемых им услугах в лист работ вручную, исходя из этого, складывается необходимость разработки автоматизированной системы для процесса формирования планирования ремонта, установки и техобслуживания бытовой техники в сервисе, которая при минимальном наборе данных, а также информации об оказываемых услугах будет качественно формировать план для будущего технического обслуживания или ремонта.
    Целью курсового проекта является разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники.
    1) Исходя из цели, в рамках курсового проекта необходимо реализовать следующие задачи:
    2) Проанализировать работу сервиса;
    3) Собрать и формализовать требования к программному обеспечению;
    4) Разработать структуру программного обеспечения и схемы базы данных;
    5) Разработать алгоритм работы программы для планирования услуг ремонта
    6) Разработать пользовательский интерфейс программы
    7) Реализовать работу программы с базой данных
    8) Отладить и протестировать программное обеспечение и БД;

    6
    После внедрения автоматизированной системы планирования работ, процесс расчета стоимости услуг и их планирования станет быстрее, тем самым повысится производительность и эффективность работы персонала, также будет сокращена работа мастеров сервисного центра, которые до этого занимались планированием вручную.
    В курсовом проекте будет рассматриваться планирование услуг ремонта и гарантийного обслуживания товаров сервиса бытовой техники.

    7
    Глава 1 Обоснование выбора технологии и программных средств
    1.1 Выбор СУБД
    Для решения поставленных в данном курсовом проекте задач рассматривались следующие СУБД:
    Microsoft SQL Server
    MySQL
    Oracle Database
    Microsoft SQL Server — одна из наиболее мощных СУБД архитектуры клиент-сервер. Эта СУБД позволяет удовлетворять такие требования, предъявляемые к системам распределенной обработки данных, как тиражирование данных, параллельная обработка, поддержка больших баз данных на относительно недорогих аппаратных платформах при сохранении простоты управления и использования. [1]
    MySQL - одна из самых популярных баз данных для веб-приложений.
    Фактически, является стандартом de facto для веб-серверов, которые работают под управлением операционной системы Linx. MySQL - это бесплатный пакет программ, однако новые версии выходят постоянно, расширяя функционал и улучшая безопасность.
    Существуют специальные платные версии, предназначенные для коммерческого использования. В бесплатной версии наибольший упор делается на скорость и надежность, а не на полноту функционала, который может стать и достоинством и недостатком - в зависимости от области внедрения. [2]
    Oracle Database - это объектно-реляционная система, поддерживающая некоторые технологии, реализующие объектно-ориентированный подход, то есть обеспечивающих управление создания и использования баз данных.
    Основным минусом данной системы является то, что она платная. [3]
    Из рассмотренных СУБД для создания базы данных выбрана СУБД MS
    SQL Server, так как она обладает всеми средствами для создания и обеспечения

    8 работоспособности базы данных, поддерживает визуальную технологию создания объектов базы данных, стандарт языка SQL, к тому же она бесплатная.
    1.2 Выбор технологии доступа к БД
    Технологией доступа к данным называется система интерфейсов, обеспечивающая взаимодействие между приложением и базой данных. Во многих системах управления базами данных имеются библиотеки, содержащие интерфейсы прикладного программирования (application programming interface -- API), представляющие собой функции, при помощи которых можно выполнять с данными те или иные действия.[4]
    В качестве технологии доступа к БД подходят следующие фреймворки:
    1) ADO.NET
    2) OLE DB
    3) ODBC
    4) ADO.NET - предоставляет собой технологию работы с данными, которая основана на платформе .NET Framework. Эта технология представляет нам набор классов, через которые мы можем отправлять запросы к базам данных, устанавливать подключения, получать ответ от базы данных и производить ряд других операций.
    Интерфейс ODBC (Open Database Connectivity) был разработан фирмой
    Microsoft как открытый интерфейс доступа к базам данных. Он предоставляет унифицированные средства взаимодействия прикладной программы, называемой клиентом (или приложением-клиентом), с сервером - базой данных.
    OLE DB - набор COM-интерфейсов, которые позволяют

    9 приложениям унифицировано работать с данными разных источников и хранилищ информации. Разработана Microsoft в качестве дальнейшего развития технологии доступа к данным и должен был прийти на замену и в качестве преемника ODBC, расширяя набор функций для поддержки более широкого круга нереляционных источников данных, таких как объектно- ориентированные базы данных или электронные таблицы, и для которых необязательно использовать SQL.
    Таблица 1. Данные в таблице «Описание критериев»
    Критерии
    Обоснование критериев
    Совместимость с выбранной
    СУБД (MS SQL Server)
    Наличие классов в библиотеке, обеспечивающих работу с Microsoft SQL
    Server
    Быстродействие
    Скорость работы
    Таблица 2. Данные в таблице «Сравнение технологий доступа»
    Критерии
    ADO.NET
    OLE DB
    ODBC
    Совместимость с выбранной
    СУБД (MS SQL Server)
    Да
    Да
    Да
    Быстродействие
    Да
    Нет
    Нет
    На основании таблицы 4 можно понять, что все технологии совместимы с выбранной СУБД, но ADO.NET опережает остальные технологии по быстродействию. Поэтому будет выбрана именно эта технология.

    10 1.3 Выбор нотации для проектирования БД
    Основными задачами при проектировании базы данных являются:
    Определение границ проектируемой предметной области (постановка задания), построение структуры данных предметной области
    – концептуальное проектирование.
    Выбор оптимальной СУБД для заданной предметной области. Описание
    БД на языке СУБД – логическое проектирование.
    Определение типов используемых данных и методов доступа к ним
    (запросы, отчёты, формы) – физическое проектирование (физическая модель).
    Цель инфологического проектирования состоит в получении моделей, отражающих предметную область и информационные потребности пользователей. ER–диаграммы используют графическое изображение сущностей предметной области, их свойств (атрибутов), взаимосвязей между сущностями.
    В нотации Баркера понятия категории и общей сущности Чена заменяются Баркером на эквивалентные понятия подтипа и супертипа соответственно. Для построения ERD-диаграммы в нотации Баркера необходимо иметь предварительно построенную DFD-диаграмму.
    При этом первоначально осуществляется анализ хранилища, включающий сравнение содержимого входных и выходных потоков и создание на основе этого сравнения варианта схемы хранилища.
    Нотация Чена предоставляет богатый набор средств моделирования данных, включая, собственно, ERD-диаграммы, а также диаграммы атрибутов и диаграммы категоризации. Эти диаграммные техники используются для моделирования и проектирования как реляционных, так и иерархических и сетевых баз данных. Сущности представляют собой базовые типы информации, хранимой в базе данных, а отношения показывают, как эти типы данных взаимоувязаны друг с другом.

    11
    После чего необходима детализация сущности осуществляется с использованием диаграммы атрибутов, которая раскрывает характеристики
    (атрибуты) сущности. Диаграмма атрибутов состоит из детализируемой сущности, соответствующих атрибутов и доменов, описывающих области значений атрибутов.
    После построения диаграммы атрибутов для демонстрации декомпозиции сущности на категории используется диаграмма категоризации.
    Такая диаграмма содержит общую сущность, две и более сущности-категории и специальный узел-дискриминатор, который описывает способы декомпозиции сущностей.
    Нотация IDEF1X основана на подходе Питера Чена и является методологией построения реляционных структур, относящихся к типу методологий «сущность–связь». Информационная модель, построенная с помощью
    IDEF1X–методологии, отображает логическую структуру информации об объектах системы. Данная методология описывает способы изображения двух типов сущностей – независимой и зависимой, и связей – идентифицирующих и неидентифицирующих. Каждая сущность может обладать любым количеством связей с другими сущностями. Связи дается имя, выражаемое грамматической формой глагола. Для связи дополнительно может присутствовать указание мощности: какое количество экземпляров сущности–
    потомка может существовать для сущности–родителя.
    Выбор нотации для проектирования БД осуществлялся на основании разработанных критериев. Описание критериев для выбора нотации представлено в таблице 1.5.

    12
    Таблица 1.5 Описание критериев для выбора нотации
    Таблица 1.6 Сравнительный анализ нотаций
    Критерии
    IDEF1X
    Нотация
    Чена
    Нотация
    Баркера
    Простота
    Да
    Нет
    Нет
    Информативность
    Да
    Да
    Да
    Структурирование
    Да
    Да
    Нет
    Выявление
    Да
    Да
    Да
    На основании сравнительного анализа в таблице 1.6 можно сделать выводы, что для построения ER-диаграммы базы данных данного курсового проекта подходит нотация IDEF1X, так как в этой нотации присутствует
    Критерии
    Обоснование критериев
    Простота
    Простое изучение и применение нотации
    Информативность
    Хорошая информативность моделей
    Структурирование
    Последовательный и строгий структурированный процесс
    Выявление
    Нотация должна выявлять и корректировать неполноту и неточности существующей структуры информации

    13 строгая стандартизация моделирования, что позволяет избежать различной трактовки построенной модели, которая, является значительным недостатком
    ER-диаграмм в других нотациях.
    1.4 Выбор среды разработки
    На сегодняшний день существует большое количество различных средств разработки приложений. Список наиболее подходящих для разработки на языке программирования C#:
    1)
    Visual Studio
    2)
    Project Rider
    3)
    Eclipse
    Microsoft Visual Studio — линейка продуктов компании Майкрософт, включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств. Данные продукты позволяют разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms, а также веб-сайты, веб-приложения, веб-службы как в родном, так и в управляемом кодом для всех платформ, поддерживаемых Microsoft Windows, Windows
    Mobile, Windows CE, .NET Framework, Xbox, Windows Phone .NET Compact
    Framework и Microsoft Silverlight. Visual Studio очень популярная и с большим комьюнити, поэтому при возникновении различных проблем легко найти информацию в интернете. Так же у Microsoft есть своя библиотека MSDN, где размещено большое количество различных статей и информации. [5]
    JetBrains
    Rider — кроссплатформенная интегрированная среда разработки программного обеспечения для платформы .NET, разрабатываемая

    14 компанией JetBrains.
    Поддерживаются языки программирования C#, VB.NET и F#. Но данная среда всё ещё на стадии разработки и поэтому часть функциональности еще в не доделана, не все стартовые баги исправлены. Также она является платной.[6]
    Eclipse — является бесплатной программной платформой с открытым исходным кодом, контролируется организацией Eclipse Foundation. Написана на языке программирования Java и основной целью её создания является повышение продуктивности процесса разработки программного обеспечения.
    Eclipse достаточно тяжеловесная и медленная относительно других Сред разработки. Также не сильно развитая функция отладки будет неприятным сюрпризом в разработке приложения.[7]
    Таблица 3. Данные в таблице «Описание критериев»
    Критерии
    Обоснование критериев
    Свободное распространение
    Среда разработки не должна быть платной
    Отладка
    Наличие функции отладки
    Быстродействие
    Скорость работы
    Законченность
    Среда разработки не должна быть незаконченной

    15
    Таблица 4. Данные в таблице «Сравнение среды разработки»
    Критерии
    Visual
    Studio
    JetBrains
    Rider
    Eclipse
    Свободное распространение
    Да
    Нет
    Да
    Отладка
    Да
    Да
    Нет
    Быстродействие
    Да
    Да
    Нет
    Законченность
    Да
    Нет
    Да
    На основании таблицы 4 можно выделить, что JetBrains Rider платный и незаконченный, что будет мешать разработке приложения, а в Eclipse страдает быстродействие и недостаточно развитый режим отладки, что значительно усложнит разработку приложения. Visual Studio проходит по всем критериям, поэтому эта среда разработки идеально подойдет для разработки приложения к курсовому проекту.

    16
    Глава 2 Раздел проектирования базы данных
    2.1 Формирование множества сущностей
    Из описания предметной области были сформированы следующие сущности:
    1) Клиент;
    2) Сотрудник
    3) Должность
    4) План ремонта
    5) Техника
    6) Склад
    7) Деталь
    8) Оказываемая услуга
    2.2 Описание множества сущностей
    Описание каждой сущности представлено в таблице 2.1
    Таблица 2.1 Описание множества сущностей
    Номер сущности
    Имя сущности
    Определение
    Описание
    E1
    Клиент
    Человек, который обратился с целью получения услуги.
    Новый экземпляр сущности появляется после того, как человек обращается в сервис
    E2
    Сотрудник
    Сотрудник сервиса бытовой техники
    Новый экземпляр сущности появляется после того, как человек устраивается работать в сервис
    E3
    Должность
    Подразделение сотрудников сервиса бытовой техники
    Новый экземпляр сущности появляется после того, как человек устраивается работать в сервис

    17
    E4
    Заявка на ремонт
    Заявка на ремонт бытовой техники клиента
    Новый экземпляр сущности появляется после того, как клиент обращается в сервис
    E5
    План ремонта
    Расписанный по датам план ремонта техники клиентов для каждого специалиста
    Новый экземпляр сущности появляется после того, как клиент обращается в сервис
    E6
    Склад
    Техника сервиса бытовой техники
    Новый экземпляр сущности появляется тогда, когда у сервиса появляется новая техника
    E7
    Деталь
    Определенная часть техники, которая используется для замены у вышедшей из строя техники
    Новый экземпляр сущности появляется тогда, когда у сервиса появляется новая деталь
    E8
    Оказанная услуга
    Деятельность по ремонту бытовой техники
    Новый экземпляр сущности появляется тогда, когда сотрудник выполнил заявку по ремонту бытовой техники
    2.3 Формирование матрицы связей
    Была сформирована матрица связей между всеми сущностями, и она представлена в таблице 2.2

    18
    Таблица 2.2 Матрица связей
    2.4 Описание связей
    Описание связей между сущностями представлено в таблице 2.3
    Кл и
    ен т
    /
    E
    1
    Со тр уд ник
    /
    E
    2
    Д
    ол жн ос ть
    /
    E
    3
    П
    ла н ре м
    он та
    /E4
    Т
    ех ни ка
    /
    E
    5
    Скл ад
    /
    E
    6
    Д
    ета ль
    /
    E
    7
    О
    ка за н
    на я ус лу га
    /
    E
    8
    Клиент/E1
    R3
    Сотрудник / E2
    R1
    R2
    Должность / E3
    R1
    План ремонта /E4
    R3
    R4
    Техника / E5
    R5
    Склад / E6
    R5
    R6
    Деталь / E7
    R6
    Оказанная услуга / E8
    R4

    19
    Таблица 2.3 Описание связей
    Н
    ом ер с
    вяз и
    Р
    од ите ль ск ая су щно сть
    Д
    оч ер няя су щно сть
    Имя связи
    Тип связи
    М
    ощно сть
    Описание
    R1
    Д
    ол жн ос ть
    Со тр уд ни к
    О
    це ни ва ет
    Определенная неидентифицирующая необязательная
    P
    Одна должность указывается у одного сотрудника, у одной должности может быть несколько сотрудников
    R2
    С
    от руд ни к
    П
    лан ре м
    он та
    В
    носи тся
    Определенная идентифицирующая
    P
    Один сотрудник может вноситься в нескольких планах ремонта, в одном плане ремонта может быть один сотрудник
    R3
    К
    ли ен т
    П
    лан ре м
    он та
    В
    носи тся
    Определенная неидентифицирующая обязательная
    Р
    Один клиент может вноситься в нескольких планах ремонта, в одном плане ремонта может быть один клиент

    20
    Н
    ом ер с
    вяз и
    Р
    од ите ль ск ая су щно сть
    Д
    оч ер няя су щно сть
    Имя связи
    Тип связи
    М
    ощно сть
    Описание
    R4
    О
    ка за н
    на я ус лу га
    П
    ла н ре м
    он та
    Вн ос ит ся
    Неопределенная
    P
    Несколько услуг вносится в один заказ, в одном заказе может содержаться несколько услуг
    R5
    Д
    еталь
    С
    клад
    С
    од ерж ит ся
    Определенная идентифицирующая обязательная
    P
    Одна деталь содержится в одном складе, склад содержит несколько запчастей
    R6
    Т
    ехн ик а
    С
    клад
    С
    од ерж ит ся
    Определенная идентифицирующая обязательная
    P
    Одна деталь содержится в одном складе, склад содержит несколько запчастей

    21
    2.5 Построение диаграммы уровня сущностей
    Была построена диаграмма уровня сущностей. Диаграмма представлена в Приложении 1. Диаграмма уровня сущностей.
    2.6 Построение диаграммы уровня ключей
    Была построена диаграмма уровня ключей. Диаграмма представлена в
    Приложении 2. Диаграмма уровня ключей.
    2.7 Построение полноатрибутной диаграммы
    Была построена полноатрибутная диаграмма. Диаграмма представлена в
    Приложении 3. Полноатрибутная диаграмма.
    2.8 Нормализация таблиц
    Перед реализацией построенной модели базы данных необходимо провести нормализацию всех таблиц.
    Для таблицы Сотрудник последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы Должность последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы План ремонта последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы Клиент последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы Техника последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы Склад последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.

    22
    Для таблицы Деталь последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Для таблицы Оказанная услуга последовательная нормализация даст следующие результаты: 1, 2 и 3 нормальные формы – аномалий нет.
    Диаграмма с нормализованными таблицами представлена в Приложении
    4. Нормализация таблиц.
    2.9 Генерация скрипта создания таблиц
    После построения нормализованной полноатрибутной диаграммы был сгенерирован скрипт для создания таблиц в базе данных. Код для создания таблиц представлен в Приложении 5. Скрипт создания таблиц.

    23
    Глава 3 Описание клиентского приложения
    3.1 Описание пользовательского интерфейса
    Пользовательский интерфейс представляет собой совокупность используемых в программе средств для ввода данных, способов отображения информации на экране дисплея, элементов для управления различными этапами решения задачи.
    Приложение имеет простой интерфейс, состоящий из главного окна, где переключаются страница авторизации, страниц меню для соответствующих ролей и страниц с таблицами с данным с определёнными правами для каждого пользователя.
    На странице авторизации пользователь вводит данные для авторизации.
    Страница авторизации представлена на рисунке 3.1
    После авторизации пользователь переключается на меню соответствующей роли. Внешний вид меню представлен на рисунке 3.2

    24
    Рисунок 3.2 Меню пользователя
    В меню пользователь выбирает таблицу для просмотра и/или редактирования. Внешний вид страницы с таблицей, содержащей информацию из БД представлен на рисунке 3.3
    Рисунок 3.3 Страница с таблицей, с возможностью просмотра информации и выбора редактирования
    Так же при изменении информации в записи в БД появляется отдельное окно для редактирования информации. Внешний вид окна для редактирования информации представлен на рисунке 3.4

    25
    Рисунок 3.4 Окно для изменения информации
    Так же при изменении информации в записи в БД появляется отдельное окно для редактирования информации. Внешний вид окна для редактирования информации представлен на рисунке 3.5

    26
    Рисунок 3.5 Окно редактирования данных
    3.2 Описание алгоритма расчёта дня выполнения заказа на ремонт
    Алгоритм работает при добавлении данных о покупке, после чего из этих данных берётся значение “тип ремонта”, в котором указывается нужна ли замена детали и исходя из этой информации алгоритм указывает на то, нужно ли отложить замену или же сделать ремонт в день заявки.
    Работа алгоритма расчёта дня выполнения заказа на ремонт может быть представлена в виде блок-схемы на Рисунке 3.6

    27
    Рисунок 3.6 Алгоритм расчёта дня выполнения заказа на ремонт

    28
    Глава 4 Тестирование базы данных
    4.1 Описание входных данных
    Для проверки базы данных было проведено тестирование, состоящее из нескольких тестов.
    Тестирование функции добавления карты. Информация о тестировании представлена в Таблице 4.1
    Таблица 4.1 Данные для добавления новой заявки на ремонт
    Входные данные
    Ожидаемый результат
    Фактический результат
    1,
    15,
    1 6.12.2021,
    Починка техники
    Плохо работает пылесос (не хочет всасывать воздух)
    1
    Данные добавлены в
    БД
    Совпадает с ожидаемым
    Тестирование функции изменения информации о ремонте. Информация о тестировании представлена в Таблице 4.2

    29
    Таблица 4.2 Данные для изменения информации о ремонте
    Данные для изменения
    Входные данные
    Ожидаемый результат
    Фактический результат
    Дата запланированного ремонта: 6.12.2021
    Дата запланированного ремонта: 7.12.2021
    Данные изменены в таблице Дата запланированного ремонта
    Совпадает с ожидаемым
    Данные для изменения
    Входные данные
    Ожидаемый результат
    Фактический результат
    ID Сотрудника: 1
    ID Сотрудника: 2
    Данные изменены в таблице ID
    Сотрудника
    Совпадает с ожидаемым
    4.2 Описание выходных данных
    Выходными данными является визуализация изменения в таблицах приложения. При добавлении ремонта, у сотрудника в таблице добавляется запись, где указан ID Ремонта, ID Сотрудника, ID Клиента, Дата запланированного ремонта, Тип ремонта, Описание неисправности, ID
    Услуги.
    Выходные данные представлены на рисунке 4.1
    Рисунок 4.1 Добавление новой заявки на ремонт

    30
    При изменении информации о ремонте, изменения отображаются в таблице со списком всех записей.
    Данные для изменения представлены на рисунке 4.2
    Рисунок 4.2 Данные для изменения информации о ремонте
    Выходные данные представлены на рисунке 4.3
    Рисунок 4.3 Изменение информации в таблице
    4.3 Численные характеристики тестирования
    Были проанализированы численные характеристики тестирования.
    Численные характеристики представлены в таблице 4.4

    31
    Таблица 4.4 Численные характеристики тестирования
    Действие
    Время выполнения
    Объём занимаемых данных
    Количество записей в таблицах
    Добавление
    2 секунды
    Увеличилось на 2 кб
    Увеличилось на 3
    Изменение
    3 секунды
    Неизменно
    Неизменно
    Автоматическое изменение даты запланированного ремонта
    6 секунд
    Увеличилось на 1 кб
    Неизменно
    4.4 Вывод о результатах тестирования
    Были рассмотрены разные варианты работы программы, фактические результаты совпадают с ожидаемыми.
    После проведения тестирования можно увидеть, что база данных правильно разработана, полностью функционирует, работоспособна и корректна.

    32
    Заключение
    В курсовой работе была рассмотрена разработка базы данных для системы планирования услуг ремонта и гарантийного обслуживания сервиса бытовой техники. Была проанализирована работа сервиса бытовой техники, на основании чего была спроектирована база данных и схема работы приложения.
    После сбора информации были сформированы требования к приложению и проработаны алгоритмы работы с данными.
    Разработанное приложение имеет простой интерфейс, состоящий из главного окна, где переключаются страница авторизации, страниц меню для соответствующих ролей и страниц с таблицами с данным с определёнными правами для каждого пользователя.
    Было проведено тестирование, после которого стало известно, что база данных правильно разработана, полностью функционирует, работоспособна и корректна.
    После внедрения автоматизированной системы управления процесс планирования ремонта сервиса будет происходить быстрее тем самым увеличится производительность и будут сокращены расходы на персонал, занимающийся расчетами вручную.
    Перспективой развития базы данных может быть автоматизация таких процессов как: формирование гарантийных случаев, формирование экстренных случаев
    В ходе выполнения курсовой работы важно отметить, что все поставленные задачи выполнены, а цель достигнута.
    В заключение можно отметить, что мной были получены навыки разработки программных модулей в соответствии с техническим заданием, администрирования базы данных, разработка приложения, получающего и передающего информацию на сервер.

    33
    Список источников и литературы
    Сетевой электронный ресурс
    1. ADO.NET
    [Электронный ресурс]

    Режим доступа: https://metanit.com/sharp/adonet/1.1.php
    2. IDE
    Eclipse
    [Электронный ресурс]

    Режим доступа: https://proghelp.ru/obshhee/ide-eclipse-za-i-protiv-ot-vedushhih-programmistov/
    3. IDEF1X
    [Электронный ресурс]

    Режим доступа: https://ru.wikipedia.org/wiki/IDEF1X
    4. JetBrains Rider и Visual Studio. 2020 [Электронный ресурс] – Режим доступа: https://www.calabonga.net/blog/post/jetbrains-rider-vs-visual-studio
    5. Microsoft SQL Server 2017 [Электронный ресурс] – Режим доступа: https://www.allware.ru/index.php?id=127#:

    :text=%D0%9E%D1%81%D0%BD
    %D0%BE%D0%B2%D0%BD%D1%8B%D0%B5%20%D0%BF%D1%80%D0%
    B5%D0%B8%D0%BC%D1%83%D1%89%D0%B5%D1%81%D1%82%D0%B2
    %D0%B0%20Microsoft%20SQL%20Server,%D1%87%D0%B5%D1%80%D0%
    B5%D0%B7%20Web.%20%D0%9C%D0%B0%D1%81%D1%88%D1%82%D0
    %B0%D0%B1%D0%B8%D1%80%D1%83%D0%B5%D0%BC%D0%BE%D1%
    81%D1%82%D1%8C%20%D0%B8%20%D0%BD%D0%B0%D0%B4%D0%B5
    %D0%B6%D0%BD%D0%BE%D1%81%D1%82%D1%8C
    6. OLE
    DB
    [Электронный ресурс]

    Режим доступа: https://ru.wikipedia.org/wiki/OLE_DB
    7. Быстрая и мощная кросс-платформенная IDE для .NET [Электронный ресурс] – Режим доступа: https://www.jetbrains.com/ru-ru/rider/
    8. Д.А. Попова-Коварцева, Е.В. Сопченко. Основы проектирования баз данных/ Д.А. Попова-Коварцева, Е.В. Сопченко – М: Самара, 2019.
    9. Документация Microsoft. Microsoft ADO.NET для SQL Server

    34
    [Электронный ресурс] – Режим доступа: https://docs.microsoft.com/ruru/sql/connect/ado-net/microsoft-ado-net-sql- server?view=sql-server-ver15 10. Документация Microsoft. Visual Studio [Электронный ресурс] – Режим доступа: https://visualstudio.microsoft.com/ru/
    11. Документация Microsoft. Общие сведения об ODBC [Электронный ресурс]

    Режим доступа: https://docs.microsoft.com/ruru/sql/odbc/reference/odbc-overview?view=sql- server-ver15 12. Документация Microsoft. Отображение данных из SQL Server базы данных в элементе управления DataGrid [Электронный ресурс] – Режим доступа: https://docs.microsoft.com/ruru/dotnet/desktop/wpf/controls/walkthrough-display- data-from-a-sql-serverdatabase-in-a-datagrid-control?view=netframeworkdesktop-
    4.8 13. Документация Microsoft. Просмотр или изменение свойств базы данных
    [Электронный ресурс]

    Режим доступа: https://docs.microsoft.com/ruru/sql/relational-databases/databases/view-or-change- the-properties-of-adatabase?view=sql-server-ver15 14. Документация Microsoft. Создание вложенных триггеров [Электронный ресурс]

    Режим доступа: https://docs.microsoft.com/ru- ru/sql/relationaldatabases/triggers/create-nested-triggers?view=sql-server-ver15 15. Документация Microsoft. Создание определяемых пользователем функций [Электронный ресурс] – Режим доступа: https://docs.microsoft.com/ru-ru/sql/relational-databases/user- definedfunctions/create-user-defined-functions-database-engine?view=sql-server- ver15

    35 16. Документация Microsoft. Создание триггеров [Электронный ресурс] –
    Режим доступа: https://docs.microsoft.com/ru-ru/sql/t- sql/statements/createtrigger-transact-sql?view=sql-server-ver15 17. Документация Microsoft. Транзакции (Transact-SQL) [Электронный ресурс]

    Режим доступа: https://docs.microsoft.com/ru-ru/sql/t- sql/languageelements/transactions-transact-sql?view=sql-server-ver15 18. Кузнецов П. О. Сравнение систем управления базами данных
    [Электронный ресурс]/ Кузнецов П. О. – М: Москва, 2018. – Режим доступа:ь https://evansys.com/articles/perspektivy-i-tekhnologii-razvitiya-voblasti- tekhnicheskikh-nauk-sbornik-nauchnykh-trudov-po-itogam/sektsiya-
    20informatsionnye-tekhnologii/sravnenie-sistem-upravleniya-bazami-dannykh/
    19. Нотация
    Баркера [Электронный ресурс] – Режим доступа: https://studfile.net/preview/9547657/page:19/
    20. Орлов Е. Лучшие IDE для C#-разработчика / Орлов Е. Лучшие IDE для
    C#-разработчика – М: 2020 [Электронный ресурс] – Режим доступа: https://spb.deveducation.com/blog/luchshie-ide-dlya-c-razrabotchika/
    21. Система управления базами данных MySQL [Электронный ресурс] –
    Режим доступа: https://depix.ru/articles/sistema_upravleniya_bazami_dannyh_mysql
    22. Среда разработки Eclipse [Электронный ресурс] – Режим доступа: https://studbooks.net/2145393/informatika/sreda_razrabotki_eclipse

    36
    Приложение 1
    Диаграмма уровня сущностей

    37
    Приложение 2
    Диаграмма уровня ключей

    38
    Приложение 3
    Полноатрибутная диаграмма

    39
    Приложение 4
    Нормализация таблиц

    40
    Приложение 5
    Скрипт создания таблиц
    -- Create tables section ------------------------------------------------
    -
    -- Table Сотрудник/E1
    CREATE TABLE [Сотрудник/E1]
    (
    [Id_сотрудника] Int NOT NULL,
    [Фамилия] Varchar(50) NOT NULL,
    [Имя] Varchar(50) NOT NULL,
    [Отчество] Varchar(50) NOT NULL,
    [Номер_телефона] Varchar(12) NOT NULL,
    [Дата_рождения] Date NOT NULL,
    [Паспорт_серия] Varchar(4) NOT NULL,
    [Паспорт_номер] Varchar(6) NOT NULL,
    [id_должности] Int NOT NULL
    ) go
    -- Create indexes for table Сотрудник/E1
    CREATE INDEX [IX_Relationship18] ON [Сотрудник/E1] ([id_должности]) go
    -- Add keys for table Сотрудник/E1
    ALTER TABLE [Сотрудник/E1] ADD CONSTRAINT [PK_Сотрудник/E1] PRIMARY KEY
    ([Id_сотрудника]) go
    -- Table Должность /E2
    CREATE TABLE [Должность /E2]
    (
    [Наименование_должности] Varchar(50) NOT NULL,
    [id_должности] Int NOT NULL
    ) go
    -- Add keys for table Должность /E2

    41
    ALTER TABLE [Должность /E2] ADD CONSTRAINT [PK_Должность /E2] PRIMARY KEY
    ([id_должности]) go
    -- Table Клиент / E3
    CREATE TABLE [Клиент / E3]
    (
    [id_клиента] Int NOT NULL,
    [Фамилия] Varchar(50) NOT NULL,
    [Имя] Varchar(50) NOT NULL,
    [Отчество] Varchar(50) NOT NULL,
    [Номер_телефона] Varchar(11) NOT NULL
    ) go
    -- Add keys for table Клиент / E3
    ALTER TABLE [Клиент / E3] ADD CONSTRAINT [PK_Клиент / E3] PRIMARY KEY
    ([id_клиента]) go
    -- Table Техника / E5
    CREATE TABLE [Техника / E5]
    (
    [id_техники] Int NOT NULL,
    [дата_выпуска] Date NOT NULL,
    [срок_гарантии] Date NOT NULL,
    [модель] Varchar(max) NOT NULL,
    [тип_техники] Varchar(max) NOT NULL
    ) go
    -- Add keys for table Техника / E5
    ALTER TABLE [Техника / E5] ADD CONSTRAINT [PK_Техника / E5] PRIMARY KEY
    ([id_техники]) go
    -- Table Деталь / E7
    CREATE TABLE [Деталь / E7]
    (
    [id_детали] Int NOT NULL,
    [Наименование] Varchar(max) NOT NULL
    )

    42 go
    -- Add keys for table Деталь / E7
    ALTER TABLE [Деталь / E7] ADD CONSTRAINT [PK_Деталь / E7] PRIMARY KEY
    ([id_детали]) go
    -- Table План_ремонта / E4
    CREATE TABLE [План_ремонта / E4]
    (
    [Дата] Date NOT NULL,
    [тип_ремонта] Varchar(max) NOT NULL,
    [Описание_неисправности] Varchar(max) NOT NULL,
    [id_ремонта] Char(1) NOT NULL,
    [id_клиента] Int NOT NULL,
    [Id_сотрудника] Int NOT NULL,
    [id_услуги] Int NULL
    ) go
    -- Create indexes for table План_ремонта / E4
    CREATE INDEX [IX_Relationship16] ON [План_ремонта / E4] ([id_клиента]) go
    CREATE INDEX [IX_Relationship17] ON [План_ремонта / E4] ([Id_сотрудника]) go
    CREATE INDEX [IX_Relationship19] ON [План_ремонта / E4] ([id_услуги]) go
    -- Add keys for table План_ремонта / E4
    ALTER TABLE [План_ремонта / E4] ADD CONSTRAINT [PK_План_ремонта / E4]
    PRIMARY KEY ([id_ремонта]) go
    -- Table Склад / E6
    CREATE TABLE [Склад / E6]
    (
    [id_детали] Int NOT NULL,
    [Кол-во] Int NOT NULL,
    [id_техники] Int NOT NULL
    )

    43 go
    -- Add keys for table Склад / E6
    ALTER TABLE [Склад / E6] ADD CONSTRAINT [PK_Склад / E6] PRIMARY KEY
    ([id_детали],[id_техники]) go
    -- Table Оказанная_услуга / E8
    CREATE TABLE [Оказанная_услуга / E8]
    (
    [Оказанная_услуга] Varchar(max) NOT NULL,
    [id_услуги] Int NOT NULL,
    [Стоимость_услуги] Varchar(max) NOT NULL
    ) go
    -- Add keys for table Оказанная_услуга / E8
    ALTER TABLE [Оказанная_услуга / E8] ADD CONSTRAINT [PK_Оказанная_услуга /
    E8] PRIMARY KEY ([id_услуги]) go
    -- Table Включение_в_услугу
    CREATE TABLE [Включение_в_услугу]
    (
    [id_детали] Int NOT NULL,
    [id_техники] Int NOT NULL,
    [id_услуги] Int NOT NULL
    ) go
    -- Add keys for table Включение_в_услугу
    ALTER TABLE [Включение_в_услугу] ADD CONSTRAINT [PK_Включение_в_услугу]
    PRIMARY KEY ([id_детали],[id_техники],[id_услуги]) go
    -- Create foreign keys (relationships) section --------------------------
    -----------------------
    ALTER TABLE [План_ремонта / E4] ADD CONSTRAINT [Вносится / R3] FOREIGN
    KEY ([id_клиента]) REFERENCES [Клиент / E3] ([id_клиента]) ON UPDATE NO
    ACTION ON DELETE NO ACTION

    44 go
    ALTER TABLE [План_ремонта / E4] ADD CONSTRAINT [Вносится / R2] FOREIGN
    KEY ([Id_сотрудника]) REFERENCES [Сотрудник/E1] ([Id_сотрудника]) ON
    UPDATE NO ACTION ON DELETE NO ACTION go
    ALTER TABLE [Сотрудник/E1] ADD CONSTRAINT [Указывается / R1] FOREIGN KEY
    ([id_должности]) REFERENCES [Должность /E2] ([id_должности]) ON UPDATE NO
    ACTION ON DELETE NO ACTION go
    ALTER TABLE [План_ремонта / E4] ADD CONSTRAINT [Вносится / R4] FOREIGN
    KEY ([id_услуги]) REFERENCES [Оказанная_услуга / E8] ([id_услуги]) ON
    UPDATE NO ACTION ON DELETE NO ACTION go
    ALTER TABLE [Склад / E6] ADD CONSTRAINT [Содержится / R6] FOREIGN KEY
    ([id_детали]) REFERENCES [Деталь / E7] ([id_детали]) ON UPDATE NO ACTION
    ON DELETE NO ACTION go
    ALTER TABLE [Склад / E6] ADD CONSTRAINT [Содержится / R5] FOREIGN KEY
    ([id_техники]) REFERENCES [Техника / E5] ([id_техники]) ON UPDATE NO
    ACTION ON DELETE NO ACTION go
    ALTER TABLE [Включение_в_услугу] ADD CONSTRAINT [Содержит] FOREIGN KEY
    ([id_детали]) REFERENCES [Деталь / E7] ([id_детали]) ON UPDATE NO ACTION
    ON DELETE NO ACTION go

    45
    ALTER TABLE [Включение_в_услугу] ADD CONSTRAINT [Содержит] FOREIGN KEY
    ([id_техники]) REFERENCES [Техника / E5] ([id_техники]) ON UPDATE NO
    ACTION ON DELETE NO ACTION go
    ALTER TABLE [Включение_в_услугу] ADD CONSTRAINT [Добавляется] FOREIGN KEY
    ([id_услуги]) REFERENCES [Оказанная_услуга / E8] ([id_услуги]) ON UPDATE
    NO ACTION ON DELETE NO ACTION go


    написать администратору сайта