Читайте также:
|
|
Внимание концентрируется на осязаемых элементах предметной области.
Шеллер и Меллор предлагают следующих кандидатов в классы и объекты:
1. осязаемые предметы (автомобили, телеметрические данные, датчики давления и т.п.);
2. роли (мать, ученик, политик и т.п.);
3. события (посадка, прерывание, запрос и т.п.);
4. взаимодействие (перечисление, пересечение, заем и т.п.);
Роусс, исходя из моделирования БД, предлагает следующих кандидатов в классы и объекты:
1. люди (чел. существа, выполняющие некоторые функции);
2. места (области, связанные с людьми или предметами);
3. предметы (осязаемый материальный предмет или группы объектов);
4. организации (формально организованная совокупность людей, ресурсов, оборудования, которая имеет опр. цель и существование, которой от индивидуумов не зависит);
5. концепции (принципы и идеи, не осязаемые сами по себе, но предназначенные для организации деятельности, общения или наблюдения за ними);
6. события (нечто случившееся в заданное время или последовательно);
Коад и Йордан предлагают следующих кандидатов в классы и объекты:
1. структуры (отношение «целое-часть» и «общее-частное»);
2. другие системы (внешние системы, с которыми взаимодействует приложение);
3. устройства, с которыми взаимодействует приложение;
4. события (происшествия, которые должны быть запомнены);
5. разыгрываемые роли (роли, исполняемы пользователями);
6. места (здания, офисы и др., существенные для работы приложения);
7. организационная единица (группы, которым принадлежат пользователи);
На более высоком уровне Коад вводит понятие предметной области, которая в сущности является логически связанной группой классов, относящейся к высокоуровневым функциям системы.
14. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ поведения».
В качестве первоисточников объектов и классов рассматривается динамическое поведение системы. Классы формируют, основываясь на группах объектов, демонстрирующих сходное поведение.
Схема формирования классов Вирс-Брок:
Объекты, имеющие сходные ответственности, объединяются в общий класс. В иерархии классов каждый подкласс, выполняя обязательства суперкласса, может приносить свои доп. услуги.
Рубин и Гольдберг предлагают идентифицировать классы и объекты, анализируя функционирование системы. Сопоставление форм поведения с частями системы. Инициаторы и участники, играющие существенные роли становиться объектами, делаются ответственными за эти роли.
15. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ предметной области».
Идею впервые предложил Нейборс.
Мур и Байлин опр. след. этапы:
1. построение скелетной модели предметной области при консультации с экспертами;
2. изучение существующих в данной области систем
3. определение сходства и различий между системами при участии экспертов;
4. уточнение общей модели.
Анализ лучше вести попеременно с проектированием.
16. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Анализ вариантов».
Этот подход можно применять с выше перечисленными.
1. Анализ требований: эксперты, пользователи, разработчики перечисляют сценарии, наиб. существенные для работы системы.
2. Проработка сценариев, раскладка по кадрам. При этом устанавливается, какие объекты учувствуют в сценарии, каковы их обязанности и как они взаимодействуют в терминах операций. Эти четко распределяется область влияний абстракций.
3. Расширение набора сценариев для учета исключительных ситуаций или вторичного поведения. В результате появляются новые или уточняются существующие абстракции.
17. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «CRC- карточки».
CRS – Classes, Responsibilities, Collaborators (Классы, Ответственности, Участники).
Это простой и эффективный способ анализа сценариев.
На карточках сверху записывают название класса, снизу слева – за что он отвечает, а снизу справа – с кем он взаимодействует. Проходя по сценарию, заводят по карточке на каждый обнаруженный класс. Полученные абстракции анализируют, при этом можно либо перенести излишек ответственности в новый класс, либо перенести ответственности с одного большого класса на несколько более детальных классов, либо передать часть обязанностей другому классу.
С точки зрения динамики сценария х расположение может показать поток сообщений между объектами.
С точки зрения статики они представляют иерархию классов.
18. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Использование неформального описания задачи».
Был предложен Абботом.
Нужно описать задачу или ее часть на простом русском языке, а потом подчеркнуть имена сущ. и гл.
Имена сущ. – кандидаты на роль классов, глаголы могут стать именами операций.
Метод весьма приблизителен и не подходит для сложных задач:
1. список объектов и операций зависит от умения разработчика записывать свои мысли;
2. для многих сущ. можно найти глагольную форму и наоборот.
19. Дайте краткую характеристику подхода к выявлению ключевых абстракций системы «Использование структурного анализа».
После структурного анализа уже существует модель системы в виде диаграмм потоков данных и др. На основе этих моделей можно определить классы и объекты тремя способами:
Мак Менамин и Палмер: сначала сформировать словарь данных, а затем приступить к анализу конкретных диаграмм модели. Нужно понимать что описывают основные структуры данных: если они имена прилагательные, то какие существительные они описывают. Источниками в данном случае явл.: предметная область, входные и выходные данные, услуги и др. ресурсы.
Следующий способ основан на анализе диаграмм потоков.
Кандидаты в объекты в этом случае:
1. внешние сущности;
2. хранилища данных;
3. хранилища управляющих сущностей;
4. управляющие преобразования.
Кандидаты в классы:
1. потоки данных;
2. потоки управления.
Преобразования данных можно рассматривать как операции над объектами или как поведение некоторого объекта.
Зайдевиц и Старк: метод анализа абстракций.
Разработчик изучает преобразование входных данных в выходные для того, чтобы определить, какие процессы и состояния являются самыми важными. Так определяются основные сущности. Затем при помощи диаграмм потоков данных изучают всю инфраструктуру, прослеживая входящие и исходящие из центра потоки данных, и группируют встречающиеся на пути процессы и состояния.
Диаграммы поток – скорее описание проекта, нежели модель существа системы. Трудно постротиь объектно-ориентированную систему, если модель ориентирована на алгоритмическую декомпозицию (разделение системы, при котором основное внимание уделяется порядку проходящих событий, в отличие от объектно – ориентированной декомпозиции, где основное значение уделяется объектам, которые взаимодействуя определяют поведение системы). Лучше использовать как подготовительный этап.
20. Объясните понятие «атрибут класса».
Атрибут – некоторая информация, характеризующая класс.
Атрибут – фрагмент информации, связанный с классом.
Статичный атрибут – атрибут, используемый всеми экземплярами класса. В UML “$”.
Производный атрибут – атрибут, полученный из одного или нескольких атрибутов. В UML “/”.
С атрибутами можно связать 3 основных фрагмента информации:
- имя атрибута;
- тип его данных;
- первоначальное значение.
При добавлении атрибута к классу, каждый экземпляр класса получит свою собственную копию атрибута.
Выявление: имена сущ. в потоке событий либо изучение документации, описывающей требования к системе. После определения соотнести с классами.
Дата добавления: 2015-01-30; просмотров: 95 | Поможем написать вашу работу | Нарушение авторских прав |