Лекционные материалы, страница 11

PDF-файл Лекционные материалы, страница 11 Объектно-ориентированный анализ и проектирование (53611): Лекции - 7 семестрЛекционные материалы: Объектно-ориентированный анализ и проектирование - PDF, страница 11 (53611) - СтудИзба2019-09-18СтудИзба

Описание файла

PDF-файл из архива "Лекционные материалы", который расположен в категории "". Всё это находится в предмете "объектно-ориентированный анализ и проектирование" из 7 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 11 страницы из PDF

Попытки будут повторяться до тех пор, пока связь не установится.ПредусловияПеред началом выполнения данногорегистратор должен войти в систему.вариантаиспользованияПостусловияЕсли вариант использования завершится успешно, регистрациязакрывается. В противном случае состояние системы не изменится.Упражнение 5. Прикрепление файла к варианту использования1. Щелкните правой кнопкой мыши на варианте использования.2. В открывшемся меню выберите пункт Open Specification673.

Перейдите на вкладку файлов.4. Щелкните правой кнопкой мыши на белом поле и из открывшегосяменю выберите пункт Insert File.5. Укажите созданный ранее файл и нажмите на кнопку Open, чтобыприкрепить файл к варианту использования.Врезультатепредставлениевариантов использования в браузерепримет следующий вид:Удаление вариантов использования и действующих лицСуществует два способа удалить элемент модели – из однойдиаграммы или из всей модели. Чтобы удалить элемент модели издиаграммы:1. Выделите элемент на диаграмме.2.

Нажмите на клавишу Delete.3. Обратите внимания, что, хотя элемент и удален с диаграммы, оностался в браузере и на других диаграммах системы.Чтобы удалить элемент из модели:1. Выделите элемент на диаграмме.2. Выберите пункт меню Edit > Delete from Model или нажмитесочетание клавиш CTRL + D.683.5. Анализ системы3.5.1.

Архитектурный анализПринятие соглашений по моделированиюВключает:• Используемые диаграммы и элементы модели;• Правила их применения;• Соглашения по именованию элементов;• Организация модели (пакеты).Пример соглашений моделирования:• Имена вариантов использованияглагольными фразами.должныбытькороткими• Для каждого варианта использования должен быть создан пакетUse-Case Realization, включающий:§ по крайней мере одну реализацию варианта использования;§ диаграмму «View Of Participating Classes» (VOPC).• Именаклассовсоответствующими,области.должныпобытьвозможности,существительными,понятиямпредметной• Имена классов должны начинаться с заглавной буквы.• Имена атрибутов и операций должны начинаться со строчнойбуквы.• Составные имена должны быть сплошными, без подчеркиваний,каждое отдельное слово должно начинаться с заглавной буквы.Реализация варианта использования (Use-Case Realization):Описывает реализацию конкретного варианта использования втерминах взаимодействующих объектов и представляется с помощьюнабора диаграмм (диаграмм классов, реализующих вариант использования,и диаграмм взаимодействия (диаграмм последовательности икооперативных диаграмм), отражающих взаимодействие объектов впроцессе реализации варианта использования).69<<realizes>>Use-CaseRealizationUse CaseРис.

3.3. Реализация варианта использованияИдентификация ключевых абстракцийЗаключается в предварительном определении классов системы(классов анализа). Источники – знание предметной области, требования ксистеме, глоссарий. Классы анализа для системы регистрации показаны нарис. 3.4:StudentProfessorScheduleCourseOfferingCourseРис. 3.4. Классы анализа системы регистрацииУпражнение 6.

Создание структуры модели и классов анализа всоответствии с требованиями архитектурного анализаСтруктуралогическогопредставления браузера должнаиметь следующий вид:70Создание пакетов и диаграммы Traceabilities:1. Щелкните правой кнопкой мыши на логическом представлениибраузера.2. В открывшемся меню выберите пункт New > Package3. Назовите новый пакет Design Model.4. Создайте аналогичным образом пакеты Use-Case Realizations, UseCase Realization – Close Registration, Use-Case Realization – Login иUse-Case Realization – Register for Courses.5. В каждом из пакетов типа Use-Case Realization создайтесоответствующие кооперации Close Registration, Login и Registerfor Courses (каждая кооперация представляет собой вариантиспользования со стереотипом «use-case realization», которыйзадается в спецификации варианта использования).6.

Создайте в пакете Use-Case Realizations новую диаграммувариантов использования с названием Traceabilities и постройте еев соответствии с рис. 3.5.<<realizes>><<use-case realization>>Login(from Use Case View)Login(from Use-Case Realization - Login)<<realizes>><<use-case realization>>Register for Courses(from Use-Case Realization - Registerfor Courses)Register for Courses(from Use Case View)<<realizes>><<use-case realization>>Close Registration(from Use-Case Realization Close Registration)Close Registration(from Use Case View)Рис. 3.5. Диаграмма Traceabilities71Создание классов анализа и соответствующей диаграммы KeyAbstractions:1.

Щелкните правой кнопкой мыши на пакете Design Model.2. Выберите в открывшемся меню пункт New > Class. Новый класспод названием NewClass появится в браузере.3. Выделите его и введите имя Student.4. Создайте аналогичным образом классы Professor, Schedule, Courseи CourseOffering.5. Щелкните правой кнопкой мыши на пакете Design Model.6. В открывшемся меню выберите пункт New > Class Diagram.7. Назовите новую диаграмму классов Key Abstractions.8.

Чтобы расположить вновь созданные классы на диаграмме классов,откройте ее и перетащите классы на открытую диаграмму мышью.Диаграмма классов должна выглядеть как на рис. 3.4.3.5.2. Анализ вариантов использованияИдентификация классов, участвующихсобытий варианта использованиявреализациипотоковВ потоках событий варианта использования выявляются классы трехтипов:1.

Граничные классы (Boundary) – служат посредникамипри взаимодействии внешних объектов с системой. Как правило,для каждой пары «действующее лицо – вариант использования»определяется один граничный класс. Типы граничных классов:пользовательскийинтерфейс(обменинформациейспользователем, без деталей интерфейса – кнопок, списков, окон),системный интерфейс и аппаратный интерфейс (используемыепротоколы, без деталей их реализации).2. Классы-сущности (Entity) – представляют собой ключевыеабстракции (понятия) разрабатываемой системы.

Источникивыявления классов-сущностей: ключевые абстракции, созданные впроцессе архитектурного анализа, глоссарий, описание потоковсобытий вариантов использования.723. Управляющие классы (Control) – обеспечивают координациюповедения объектов в системе. Могут отсутствовать в некоторыхвариантахиспользования,ограничивающихсяпростымиманипуляциями с хранимыми данными. Как правило, для каждоговарианта использования определяется один управляющий класс.Примерыуправляющихклассов:менеджертранзакций,координатор ресурсов, обработчик ошибок.Пример набора классов, участвующих в реализации вариантаиспользования Register for Courses, приведен на рис.

3.6.<<boundary>>RegisterForCoursesForm<<boundary>>CourseCatalogSystem<<control>>RegistrationController<<entity>>Student<<entity>>Schedule<<entity>>CourseOfferingРис. 3.6. Классы, участвующие в реализации варианта использованияRegister for CoursesУпражнение 7.

Создание классов, участвующих в реализацииварианта использования Register for Courses, и диаграммы классов«View Of Participating Classes» (VOPC)1. Щелкните правой кнопкой мыши на пакете Design Model.2. Выберите в открывшемся меню пункт New > Class. Новый класспод названием NewClass появится в браузере.3. Выделите его и введите имя RegisterForCoursesForm.4. ЩелкнитеправойкнопкоймышинаклассеRegisterForCoursesForm.5. В открывшемся меню выберите пункт Open Specification.736. В поле стереотипа выберите Boundary и нажмите на кнопку ОК.7. Создайте аналогичным образом классы CourseCatalogSystemсо стереотипом Boundary и RegistrationController со стереотипомControl.8.

Назначьте классам Schedule, CourseOffering и Student стереотипEntity.9. Щелкните правой кнопкой мыши на кооперации Register forCourses в пакете Use-Case Realization – Register for Courses.10.В открывшемся меню выберите пункт New > Class Diagram.11.Назовите новую диаграмму классов VOPC (classes only).12.Откройте ее и перетащите классы на открытую диаграммув соответствии с рис.

3.6.Распределение поведения, реализуемого вариантом использования,между классамиРеализуется с помощью диаграмм взаимодействия (диаграммпоследовательности и кооперативных диаграмм). В первую очередьстроится диаграмма (одна или более), описывающая основной потоксобытий и его подчиненные потоки. Для каждого альтернативного потокасобытий строится отдельная диаграмма. Примеры:• обработка ошибок;• контроль времени выполнения;• обработка неправильных вводимых данных.Нецелесообразно описывать тривиальные потоки событий (например,в потоке участвует только один объект).Упражнение 8. Создание диаграмм взаимодействияСоздадим диаграммы последовательности и кооперативныедиаграммы для основного потока событий варианта использования Registerfor Courses.

Готовые диаграммы последовательности должны иметь вид,как на рис. 3.7 – 3.11.74: RegisterForCoursesForm: RegistrationController: Student1: // register for courses( )2: // is registration open?( )[ registration open ]3: // display possible operations( )Выполняетсяодин из трехпотоков:4: // create schedule( )Sequence Diagram: Registerfor Courses / Register forCourses - Basic Flow (CreateSchedule)5: // update schedule( )Sequence Diagram: Registerfor Courses / Register forCourses - Basic Flow (UpdateSchedule)6: // delete schedule( )Sequence Diagram: Registerfor Courses / Register forCourses - Basic Flow (DeleteSchedule)Рис.

3.7. Диаграмма последовательности Register for Courses – BasicFlow75:Student:RegisterForCoursesForm:RegistrationController:CourseCatalogSystem1: // create schedule( )Студент хочет создатьграфик занятий:Schedule :Student:CourseCatalog2: // get course offerings( )3: // get course offerings(forSemester)4: // get course offerings( )5: // display course offerings( )Отображаетсясписок курсовтекущего семестра6: // display blank schedule( )7: // select 4 primary and 2 alternate offerings( )8: // create scheduleith ff i(9: // create with offerings( )10: // add schedule(Schedule)В этой точке выполняется подчиненный поток«Принять график»Sequence Diagram: Register for Courses /Register for Courses - Basic Flow(Submit Schedule)Рис.

3.8. Диаграмма последовательности Register for Courses – BasicFlow (Create Schedule)Настройка1. В меню модели выберите пункт Tools > Options.2. Перейдите на вкладку диаграмм.3. Контрольные переключатели Sequence Numbering, CollaborationNumbering должны быть помечены, а Focus of Control – нет.4. Нажмите ОК, чтобы выйти из окна параметров.Создание диаграммы последовательности1. Щелкните правой кнопкой мыши на кооперации Register forCourses в пакете Use-Case Realization – Register for Courses.2. В открывшемся меню выберите пункт New > Sequence Diagram.3. Назовите новую диаграмму Register for Courses – Basic Flow.4.

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