Разработка модели системы на языке UML

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

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 06.03.2022
Размер файла 600,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://allbest.ru

Лабораторная работа

Разработка модели системы на языке UML

Дисциплина: Объектно-ориентированное моделирование

Введение

Цель: формирование умений разработки модели системы, используя язык UML

Время выполнения: 4 часа

1. Теоретический материал

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

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

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

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

Последовательность построения диаграмм:

· диаграмма прецедентов,

· диаграмма классов,

· диаграмма последовательностей,

· диаграмма кооперации,

· диаграмма состояний,

· диаграмма активности,

· диаграмма развертывания.

Хорошее и полезное упражнение - строить модели классов и отношений между ними для уже написанного вами кода на С++ или Java. Применяйте UML для того, чтобы прояснить неявные детали реализации существующей системы или использованные в ней "хитрые механизмы программирования". Стройте UML-модели, прежде чем начать новый проект. Только когда будете абсолютно удовлетворены полученным результатом, начинайте использовать их как основу для кодирования. Обратите особое внимание на средства UML для моделирования компонентов, параллельности, распределённой, паттернов проектирования. Большинство из этих вопросов мы рассмотрим далее.

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

- Диаграмма вариантов использования (use case diagram)

- Диаграмма классов (class diagram)

- Диаграммы взаимодействия (interaction diagrams)

- Диаграмма последовательности (sequence diagram)

- Диаграмма кооперации (collaboration diagram)

- Диаграмма состояний (statechart diagram)

- Диаграмма деятельности (activity diagram)

2. Система автоматизации для пункта проката видеокассет

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

- имеется ли в наличии кассета с данным названием;

- когда будет возвращена какая-либо кассета из тех, что сданы в прокат;

- является ли данный клиент постоянным клиентом пункта проката (пользовался ли прокатом 5 или более раз).

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

2.1 Диаграмма прецедентов

Диаграмма прецедентов (use case diagram) -- это диаграмма, на которой изображаются отношения между актерами и вариантами использования.

Рисунок 1- Диаграмма прецедентов.

Рисунок 2- Диаграмма прецедентов

На данных диаграмме показаны основные экторы, объекты и их взаимодействия.

Первый эктор - «Клиент». Он может выбрать кассету, взять и вернуть кассету, внести залог и оплатить кассету. Если же клиент, является постоянным, это отмечается в билете, и ему предоставляется возможность заказать какую-либо кассету, которой еще нет в каталоге.

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

2.2 Диаграмма классов

Диаграммы классов-показывают набор классов, интерфейсов, а также их связи.

Рисунок 3- диаграмма классов

На данной диаграмме показаны основные 3 класса. Класс (class) - категория вещей, которые имеют общие атрибуты и операции.

Первый класс «Учет клиентов». Основные атрибуты этого класса- это персональные данные читателя, а именно номер билета, фамилия, имя. А операции в этом классе- узнать является ли данный клиент постоянным клиентом пункта проката (пользовался ли прокатом 5 или более раз).

Второй класс «Каталог кассет». Основные атрибуты этого класса- это данные о кассетах, а именно номер кассеты, название. А операции в этом классе- имеется ли в наличии кассета с данным названием, когда будет возвращена какая-либо кассета из тех, что сданы в прокат.

Третий класс «Регистрация». Это класс вытекает из двух, и служит для соединения двух этих классов, чтоб организовать взаимосвязь между клиентом и каталогом кассет.

Основные атрибуты этого класса - Персональные данные клиента, номер билета, номер кассеты, скор выдачи и сдачи кассеты.А операции в этом классе нет.

2.3 Диаграммы взаимодействия

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

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

На данной диаграмме изображены основные актеры - клиент, прокат кассет, система управления и регистрация кассет. Данная диаграмма описывает процесс получения кассеты в прокате в течении определенного времени. Разберем подробнее.

Рисунок 4- диаграмма последовательности

Все действия пронумерованы так, чтобы проследить в каком порядке идут действия. Всего 10 действий.

Действие 1- клиент обращается в прокат, для получения или сдачи некоторой кассеты, прокату требуется проверить читателя, в системе управления, а именно проверить есть ли у данного клиента билет, если его нет значит это не постоянный клиент.

Действие 2- прокат должен проверить постоянный ли это клиент.

Действие 3- проверка кассет, взятых ранее клиентом.

Действие 4- переходим к поиску кассеты по запросу клиента.

Действие 5- добавление записи о получении новой кассеты.

Действие 6- установить срок сдачи кассеты.

Действие 8-расчитата плату за аренду кассеты в зависимости от срока.

Действие 10- получение залога.

Действие 9-выдача кассеты клиенту.

Таким образом происходит получение кассеты.

Диаграмма кооперации. Диаграмма кооперации - диаграмма взаимодействий, в которой основной акцент сделан на структурной организации объектов, посылающих и получающих сообщения.

Диаграмма кооперации - это альтернативный способ изображения сценария варианта использования. Этот тип диаграмм заостряет внимание на связях между объектами, отображая обмен данными в системе.

Рисунок 5- диаграмма кооперации

На данной диаграмме изображены основные актеры - клиент, прокат кассет, регистрация кассет. Данная диаграмма описывает процесс получения или сдачи кассеты в прокат.

Все действия пронумерованы так, чтобы проследить в каком порядке идут действия. Всего основных 4 действия и 2 дополнительных.

Действие 1- клиент обращается в прокат для приобретения или сдачи кассеты.

Действие 2- прокату требуется проверить клиента, в системе управления, а именно проверить есть ли у данного читателя билет, то есть является ли он постоянными сделать запрос на новую кассету

Система управления проверяет какие кассеты находятся у клиента в данный момент.

Если клиент сдал кассету, прокат проверяет ее состояние.

Действие 3- добавление записи в билет клиента, а именно дата получения и сдачи новой кассеты а также назначение платы за аренду.

Действие 4- система предупреждает о завершении регистрации.

Действие 5- выдача кассеты читателю и получение залога за выданную кассету.

2.4 Диаграмма состояний

Диаграмма состояний показывает, как объект переходит из одного состояния в другое.

Рисунок 6 - диаграмма состояний.

На данной диаграмме представлена схема работы проката. Опишу алгоритм работы данной диаграммы. Представим, что пришел в прокат и хочет взять или сдать кассету. Если клиент хочет сдать кассету, то нужно проверить ее состояние, если оно хорошее то вернуть залог, если плохое то списать кассету. Далее процесс начинается заново. Клиент хочет взять кассету, нужно приступить к ее поиску, если кассета есть в наличии, сделать пометку, взять залог и выдать кассету, иначе узнать про поиск новой кассеты. Так же если клиент хочет заказать кассету нужно проверить является ли клиент постоянным, если да то заказ возможен, иначе невозможен.

2.4 Диаграмма деятельности

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

Рисунок 6 - диаграмма деятельности.

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

Данная диаграмма показывает какое действие выполняет каждый эктор. Клиент хочет заказать кассету нужно проверить является ли клиент постоянным, если да то заказ возможен, иначе невозможен.

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

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

Вывод

В ходе лабораторной работы я сформировала умение разработки модели системы, используя язык UML.

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.