- •Проектирование информационных систем
- •Обеспечение видимости посредством атрибутов
- •Обеспечение видимости посредством параметров
- •Локальная видимость
- •Глобальная видимость
- •Вопрос 2. Модель проектирования: создание диаграммы классов
- •Классы из модели предметной области и модели проектирования
- •Создание диаграммы классов для pos-системы тт Алгоритм построения диаграмм классов
- •Добавление имен методов
- •Выбор имен методов
- •Имена методов: create
- •Имена методов: методы доступа
- •Имена методов: сложные объекты
- •Имена методов: синтаксис с учетом языка
- •Добавление дополнительной информации о типах
- •Добавление ассоциаций и информации о навигации
- •Добавление зависимостей
Федеральное государственное образовательное учреждение
высшего профессионального образования
«Пермская государственная сельскохозяйственная академия
имени академика Д.Н. Прянишникова»
Проектирование информационных систем
специальность 080801 «Прикладная информатика (в экономике)»
Лабораторная работа № 11
Тема: МОДЕЛЬ ПРОЕКТИРОВАНИЯ: СОЗДАНИЕ ДИАГРАММЫ КЛАССОВ
Учебные вопросы:
Модель проектирования: области видимости.
Модель проектирования: создание диаграммы классов.
Литература, техническое и программное обеспечение:
Методическая разработка по теме занятия.
Класс ПЭВМ.
Вопрос 1. Модель проектирования: области видимости
Диаграммы взаимодействия для системных событий (enterItem и т.д.) иллюстрируют процесс передачи сообщений между объектами. Но чтобы некоторый объект-отправитель мог отослать сообщение объекту-получателю, получатель должен быть виден отправителю, т.е. отправитель должен содержать некую ссылку или указатель на объект-получатель.
Например, для отправки сообщения getSpecification от объекта Register к объекту ProductCatalog необходимо обеспечить видимость экземпляра объекта ProductCatalog для экземпляра объекта Register (рис. 1.1). Для создания диаграммы взаимодействия, на которой сообщение передается от экземпляра объекта Register к экземпляру ProductCataloq, необходимо, чтобы объект ProductCatalog был виден объекту Register. Типичным решением такой проблемы является использование ссылки на экземпляр ProductCatalog в качестве атрибута объекта Register.
При разработке взаимодействующих между собой объектов следует обеспечить необходимый для передачи сообщений уровень видимости.
В языке UML для иллюстрации областей видимости существуют специальные обозначения.
Рисунок 1.1 – Необходимость обеспечения видимости объекта ProductCatalog
для объекта Register1
В обычном понимании область видимости (visibility) обеспечивает способность одного объекта видеть другой объект или ссылаться на него. В более общем смысле это понятие связано с понятием контекста (или области действия): попадает ли один ресурс (например, экземпляр объекта) в контекст другого?
Существует четыре основных способа обеспечения видимости объекта В объектом А:
Посредством атрибутов. Объект В является атрибутом объекта А.
Посредством параметров. Объект В является параметром метода объекта А.
Локальная видимость. Объект В объявлен как локальная переменная в методе объекта А.
Глобальная видимость. Объект В каким-то образом виден глобально.
Обеспечение видимости посредством атрибутов
Видимость посредством атрибутов (attribute visibility) между объектами А и В существует в том случае, когда В является атрибутом А. Такой тип видимости можно назвать постоянным, поскольку видимость между объектами поддерживается до тех пор, пока существуют сами объекты. В объектно-ориентированных системах это очень популярная форма обеспечения видимости.
В качестве примера рассмотрим определение класса Register на языке Java, в котором обеспечивается видимость объекта ProductCataiog посредством атрибутов (переменных-членов Java).
Такая видимость между объектами необходима, поскольку на диаграмме взаимодействия для события enterItem, представленной на рис. 1.2, объект Register отправляет сообщение getSpecification объекту ProductCatalog.
Рисунок 1.2 – Видимость, обеспеченная с помощью атрибутов