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

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

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

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

Рис. 12.6. Словарь данных для задачи о банкомате 12.2. модель классов предметной области 227 Пример с банкоматом. Мы можем исключить ассоциации ВапЫпВ пегтпой тс(иг)ез сазМегзгаггопз аль А ТМз (банковская сеть содержит кассиров и банкоматы), А ТМ йрепзез сай (банкомат выдает наличные), А ТМ рпптз гесегртз (банкомат печатает чеки), ВапЬ ргоиггуе ю/гтгаге (банки предоставляют программное обеспечение), Созг арроггюпегу го ЬапЬ (стоимость распределяется между банками), 5узгет ргоглггез гесо~Яеертд (система обеспечивает ведение записей) и 5узгет ргоиЫез зесилгу (система обеспечивает безопасность). ° Несущественные, или относящиеся к реализации ассоциации. Выбросьте все ассоциации, лежащие за пределами области задачи или описывающие конструкции, относящиеся к реализации.

Пример с банкоматом. Ассоциация 5узгет Аапг((ез сопсипепг ассезт (система обрабатывает параллельные обращения) описывает понятие, относящееся к реализации. Объекты реального мира изначально характеризуются параллелизмом. Требование, указанное в постановке задачи, относится именно к реализации алгоритма доступа. Глагольные фразы Банковская сеть включает в себя кассовые терминалы и банкоматы Консорциум совместно использует банкоматы Банк предоставляет банковский компьютер Банковский компьютер ведет учет счетов Банковский компьютер обрабатывает транзакции, совершаемые со счетами Банк владеет кассовым терминалом Кассовый терминал связан с банковским компьютером Кассир вводит транзакцию для данного счета Банкоматы связываются с центральным компьютером для проведения транзакции Центральный компьютер проверяет транзакцию, связываясь с банком Банкомат принимает кредитную карту Банкомат взаимодействует с пользователем Банкомат выдает наличные деньги Банкомат печатает квитанции Система поддерживает параллельный доступ Банки предоставляют программное обеспечение Издержки берут на себя банки Имплицитные глагольные фразы Консорциум состоит из банков Банк имеет свой счет Консорциум владеет центральным компьютером Система обеспечивает учет Система обеспечивает безопасность Клиенты имеют кредитные карты Знания о предметной области С помощью кредитной карты можно получить доступ к счетам В банке работают кассиры Рис.

12.7. Ассоциации, выделенные из описания задачи о банкомате Глава 12 ° Анализ предметной области Действия. Ассоциация должна описывать структурное свойство области приложения, а не кратковременное событие. В некоторых случаях требование выражается в виде действия, однако подразумевает некоторое структурное отношение. Такое утверждение нужно переформулировать. Пример с банкоматом. Ассоциация АТМ ассергз сай сап1 (банкомат принимает банковскую карту) описывает часть цикла взаимодействия банкомата с клиентом, а не постоянное отношение банкомата и карты.

По той же причине можно исключить ассоциацию АТМ тгегасгз т(гЬ изег (банкомат взаимодействует с пользователем). Сепгга1 сотригег с1еагз ггапзасг1оп ипТЬ ЬапЬ (Центральный компьютер подтверждает транзакцию в банке) описывает действие, подразумевающее структурное отношение Сепгга1 сотригег соттип(сагез ипй ЬапЬ (Центральный компьютер взаимодействует с банком). Тернарные ассоциации. Большинство и-арных ассоциаций можно выразить через бинарные, добавив соответствующие квалификаторы. Если термин в тернарной ассоциации является описательным и не имеет собственной индивидуальности, он является атрибутом бинарной ассоциации. Например, ассоциацию сатрапу раух за1агу го регьап (Компания платит сотруднику зарплату) можно переформулировать в виде бинарной ассоциации сатрапу етр1оуз ретоп (Компания нанимает сотрудника), причем каждая связь Сатрапу-Рег1оп будет характеризоваться своим значением ха1агу (зарплата).

Иногда в приложении действительно требуется тернарная ассоциация. Например, структуру Рго1еззог Геасйез соигзе т гоот (Профессор читает курс лекций в аудитории) нельзя разбить на бинарные ассоциации без утраты информации. Однако учтите, что нам ни разу не попадались ассоциации с четырьмя и более классами за все время нашей работы. Пример с банкоматом. Ассоциацию ВапЬ сотригег ргосеззез ггатасг1оп ада1пзг ассоипг (Банковский компьютер обрабатывает транзакцию по счету) можно разбить на ВапЬ сотригег ргосеззез ггапзасйоп (Банковский компьютер обрабатьвает транзакцию) и ТгапзасВоп сопсегпз ассоипг (Транзакция связана со счетом).

Аналогичным образом нужно поступить с транзакцией СаеЬ1ег епгет ггапзасг(оп )ог ассоипг (Кассир вводит транзакцию по счету). Ассоциация А ТМз соттитсаге т(й сепгга1 сотригег аЬоиг ггапзасг1оп (Банкоматы взаимодействуют с центральным компьютером касательно транзакции) на самом деле представляет собой две бинарные ассоциации А ТМз соттитсаге жй сепгга1 сотригег (Банкоматы взаимодействуют с центральным компьютером) и Тгапзасгюп епгегег1 оп АТМ(Транзакция начинается банкоматом).

Производные ассоциации. Отбросьте ассоциации, которые могут быть выражены через другие ассоциации. Например, Сгапг1рагепГО1 (Дедушка) можно выразить через пару ассоциаций РагепЮ~(родитель). Выбрасывайте и ассоциации, выражаемые как ограничения на атрибуты.

Например, уоипйегТЬап (моложе) выражает условие, касающееся дат рождения двоих человек, а не какую-то дополнительную информацию. 12.2. Модель классов предметной области 229 Классы, атрибуты и ассоциации модели классов должны отражать максимально независимую информацию. Наличие множества маршрутов между классами часто указывает на производные ассоциации, которые могут быть выражены через некоторые примитивные ассоциации. Сопзогг(ит злагез АТМз (Консорциум совместно владеет банкоматами) — это композиция ассоциаций Сопла»6ит отпз сепгга1 сотригег (Консорциум владеет центральным компьютером) и Сепгга1 сотригег соттитсагез ипгй А ТМз (Центральный компьютер взаимодействует с банкоматами). Не все ассоциации, образующие множественные маршруты между классами, являются избыточными.

Иногда существование ассоциации можно вывести из нескольких примитивных ассоциаций, а вот ее кратность таким путем определить нельзя. В подобной ситуации ассоциацию следует сохранить, при условии, что ограничение на кратность важно для модели. Например, на рис. 128 компания нанимает множество сотрудников и владеет множеством компьютеров. Каждому сотруднику предоставляется нуль и более компьютеров для персонального использования. Некоторые компьютеры предназначены для общего пользования и не приписаны ни к какому сотруднику. Кратность ассоциации Азз18пеИТо (Приписан) не может быть выведена из кратности ассоциаций Етр1оуз (Нанимает) и Оипз (Владеет). ваго Рис.

12.8. Кажущаяся избыточность ассоциации Хотя производные ассоциации не вносят дополнительной информации в модель, они могут быть полезны в реальном мире и при проектировании. Например, отношения родства типа «дядя», «теша» и «кузен» имеют собственные названия, потому что они описывают типичные отношения, которые считаются достаточно важными в нашем обществе. Если отношения такого рода особенно важны для модели, их можно оставить на диаграмме классов, указав перед именем символ косой черты (/), означающий зависимый статус и позволяющий отличать их от фундаментальных ассоциаций. Дальше следует проанализировать семантику ассоциаций.

° Неправильно названные ассоциации. Название должно говорить не о том, как или почему возникла некоторая ситуация, а о том, в чем зта ситуация состоит. Названия важны для понимания модели в целом, а потому выбирать их следует очень осторожно. Пример с банкоматом. Вап1« сотригег та1пга1пз ассоипсз (Банковский компьютер обслуживает счета) — это утверждение, описывающее действие. 230 Глава 12 ° Анализ предметной области Название ассоциации правильнее будет переформулировать как ВапЬ Ьо!Из ассоипг (Банк управляет счетом).

° Названия полюсов ассоциаций. Названия полюсов нужно указывать везде, где они имеют смысл. Например, в ассоциации йгогЬхрог (РаботаетНа) класс Сатрапу (Компания) по отношению к классу Регзоп (Человек) является работодателем (ешр!оуег), а Ретоп ло отношению к Сатрапу представляет собой сотрудника (ешр!оуее). Если пару классов связывает только одна ассоциация и ее смысл очевиден, названия полюсов можно не указывать. Например, смысл ассоциации А ТМз соттип!саге ипгЬ сепгга! сотригег (Банкоматы взаимодействуют с центральным компьютером) ясен из названий классов. Ассоциация между двумя экземплярами одного и того же класса требует наличия имен полюсов, с помощью которых можно было бы отличать эти экземпляры. Например, в ассоциации Регзоп тапаяез регзоп (Человек руководит человеком) полюса будут называться Ьозз (начальник) и гаогЬег (нодчиненный). ° Квалифицированные ассоциации. Обычно название идентифицирует объект в рамках некоторого контекста.

Большинство названий не являются уникальными в масштабах всей системы (глобально). Контекст вместе с именем позволяют уникально идентифицировать объект. Например, название компании должно быть уникально в том штате, где она расположена, но может повторяться в других штатах (был момент, когда в каждом из штатов Огайо, Индиана, Калифорния и Нью-Джерси работала своя компания «Стандард Ойл»). Название компании квалифицирует ассоциацию 5гаге сЬаггегз сатрапу (Штат разрешает создание компании); 5гаге (Штат) и название компании уникально идентифицируют Сатрапу (Компанию). Квалификатор позволяет отличать друг от друга объекты, находящиеся у полюса ассоциации с кратностью «много». Пример с банкоматом.

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

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

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