Файл: Анализ и оценка средств реализации объектно-ориентированного подхода к проектированию экономической информационной системы.pdf
Добавлен: 30.06.2023
Просмотров: 55
Скачиваний: 3
Для описания поведения системы и ее отдельных элементов (поведенческих моделей) в UML предусмотрено четыре вида диаграмм: состояний, кооперации, последовательности и деятельности. Первые три диаграммы хоть и отображают динамические аспекты системы, но они недостаточно формальны для детального описания алгоритмов работы, поэтому рассмотрим диаграмму деятельности.
Диаграммы деятельности - это технология, позволяющая описывать логику процедур, бизнес-процессы и потоки работ. Во многих случаях они напоминают блок-схемы, но принципиальная разница между диаграммами деятельности и нотацией блок-схем заключается в том, что первые поддерживают параллельное процессы (Фаулер M. UML Основы, 3 е издание. – Пер. с англ. – СПб: Символ Плюс, 2004. – С. 139).
Каждая такая диаграмма акцентирует внимание на последовательности выполнения определенных действий или элементарных операций, которые все вместе приводят к получению желаемого результата. Диаграммы могут быть построены для отдельного варианта использования, кооперации, метода и т. д.
Каждое состояние на диаграмме деятельности соответствует выполнению некоторого действия или деятельности, а переход в следующее состояние срабатывает только при их завершении.
Для моделирования работы склада создадим диаграмму деятельности материально ответственного лица. На рисунке 2 приведена диаграмма приема/поставки товара, а на рисунке 3 – выдачи/получения.
Рисунок 2
Рисунок 3
Из описаний выше составляем диаграмму классов для нашей модели, рисунок 4.
Классами называются базовые элементы любой объектно-ориентированной системы. Класс — это множество объектов, связанных общностью свойств, поведения, связей и семантики (Вендров А. М. Проектирование программного обеспечения экономических информационных систем. - М.: Финансы и статистика, 2006 - С. 167).
В рамках модели каждому классу присваивается уникальное имя, отличающее его от других классов.
Графически класс представляет собой прямоугольник, разделенный на три части: имя класса, его атрибуты и операции.
Атрибут класса служит для представления отдельного свойства или признака, который является общим для всех объектов данного класса. Атрибуты класса записываются во второй сверху секции прямоугольника класса. Эту секцию часто называют секцией атрибутов.
Операция - это сервис, предоставляемый каждым экземпляром или объектом класса по требованию своих клиентов, в качестве которых могут выступать другие объекты, в том числе и экземпляры данного класса.
Операции класса записываются в третьей сверху секции прямоугольника класса, которую часто называют секцией операций. Совокупность операций характеризует функциональный аспект поведения всех объектов данного класса. Запись операций класса в языке UML также стандартизована и подчиняется определенным синтаксическим правилам. При этом каждой операции класса соответствует отдельная строка, имени операции, выражения типа возвращаемого операцией значения и, возможно, строка-свойство данной операции.
Диаграмма классов описывает типы объектов системы и различного рода статические отношения, которые существуют между ними. На диаграммах классов отображаются также свойства классов, операции классов и ограничения, которые накладываются на связи между объектами (Фаулер M. UML Основы, 3 е издание. – Пер. с англ. – СПб: Символ Плюс, 2004. – С. 62).
Непрерывная линия между двумя классами, направленная от исходного класса к целевому классу называется ассоциацией. На каждом конце линии расположены знаки, обозначающие мощность конца ассоциации.
Мощность показывает, как много объектов участвует в связи. Мощность - это число объектов одного класса, связанных с одним объектом другого класса. Для каждой связи можно обозначить два показателя мощности - по одному на каждом конце связи. В языке UML приняты следующие нотации для обозначения мощности (Вендров А. М. Проектирование программного обеспечения экономических информационных систем. – М.: Финансы и статистика, 2006 - С. 173 - 174).
Значения мощности:
- * - много;
- О - нуль;
- 1 - один;
- 0..* - нуль или больше;
- 1..* - один или больше;
- 0..1 – нуль или один;
- 1..1 – ровно один.
В большинстве случаев мощности определяются своими нижней и верхней границами. Нижняя граница может быть нулем или положительным числом, верхняя граница представляет собой положительное число или * (без ограничений). Если нижняя и верхняя границы совпадают, то можно указать одно число; поэтому 1 эквивалентно 1..1, а * является сокращением 0..*.
В рассматриваемом примере классами являются: поставщик, получатель материально-ответственное лицо, карточка складского учёта, приходный и расходный ордера, справочник товаров. В каждом классе есть свои атрибуты и операции. Например, у класса поставщик имеются атрибуты: наименование организации, юридический адрес, телефон/факс, расчётный счёт; операции: AddSuplier() – добавление поставщика, RemoveSuplier() – удаление поставщика, GetSuplier() – получение информации о поставщике, GetAllSuplier() – получении списка поставщиков.