Главная » Просмотр файлов » Дж. Рамбо, М. Блаха - UML 2.0 - Объектно-ориентированное моделирование и разработка

Дж. Рамбо, М. Блаха - UML 2.0 - Объектно-ориентированное моделирование и разработка (1158633), страница 123

Файл №1158633 Дж. Рамбо, М. Блаха - UML 2.0 - Объектно-ориентированное моделирование и разработка (Дж. Рамбо, М. Блаха - UML 2.0 - Объектно-ориентированное моделирование и разработка) 123 страницаДж. Рамбо, М. Блаха - UML 2.0 - Объектно-ориентированное моделирование и разработка (1158633) страница 1232019-09-18СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 123)

Обобщение классов бе(есбоп, Воггег и 5((ее1 классом Со((ест(оп 514 Ответы к избранным упражнениям Рис. 04.3. Диаграмма классов для графического редактора, поддерживающего группировку Мы предполагаем, что Ргаит8ОЦесг (ГрафическийОбьект) принадлежит какому-либо 5леег (Лист) и срок существования первого ограничен сроком существования последнего. Кроме того, мы предполагаем, что каждый алеет (Лист) принадлежит одному Роситепс (Документ). Поэтому оба отношения являются композициями.

4.5. На рис. 04.4 показана диаграмма классов с несколькими классами электрических машин. Мы добавили на эту диаграмму атрибуты. Рис. 04.4. Частичная таксономия для электрических машин 4.6. На рис. 04.5 перекрывающаяся комбинация классов была выделена в собст- венный класс, что позволило отказаться от множественного наследования. 4.8.

На рис. 04.6 показана метамодель следующих концепций ПМ1.: класс, атрибут, ассоциация, полюс ассоциации, кратность, название класса, название атрибута. Ответы к избранным упражнениям 515 Рис. 04.5. Исключение множественного наследования о.л АНПЬите „Аееос1енопнпа . Аееос1евоп 1 1 С1еее о 1 с!ваемо!пе пти!Врвску аельыемагпе Рмс. 04.6. Метамодель некоторых концепций 1)М1.

4.10. Диаграмма классов на рис. У4.3 не поддерживает множественное наследование. Класс может иметь несколько ролей обобщений подкласса, участвующего во множестве обобщений. 4.11. Чтобы обнаружить суперкласс обобщения по рис, У4.3, сначала следует создать запрос по ассоциации между Сепега!!гас!оп (Обобщение) и Сепега!1гаггопРо!е (РольОбобщения), чтобы получить множество всех ролей конкретного экземпляра Сепегайгабоп (Обобщение). Затем нужно выполнить последовательный поиск по этому множеству, чтобы найти роль, значение го!етуре (тпипРоли) которой совпадает с суперклассом.

(Остается надеяться, что такой экземпляр обнаружится только один, потому что соответствующее ограничение в модель не заложено.) Наконец, нужно проследить ассоциацию между Сепега!1гаггопло!е (РольОбобщения) и С(азз (Класс), чтобы найти суперкласс. На рис. О4.9 показана модификация этой диаграммы, упрощающая поиск суперкласса. В этом случае достаточно создать запрос для ассоциации между Сенека!!гас!оп (Обобщение) и 5ирегс!ат)!о!е (РольСуперкласса). Затем нужно создать запрос для ассоциации между 5ирегс!амйо!е (Роль- Суперкласса) и С!азз (Класс), чтобы найти соответствующий экземпляр С!азз (Класс). На рис.

04.10 показана другая метамодель обобщения, поддерживающая множественное наследование. В этом случае поиск суперкласса сводится к запросу ассоциации 5ирегс!азз (Суперкласс). 516 Ответы к избранным упражнениям Оелегадвадопяоlе Рис. 04.9. Метамодель обобщений с раздельными ролями подклассов и суперклассов Рис. 04.10.

Упрощенная метамодель отношения обобщения Мы ие утверждаем, что метамодель иа рис. 04.10 — самая лучшая из всех метамоделей обобщения. Оиа всего лишь упрощает запрос, рассматриваемый в данном упражнении. Выбор модели определяется, прежде всего, ее назначением. Приведенный ниже запрос выполняет поиск суперкласса по обобщению для рис. У4.3: абепега1ггаггоп.бепега1ггаогапяо1е->БЕЬЕСТ(го1етуре= 'аирегс1ааа').С1ааа То же для рис. 04.9: абепега11гаь1оп.зорегс1ааако1е.с1ааа То же для рис. 04.10: абепега1гпа о гоп . апре гс1ааа 4.16.

Простой модели классов с рис. 04.14 достаточно для описания приведенных в примере данных рецепта. яоапа1у Чоапщуцпда Рис. 04.14. Простая модель классов для рецептов Ответы к избранным упражнениям 517 ~епг /вшаl !пуег/о во/ин Рис. 04.15.

Первая модель классов для рецептов с альтернативными ингредиентами доапгау яцапвгуцпав Соггвс воГи И Рис. 04.16. Усовершенствованная модель классов для рецептов с альтернативными ингредиентами 5.2. На рис. 05.2 событие А соответствует нажатию кнопки А. На этой диаграмме отпускание кнопки не имеет отдельного значения, а потому оно не показано (хотя очевидно, что вы должны отпустить кнопку, прежде чем нажать ее снова). Обратите внимание, что новое событие нажатия не может быть порождено до тех пор, пока нажата хотя бы одна из клавиш.

Вы можете считать это ограничением на входящие события, которое не обязательно показывать на диаграмме состояний (хотя отразить его тоже не было бы ошибкой). 4.17. На рис. 04.15 показано наше первое решение этого упражнения. Мы просто добавили ассоциацию, которая связывает исходные ингредиенты с заменяющими.

У этой модели два недостатка. Во-первых, модель неудобна для описания взаимозаменяемых ингредиентов. Например, в некоторых рецептах допускается свободная замена масла, маргарина и растительного жира друг на друга. В соответствии с нашей моделью каждую пару взаимозаменяемых ингредиентов пришлось бы хранить отдельно. Поэтому нам пришлось бы ввести следующие пары: (масло, маргарин), (масло, жир), (маргарин, масло), (маргарин, жир), (жир, масло) и (жир, маргарин). Во-вторых, взаимозаменяемость ингредиентов не абсолютна, она зависит от рецепта. На рис. 04.16 показана усовершенствованная модель классов, в которой оба недостатка были устранены. $18 Ответы к избранным упражнениям Рис.

05.2. Диаграмма состояний для простых цифровых часов 5.6. На рис. 05.6 показана полная диаграмма состояний для системы управления двигателем. Рис. 06.6. Диаграмма состояний для системы управления двигателем 5.11. На рис. О5.11 показана диаграмма состояний. Обратите внимание, что даже простые диаграммы состояний могут описывать сложное поведение. Событие с)сапйе (изменение) происходит при извлечении свечи из подсвечника или при помещении ее обратно. Условие ас погй (иа север) считается выполненным, когда книжный шкаф находится за стеной.

Условия ас еззс, зоцй и жезС выполняются, когда шкаф смотрит вперед, назад или в сторону. Когда вы впервые увидели книжный шкаф, ои находился в состоянии 5горресс' (Покой) и указывал иа юг (ас зопй). Когда ваш друг вынул свечу, событие сйапде привело к тому, что шкаф перешел в состояние Яогагшй (Враисенне). Когда шкаф повернулся иа север (погй), зто условие перевело его в состояние Вгорред. Когда ваш друг вставил свечу обратно, еше одно событие сйапде снова привело шкаф в состояние Яогагспй, в котором ои находился до тех пор, пока ие стал указывать иа север (погй).

Когда вы выташили свечу еше раз, шкаф снова стал врашаться и повернулся бы иа 360 градусов, если бы вы ие помешачи ему. Возврашеиие шкафа иа место силой ие описывается системой управления, а потому ие должно быть отражено иа диаграмме. Когда вы снова вставили свечу, очередное событие сЬапйе привело его в состояние Аогаг1пд. Когда вы снова вытащили свечу, новое событие сЬапйе привело шкаф в состояние 5горр(пй (Осгпановка). Через четверть оборота условие ас погсЬ, еазс, зоцсЬ ог ч езс (указывает в любую опреде- Ответы к избранным упражнениям 519 ленную сторону) было выполнено, в результате чего шкаф перешел в состояние Бгоррей (Г!окой). Рис. 06.11. Диаграмма состояний управления книжным шкафом Чтобы попасть в потайной ход с самого начала, вам нужно было выташить свечу, а потом быстро вставить ее обратно прежде, чем шкаф повернулся на четверть оборота.

6.1. У прожектора и колес поезда имеются собственные диаграммы состояний (рис. О6.1 и О6.2). Обратите внимание, что стационарное состояние колеса содержит несколько вложенных состояний. Мы указали основные начальные состояния для прожектора и колес. Фактическое начальное состояние колес может быть произвольным (любым из состояний роняет о(г').

Система работает циклично и не зависит от начального состояния, поэтому указывать его не обязательно. Во многих аппаратных системах начальные состояния не определяются. Рис. 06.1. Диаграмма состояний для прожектора игрушечного поезда Рис. 06.1.

Диаграмма состояний для колес игрушечного поезда 520 Ответы к избранным упражнениям 6.3. На рис. 06.4 мы добавили состояние Магог Оп (Двигатель Включен), чтобы описать схожесть состояний запуска и работы. Мы показали переход из состояния 00 (Выключен) в состояние гагате(пд (Запуск). Вместо этого мы могли бы провести переход от 00' (Выключен) к Магог Оп (Двигатель Включен) и сделать Згагг(пб (Запуск) начальным состоянием Магог Оп. Обратите внимание, что деятельность арр!у роч ег со гпп ш!пс!!пя (подать питание на рабочую обмотку) была вынесена как из состояния аппп!пВ (Работа), так и из состояния Згагг!пя (Запуск).

Рис. 06.4. Диаграмма состояний для системы управления двигателем 6.4. На рис. 06.5 показана усовершенствованная диаграмма состояний двигателя. Обратите внимание, что переход из ОЦ (Выключен) к РогтеаЫ (ВпеРед) или Кеоегзе (Назад) вызывает неявный переход в состояние Згагг(пд (Запуск), которое является основным начальным состоянием нижней параллельной поддиаграммы. Запрос на выключение приводит к переходу из обоих параллельных поддиаграмм в состояние 00'.

Могогсолгго! Рис. 06.6. Усовершенствованная диаграмма состояний для управления асинхронным электродвигателем Ответы к избранным упражнениям Б21 Рву чв вг Рис. 07.1. Диаграмма вариантов использования для системы контроля покупок в книжном магазине 4) Мы приводим нормальные сценарии для каждого варианта использования. Правильных ответов можно придумать много. ° Покупка товаров. Клиент приносит товары на кассу. Кассир сканирует каждый товар. Кассир вычисляет общую сумму, включая налог. Кассир спрашивает о форме оплаты. Клиент дает кредитную карту. Кассир сканирует карту.

Система проверки подтверждает возможность оплаты. Клиент подписывает чек. ° Возврат товаров. Клиент приносит купленный ранее товар на кассу. Клиент показывает чек о покупке. Кассир отмечает, что покупка была сделана за наличные. Кассир принимает товары и выдает клиенту деньги наличными. 5) Исключительные сценарии для каждого варианта использования. ° Покупка товаров.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6451
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее