Рис. 23. Диаграмма кооперации действий варианта использования «Изменение приемки»
Вариант использования «Удаление приемки»:
Главное действующее лицо: администратор.
Контекст использования: администратор удаляет данные о приемке в системе.
Результат успешного завершения: в системе удаляет запись о приемке в статусе «черновик».
Сценарий:
- Выбор меню приемки товара на главной форме;
- Запрос документов о приемке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных о приемке на форме;
- Выбор документа для удаления;
- Проверка статуса документа (в статусе «черновик»);
- Пользователь нажимает удалить приемку;
- Запрос подтверждения удаления;
- Пользователь подтверждает удаление;
- Направляется запрос в БД на удаление данных;
- База возвращает информацию об успешном удалении данных;
- Отображение списка документов по приемке, без удаленной записи.
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 24 и 25.
Рис. 24. Диаграмма последовательности действий варианта использования «Удаление приемки»
Рис. 25. Диаграмма кооперации действий варианта использования «Удаление приемки»
Вариант использования «Проведение документа»:
Главное действующее лицо: пользователь.
Контекст использования: пользователь проводит выбранный документ.
Результат успешного завершения: система меняет статус документа на проведен и пересчитывает остатки на складах.
Сценарий:
- Выбор меню приемки/отгрузки товара на главной форме;
- Запрос документов о приемке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных о приемке/ отгрузки на форме;
- Выбор документа для проведения (документ в статусе «черновик»);
- Проверка статуса документа (в статусе «черновик»);
- Пользователь нажимает провести документ;
- Направляется запрос в БД на проведение документа и пересчет остатков;
- База возвращает информацию об успешной смене статуса;
- Отображение обновленного списка документов.
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 26 и 27.
Рис. 26. Диаграмма последовательности действий варианта использования «Проведение документа»
Рис. 27. Диаграмма кооперации действий варианта использования «Проведение документа»
Вариант использования «Отмена проведения документа»:
Главное действующее лицо: администратор.
Контекст использования: администратор отменяет проводку документа.
Результат успешного завершения: система меняет статус документа на «черновик» и пересчитывает остатки на складах.
Сценарий:
- Выбор меню приемки/отгрузки товара на главной форме;
- Запрос документов о приемке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных о приемке/ отгрузки на форме;
- Выбор документа для отмены проведения (документ в статусе «подтверждён»);
- Проверка статуса документа (в статусе «подтверждён»);
- Пользователь нажимает отменить проводку документа;
- Направляется запрос в БД на отмену проведения документа и пересчет остатков;
- База возвращает информацию об успешной смене статуса;
- Отображение обновленного списка документов.
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 28 и 29.
Рис. 28. Диаграмма последовательности действий варианта использования «Отмена проведения документа»
Рис. 29. Диаграмма кооперации действий варианта использования «Отмена проведения документа»
Вариант использования «Формирование отчетов»:
Главное действующее лицо: пользователь.
Контекст использования: пользователь выбирает вид отчета, вводит данные для фильтрации, нажимает сформировать отчет.
Результат успешного завершения: система выгружает данные из БД в Excel формате с форматированием и оформлением.
Сценарий:
- Выбор меню отчеты – вид отчета;
- Запуск интерфейса формы с набором фильтров для отчета;
- Отображение формы на экране пользователя;
- Ввод данных для фильтрации;
- Запрос на получение данных из БД;
- Возврат данных из БД для формирования отчета;
- Формирование отчета в формате Excel;
- Отображение файла сформированного отчета.
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 30 и 31.
Рис. 30. Диаграмма последовательности действий варианта использования «Формирование отчетов»
Рис. 31. Диаграмма кооперации действий варианта использования «Формирование отчетов»
Вариант использования «Добавление отгрузки»:
Главное действующее лицо: пользователь.
Контекст использования: пользователь добавлять данные об отгрузке в систему.
Результат успешного завершения: в системе добавляется запись об отгрузке в статусе «черновик».
Сценарий:
- Выбор меню приемки товара на главной форме;
- Запрос документов об отгрузке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных об отгрузке на форме;
- Переход в режим отгрузке товара, путем нажатия на кнопку «Добавить отгрузку»;
- Запуск интерфейса формы отгрузки;
- Отображение формы на экране компьютера пользователя;
- Пользователь вводит данные по отгрузке;
- Система проверяет заполненность всех необходимых полей;
- Пользователь нажимает сохранить отгрузку;
- Данные введённые пользователем направляется через запрос в БД;
- База возвращает информацию об успешной записи данных;
- Отображение нового списка документов по отгрузке, с новой строкой в статусе «черновик».
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 32 и 33.
Рис. 32. Диаграмма последовательности действий варианта использования «Добавление отгрузки»
Рис. 33. Диаграмма кооперации действий варианта использования «Добавление отгрузки»
Вариант использования «Изменение отгрузки»:
Главное действующее лицо: пользователь.
Контекст использования: пользователь изменяет данные об отгрузке в системе.
Результат успешного завершения: в системе изменяет запись о приемке в статусе «черновик».
Сценарий:
- Выбор меню приемки товара на главной форме;
- Запрос документов об отгрузке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных об отгрузке на форме;
- Выбор документа для изменения;
- Переход в режим изменение отгрузки, путем нажатия на кнопку «Изменить отгрузку»;
- Запуск интерфейса формы отгрузки;
- Отображение формы на экране компьютера пользователя с данными по отгрузке;
- Пользователь изменяет данные по приемке;
- Система проверяет заполненность всех необходимых полей;
- Пользователь нажимает сохранить отгрузку;
- Данные введённые пользователем направляется через запрос в БД;
- База возвращает информацию об успешной записи данных;
- Отображение списка документов по отгрузке, с измененной строкой в статусе «черновик».
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 34 и 35.
Рис. 34. Диаграмма последовательности действий варианта использования «Изменение отгрузки»
Рис. 35. Диаграмма кооперации действий варианта использования «Изменение отгрузки»
Вариант использования «Удаление отгрузки»:
Главное действующее лицо: администратор.
Контекст использования: администратор удаляет данные об отгрузке в системе.
Результат успешного завершения: в системе удаляет запись об отгрузке в статусе «черновик».
Сценарий:
- Выбор меню приемки товара на главной форме;
- Запрос документов об отгрузке товара в БД с указанием склада;
- Получение списка из БД;
- Отображение данных об отгрузке на форме;
- Выбор документа для удаления;
- Проверка статуса документа (в статусе «черновик»);
- Пользователь нажимает удалить приемку;
- Запрос подтверждения удаления;
- Пользователь подтверждает удаление;
- Направляется запрос в БД на удаление данных;
- База возвращает информацию об успешном удалении данных;
- Отображение списка документов по приемке, без удаленной записи.
Альтернативные сценарии:
Если во время выполнения основного сценария обнаружится ошибка, система выводит сообщение об ошибке и пользователь может вернуться к началу сценария или закончить его выполнении.
Если вариант использования выполнен успешно, список документов обновляется. В противном случае состояние системы не изменяется. Сценарий отображен на рисунках 36 и 37.
Рис. 36. Диаграмма последовательности действий варианта использования «Удаление отгрузки»
Рис. 37. Диаграмма кооперации действий варианта использования «Удаление отгрузки»
2.3. Диаграммы классов
Диаграммы классов отражают взаимодействие между классами системы. Классы можно рассматривать как типы объектов. На диаграммах классов изображаются также атрибуты классов, операции классов и ограничения, которые накладываются на связи между классами [17].
В потоках событий варианта использования выявляются классы трех типов. Граничные классы (boundary) – служат посредниками при взаимодействии внешних объектов с системой. Как правило, для каждой пары «действующее лицо – вариант использования» определяется один граничный класс. Типы граничных классов: пользовательский интерфейс (обмен информацией с пользователем без деталей интерфейса – кнопок, списков, окон), системный интерфейс и аппаратный интерфейс (используемые протоколы, без деталей их реализации).
Классы – сущности (entity) – представляют собой ключевые абстракции (понятия) разрабатываемой системы. Источники выявления классов – сущностей: ключевые абстракции, созданные в процессе архитектурного анализа, глоссарий, описание потоков событий вариантов использования [7].
Управляющие классы (control) – обеспечивают координацию поведения объектов в системе. Могут отсутствовать в некоторых вариантах использования, ограничивающихся простыми манипуляциями с хранимыми данными. Как правило, для каждого варианта использования определяется один управляющий класс. Примеры управляющих классов: менеджер транзакций, координатор ресурсов, обработчик ошибок [11].
Связь представляет собой семантическую взаимосвязь между классами. Она дает возможность узнавать об атрибутах, операциях и связях другого класса. Иными словами, чтобы один класс мог послать сообщение другому на диаграмме последовательности или взаимодействия, между ними должна существовать связь. На представленной диаграмме классов используется ассоциативная двунаправленная связь. Ассоциация – это семантическая связь между классами. На диаграмме классов ассоциации изображаются в виде линии. Двунаправленность связи отображает прием и передачу сообщений всеми классами реализации [20].
Так, диаграмма классов для варианта использования «Авторизация» выглядит следующим образом (рисунок 38).
Рис. 38. Диаграмма классов «Авторизация»
Диаграмма классов для диаграммы вариантов использования «Ведение справочников» содержит классы, представленные на рисунке 39.
Рис. 39. Диаграмма классов «Ведение справочников»
Диаграмма классов для диаграммы вариантов использования «Обработка поставки» содержит классы, представленные на рисунке 40.
Граничащие классы: главная форма, поставка, выбор товара.
Классы – сущности: остатки товара на складе, временная таблица для поставки, список поставок, список номенклатуры поставок, список номенклатуры.
Классы-контейнеры (процедуры): процедура обновления сохраненных данных, процедура удаления, пересчета остатков.
Рис. 40. Диаграмма классов «Обработка поставки»
Диаграмма классов для диаграммы вариантов использования «Обработка отгрузки» содержит классы, представленные на рисунке 41.
Граничащие классы: главная форма, поставка, выбор товара.
Классы – сущности: остатки товара на складе, временная таблица для отгрузки, список отгрузок, список номенклатуры, список номенклатуры.
Классы-контейнеры (процедуры): процедура обновления сохраненных данных, процедура удаления, пересчета остатков.
Рис. 41. Диаграмма классов «Обработка отгрузки»
Диаграмма классов для диаграммы вариантов использования «Формирование отчетов» содержит классы, представленные на рисунке 42, так как принцип идентичен для всех видов отчетов, то рассмотрим только процесс.
Граничащие классы: главная форма, отчет об отгрузке.
Классы – сущности: список отгрузок, список товаров в отгрузках, список номенклатуры, список складов, список сотрудников, список контрагентов.
Рис. 42. Диаграмма классов «Формирование отчетов»
