Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование

Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование, страница 26

PDF-файл Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование, страница 26 Объектно-ориентированный анализ и проектирование (53090): Книга - 7 семестрДж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование: Объектно-ориентированный ан2019-09-18СтудИзба

Описание файла

PDF-файл из архива "Дж. Арлоу, А. Нейштадт - UML 2 и Унифицированный процесс - Практический объектно-ориентированный анализ и проектирование", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 26 страницы из PDF

Manager входит в систему.Основной поток:1. include (FindEmployeeDetails).2. Система выводит данные служащего.…Главные актеры:ManagerВторостепенные актеры:Нет.Предусловия:1. Manager входит в систему.Основной поток:1. include (FindEmployeeDetails).2. Система выводит данные служащего.3. Manager удаляет данные служащего.…Постусловия:1. Данные служащего удалены.Альтернативные потоки:Нет.Альтернативные потоки:Нет.Постусловия:1. Система вывела на экран данныеслужащего.Альтернативные потоки:Нет.Рис. 5.8. Семантика отношения «include»Отношение «include» имеет простую семантику (рис.

5.8). Базовый прецедент выполняется до момента включения. Затем выполнение переходит во включаемый прецедент. По завершении включаемого прецедента управление вновь возвращается в базовый прецедент.Базовый прецедент является незавершенным без всех его включаемыхпрецедентов. Они – неотъемлемые части базового прецедента. Однаковключаемые прецеденты могут быть как полными, так и неполными.Если включаемый прецедент неполный, он просто содержит часть потока событий, которая имеет смысл только тогда, когда включена в соответствующий базовый прецедент. Обычно такие прецеденты называют фрагментом поведения. В этом случае говорят, что экземпляр включаемого прецедента не может быть создан, т.

е. он не может быть инициирован актерами напрямую. Он может выполняться, только если онвключен в соответствующий базовый прецедент. Однако если включаемый прецедент полный, он ведет себя как обычный прецедент. Его экземпляры могут быть созданы, и он может инициироваться актерами.Включаемый прецедент приведен на рис. 5.9. Он является неполными, следовательно, его экземпляры не могут быть созданы.5.5. Отношение «extend»Отношение «extend» – способ введения нового поведения в существующий прецедент.128Глава 5. Дополнительные аспекты моделирования прецедентовПрецедент: FindEmployeeDetailsID: 4Краткое описание:Manager ищет данные служащего.Главные актеры:ManagerВторостепенные актеры:Нет.Предусловия:1.

Manager входит в систему.Основной поток:1. Manager вводит ID служащего.2. Система ищет данные служащего.Постусловия:1. Система нашла данные служащего.Альтернативные потоки:Нет.Рис. 5.9. Пример неполного включаемого прецедентаОтношение «extend» предоставляет возможность ввести новое поведение в существующий прецедент (рис. 5.10). Базовый прецедент предоставляет набор точек расширения (extension points) – точек входа,в которые может быть добавлено новое поведение.

А расширяющийпрецедент предоставляет ряд сегментов вставки, которые можно ввестив базовый прецедент в места, указанные точками входа. Как вскоре будет показано, отношение «extend» может использоваться для того, чтобыточно указать, какие именно точки расширения базового прецедентаподлежат расширению.В отношении «extend» любопытно то, что базовый прецедент ничего незнает о расширяющих прецедентах, он просто предоставляет для нихточки входа. Базовый прецедент абсолютно полон и без расширений.Это существенно отличает «extend» от отношения «include», где базовыеCистема Libraryбазовый прецедентReturn book«extend»Borrow bookLibrarianFind bookРис.

5.10. Отношение «extend»расширяющий прецедентIssue fineотношениерасширения1295.5. Отношение «extend»Прецедент: ReturnBookID: 9Краткое описание:Librarian возвращает взятую книгу.базовый прецедентГлавные актеры:LibrarianReturnBookextension pointsoverdueBookВторостепенные актеры:Нет.Предусловия:1. Librarian входит в систему.extension point: overdueBook«extend»точкарасширенияимя точкирасширенияIssueFineрасширяющий прецедентОсновной поток:1.

Librarian вводит ID читателя.2. Система выводит данные читателя, включаясписок взятых им книг.3. Librarian находит возвращаемую книгув списке книг.точка расширения: overdueBook4. Librarian возвращает книгу.…Постусловия:1. Книга возвращена.Альтернативные потоки:Нет.Рис. 5.11. Обозначение точек расширенияпрецеденты остаются неполными без включаемых прецедентов. Болеетого, точки расширения на самом деле не вводятся в поток событий базового прецедента; они накладываются поверх потока.Точки расширения обозначаются в потоке событий базового прецедента, как показано на рис.

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

Следовательно, онивообще не являются его частью. Этот слой подобен прозрачной пленке,наложенной поверх основного потока, на которую нанесены точки расширения. Основная идея введения этого слоя – сделать поток базовогопрецедента полностью независимым от точек расширения. Иначе говоря, поток базового прецедента не знает (или не интересуется), в каких точках происходит его расширение. Это позволяет использоватьотношение «extend» для создания произвольных или специальных расширений потока базового прецедента.При использовании «extend» базовый прецедент выступает в роли модульного каркаса, к которому можно подключать расширения в предопределенных точках расширения. В примере на рис. 5.11 в базовом130Глава 5.

Дополнительные аспекты моделирования прецедентовпрецеденте ReturnBook точка расширения overdueBook находится междушагами 3 и 4 потока событий.Отношение «extend» предоставляет хороший способ обработки исключительных ситуаций или ситуаций, когда нужен гибкий каркас, поскольку невозможно предсказать (или просто не известны) все возможные расширения.5.5.1. Расширяющий прецедентРасширяющие прецеденты обычно не являются полными прецедентами, поэтому, как правило, их экземпляр не может быть создан.

Обычно они состоят всего из одного или нескольких фрагментов поведения,называемых сегментами вставки. Отношение «extend» определяет точку расширения в базовом прецеденте, в которой будет введен сегментвставки. Здесь действуют следующие правила:• Отношение «extend» должно определять одну или несколько точекрасширения базового прецедента. В противном случае предполагается, что отношение «extend» относится ко всем точкам расширения.• В расширяющем прецеденте должно быть столько же сегментоввставки, сколько точек расширения определено в отношении«extend».• Два расширяющих прецедента могут «расширять» один базовыйпрецедент в одной и той же точке расширения. Но в этом случае порядок выполнения расширений не определен.В примере на рис. 5.12 в расширяющем прецеденте всего один сегментвставки IssueFine (назначить штраф).Расширяющий прецедент может также иметь предусловия и постусловия.

Предусловия должны быть выполнены, в противном случае сегРасширяющий прецедент: IssueFineReturnBookextension pointsoverdueBookID: 10Краткое описание:Сегмент 1: Librarian записывает и распечатывает штраф.Главные актеры:Librarianextension point: overdueBook«extend»Второстепенные актеры:Нет.Сегмент 1 предусловия:1. Возвращенная книга просрочена.единственная вставка расширяющегопрецедента IssueFine вводитсяв точке вставки overdueBookпрецедента ReturnBookПоток сегмента 1:1.

Librarian вводит данные штрафа в систему.2. Система распечатывает штраф.IssueFineСегмент 1 постусловия:1. Штраф записан в системе.2. Система распечатала штраф.Рис. 5.12. Расширяющий прецедент с одним сегментом вставки1315.5. Отношение «extend»мент не выполняется. Постусловия ограничивают состояние системыпосле выполнения сегмента.У самих расширяющих прецедентов могут быть расширяющие иливключаемые прецеденты. Однако лучше избегать такой вложенности,поскольку это сильно усложняет систему.5.5.2.

Несколько сегментов вставкиВ расширяющем прецеденте может быть несколько сегментов вставки. Это полезно в тех случаях, когда не получается полностью реализовать расширение в одном сегменте изза того, что необходимо вернуться и чтото сделать в основном потоке базового прецедента. Обратимся к примеру, изображенному на рис. 5.13. Пусть после записии распечатки штрафа выполнение возвращается в основной поток дляобработки других просроченных книг, после чего в точке расширенияpayFine (выплатить штраф) должнику предлагается заплатить общуюсумму штрафа. Конечно, такая процедура более эффективна, чем взимание платежей по каждому штрафу в отдельности (так произошлобы, если бы эти два сегмента были сведены в один сегмент IssueFine).При создании расширяющих прецедентов с несколькими сегментаминеобходимо четко нумеровать каждый сегмент, как показано нарис.

5.13, поскольку здесь важен порядок сегментов: первый сегментРасширяющий прецедент: IssueFineID: 10Краткое описание:Сегмент 1: Librarian записывает и распечатывает штраф.Сегмент 2: Librarian принимает платеж по штрафу.ReturnBookextension pointsoverdueBookpayFineГлавные актеры:LibrarianВторостепенные актеры:Нет.Сегмент 1 предусловия:1. Возвращенная книга просрочена.Поток сегмента 1:1.

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