Информационные технологии Этапы развития UML Основные компоненты UML

Скачать презентацию Информационные технологии Этапы развития UML Основные компоненты UML Скачать презентацию Информационные технологии Этапы развития UML Основные компоненты UML

16176-06.it-ooap-uml.ppt

  • Количество слайдов: 46

>Информационные технологии Этапы развития UML  Основные компоненты UML Информационные технологии Этапы развития UML Основные компоненты UML

>Сложные системы Признак 1 Сложные системы часто являются иерархическими и состоят из взаимозависимых подсистем, Сложные системы Признак 1 Сложные системы часто являются иерархическими и состоят из взаимозависимых подсистем, которые в свою очередь также могут быть разделены на подсистемы, и т.д., вплоть до самого низкого уровням."

>Сложные системы Признак 2 Выбор, какие компоненты в данной системе считаются элементарными, относительно произволен Сложные системы Признак 2 Выбор, какие компоненты в данной системе считаются элементарными, относительно произволен и в большой степени оставляется на усмотрение исследователя.

>Сложные системы Признак 3 Внутрикомпонентная связь обычно сильнее, чем связь между компонентами. Это обстоятельство Сложные системы Признак 3 Внутрикомпонентная связь обычно сильнее, чем связь между компонентами. Это обстоятельство позволяет отделять "высокочастотные" взаимодействия внутри компонентов от "низкочастотной" динамики взаимодействия между компонентами

>Сложные системы Признак 4 Иерархические системы обычно состоят из немногих типов подсистем, по-разному скомбинированных Сложные системы Признак 4 Иерархические системы обычно состоят из немногих типов подсистем, по-разному скомбинированных и организованных

>Сложные системы Признак 5 Любая работающая сложная система является результатом развития работавшей более простой Сложные системы Признак 5 Любая работающая сложная система является результатом развития работавшей более простой системы... Сложная система, спроектированная "с нуля", никогда не заработает. Следует начинать с работающей простой системы

>Сложные системы Дейкстра:  Сложные системы Дейкстра: "Способ управления сложными системами был известен еще в древности - divide et impera (разделяй и властвуй)"

>Объектно Ориентированный Подход  Предшествует модульное программирование, ключевым элементом которого является алгоритм  Выделение Объектно Ориентированный Подход Предшествует модульное программирование, ключевым элементом которого является алгоритм Выделение секции Interface модулях Событийно-управляемый поток выполнения программы

>Объектно Ориентированный Подход  Под классом понимают некоторую абстракцию совокупности объектов, которые имеют общий Объектно Ориентированный Подход Под классом понимают некоторую абстракцию совокупности объектов, которые имеют общий набор свойств и обладают одинаковым поведением

>Объектно Ориентированный Подход  Наследование Инкапсуляция Полиморфизм Объектно Ориентированный Подход Наследование Инкапсуляция Полиморфизм

>ООП Наследование В качестве наиболее общего понятия или категории берется понятие, имеющее наибольший объем ООП Наследование В качестве наиболее общего понятия или категории берется понятие, имеющее наибольший объем и, соответственно, наименьшее содержание

>ООП Инкапсуляция сокрытие отдельных деталей внутреннего устройства классов от внешних по отношению к нему ООП Инкапсуляция сокрытие отдельных деталей внутреннего устройства классов от внешних по отношению к нему объектов или пользователей

>ООП Полиморфизм свойство некоторых объектов принимать различные внешние формы в зависимости от обстоятельств ООП Полиморфизм свойство некоторых объектов принимать различные внешние формы в зависимости от обстоятельств

>Преимущества ООП   Распараллеливание работ Упрощение внесения изменений Гибкая архитектура и переносимость Повторное Преимущества ООП Распараллеливание работ Упрощение внесения изменений Гибкая архитектура и переносимость Повторное использование программных компонентов Естественность описания Появление средств быстрой разработки (RAD)

>Недостатки ООП  Обращение к методу занимает в 1,75-2,5 раза больше времени, чем к Недостатки ООП Обращение к методу занимает в 1,75-2,5 раза больше времени, чем к обычной подпрограмме Медленность защищенных свойств Динамическое создание и удаление объектов

>ООП  Процесс написания программного кода может быть отделен от процесса проектирования структуры ООП Процесс написания программного кода может быть отделен от процесса проектирования структуры Появление специальной методологии, получившей название методологии «объектно-ориентированный анализ и проектирование» (ООАП)

>ООA/П  Наиболее важным моментом ООАП является распределение обязанностей между программными компонентами Анализ – ООA/П Наиболее важным моментом ООАП является распределение обязанностей между программными компонентами Анализ – выявление требований, но не их путей решения Проектирование – концептуальное решение, обеспечивающее выполнение требований

>ООA/П  ООА/П – это выявление правильных действий и обеспечение их правильности ООA/П ООА/П – это выявление правильных действий и обеспечение их правильности

>ЖЦ программы  Анализ предметной области и формулировки требований к программе  Проектирование структуры ЖЦ программы Анализ предметной области и формулировки требований к программе Проектирование структуры программы Реализация программы в кодах (собственно программирования) Внедрение программы Сопровождение программы Отказ от использования программы RAD ООАП

>UML  Какой язык для ООАП? UML Какой язык для ООАП?

>Назначение языка UML  легко воспринимаемый и выразительный язык визуального моделирования, специально предназначенный для Назначение языка UML легко воспринимаемый и выразительный язык визуального моделирования, специально предназначенный для разработки и документирования моделей сложных систем . Снабдить исходные понятия языка UML возможностью расширения независимость от конкретных языков программирования и инструментальных средств включать в себя семантический базис для понимания общих особенностей ООАП. Поощрять развитие рынка объектных инструментальных средств. Способствовать распространению объектных технологий и соответствующих понятий ООАП. Интегрировать в себя новейшие и наилучшие достижения практики ООАП.

>Требования к языку UML Требования к языку Позволять моделировать не только программное обеспечение, но Требования к языку UML Требования к языку Позволять моделировать не только программное обеспечение, но и более широкие классы систем и бизнес-приложений, с использованием объектно-ориентированных понятий. Явным образом обеспечивать взаимосвязь между базовыми понятиями для моделей концептуального и физического уровней. Обеспечивать масштабируемость моделей, что является важной особенностью сложных многоцелевых систем. Быть понятен аналитикам и программистам, а также должен поддерживаться специальными инструментальными средствами, реализованными на различных компьютерных платформах

>Семантические сети   Множество Граф Семантическая сеть (семантика – смысл) Семантические сети Множество Граф Семантическая сеть (семантика – смысл)

>Основные этапы развития UML  В период между 1989-1994 гг. общее число наиболее известных Основные этапы развития UML В период между 1989-1994 гг. общее число наиболее известных языков моделирования возросло с 10 до более чем 50

>Основные этапы развития UML  Метод Гради Буча (Grady Booch), получивший условное название Booch Основные этапы развития UML Метод Гради Буча (Grady Booch), получивший условное название Booch или Booch'91, Booch Lite (позже - Booch'93). Метод Джеймса Румбаха (James Rumbaugh), получивший название Object Modeling Technique - ОМТ (позже - ОМТ-2). Метод Айвара Джекобсона (Ivar Jacobson), получивший название Object-Oriented Software Engineering - OOSE.

>Основные этапы развития UML Основные этапы развития UML

>UML это: UML это: Язык Язык визуализации Язык специфицирования Язык конструировнания Язык документирования UML это: UML это: Язык Язык визуализации Язык специфицирования Язык конструировнания Язык документирования

>Где используется UML ? Информационные системы масштаба предприятия;  Банковские и финансовые услуги; Где используется UML ? Информационные системы масштаба предприятия; Банковские и финансовые услуги; Телекоммуникации; Транспорт; Оборонная промышленность, авиация и космонавтика; розничная торговля; медицинская электроника; наука; распределенные Web-системы.

>Концептуальная модель UML Основные строительные блоки языка, правила их сочетания  и некоторые общие Концептуальная модель UML Основные строительные блоки языка, правила их сочетания и некоторые общие для всего языка механизмы

>Концептуальная модель UML Строительные  блоки Правила  сочетания Механизмы Концептуальная модель UML Строительные блоки Правила сочетания Механизмы

>Строительные блоки UML  Сущности – это абстракции, являющиеся основными элементами модели; Отношения – Строительные блоки UML Сущности – это абстракции, являющиеся основными элементами модели; Отношения – это связующие строительные блоки в UML ; Диаграммы – это это графическое представление набора элементов.

>Сущности – это абстракции, являющиеся основными элементами модели; структурные (имена существительные);  Класс (Class) Сущности – это абстракции, являющиеся основными элементами модели; структурные (имена существительные); Класс (Class) Интерфейс (Interface) Кооперация (Collaboration) Прецедент (Use case) Активный класс (Active class) Компонент (Component) Узел (Node) Поведенческие; группирующие; аннотационные Сущности

>Поведенческие сущности (Behavioral things)  –  описывают поведение модели во времени и пространстве Поведенческие сущности (Behavioral things) – описывают поведение модели во времени и пространстве Взаимодействие (Interaction) Автомат (State machine) Поведенческие сущности

>Группирующие сущности являются организующими частями модели UML   Пакеты (Packages)   Группирующие Группирующие сущности являются организующими частями модели UML Пакеты (Packages) Группирующие сущности

>Аннотационные сущности – пояснительные части модели UML   Примечания (Note)   Аннотационные Аннотационные сущности – пояснительные части модели UML Примечания (Note) Аннотационные сущности

>Отношения являются основными связующими строительными блоками в UML   Зависимость (Dependency) ; Отношения являются основными связующими строительными блоками в UML Зависимость (Dependency) ; Ассоциация (Association) ; Обобщение (Generalization) ; Реализация (Realization). Отношения

>диаграммы классов;  диаграммы прецедентов;  диаграммы последовательностей;  диаграммы кооперации;  диаграммы состояний; диаграммы классов; диаграммы прецедентов; диаграммы последовательностей; диаграммы кооперации; диаграммы состояний; диаграммы действий; диаграммы компонентов; диаграммы развертывания Диаграммы

>имена, которые можно давать сущностям, отношениям и диаграммам;  область действия (контекст, в котором имена, которые можно давать сущностям, отношениям и диаграммам; область действия (контекст, в котором имя имеет некоторое значение); видимость (когда имена видимы и могут использоваться другими элементами); целостность (как элементы должны правильно и согласованно соотноситься друг с другом); выполнение (что значит выполнить или имитировать некоторую динамическую модель). Правила языка UML

>спецификации (Specifications); –  текстовое  представление синтаксиса и семантики соответствующего строительного блока спецификации (Specifications); – текстовое представление синтаксиса и семантики соответствующего строительного блока дополнения (Adornments); принятые деления (Common divisions); механизмы расширения (Extensibility mechanisms). Общие механизмы UML

>Стереотипы (Stereotype) расширяют словарь UML, позволяя на основе существующих блоков языка создавать новые, специфичные Стереотипы (Stereotype) расширяют словарь UML, позволяя на основе существующих блоков языка создавать новые, специфичные для решения конкретной проблемы ; Помеченные значения (Tagget Value) позволют включать новую информацию в спецификацию элемента; Ограничения (Constraint) позволют определять новые или изменять существующие правила Механизмы расширения

>Архитектура - это совокупность существенных решений касательно: организации программной системы;  выбора структурных элементов, Архитектура - это совокупность существенных решений касательно: организации программной системы; выбора структурных элементов, поведения этих элементов, специфицированного в кооперациях с другими элементами; составления из этих структурных и поведенческих элементов все более и более крупных подсистем; архитектурного стиля, определяющего всю организацию системы. Архитектура

>Архитектура Проектирование   Реализация    Вид с точки зрения  Процессов Архитектура Проектирование Реализация Вид с точки зрения Процессов Вид с точки зрения Развертывания Прецеденты использования

>Пример: Игра в кости Игрок бросает кость Если выпало 6 то выиграл Пример: Игра в кости Игрок бросает кость Если выпало 6 то выиграл

>Пример: Игра в кости Диаграмма взаимодействия Пример: Игра в кости Диаграмма взаимодействия

>Пример: Игра в кости Диаграмма классов Пример: Игра в кости Диаграмма классов

>Г. Буч и др. UML. Руководство пользователя, версия 1.3 А.Леоненков. Самоучитель UML К. Ларман. Г. Буч и др. UML. Руководство пользователя, версия 1.3 А.Леоненков. Самоучитель UML К. Ларман. Применение UML и шаблонов проектирования Литература