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

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

Файл №1037782 Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование (Джим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование) 104 страницаДжим Арлоу, Айла Нейштадт - UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование (1037782) страница 1042017-12-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Что мы узнали••••••••583self.roleName.feature:• кратность 1 – возвращает значение свойства (feature);• кратность > 1 – возвращает Bag значений свойств всех участвующих объектов (является сокращенной записью дляself.roleName>collect( feature )).Навигация по нескольким ассоциациям, где все кратности > 1:• self.roleName1.roleName2.feature – возвращает Bag значений этогосвойства (feature) всех участвующих объектов.OCL на диаграммах взаимодействий используется для определения:• сторожевого условия;• селектора линии жизни;• параметров сообщения.OCL на диаграммах деятельностей используется для определения:• узлов вызова действий;• сторожевых условий переходов;• объектных узлов;• операций;• состояния объекта.OCL на диаграммах состояний используется для определения:• сторожевых условий;• условий, накладываемых на состояния;• целей действий;• операций;• значений параметров.Навигация к и от классовассоциаций:• к классамассоциаций – используется имя классаассоциации;• от классовассоциаций – используются имена ролей.Навигация по квалифицированным ассоциациям:• после имени роли в квадратных скобках указывается разделенный запятыми список квалификаторов.Унаследованные ассоциации:• OCLвыражения используются для ограничения типов участников в унаследованных ассоциациях.AПример модели прецедентовA.1.

ВведениеНаш опыт свидетельствует о том, что UMLмодели не терпят бумаги.Если вам когдалибо приходилось распечатывать большую UMLмодель, включая спецификации, вам точно известно, что имеется в виду!UMLмодели лучше представлять в более гибком формате – в виде гипертекста. В настоящее время это или средство моделирования, иливебсайт.Включение полного учебного примера UML в эту книгу сделало бы еенамного толще и дороже.

Мы также несли бы ответственность за намного большее количество уничтоженных деревьев. Поэтому было решено предоставить пример для этой книги на нашем вебсайте(www.umlandtheunifiedprocess.com). Нам кажется, что ориентироваться в электронном варианте легче, чем в бумажном.Предлагаемый вашему вниманию пример охватывает ОО анализ и проектирование, необходимые для создания небольшого вебприложенияэлектронной коммерции. В этом приложении в упрощенном виде приводится несколько наиболее ярких моментов модели прецедентов, чтобы дать представление о том, что доступно на сайте!A.2. Модель прецедентовДанная модель прецедентов создана для простой системы электроннойкоммерции по продаже книг и CD.

Эта система называется ECP (ECommerce Platform – платформа электронной коммерции). На рис. А.1показан окончательный результат моделирования прецедентов.Модель прецедентов обеспечит четкое представление о том, что делаетсистема, но все подробности представлены на вебсайте.585Пример модели прецедентовЕСРLogOnUserUserCloseOrderCardProcessingCompanyAcceptPaymentByCardDispatcher«include»InventorySystemCheckoutDisplayBasketextension pointsmanageBasketextension point:manageBasket«include»«extend»AddltemToBasketCustomerManageBasketCancelOpenOrderBrowseProducts«include»ViewProductsFindProductsFindBooks«include»FindCDsViewBooksCreateNewCustomerDisplayOpenOrdersLogOnCustomerUpdateCustomerDeleteCustomerShopkeeperAddProductToCatalogDeleteProductFromCatalogCreateNewUserSystemAdministratorDeleteUserРис. A.1.

Модель прецедентовViewCDs586Приложение AA.3. Примеры прецедентовНа рис. А.2 представлен сокращенный вариант модели прецедентов.Здесь показаны обычные прецеденты, расширяющий прецедент и отношения «include» и «extend».Прецеденты с рис.

А.2 показаны более подробно на рис. A.3–A.6.В описания прецедентов включены все важные детали, но опущена общая информация (торговая марка компании, информация об автореи версии и др.). Эти данные для каждой компании свои. Во многихкомпаниях разработаны стандартные заголовки, используемые вовсей документации компании.Хотя описание прецедента может храниться непосредственно в инструментальном средстве моделирования UML, часто поддержка этойвозможности довольно слаба и ограничивается простым текстом. Поэтому многие разработчики моделей сохраняют описания прецедентовв формате, предоставляющем большие возможности, таком как Wordили XML, и подключаются к этим внешним документам из моделипрецедентов в инструменте моделирования.

Некоторые идеи по поводуUserCardProcessingCompanyAcceptPaymentByCardDispatcher«include»InventorySystemCheckoutCustomerDisplayBasketextension pointsmanageBasket«extend»ManageBasketРис. A.2. Сокращенный вариант модели прецедентовextension point:manageBasket587Пример модели прецедентовиспользования XML для записи описаний прецедентов представленыв приложении B.Прецедент: CheckoutID: 6Краткое описание:Customer (покупатель) подтверждает заказ. Система создает заказ на основании содержимогокорзины для покупок, и Customer оплачивает заказ.Главные актеры:CustomerВторостепенные актеры:InventorySystem (система управления запасами)Предусловия:1.

Customer входит в систему.Основной поток:1. Прецедент начинается, когда Customer выбирает опцию «checkout».2. Система просит актера InventorySystem предварительно зарезервировать товарные позиции,указанные в корзине для покупок.3. Для каждой отсутствующей позиции.3.1. Система информирует Customer о том, что товар временно недоступен и удален из заказа.4. Система представляет окончательный вариант заказа актеру Customer.

Для каждого продуктазаказ включает идентификатор продукта, имя продукта, количество, цену единицы продукции,общую стоимость данного количества. В заказ также входит адрес поставки, информация кредитнойкарты Customer и общая стоимость заказа, включая налоги и затраты на доставку и упаковку.5. Система просит Customer принять или отклонить заказ.6. Customer подтверждает заказ.7. include( AcceptPaymentByCard ).Постусловия:1. Customer подтвердил заказ.2. Заказанные товары зарезервированы актером InventorySystem.Альтернативные потоки:Нет.Рис. A.3. Описание прецедента Checkout588Приложение AПрецедент: AcceptPaymentByCardID: 1Краткое описание:Покупатель оплачивает заказ кредитной картой.Главные актеры:CustomerВторостепенные актеры:CardProcessingCompany (компания обработки кредитных карт)InventorySystem (система управления запасами)Dispatcher (диспетчер)Предусловия:1.

Customer входит в систему.2. Некоторые наличные товарные позиции были предварительно зарезервированы для актера Customer.Основной поток:1. Прецедент начинается, когда Customer подтверждает заказ.2. Система извлекает информацию кредитной карты Customer.3. Система посылает сообщение в CardProcessingCompany, включающее идентификатор получателя платежа,его аутентификационные данные, имя на карте, номер карты, срок действия карты, сумму сделки.4. CardProcessingCompany дает разрешение на транзакцию.5. Система сообщает Customer, что транзакция с использованием кредитной карты была принята.6. Система дает Customer шифр, чтобы он мог отслеживать заказ.7.

Система указывает актеру InventorySystem зарезервировать необходимые товарные позиции.8. Система посылает заказ актеру Dispatcher.9. Система меняет состояние заказа на ожидающий рассмотрения.10. Система выводит на экран подтверждение заказа, предоставляя актеру Customer возможность распечатать его.Постусловия:1. Заказ получил статус ожидающего рассмотрения.2. С кредитной карты Customer снята соответствующая сумма.3. Некоторые наличные товарные позиции были зарезервированы для обеспечения выполнения заказа.4.

Заказ отправлен актеру Dispatcher.Альтернативные потоки:CreditLimitExceededBadCardCreditCardPaymentSystemDownРис. A.4. Описание прецедента AcceptPaymentByCard589Пример модели прецедентовПрецедент: DisplayBasketID: 13Краткое описание:Система отображает содержимое корзины для покупок актера Customer.Главные актеры:CustomerВторостепенные актеры:Нет.Предусловия:Нет.Основной поток:1. Customer выбирает опцию «display basket» (вывести на экран содержимое корзины).2. Если в корзине нет товаров.2.1. Система сообщает Customer о том, что корзина пуста.2.2.

Прецедент завершается.3. Для каждого продукта в корзине.3.1. Система отображает идентификационный номер, количество, детальную информацию,цену единицы продукции и общую цену.точка расширения: manageBasketПостусловия:Нет.Альтернативные потоки:Нет.Рис. A.5. Описание прецедента DisplayBasketРасширяющий прецедент: ManageBasketID: 20Краткое описание:Customer меняет содержимое корзины.Главные актеры:CustomerВторостепенные актеры:Нет.Предусловия:1. Система отображает корзину для покупок.Основной поток:1.

Пока Customer вносит изменения в корзину.1.1. Customer выбирает товарную позицию в корзине.1.2. Если Customer выбирает «remove item» (удалить позицию).1.2.1. Система отображает сообщение «Вы уверены, что хотите удалить из корзинывыбранную позицию?».1.2.2. Customer подтверждает удаление.1.2.3. Система удаляет выбранную позицию из корзины.1.3. Если Customer вводит новое количество для выбранной позиции.1.3.1. Система обновляет количество для выбранной позиции.Постусловия:Нет.Альтернативные потоки:Нет.Рис.

A.6. Описание прецедента ManageBasketBXML и прецедентыB.1. Применение XML для шаблоновпрецедентовКак видите, UML 2 не определяет формального стандарта для документирования прецедентов. Разработчикам моделей приходится или использовать возможности, предлагаемые инструментальными средствами моделирования UML, которые нередко весьма ограничены, илиприменять собственный подход. В настоящий момент модель прецедентов чаще всего создается в средстве моделирования, а затем прецеденты и актеры подключаются к внешним документам, содержащимих подробные описания.

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

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

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