1 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Модуль 11 Курс.

Презентация:



Advertisements
Похожие презентации
Проектирование архитектуры ИСО 1. UML 2 Структура определения языка 4.
Advertisements

UML МИЭМ, План лабораторной UML Краткий обзор средств моделирования Паттерны проектирования Практическая часть 2.
The UML Тимофеев Никита
Кандидат технических наук, доцент Грекул Владимир Иванович Учебный курс Проектирование информационных систем Лекция 9.
Программная инженерия Андрей Дмитриев ©2009.
2. UML – унифицированный язык моделирования систем.
Типовые расчёты Растворы
1 Диаграммы реализации (implementation diagrams).
Объектно- ориентированный подход к моделированию систем.
Michael Jackson
Ребусы Свириденковой Лизы Ученицы 6 класса «А». 10.
Оценка знаний. 1. Изучение предметной области 2. Поиск и изучение существующих систем 3. Выявление сильных и слабых сторон аналогов 4. Формулирование.
Школьная форма Презентация для родительского собрания.

Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.16: Диаграммы состояний © Бабич А.В., 2004г 1 из 47 Модуль 16: Диаграммы состояний Курс SE201 Введение в программную.
Разработка программного обеспечения при объектном подходе Объектно-ориентированный подход.
Унифицированный язык моделирования UML является графическим языком для визуализации, конструирования и документирования систем, в которых большая роль.
Урок повторения по теме: «Сила». Задание 1 Задание 2.
РАЗРАБОТКА ЭЛЕКТРОННОГО КУРСА ПО UML– ПРОЕКТИРОВАНИЮ. МОДЕЛЬ КУРСА С ТОЧКИ ЗРЕНИЯ ДИАГРАММ АКТИВНОСТИ И ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ. БУДИНКЕВИЧ А. В. НАУЧНЫЙ.
Разработка объектно- ориентированного ПО Итеративная модель разработки (развитие водопадной модели) анализ проектирование кодирование тестирование.
Транксрипт:

1 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Модуль 11 Курс SE201 Введение в программную инженерию Проект ВИРТУОЗ, ННГУ, Н.Новгород, 2004 г. Бабич А.В., Полтава, Украина, ПГПУ, _____________________________________________________ : Виды диаграмм, их назначение, последовательность построения

2 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Виды диаграмм, их назначение, последовательность построения О разновидностях диаграмм и о том, как применение UML вписывается в процесс ООП Унифицированный язык моделирования © Бабич А.В. 2004

3 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г О чем мы узнаем… Почему нужно несколько видов диаграмм Виды диаграмм ООП и последовательность построения диаграмм

4 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Почему нужно несколько видов диаграмм

5 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Понятие диаграммы и модели (Буч) Диаграмма - графическое представление множества элементов. Обычно изображается в виде графа с вершинами (сущностями) и ребрами (отношениями). С помощью диаграмм можно визуализировать систему с различных точек зрения. Моделью называется семантически замкнутая абстракция системы система рассматривается с разных точек зрения с помощью моделей, многообразные представления которых отображены в форме диаграмм.

6 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Почему нужно несколько видов диаграмм Сложную систему можно представить в виде набора небольших и почти независимых моделей Ни одна из моделей не является достаточной Каждая модель выражает разный уровень абстракции Каждая модель соответствует некоторой точке зрения на проектируемую систему

7 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Почему нужно несколько видов диаграмм Диаграммы – лишь средство визуализации модели Одна отдельная диаграмма не является моделью Лишь набор диаграмм составляет модель системы и наиболее полно ее описывает

8 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Виды диаграмм

9 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Виды диаграмм Виды диаграмм: –диаграмма прецедентов –диаграмма классов –диаграмма объектов –диаграмма последовательностей –диаграмма взаимодействия –диаграмма состояний –диаграмма активности –диаграмма развертывания –… Не всегда нужно строить все диаграммы Правильный выбор нужных диаграмм позволит сформулировать вопросы о системе и выявить ее «скользкие» моменты, которые необходимо учесть

10 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма прецедентов (use case diagram) Прецедент (use case) – описание отдельного аспекта поведения системы с точки зрения пользователя (Буч) Прецедент Прецедент позволяет сформировать пользовательские требования к системе Пример:

11 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы прецедентов

12 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы прецедентов

13 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма классов (class diagram) Класс – категория вещей, которые имеют общие атрибуты и операции (Буч) Класс Диаграмма классов – конечный результат проектирования и отправная точка процесса разработки Диаграммы классов полезны также при анализе предметной области Пример: 12

14 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы классов

15 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

16 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма объектов (Object diagram) Объект – экземпляр класса Объект На диаграмме объектов показаны объекты и их отношения в некоторый момент времени Пример:

17 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы объектов

18 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

19 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма последовательностей (sequence diagram) Диаграмма последовательностей отображает взаимодействие объектов в динамике Диаграммы последовательностей часто используются для точного определения логики сценария Пример:

20 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы последовательностей

21 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

22 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма взаимодействия (collaboration diagram) Диаграммы взаимодействия показывают как элементы системы работают совместно для достижения общих целей Диаграммы взаимодействия аналогичны диаграммам последовательностидиаграммам последовательности Пример:

23 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы взаимодействия

24 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

25 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма состояний (statechart diagram) Объекты имеют как поведение, так и состояниесостояние В каждый момент времени объект находится в некотором определенном состоянии Диаграмма состояний показывает, как объект переходит из одного состояния в другое Пример:

26 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы состояний

27 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Более сложная диаграмма

28 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма активности (activity diagram) Диаграммы деятельности – частный случай диаграмм состояний Такие диаграммы детализируют особенности алгоритмической и логической реализации операций, выполняемых системой. Пример

29 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Примеры диаграмм активности

30 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

31 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Диаграмма развертывания (deployment diagram) Диаграммы развертывания предназначены лишь для распределенных компьютерных систем Диаграмма развертывания показывает физическую архитектуру компьютерной системы Пример:

32 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Пример диаграммы развертывания

33 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Еще пример

34 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Тот же пример в краткой форме

35 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г ООП и последовательность построения диаграмм

36 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Выбор необходимых диаграмм (Г. Буч) Какие именно виды диаграмм лучше всего отражают архитектуру системы и возможный технический риск, связанный с проектом? Какие из диаграмм удобнее всего превратить в инструмент контроля за разработкой системы? На всякий случай сохраняйте даже забракованные диаграммы!

37 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Последовательность построения диаграмм Если у вас нет опыта объектно-ориентированной разработки, воспользуйтесь следующими рекомендациями: –Начинайте применять идею абстрагирования в отношении конкретных моделей. Очень полезны коллективные упражнения с анализом прецедентов –Постройте модель простой статической части задачи с помощью классов, зависимостей, обобщений и ассоциаций –Примените простые диаграммы последовательностей или кооперации для моделирования динамической части задачи. Хорошо начать с построения модели взаимодействия пользователя с системой.

38 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Последовательность построения диаграмм (продолжение) В соответствии с принципами ООП, диаграммы можно строить в такой последовательности: –диаграмма прецедентов –диаграмма классов –диаграмма объектов –диаграмма последовательностей –диаграмма взаимодействия –диаграмма состояний –диаграмма активности –диаграмма развертывания Существуют разные подходы к последовательности построения диаграмм. Не всегда нужно строить все диаграммы!

39 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Вопросы ? ?

40 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Вопросы и упражнения Вопросы: –Почему нужно строить разные диаграммы при моделировании системы? –Какие диаграммы соответствуют статическому представлению о системе? –Какие диаграммы представляют систему в динамике? Упражнения: –Вы разрабатываете компьютерную программу для игры в шахматы. Какая диаграмма UML была бы полезной в этом случае? Почему? –Составьте список вопросов потенциальному пользователю такой программы? Объясните, почему вы хотели бы задать именно их?

41 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г Использованные материалы При разработке представленных материалов с разрешения авторов или правообладателей использовались следующие источники: Г.Буч, А. Джекобсон, Дж. Рамбо. UML: Руководство пользователя Унифицированный язык моделирования ПО. Scott W. Ambler Copyright © 1998 Software Development magazine Леоненков. Самоучитель по UML Дж. Шмулер. Освой самостоятельно UML за 24 часа, 2-е издание: пер. с англ. – М.: Изд. Дом «Вильямс», Sample: The UML © Dr. Richard J. Botting, California State University OMG Unified Modeling Language Specification. Copyright © 2000, Object Management Group

42 из 42 Проект ВИРТУОЗ Н.Новгород, 2004г. SE201. Мод.11: Виды диаграмм, их назначение, последовательность построения © Бабич А.В. 2004г О проекте ВИРТУОЗ Цель проекта "Виртуоз" - подготовка преподавателей к внедрению в ВУЗах России и других стран СНГ новой специальности – "Информационные технологии". Основная задача проекта - совершенствование методологии преподавания программной инженерии. Реализация этой программы направлена на создание надёжной образовательной основы для дальнейшего развития отечественной ИТ-индустрии. В рамках проекта (август-декабрь 2004 г.) - обучение современным методикам программной инженерии, передовым информационным технологиям, получение опыта работы по созданию учебных курсов, соответствующих международным образовательным стандартам IEEE/ACM Computing Curricula 2001: Computer Science и Software Engineering, а также прохождение стажировки в корпорации Intel. Проект "Виртуоз" выполнялся в Нижегородском государственном университете им. Н.И. Лобачевского по инициативе компании Intel при поддержке Microsoft, IBM, Borland, Лаборатория Касперского и др.