
- •Методическое пособие для студентов «Построение кис в среде PowerDesigner с использованием языка uml»
- •PowerDesigner. Введение.
- •Лабораторная работа №1. Диаграмма классов (ClassDiagram) и Диаграмма Объектов (ObjectDiagram)
- •Лабораторная работа №2. Диаграммы прецедентов (Use-Case diagram)
- •Лабораторная работа №3. Диаграммы состояний (StateChart diagram)
- •Лабораторная работа №4. Диаграммы последовательностей (SequenceDiagram)
- •Лабораторная работа №5. Диаграммы коммуникации (Collaboration Diagram)
- •Лабораторная работа №6. Диаграммы видов деятельности (ActivityDiagram)
- •Лабораторная работа №7. Диаграмма компонентов (Component Diagram). Диаграмма развертывания (Deployment Diagram). Диаграмма пакетов
- •Лабораторная работа №8. Генерация отчетов в PowerDesigner
- •Лабораторная работа №9. Концептуальное и физическое моделирование данных (cdMиPdMмодели)
Российский Государственный Социальный Университет
Курский институт социального образования
Кафедра ИсиТ
Методическое пособие для студентов «Построение кис в среде PowerDesigner с использованием языка uml»
Курск 2009
Краткое содержание:
В данном методическом пособии рассматривается работа с пакетом PowerDesigner(отSybase). Описаны правила построения диаграмм вPowerDesigner, приведены задания для закрепления изученного материала. Также рассмотрена работа с отчетами, построение концептуальной и физической модели.
PowerDesigner. Введение.
PowerDesignerсостоит из: окна просмотра, рабочей области, панели инструментов и окна для вывода данных (см. рисунок). Вы можете настроить рабочее пространство так, как вам будет удобно.
рис.3.1.
Чтобы создать новый проект, необходимо открыть: File->New->выбрать необходимую диаграмму. В данном случае, будем рассматриватьобъектно-ориентированную модель(Object-Oriented Model). Аналогично создаются бизнес, концептуальная и физическая модели, а также возможно сформировать отчеты. При создании объектно-ориентированной модели, необходимо указать язык программирования и модель диаграммы, которая будет создана первой.
Чтобы создать новую диаграмму в существующем проекте, необходимо в рабочей области нажать на правую кнопку мыши и выбрать: Diagram -> New Diagram -> тот тип диаграммы, который Вам необходим (ClassDiagram,Use-CaseDiagramи т.д.).
Чтобы нарисовать саму диаграмму, необходимо переносить выбранные на панели инструментов объекты на рабочую область.
Чтобы открыть свойства созданного с помощью инструмента объекта, необходимо нажать на него два раза левой кнопкой мыши.
Чтобы в созданной диаграмме были видны все объект и связи, необходимо настроить видимость данных объектов на рабочей области, для этого: открыть Tools->DisplayPreferences-> поставить галочки рядом с необходимыми полями.
Лабораторная работа №1. Диаграмма классов (ClassDiagram) и Диаграмма Объектов (ObjectDiagram)
Общее описание
Диаграммы классов являются отправной точкой процесса разработки. Они помогают при анализе, позволяя аналитику общаться с клиентом в «привычных» ему терминах и стимулируя процесс выявления важных деталей в проблеме, которую требуется решить.
Класс – это категория или группа вещей, которая имеет сходные атрибуты и общие свойства. Атрибуты описывают перечень значений, в рамках которых указываются свойства объектов этого класса. Операция – это то, что может выполнять класс, либо то, что вы можете выполнять над данным классом.
В UMLимена классов чаще всего включают несколько слов. Каждое слово в имени класса начинается с прописной буквы, пробелы между словами отсутствуют. Имена атрибутов и операций строятся по тем же правилам, но первая буква является строчной (например, загрузитьПрограмму)
Класс представляется прямоугольником, разделенным на три области:
верхняя часть содержит имя класса
средняя часть - атрибуты,
нижняя часть – операции
рис.3.2.
Построение в PowerDesigner
Рассмотрим основные возможности PowerDesignerпри создании диаграммы классов:
Создание класса – с помощью инструментаClass на панели инструментовPallete. В свойствах (ClassProperties) указывается:
Вкладка General: Название класса и название в программном коде в полях NameиCode,
Вкладка Attributes - вносятся атрибуты класса. Каждый атрибут имеет свои свойства, их можно указать в свойствах атрибута (для этого нажать на введенный атрибут два раза левой кнопкой мыши – откроется формаAttributeProperties). В свойствах атрибута заполняются поляNameиCode, выбирается тип для каждого значения атрибута (строкаData Type). Для того чтобы указать значение атрибута по умолчанию, необходимо перейти на вкладкуDetail и в полеInitial value вписать заданное значение.
Вкладка Operations – вносятся операции, которые может выполнять данный класс. Каждая операция имеет свои свойства, их можно указать в свойствах операции (для этого нажать на введенный атрибут два раза левой кнопкой мыши – откроется формаOperationProperties). В свойствах операции заполняются поляNameиCode, выбирается тип возвращаемого значения (строкаReturn Type). Также возможно указать параметры операции и их типы (вкладка Parameters)
Если список атрибутов и/или операций слишком велик, можно уточнить информацию с помощью ключевого слова (стереотипа), поле Stereotype.
Также дополнительную информацию можно внести в поле комментария Comment или присоединить комментарий к классу с помощью инструментаNote.
Ассоциации:если классы взаимодействуют друг с другом, то такое взаимодействие называется ассоциацией и изображается вPowerDesignerпри помощи инструментаAssociation. В свойствах (AssociationProperties) указывается:
Вкладка General:название ассоциации и название в программном коде (поляNameиCode)
Если один класс ассоциируется с другим, каждый из них играет свою роль в этой ассоциации. Роли указываются в полях RoleA(для класса А) иRoleВ (для класса В)
рис.3.3.
Ассоциации могут работать в разных направлениях, а также могут быть более сложными - с одним классом может ассоциироваться несколько других.
Подобно классам, ассоциация может иметь атрибуты и операции. Для отображения класса ассоциации в PowerDesignerиспользуется тот же инструментAssociation, но соединяются не два класса а ассоциация и класс. А класс ассоциации сам может быть связан с другими классами (см. рисунок).
Кратность– количество объектов одного класса, которые могут быть связаны с определенным количеством объектов другого класса, см. рисунок (ВPowerDesigner– открыть в свойствах ассоциации вкладкуDetail и установить указать кратность в полеMultiplicity). Кратность может быть: 1:1, 1:m, m:1, m:m.
рис.3.4.
Класс может ассоциироваться сам с собой (рефлекторная ассоциация), см. пример на рисунке:
рис.3.5.
Наследование:класс может наследовать атрибуты и операции другого класса. Наследующий класс является дочерним по отношению к родительскому, от которого он наследуется. Связь родительского и дочернего классов соответствует отношениюявляется видом. ВPowerDesignerдля изображения наследования используется инструментGeneralization.
Абстрактные классы предназначены только для использования в качестве базовых для наследования и не порождают своих объектов.
Зависимость:взаимосвязь при использовании одного класса другим называется зависимостью. Наиболее общий случай зависимости – это использование одного класса в сигнатуре операции другого класса. Для изображения зависимости применяется инструментDependency. На примере ниже изображено два класса: СистемаиФорма.У класса Система есть операцияотобразитьФорму ().Отображаемая системой форма зависит от того, какой экземпляр классаФорма выбрал пользователь.
рис.3.6.
Агрегация – взаимосвязь, при которой класс состоит из некоторого количества классов-компонентов, называется агрегацией. Компоненты и класс, который они составляют, находятся в ассоциациичасть-целое. Агрегацию можно представить в виде дерева, корнем которого является «целое», а листьями – его компоненты. ВPowerDesignerприменяется инструментAggregation. Чтобы проиллюстрировать агрегацию на примере, смоделируем диаграмму меню в ресторане. В свойствах каждого класса и ассоциации необходимо указать все те поля, описание которых приведено выше.
рис.3.7.
Композит – это строгий тип агрегации, характеризующийся тем, что каждый элемент может принадлежать только одному целому. Например, компоненты стола – столешница и ножки – составляют композит. Для отображения вPowerDesignerиспользуется инструментComposition.
Интерфейсы и реализация:
Интерфейс - это набор операций, которые задают некоторые аспекты поведения класса и представляют его для других классов..
В PowerDesignerпервый вариант - добавить с помощью инструментаInterface(свойства заполняются аналогично свойствам класса), второй вариант – добавить автоматически – нажать правой кнопкой мыши на созданный класс и в списке выбратьCreate Interface(в этом случае операции, прописанные в созданном классе, добавятся автоматически).
Взаимосвязь между классом и его интерфейсом называется отношением реализации (инструмент Realization)
Пример: при использовании автомата по продаже карт экспресс оплаты, мы взаимодействуем с ним через интерфейс. Отношение панели управления и автомата по продаже карт оплаты – это реализация, а отношение человека и интерфейса ПанельУправления – это зависимость (инструмент Dependency):
рис.3.8.
Видимость:данный термин применяется по отношению к атрибутам и операциям. Выделяют три области видимости:
Открытая – могут использовать другие классы;
Защищенная – могут использовать только наследники данного класса;
Закрытая – используются только самими классами.
В PowerDesignerвидимость указывается в свойствах во вкладкеGeneral, в полеVisibility.
Задание для самостоятельной работы
Задача – разработать программное обеспечение для ресторана с удобным интерфейсом. Для этого необходимо: несколько окон пользовательского интерфейса. Системе нужны пользовательские интерфейсы карманного компьютера для ввода заказа, изменения заказа, контроля состояния заказа, состояния клиента и отправки сообщений помощнику и уборщику. Шеф-повар должен иметь возможность отслеживать заказ. Каждый пользователь данной системы должен иметь возможность ответить на вопросы клиента и отследить его состояние. Необходима база данных для записи всех заказов. Каждая запись должна содержать номер столика, пункты заказа, время внесения заказа, имя официанта, статус заказа (действителен или нет) и т.п. Должна быть подсистема обработки заказов, позволяющая передать заказ по назначению и зарегистрировать его в БД.
Итак, в нашу систему входят: Интерфейс пользователя, GUIОфицианта,GUIШеф-повара, Обработчик заказов, БД заказов. Смоделируйте диаграмму классов и добавьте операции каждому классу.
Диаграмма объектов (Object Diagram)
Общее описание
Объект – это экземпляр класса – особая сущность, которая имеет заданные значения атрибутов и операций. В UMLобъект изображается также как и класс в виде прямоугольника, но с подчеркнутым именем. Наименование экземпляра размещено слева от двоеточия, а наименование класса – с правой стороны. Имя объекта начинается со строчной буквы. Существуют анонимные объекты (т.е. объект принадлежит какому-то классу, но имени не имеет).
Диаграмма объектов содержит конкретную информацию об экземплярах класса и их связях с другими экземплярами во времени.
Построение в PowerDesigner
Создать диаграмму объектов: Diagram -> New Diagram -> Object Diagram
Создать объект можно с помощью инструмента Object. В свойствах каждого объекта задать название объекта в поляхNameиCode. В полеClassвыбрать из списка класс, к которому относится объект.
Если выбран класс, к которому относится данный объект, то на вкладке Attribute Value, можно увидеть атрибуты класса. Если поставить галочку рядом с атрибутом класса, то он будет являться атрибутом объекта.
Соединить объекты можно с помощью инструмента Instance Link.
Зависимость можно показать с помощью инструмента Dependecy.
Пример: Диаграмма объектов, моделирующая экземпляры классов
рис.3.9.
Задание для самостоятельной работы
Смоделировать диаграмму объектов, в которой присутствуют ниже перечисленные экземпляры классов: официант, бармен, шеф-повар, управляющий. Официант информирует шеф-повара о поступивших заказах, бармен получает задание от официанта о заказе, поступившем от клиента, управляющий смотрит за работой бармена, официанта, шеф-повара.