Универсальный язык моделирования ( Unified Modeling Language uml )
UML - это универсальный язык моделирования [5], разработанный в фирме Rational Software при участии других партнеров. Разработка методологии началась в октябре 1994 года под руководством сотрудников Rational Software Гради Буча ( Grady Booch ) и Джима Рамбаха (Jim Rumbaugh ). Через год в октябре 1995 года появился проект языка UML 0.8. Далее к главным авторам присоединился Ивар якобсон ( Ivar Jacobson ). В 1996 году появился проект UML 0.9. Далее очень многие организации проявили интерес к данной методологии. Был создан консорциум UML партнеров, в который вошли такие известные фирмы как DEC, HP, IBM, Oracle, Microsoft и другие. После создания такой группы появились спецификации UML 1.0 и UML 1.1.
Пакеты, как средство работы с большими проектами
Пакеты представляют собой универсальное средство для группирования элементов моделей. Пакеты могут вкладываться друг в друга и могут содержать пакеты или элементы моделей. Проект в целом может рассматриваться как один пакет верхнего уровня, в который вложены все остальные составляющие части проекта. Пакет может иметь два графических обозначения: полное и сокращенное. Сокращенное обозначение пакета предназначено для обозначения пакета, входящего в состав другого пакета:
Диаграммы классов и объектов
Диаграмма классов представляет набор:
классов,
типов данных,
интерфейсов и
отношений между ними.
Классы
Графическое представление класса - это прямоугольник, который может быть разделен на три части:
Рис. 7.4. Пример изображения класса.
Верхняя часть прямоугольника содержит имя класса, средняя - атрибуты, нижняя - методы поведения ( операции ). Атрибуты или методы при изображении класса могут быть скрыты для того, что бы подчеркнуть другие аспекты диаграммы классов, например, состав классов и отношения между ними. В этом случае изображение класса принимает простейший вид прямоугольника с именем класса.
Каждый атрибут представляется в следующем виде:
видимость имя: тип = начальное значение
Перед именем может следовать знак обозначающий видимость атрибута для других классов:
+ общедоступный ( public ) атрибут
# защищенный ( protected ) атрибут
-закрытый ( private ) атрибут
Каждый метод представляется в следующем виде:
видимость имя( список параметров ): тип возвращаемого значения
Описатель видимости имеет те же значения, что и для атрибута.
Список параметров представляет собой перечень описателей параметров, разделенных запятой. Описатель каждого параметра имеет вид:
вид имя: тип = значение по умолчанию
вид параметра может быть следующим:
in
входной параметр
out выходной параметр
inout входной и выходной параметр
Текст реализации операции может быть сопоставлен в качестве примечания для каждого метода.
Пример изображения класса представлен на рис.
Рис. Пример изображения класса "Геометрическая фигура".
Интерфейсы
Интерфейсы предназначены для спецификации внешнего вида операций для классов.
Отношения между классами