Студопедия
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Во втором случае, модель создается в Bold UML Editor.

Читайте также:
  1. Good, справились. Теперь кликаете правой кнопкой мыши на папке Моя модель...
  2. GT3 R Hybrid, гибридная модель компании Porsche.
  3. Б.14 модель розрахункова
  4. Боже, да этот мир явно нам помогает. Во всяком случае, мне.
  5. В которой говорится о тех богатствах, что хранятся в душе героини, и читатель узнает, как щедро она делится ими с признательным ему автором
  6. В любом случае, каждый желающий непременно выберет себе маршрут по вкусу. И потом, всегда можно прикупить пару сувениров в местных магазинах. Об этом чуть позже.
  7. В том случае, когда Генеральный Совет или секция коммуны прервут свои заседания, в протоколе должен быть указан час, на который назначено возобновление заседания.
  8. ВЕЛИКОЛЕПНАЯ МОДЕЛЬ МАНЬЯКА ДЛЯ ЗНАКОМСТВА В КОНТАКТЕ
  9. Ветхим народом и Моисеевым Законом мир приготовлялся к Первому Пришествию Спасителя. Страдания России приготовляют ко Второму!
  10. Включение в модель регрессии фактора времени

Рассмотрим процесс создания модели, на примере модели приложения, которое должно обеспечивать работу с библиотечным каталогом, содержащим информацию об авторах и написанных ими книгах.

В целях упрощения будем считать, что автор характеризуется именем (то есть фамилией), а книга — названием. Кроме того, специально введем еще одно искусственное условие: у каждой книги может быть только один автор.

Таким образом, после некоторой дальнейшей конкретизации неформально будущую модель приложения можно описать следующим набором бизнес-правил:

· описываемая предметная область включает множество авторов и множество книг;

· автор однозначно идентифицируется текстовым атрибутом — именем;

· книга однозначно описывается текстовым атрибутом — названием;

· автор может написать много книг;

· книга может быть написана только одним автором.

Назначение UML-редактора — преобразовать неформальное описание бизнес-правил в формальную модель на языке UML (рис. 3).

Теперь можно приступить к созданию модели. Правой кнопкой мыши кликнем на пункте LogicalView в верхней части левой панели редактора и во всплывающем меню выберем пункт NewClass (создание нового класса). Проделаем эту операцию еще два раза (рис. 4).

рис. 4

Новые классы по умолчанию получили имена NewClass, NewClass_1, NewClass_2. Для удобства дальнейшей работы переименуем их. Для этого в левой панели редактора выберем курсором мыши пункт NewClass, перейдем в правую панель редактора и введем в поле Name имя нашего класса — Author. Второму классу присвоим имя Book, а третьему — имя AuthorBook. После этого у нас должна получиться модель, представленная на рис. 5.

рис. 5

Теперь создадим атрибуты наших классов. Автор книги, как мы договорились раньше, описывается в нашей модели своим именем, а книга — названием. Следовательно, класс Author будет иметь один атрибут — назовем его aname, класс Book будет иметь также единственный атрибут, которому дадим название btitle. Класс AuthorBook пока трогать не будем. Для создания атрибутов выберем в левой панели редактора нужный класс, кликнем правой кнопкой мыши и из всплывающего меню выберем пункт New Attribute. Создадим по одному новому атрибуту для классов Author и Book, а затем раскроем дерево модели на левой панели редактора, как показано на рис. 6.

рис. 6

По умолчанию новые атрибуты получили имена (каждый в своем классе) — NewAttribute. Переименование атрибутов осуществляется так же, как и переименование классов (рис. 7).

рис. 7

Теперь вспомним о третьем классе, созданном нами, — AuthorBook. В принципе, как будет показано в дальнейшем, для такой простой модели, как наша, совсем необязательно создавать этот класс вручную — это можно сделать автоматически. Но на данном этапе этот класс будет полезен для иллюстрации возможностей описываемой технологии. Смысл создания этого класса — обеспечение связи между авторами и книгами, поэтому AuthorBook является не обычным классом, а носителем для ассоциации между классами Author и Book. Однако прежде чем определять этот класс в качестве носителя ассоциации, необходимо создать саму ассоциацию. Для этого поступаем так же, как и при создании новых классов: выбираем пункт LogicalView в дереве модели на левой панели редактора, после чего нажимаем правую кнопку мыши, но из всплывающего меню теперь выбираем пункт New Association, затем раскрываем дерево модели (рис. 8).

рис. 8

В правой панели редактора в окошке с именем класса мы видим, что имя класса — носителя для новой ассоциации (ей автоматически присвоено имя NewAssociation) отсутствует (<none>). Из выпадающего списка в этом окошке назначим для класса ассоциации имя ранее созданного нами класса — AuthorBook. Далее в дереве модели мы видим, что созданная ассоциация имеет два подпункта: AssociationEnd0 и AssociationEnd1, представляющие собой автоматически созданные названия для ролей нашей ассоциации. Определим эти роли: выделим роль ассоциации AssociationEnd0, в правой панели редактора введем в поле Name имя роли byAuthor, а в поле Class выберем из выпадающего списка класс Author; установим значение поля Multiplicity в «1..1» и снимем флажок Embed (рис. 9).

рис. 9

Затем выделим роль ассоциации AssociationEnd1, в правой панели редактора введем в поле Name имя роли writes, а в поле Class выберем из выпадающего списка класс Book. Далее установим значение поля Multiplicity в «1..*» и снимем флажок Embed (рис. 10).

рис. 10

Теперь немного порассуждаем, что именно мы только что сделали с ролями нашей ассоциации и почему. Как говорилось выше, в нашей модели принято упрощающее предположение о том, что книга может быть написана только одним автором. Именно по этой причине мы установили свойство Multiplicity у роли byAuthor в значение «1..1» (см. рис. 9), то есть один и только один (автор). Однако наша модель по умолчанию допускает, что автор может написать много книг, и поэтому на другом конце нашей ассоциации writes свойству Multiplicity назначено значение «1..*» (см. рис. 10), другими словами, одна, две.. много (книг). Теперь осталось только понять, почему «1..1» относится именно к автору, а «1..*» — к книгам. Но ведь эту привязку сделали мы сами, когда назначали классы для ролей!




Дата добавления: 2015-09-11; просмотров: 95 | Поможем написать вашу работу | Нарушение авторских прав

<== предыдущая лекция | следующая лекция ==>
Создание бизнес-уровня| Создание графического интерфейса

lektsii.net - Лекции.Нет - 2014-2025 год. (0.009 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав