Министерство образования Республики Беларусь

Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ


Факультет Компьютерных технологий


Кафедра проектирования информационных компьютерных систем

Дисциплина "Современные технологии проектирования информационных систем"


К защите допустить:

Руководитель курсовой работы
старший преподаватель кафедры

_______________ А.В.Михалькевич

16.05.2024

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе
на тему

«Разработка системы автоматизации работы косметического салона»

БГУИР КР 1-40 05 01-10 № 179 ПЗ







Студент
(подпись студента)
М.Г.Гмир

Курсовая работа
представлена на проверку
16.05.2024
___________________
(подпись студента)







Жодино 2024




Реферат

БГУИР КР 1-40 05 01-10 № 179 ПЗ, гр. 784371

М.Г.Гмир, «Разработка системы автоматизации работы косметического салона», Жодино: БГУИР - 2024.

Пояснительная записка 1398815 с., 12 рис., 0 табл.

Ключевые слова: ООП, JAVA, MVC

Предмет Современные технологии проектирования информационных систем, А.В.Михалькевич

Целью данной курсовой работы является создание программного средства, позволяющее автоматизировать работу менеджера косметического салона.

The purpose of this course work is to create a software tool that allows you to automate the work of the Manager of a beauty salon.

Содержание

Введение

Одним из наиболее прогрессирующих направлений в области информационных технологий является разработка и внедрение информационных систем с использованием современных средств управления базами данных. Развитие компьютерной техники и, что более важно, развитие коммуникационных технологий, в последнее время является мощным двигателем использования информационных систем. Люди давно стремились систематизировать данные любого типа для облегчения работы и использования информации. В наши дни проще всего систематизировать данные с помощью автоматизации. Если учесть, что этот процесс во много раз упрощает любой бизнес, то о необходимости его должен задуматься каждый коммерсант. Основная цель курсового проекта – разработать приложение для автоматизации работы косметического салона. Достижение цели осуществляется посредствам комплекса следующих задач:  изучение сферы косметических салонов;  проектирование и создания таблиц для хранения данных;  ввод данных;  разработка других элементов базы, предназначенных для просмотра, редактирования и вывода информации. В пояснительной записке будут рассмотрены разделы, которые перечислены ниже. Раздел «Описание предметной области» включает функциональную модель IDEF0 и описание требований к системе с точки зрения предметной области. В разделе «Постановка задачи» описывается формулировка задачи и требования к программе. Раздел «Модели представления системы и их описание» включает диаграммы UML, которые позволяют рассмотреть бизнес-процесс и создать систему. В разделе «Информационная модель системы» описывается доказательство приведения модели данных к 3-ей нормальной форме. Раздел «Блок схема программы» включает бизнес-логику серверной части проектируемой системы. В разделе «Руководство пользователя» описываются способ установки программного продукта. Раздел «Результаты тестирования» содержит информацию о разработанной системе и способе её использования, а так же оценку выполнения задач. В разделе «Выводы и заключения» подводится итог разработки программного продукта, указывается объем выполнения задачи, степень соответствия проекта его реализации. В пояснительной записке предусмотрены приложения, в которых содержатся диаграммы UML и листинг программы.

1 ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

 Косметический салон представляет собой организацию, состоящую из администрации, штата мастеров, а так же менеджеров, которые ведут учет клиентов, услуг, мастеров в журнале регистрации.

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

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

Для реализации задачи по автоматизации анализа операционной прибыли предприятия будут использованы:

Java – объектно-ориентированный язык программирования, разработанный компанией Sun Microsystems (в последующем приобретённой компанией Oracle). Приложения Java обычно транслируются в специальный байт-код, поэтому они могут работать на любой виртуальной Java-машине вне зависимости от компьютерной архитектуры.    

  Основные возможности:

  1. на уровне отдельных SQL-запросов — на основе JDBCSQLJ;
  2. на уровне концепции объектов, обладающих способностью к хранению в базе данных — на основе Java Data Objects (англ.) и Java Persistence API;

 

2 ПОСТАНОВКА ЗАДАЧИ

Требуется разработать программное средство, позволяющее автоматизировать работу косметического салона.

Система должна быть реализована в виде web-приложения на языке Java c использованием технологий JSP, Servlet, XML/XSLT. Архитектура приложения должна быть выполнена в архитектуре паттерна MVC. Интерфейс приложения должен быть оформлен с использованием каскадных таблиц стилей(CSS).

При разработке пользовательского интерфейса необходимо предусмотреть элемент «меню», пункты которого должны храниться в виде XML документа, который будет трансформироваться в html представление с помощью технологии XSLT.

Приложение должно быть выполнено в системе IntelliJ IDEA 10.5.

База данных должна содержать следующие таблицы:

- таблица «Услуги»;

- таблица «Клиенты»;

- таблица «Мастера».

В таблице «Услуги» необходимо создать следующие поля: наименование, цена.

В таблице «Клиенты» необходимо создать следующие поля: фамилия, имя, отчество, номер телефона.

В таблице «Мастера» необходимо создать следующие поля: фамилия, имя, отчество.

На основе данных таблиц необходимо создать журнал регистрации, в котором будет реализовано резервирование времени для определенных клиентов для посещения мастера на основе выбранных услуг и времени его работы.

Разрабатываемое приложение должно обеспечивать добавление, редактирование и удаление записей в базе данных.

Программа должна быть устойчивой к самым различным ошибкам, которые могут возникнуть в процессе работы.

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

3 МОДЕЛИ ПРЕДСТАВЛЕНИЯ СИСТЕМЫ И ИХ ОПИСАНИЕ

Ниже рассматриваются диаграммы стандарта UML2.0.

Диаграмма вариантов использования отображает поведение системы или ее части под тем углом, под каким её видит пользователь (Приложение A). На диаграмме изображен актер: менеджер. Так же изображены варианты использования. Цель варианта использования заключается в том, чтобы определить законченный аспект или фрагмент поведения некоторой сущности без раскрытия её внутренней структуры.

Диаграмма последовательности (Приложение Б) — диаграмма, на которой показаны взаимодействия объектов, упорядоченные по времени их проявления. При рассмотрении предметной области для диаграммы последовательности были выделены следующие объекты: Таблица «Услуги», таблица «Клиенты», Таблица «Мастера», список мастеров, журнал регистрации, резервирование. Так же на диаграмме изображены соответствующие сообщения, линии жизни и фокусы управления.

Далее будет рассмотрена диаграмма состояний, описывающая процесс бронирования клиентов в косметическом салоне (Приложение В). Диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из одного состояния в другое, то есть моделирует все изменения состояний объекта как его реакцию на внешние воздействия. На диаграмме показаны следующие состояния: запрос на подключение к Web-серверу, выбор журнала регистрации, бронирование клиента.

Диаграмма развёртывания в UML моделирует физическое развертывание артефактов на узлах (Приложение Г).

 Диаграмма компонентов — статическая структурная диаграмма, показывает разбиение программной системы на структурные компоненты и связи (зависимости) между компонентами (Приложение Д). На данной диаграмме показаны база данных и её составляющие, так как база данных и является структурным составляющими рассмотренной предметной области.

Диаграмма классов представляет собой граф, вершинами которого являются элементы типа «классификатор», связанные различными типами структурных отношений. Диаграмма классов может также содержать интерфейсы, пакеты, отношения и даже отдельные экземпляры, такие как объекты и связи (Приложение Е).

В приложении изображены диаграммы методологии IDEF0. В IDEF0 реализованы идеи системного анализа, под которыми понимают исследования, начинающиеся с общего обзора системы, а затем детализируют ее в виде иерархической структуры с определенным числом уровней, на каждом из которых не более 8 элементов. В результате система разбивается на функциональные части, дается их описание, исследуются информационные потоки и формализуется структура данных. В основе структурного анализа используются два базовых принципа: принцип «разделяй и властвуй» и принцип иерархического упорядочения (Приложение Ж).

4 ИНФОРМАЦИОННАЯ МОДЕЛЬ СИСТЕМЫ

Процесс нормализации заключается в приведении таблиц в так называемые нормальные формы. Существует несколько видов нормальных форм: первая нормальная форма (1НФ), вторая нормальная форма (2НФ), третья нормальная форма (3НФ), нормальная форма Бойса-Кодда (НФБК), четвертая нормальная форма (4НФ), пятая нормальная форма (5НФ). С практической точки зрения, достаточно трех первых форм - следует учитывать время, необходимое системе для "соединения" таблиц при отображении их на экране. Поэтому мы ограничимся приведением отношений к первым трем формам.

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

В реляционной модели отношение всегда находится в первой нормальной форме по определению понятия отношение.

Что же касается различных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в 1NF. В соответствии с определением К. Дж. Дейта для такого случая, таблица нормализована (эквивалентно — находится в первой нормальной форме) тогда и только тогда, когда она является прямым и верным представлением некоторого отношения.

Конкретнее, рассматриваемая таблица должна удовлетворять следующим пяти условиям:

«Обычность» всех столбцов таблицы означает, что в таблице нет «скрытых» компонентов, которые могут быть доступны только в вызове некоторого специального оператора взамен ссылок на имена регулярных столбцов, или которые приводят к побочным эффектам для строк или таблиц при вызове стандартных операторов. Таким образом, например, строки не имеют идентификаторов кроме обычных значений потенциальных ключей (без скрытых «идентификаторов строк» или «идентификаторов объектов»). Они также не имеют скрытых временных меток.

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

Неприводимость означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, от которого можно также вывести данную функциональную зависимость. Для неприводимой функциональной зависимости часто используется эквивалентное понятие «полная функциональная зависимость».

Если потенциальный ключ является простым, то есть состоит из единственного атрибута, то любая функциональная зависимость от него является неприводимой (полной). Если потенциальный ключ является составным, то согласно определению второй нормальной формы в отношении не должно быть неключевых атрибутов, зависящих от части составного потенциального ключа.

Вторая нормальная форма по определению запрещает наличие неключевых атрибутов, которые вообще не зависят от потенциального ключа. Таким образом, вторая нормальная форма запрещает создавать отношения как несвязанные (хаотические, случайные) наборы атрибутов.

В отличие от первой нормальной формы, так же как и вторая нормальная форма, третья – подразумевает задание вместе с отношением системы функциональных зависимостей. Определение. Базовое отношение находится в третьей нормальной форме относительно заданного множества функциональных зависимостей тогда и только тогда, когда оно находится во второй нормальной форме и каждый неключевой атрибут полностью функционально зависит только от ключей.

Методы приведения к 3NF: удаление полей не зависящих от ключа.

Таким образом, требования, предъявляемые третьей нормальной формой, сильнее требований, накладываемых первой и второй нормальной формой, даже вместе взятых. Фактически в третьей нормальной форме каждый неключевой атрибут зависит от ключа, причем от всего ключа целиком и ни от чего другого, кроме как от ключа.

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

На рисунке 4.1 показана структура таблиц и связи между ними.

 

Рисунок 4.1 – Структура таблиц БД и связи между ними

5 ОПИСАНИЕ АЛГОРИТМОВ РЕАЛИЗУЮЩИХ БИЗНЕС-ЛОГИКУ СЕРВЕРНОЙ ЧАСТИ ПРОЕКТИРУЕМОЙ СИСТЕМЫ

6 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Для установки исполнительного файла приложения необходимо выполнить следующие пункты.

1) Установить JDK.

2) Установить в папку c:\Program Files apache.

3) Установить MySql. При установке указать пароль на пользователя root – 1234568.

4) Импортировать в MySql скрипт с БД.

5) В папке, где установлен apache, надо зайти в webapps, создать там папку ROOT.

6) Далее надо распаковать свой проект. Затем в папке target зайти в war архив и скопировать содержимое в созданную папку ROOT.

7) В папке, где установлен apache, есть папка bin, оттуда необходимо запустить startup.bat

8) В проекте найти файл \webapp\WEB-INF\web.xml. Открыть его и скопировать url-pattern.

9) Затем необходимо открыть браузер, например, Mozilla Firefox. Ввести http://localhost:8080/НАЗВАНИЕ ИЗ url-pattern/.

 Получится  http://localhost:8080/cosmSalon/. Нажать Enter.

7 РЕЗУЛЬТАТЫ ТЕСТИРОВАНИЯ РАЗРАБОТАННОЙ СИСТЕМЫ И ОЦЕНКА ВЫПОЛНЕНИЯ ЗАДАЧ

Этап тестирования и отладки является важным шагом на пути создания программных средств.

 Данная программа была протестирована в операционной системе – Windows XP SP3. При создании данной программы возникали проблемы и ошибки, которые были исправлены, например, часто в каком-либо компоненте нужно было изменять свойства для правильной работы программы. В общем, значительных ошибок не было, и компоненты работают исправно. Некоторые процедуры и функции ни хотели выполнять свои действия, т.к. отсутствовало подключение связи форм. В целом все ошибки были исправлены, и программа функционирует без проблем.

После запуска программного средства откроется окно авторизации, в котором необходимо ввести логин и пароль менеджера (рис. 7.1).

 

Рисунок 7.1 – Форма ввода логина и пароля

 

Если логин и пароль неверны, то система выдаст сообщение об ошибке и даст возможность повторного введения данных (рис. 7.2 ). После успешной авторизации откроется Главное окно программы с приветствием (рис. 7.3).

 

Рисунок 7.2 - Неверные логин и пароль

 

Рисунок 7.3 – Главное окно

 

Слева расположены пункты меню:

- справочник услуг;

- справочник клиентов;

- справочник мастеров;

- журнал регистрации.

Подробно рассмотрим все пункты меню.

При выборе пункта «Справочник услуг» открывается форма добавления записи, а ниже расположена таблица со списком услуг (рис. 4). Для того чтобы добавить новую услугу в таблицу необходимо заполнить поля формы добавления записи, а затем нажать кнопку «Добавить». Для редактирования и удаления записи необходимо выбрать необходимое действие для определенной записи в таблице.

 

Рисунок 7.4 - Справочник услуг

 

При выборе пункта «Справочник клиентов» открывается форма добавления записи, а ниже расположена таблица со списком клиентов (рис. 7.5).  Добавление, редактирование и удаление записей в таблицу «Справочник клиентов» производится аналогичным способом, описанным выше.

 

Рисунок 7.5 – Справочник клиентов

 

При выборе пункта «Справочник мастеров» открывается форма добавления записи, а ниже расположена таблица со списком мастеров (рис. 7.6).  Добавление, редактирование и удаление записей в таблицу «Справочник мастеров» производится аналогичным способом, описанным выше.

Рисунок 7.6 – Справочник мастеров

 

При выборе пункта «Журнал регистрации» отображается список мастеров (рис. 7.7).

Рисунок 7.7 – Список мастеров для журнала регистрации

 

При выборе необходимого мастера откроется журнал со списком забронированных клиентов и календарь (рис. 7.8).

Рисунок 7.8 – Журнал регистрации

 

Журнал имеет следующие поля:

- поле «Время» (расположены интервалы времени мастера для приема клиентов);

- поле «Статус» (отображает значение «Свободно» или «Забронировано»);

- поле «Клиент»;

- поле «Услуга»;

- поле «Действие» («Забронировать» или «Отменить»).

Рядом с Журналом размещен календарь для удобного поиска нужной даты и просмотра записей клиентов на эту дату.

Для бронирования клиента, необходимо напротив требуемой даты нажать кнопку «Забронировать», после чего появится форма резервирования (рис. 7.9). В форме необходимо выбрать клиента и услугу из выпадающего списка и нажать кнопку «Зарезервировать». Таким образом, в журнале появится запись клиента к мастеру ан определенное время и необходимую услугу косметического салона. Если по каким-либо причинам клиент откажется от визита, то бронирование в журнале можно отменить.

Рисунок 7.9 – Форма резервирования

Заключение

В результате курсового проекта было создано программное средство, позволяющее автоматизировать работу менеджера косметического салона. Поставленная задача выполнена с использованием наиболее актуальных технологий разработки программного обеспечения. Информационная система реализована в виде web-приложения на языке Java. Интерфейс приложения оформлен с использованием каскадных таблиц стилей(CSS). В приложении предусмотрена проверка данных, вводимых пользователем. Для создания интуитивного и удобного интерфейса применен набор стандартных элементов управления. Взаимодействие между программой и пользователем максимально удобно. Программа отлажена, протестирована и готова для демонстрации и практического использования. В ходе выполнения курсового проекта усовершенствованы знания в области проектирования и создания баз данных на языке Java, приобретены навыки использования научно-технической информации. Программное средство предоставляет менеджеру возможность бронирования клиентов в системе. Так же позволяет полную информацию о мастерах косметического салона, услугах и клиентах. Кроме того, программное средство разработано для функционирования под управлением операционной среды Windows, так как большинство пользователей работают в этой системе, следовательно, имеется больше шансов для распространения программного продукта. Программа положительно реагирует на все возникающие в процессе работы программы ситуации и также надежно функционирует на ПК любой приемлемой конфигурации. В целом задача была выполнена в полной мере, и программа может быть использована на практике. Данный программный продукт выполнен в соответствии с ГОСТами и требованиями, предъявляемыми к технической документации.

Список использованных источников

1. [печатное издание] UML. Классика CS. 2-у изд./Пер. с англ.; Под общей редакцией проф. С.Орлова - СПб.: Питер, 2006. - 736 с.: ил.
2. [печатное издание] Блинов И.Н. , Романчик В.С. Java. Промышленное программирование – УниверсалПресс, 2007. - 704с.
3. [печатное издание] Басс Л., Клементс П., Кацман Р. Архитектура программного обеспечения на практике. 2-е издание. - СПб.: Питер, 2006. - 575 с.: ил.
4. [url] Программа https://transfiles.ru/cmlwu

Приложения

1. [Приложение] Приложение 5ed26d2464425_Приложения.docx
2. [Задание] Задание 5ed3d2d8d0156_Шаблон Гмир 784371.doc