Similar presentations:
Информационные технологии. Этапы развития UML. Основные компоненты UML
1. Информационные технологии
Этапы развития UMLОсновные компоненты UML
2. Сложные системы
Признак 1Сложные системы часто являются
иерархическими и состоят из
взаимозависимых подсистем,
которые в свою очередь также
могут быть разделены на
подсистемы, и т.д., вплоть до
самого низкого уровням."
3. Сложные системы
Признак 2Выбор, какие компоненты в данной
системе считаются
элементарными, относительно
произволен и в большой степени
оставляется на усмотрение
исследователя.
4. Сложные системы
Признак 3Внутрикомпонентная связь обычно
сильнее, чем связь между
компонентами. Это
обстоятельство позволяет
отделять "высокочастотные"
взаимодействия внутри
компонентов от "низкочастотной"
динамики взаимодействия между
компонентами
5. Сложные системы
Признак 4Иерархические системы обычно
состоят из немногих типов
подсистем, по-разному
скомбинированных и
организованных
6. Сложные системы
Признак 5Любая работающая сложная
система является результатом
развития работавшей более
простой системы... Сложная
система, спроектированная "с
нуля", никогда не заработает.
Следует начинать с работающей
простой системы
7. Сложные системы
Дейкстра:"Способ управления сложными
системами был известен еще в
древности - divide et impera
(разделяй и властвуй)"
8. Объектно Ориентированный Подход
Предшествует модульноепрограммирование, ключевым
элементом которого является
алгоритм
Выделение секции Interface
модулях
Событийно-управляемый поток
выполнения программы
9. Объектно Ориентированный Подход
Под классом понимают некоторуюабстракцию совокупности
объектов, которые имеют общий
набор свойств и обладают
одинаковым поведением
10. Объектно Ориентированный Подход
НаследованиеИнкапсуляция
Полиморфизм
11. ООП Наследование
В качестве наиболееобщего понятия или
категории берется
понятие, имеющее
наибольший объем
и, соответственно,
наименьшее
содержание
12. ООП Инкапсуляция
сокрытие отдельныхдеталей
внутреннего
устройства классов
от внешних по
отношению к нему
объектов или
пользователей
13. ООП Полиморфизм
свойство некоторыхобъектов принимать
различные внешние
формы в
зависимости от
обстоятельств
14. Преимущества ООП
Распараллеливание работУпрощение внесения изменений
Гибкая архитектура и переносимость
Повторное использование
программных компонентов
Естественность описания
Появление средств быстрой
разработки (RAD)
15. Недостатки ООП
Обращение к методу занимает в1,75-2,5 раза больше времени, чем к
обычной подпрограмме
Медленность защищенных свойств
Динамическое создание и удаление
объектов
16. ООП
Процесс написания программного кодаможет быть отделен от процесса
проектирования структуры
Появление специальной методологии,
получившей название методологии
«объектно-ориентированный анализ
и проектирование» (ООАП)
17. ООA/П
Наиболее важным моментом ООАПявляется распределение
обязанностей между программными
компонентами
Анализ – выявление требований, но не
их путей решения
Проектирование – концептуальное
решение, обеспечивающее
выполнение требований
18. ООA/П
ООА/П – это выявление правильныхдействий и обеспечение их
правильности
19. ЖЦ программы
1.ООАП
2.
3.
RAD
4.
5.
6.
Анализ предметной области и
формулировки требований к программе
Проектирование структуры программы
Реализация программы в кодах
(собственно программирования)
Внедрение программы
Сопровождение программы
Отказ от использования программы
20. UML
Какой язык для ООАП?21. Назначение языка UML
легко воспринимаемый и выразительный язык визуальногомоделирования, специально предназначенный для разработки
и документирования моделей сложных систем .
Снабдить исходные понятия языка UML возможностью
расширения
независимость от конкретных языков программирования и
инструментальных средств
включать в себя семантический базис для понимания общих
особенностей ООАП.
Поощрять развитие рынка объектных инструментальных
средств.
Способствовать распространению объектных технологий и
соответствующих понятий ООАП.
Интегрировать в себя новейшие и наилучшие достижения
практики ООАП.
22. Требования к языку UML
Требования к языкуПозволять моделировать не только программное
обеспечение, но и более широкие классы систем и
бизнес-приложений, с использованием объектноориентированных понятий.
Явным образом обеспечивать взаимосвязь между
базовыми понятиями для моделей концептуального
и физического уровней.
Обеспечивать масштабируемость моделей, что
является важной особенностью сложных
многоцелевых систем.
Быть понятен аналитикам и программистам, а также
должен поддерживаться специальными
инструментальными средствами, реализованными
на различных компьютерных платформах
23. Семантические сети
МножествоГраф
Семантическая сеть
(семантика – смысл)
24. Основные этапы развития UML
В период между 1989-1994 гг. общеечисло наиболее известных языков
моделирования возросло с 10 до
более чем 50
25. Основные этапы развития UML
Метод Гради Буча (Grady Booch),получивший условное название Booch или
Booch'91, Booch Lite (позже - Booch'93).
Метод Джеймса Румбаха (James
Rumbaugh), получивший название Object
Modeling Technique - ОМТ (позже - ОМТ-2).
Метод Айвара Джекобсона (Ivar Jacobson),
получивший название Object-Oriented
Software Engineering - OOSE.
26. Основные этапы развития UML
27. UML это:
UML это:Язык
Язык визуализации
Язык специфицирования
Язык конструировнания
Язык документирования
28. Где используется UML ?
Информационные системы масштабапредприятия;
Банковские и финансовые услуги;
Телекоммуникации;
Транспорт;
Оборонная промышленность, авиация и
космонавтика;
розничная торговля;
медицинская электроника;
наука;
распределенные Web-системы.
29. Концептуальная модель UML
Основные строительные блоки языка,правила их сочетания
и некоторые общие для всего языка
механизмы
30. Концептуальная модель UML
Строительныеблоки
Сущности
1.
2.
3.
4.
Структурные
Поведенческие
Группирующие
Аннотационные
Механизмы
Определяют:
Отношения
1.
2.
3.
4.
Зависимость
Ассоциация
Обобщение
Реализация
Структурные
•Класс
•Интерфейс
•Кооперация
•Прецедент
•Активный класс
•Компонент
•Узел
Поведенческие
•Взаимодействие
•Автомат
Правила
сочетания
Диаграммы
1.
2.
3.
4.
5.
6.
7.
8.
классов;
прецедентов;
последовательностей;
кооперации;
состояний;
действий;
компонентов;
развертывания
•имена;
•область действия;
•видимость;
•целостность;
•выполнение.
•спецификации;
•дополнения;
•принятые деления;
•механизмы расширения
31. Строительные блоки UML
Сущности – это абстракции,являющиеся основными
элементами модели;
Отношения – это связующие
строительные блоки в UML ;
Диаграммы – это это графическое
представление набора элементов.
32. Сущности
Сущности – это абстракции, являющиесяосновными элементами модели;
структурные (имена существительные);
Класс (Class)
Интерфейс (Interface)
Кооперация (Collaboration)
Прецедент (Use case)
Активный класс (Active class)
Компонент (Component)
Узел (Node)
Поведенческие;
группирующие;
аннотационные
33. Поведенческие сущности
Поведенческие сущности(Behavioral things) –
описывают поведение модели во
времени и пространстве
• Взаимодействие (Interaction)
• Автомат (State machine)
34. Группирующие сущности
Группирующие сущностиявляются организующими
частями модели UML
• Пакеты (Packages)
35. Аннотационные сущности
Аннотационные сущности –пояснительные части модели
UML
Примечания (Note)
36. Отношения
Отношения являются основнымисвязующими строительными
блоками в UML
Зависимость (Dependency) ;
Ассоциация (Association) ;
Обобщение (Generalization) ;
Реализация (Realization).
37. Диаграммы
1.2.
3.
4.
5.
6.
7.
8.
диаграммы классов;
диаграммы прецедентов;
диаграммы
последовательностей;
диаграммы кооперации;
диаграммы состояний;
диаграммы действий;
диаграммы компонентов;
диаграммы развертывания
38. Правила языка UML
имена, которые можно даватьсущностям, отношениям и диаграммам;
область действия (контекст, в котором
имя имеет некоторое значение);
видимость (когда имена видимы и
могут использоваться другими
элементами);
целостность (как элементы должны
правильно и согласованно
соотноситься друг с другом);
выполнение (что значит выполнить или
имитировать некоторую динамическую
модель).
39. Общие механизмы UML
спецификации (Specifications);– текстовое представление синтаксиса и
семантики соответствующего
строительного блока
дополнения (Adornments);
принятые деления (Common
divisions);
механизмы расширения (Extensibility
mechanisms).
40. Механизмы расширения
Стереотипы (Stereotype)Помеченные значения (Tagget Value)
расширяют словарь UML,
позволяя на основе существующих блоков
языка создавать новые, специфичные для
решения конкретной проблемы ;
позволют включать новую информацию в
спецификацию элемента;
Ограничения (Constraint)
позволют определять новые или изменять
существующие правила
41. Архитектура
Пример: Игра в костиИгрок бросает кость
Если выпало 6 то выиграл
42. Архитектура
Пример: Игра в костиДиаграмма взаимодействия
43. Пример: Игра в кости
Литература1.
2.
3.
Г. Буч и др. UML. Руководство
пользователя, версия 1.3
А.Леоненков. Самоучитель UML
К. Ларман. Применение UML и
шаблонов проектирования