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

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

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

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

Анализ — это не механический процесс, а, скорее, искусство. Выбор конкретного варианта представления зависит от суждений человека. ЧаШе всего в постановке задачи отсутствует важнейшая информация, которую приходится получать от заказчика или извлекать из знаний о предметной области, имеющихся у аналитика. Определенный произвол присутствует и прп выборе уровня абстрагирования модели. Аналитику приходится взаимодействовать с заказчиком, устранять двусмысленности и неправильные представления. Аналитические модели делают возможным обшение на языке однозначных символов. 220 Глава 12 Ф Анализ предметной области Мы разделили этап анализа на две последовательные стадии. Первая стадия— анализ предметной области — описана в этой главе. Вторая стадия — анализ приложения — обсуждается в следующей главе.

Модель приложения строится на основе модели предметной области путем добавления основных артефактов приложения, видимых пользователям. Пользователи должны одобрить решения, связанные с этими артефактами, поэтому они и включаются в модель приложения. 12.2. Модель классов предметной области На первой стадии анализа требований выполняется конструирование модели предметной области. Модель предметной области отражает статическую структуру системы в реальном мире и делит ее на отдельные элементы, удобные для оперирования.

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

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

Лучше всего записывать идеи на бумаге, даже если записи будут многословными и несогласованными. Главное — не пропустить вюкные детали. Начальный вариант аналитической модели почти наверняка будет содержать недочеты, которые нужно будет устранить на последующих итерациях. Модель не обязательно должна быть однородной по конструкции. Некоторые аспекты задачи придется анализировать на протяжении нескольких итераций, тогда как другие так и останутся набросками.

Конструирование модели классов предметной области выполняется в приведенной ниже последовательности. 1. Выделить классы (разделы 12.1.1 — 12.2.2). 2. Подготовить словарь данных (12.2.3). 3. Выделить ассоциации (разделы 12.2.4 — 12.2.5). 4. Выделить атрибуты объектов и связей (разделы 12.2.6 — 12.2.7). 12.2. Модель классов предметной области 221 5. Организовать и упростить классы при помощи наследования (раздел 12.2.8). 6. Проверить наличие маршрутов для наиболее вероятных запросов (раздел 12.2.9). 7, Перейти к следующей итерации и уточнить модель (раздел 12.2.10). 8.

Пересмотреть уровень абстрагирования (раздел 12.2.11). 9. Сгруппировать классы в пакеты (раздел 12.2.12). 12.2.1. Выделение классов Первый этап конструирования модели классов заключается в выделении классов, объединяющих объекты предметной области. К объектам относятся физические сущности, такие как дома, люди, машины, а также понятия, такие как траектории, расположение сидений и графики выплат. Все классы должны иметь смысл с точки зрения предметной области. Нужно избегать конструкций, относящихся к компьютерной реализации, таких как связные списки и подпрограммы. Не все классы явным образом присутствуют в описании задачи.

Некоторые могут неявно определяться предметной областью или общими знаниями. Начинать работу нужно с перечисления всех потенциальных классов из письменного описания задачи (рис. 12.2). Записывайте все названия, какие только придут вам в голову. Классы часто соответствуют существительным. Например, из предложения «система бронирования для продажи билетов на представления в различных театрах» можно выделить потенциальные классы Бронирование, Система, Билет, Представление и Театр.

Однако не следует переписывать все подряд. Идея состоит в том, чтобы отразить в модели понятия. Не все существительные описывают понятия, и наоборот: понятия могут выражаться другими частями речи. Выделение Потенциальные удаление Классы существительных неинфорыатиеных классы классов Источники требований Рис. 12.2. Выделение классов Не беспокойтесь о наследовании и классах высшего уровня. Постарайтесь выбрать конкретные классы таким образом, чтобы избежать подсознательного подавления деталей в попытке подогнать реальность под предполагаемую структуру. Например, если вы разрабатываете систему каталогизации и выдачи книг для библиотеки, выделите разные виды материалов: книги, журналы, газеты, записи, фильмы и т.

д. Позднее вы сможете упорядочить их в более широкие категории с учетом сходств и отличий. Пример с банкоматом. В результате выделения понятий из описания задачи о банкомате, которая приведена в главе 11, мы получили потенциальные классы, перечисленные на рис. 12.3. Дополнительные классы, отсутствующие в описании задачи, но выделенные из наших знаний о предметной области, приведены на рис. 12А.

[ по ~ ~ [ и ~ ]гт»з'г ~ее1~ сеть транзакция Кассовый Данные манные Г::::::Л терминал о счете о транзакции Банковский компьютер Счет - ~ """"- ~ЮЮ компьютер карта деньги Обеспечение П8~ г "н.е=з ЛЕТЕЛ учета безопасности Рис. 12.3. Классы для модели банкомата, присутствующие в постановке задачи Журнал транзакций Линия связи Рис. 12.4. Классы для модели банкомата, полученные из знаний о предметной области 12.2.2. Удаление лишних классов Теперь нужно отбросить ненужные и некорректные классы, используя перечис- ленные ниже критерии. Рисунок 12.5 показывает, какие классы были удалены из модели банкомата.

'гйеуйачные классы Хорошие классы Счет Банкомат Банк Банковский КРелитнаа Кассир компьютер карточка : %:"Я" терминал компьютер Рис. 12.5. Удаление лишних классов из модели банкомата ° Избыточные классы. Если два класса выражают одно и то же понятие, нужно оставить тот, название которого лучше всего описывает сущность понятия. Например, человека, покупающего билет на самолет, можно назвать 222 Глава 12 ° днализ предметной области кге1ечаы ~Издержкам 12.2. Модель классов предметной области 223 Клиент, однако более описательное название для класса будет Пассажир. С другой стороны, если задача имеет отношение к контрактам, заключаемым с чартерными авиалиниями, класс Клиент также будет иметь смысл, поскольку контракт может быть заключен с несколькими пассажирами.

Пример с банкоматом. Сизготег (Клиент) и Пзег (Пользователь) — избыточные классы; мы сохраняем класс Сизготег, как более соответствующий сути понятия. Несущественные классы. Если класс имеет весьма слабое отношение к задаче, выбросьте его. В данном случае приходится принимать довольно субъективные решения, потому что важность класса зависит от контекста. Например, в системе бронирования театральных билетов профессии покупателей несущественны, но зато существеннымн могут быть профессии персонала театра. Пример с банкоматом.

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

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

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