КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Уточнение атрибутов
Уточнение операций В ходе выполнения лабораторной работы № 9, в процессе построения диаграмм взаимодействия (соотнесения сообщений с операциями) в классах автоматически появились операции "анализа". Обязанности классов, определенные в процессе анализа и документированные в виде операций анализа, преобразуются в операции, которые будут реализованы в коде, при этом: - каждой операции присваивается краткое имя, характеризующее ее результат; - определяется полная сигнатура операции (в соответствии с нотацией, принятой в языке UML); - создается краткое описание операции, включая смысл всех ее параметров; - задается видимость операции: public, private или protected; - определяется область действия операции: экземпляр (операция объекта) или классификатор (операция класса); - может быть составлено описание алгоритма выполнения операции (с использованием диаграмм деятельности в виде блок-схем, а также диаграмм взаимодействия различных объектов при выполнении операции). Добавление атрибутов к классам анализа, которые определяются исходя из знаний о предметной области, требований к системе и глоссария осуществляется следующим образом: 1. В пункте меню Tools ® Options, на вкладке Diagram установить переключатели ShowAllAttributes, а переключатели SuppressAttributes и SuppressOperations выключить. 2. Добавить атрибуты классов с помощью команды NewAttribute контекстного меню класса. После добавления атрибутов, они автоматически отображаются и на диаграмме классов UseCaseRealization. Кроме имени атрибута задаются его тип и значение по умолчанию (необязательное), при этом учитываются соглашения по именованию атрибутов, принятые в проекте и языке реализации. Также задается видимость атрибутов: public, private или protected. При необходимости определяются производные (вычисляемые) атрибуты. Уточнение связей между классами Уточнение связей между классами осуществляется в два этапа. 1. Начальный набор связей устанавливается на основе анализа диаграмм взаимодействия. Если два объекта взаимодействуют (обмениваются сообщениями), между ними на диаграмме взаимодействия должна существовать связь (путь взаимодействия), которая преобразуется в двунаправленную ассоциацию между соответствующими классами. Если сообщения между некоторой парой объектов передаются только в одном направлении, то для соответствующей ассоциации вводится направление навигации. 2. Анализируются и уточняются ассоциации между классами-сущностями. Задаются мощности ассоциаций, могут использоваться множественные ассоциации, агрегации, обобщения и ассоциации-классы. Ассоциации между граничными и управляющими классами, а также между управляющими классами и классами-сущностями вводятся на основе анализа диаграмм взаимодействия и в отличие от устойчивых структурных (семантических) связей между сущностями отражают связи, динамически возникающие между соответствующими объектами в потоке управления (в процессе работы приложения). Поскольку для ассоциаций это не свойственно, в дальнейшем (в процессе проектирования) они могут быть преобразованы в зависимости. При создании обобщения может потребоваться перенести некоторые атрибуты или операции из одного класса в другой путем перемещения их с помощью мыши в браузере. Проектирование базы данных зависит от того, какой тип СУБД используется для хранения данных СУБД - объектная или реляционная. Для объектных БД никакого проектирования не требуется, поскольку классы-сущности непосредственно отображаются в БД. Для реляционных БД классы-сущности объектной модели должны быть отображены в таблицы реляционной БД. В Rose существует средство проверки моделей (Tools ® CheckModel), не зависящее от языка и применяемое для обеспечения корректности модели перед генерацией кода. Рекомендуется всегда выполнять такую проверку, поскольку она помогает выявить в модели неточности и ошибки, не позволяющие генерировать код надлежащим образом. Проанализируйте все ошибки, появившиеся в окне журнала. В Rose создание компонентов и соотнесение классов с компонентами выполняется в представлении компонентов. Как и в случае классов, одним из критериев объединения компонентов в пакеты является повторное использование. Отдельные компоненты можно создавать непосредственно на диаграмме или перетаскивать их туда из браузера. Для этого открыть диаграмму компонентов Main в представлении компонентов и с помощью кнопок PackageSpecification и PackageBody разместить соответствующие элементы на диаграмме, определить спецификацию и провести линию зависимости. Далее необходимо соотнести соответствующий класс с компонентом. Для каждого языка в Rose предусмотрен ряд определенных свойств генерации кода. Перед генерацией кода рекомендуется анализировать эти свойства и вносить необходимые изменения. Во время генерации кода, Rose выбирает информацию из логического и компонентного представлений модели и генерирует большой объем "скелетного" кода: - классы - генерируются все классы модели; - атрибуты - код включает атрибуты каждого класса, в том числе видимость, тип данных и значение по умолчанию; - сигнатуры операций - код содержит определения операций со всеми параметрами, типами данных параметров и типом возвращаемого значения операции; - связи - некоторые из связей модели вызывают создание атрибутов при генерации кода; - компоненты - каждый компонент реализуется в виде соответствующего файла с исходным кодом.
Задание к выполнению В соответствии с вариантом, определяющим предметную область, продолжить разработку модели проектирования ИС с использованием CASE -средства, выполнив следующие действия: 1. Уточнить и добавить атрибуты к существующим классам. 2. Уточнить операции классов. 3. Разработать и создать средствами Rose не менее трех диаграмм классов, установив между классами разные виды отношений. 4. Уточнить классы путем определения типов атрибутов, области видимости атрибутов и операций, возвращаемых операциями значений, параметров операций (использовать возможности Rose по установке значений по умолчанию, вычисляемых значений и др.). 5. Создать компоненты и соотнести с ними классы. 6. Выполнить генерацию программного кода для отдельного класса, включенного в компонент. 7. Выполнить проверку модели.
Контрольные вопросы 1. Этапы проектирования архитектуры системы и ее элементов? 2. Элементы представления компонентов и представления размещения в модели Rose и их назначение? 3. Этапы проектирования классов. Детализация проектных классов? 4. Уточнение операций и атрибутов классов анализа? 5. Уточнение связей между классами анализа? 6. Назначение класса, его изображение, правила именования класса, атрибута класса и операции класса? 7. Области видимости атрибутов и операций класса? 8. Виды отношений между классами? 9. Назначение диаграммы классов и ее основных элементов? 10. Назначение диаграммы компонентов и ее основных элементов? 11. Назначение диаграммы размещения и ее основных элементов?
Дата добавления: 2017-01-14; Просмотров: 291; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |