Object-Oriented Analysis and Design Using UML
- Код курса: OOAAD
- Длительность: 5 д.
- Цена: 70 000 Р
- Часы в неделю: 40 ак. часов.
Описание курса
Аннотация:
В данном курсе изучаются эффективное использование объектно-ориентированных технологий и моделирование при разработке программного обеспечения. Курс включает лекции, групповые обсуждения и практические занятия. В курсе используется прагматический подход к разработке объектно-ориентированного (OO) программного обеспечения, в соответствии с проверенными OO технологиями, принципами и шаблонами с использованием языка программирования Java(TM). Слушатели используют язык графического моделирования Unified Modeling Language (UML) version 2.2. Структура курса отражает общий процесс разработки программного обеспечения, выделяя при этом аспекты анализа и проектирования применительно к OO программному обеспечению. Рассматриваются также шаблоны и frameworks, позволяющие создавать более гибкие повторно используемые компоненты программного обеспечения.
Аудитория:
- Java EE разработчики
- Java разработчики
- Разработчики приложений
- Системные аналитики.
Предварительная подготовка:
- Понимание объектно-ориентированных концепций и методологии
- Понимание программирования, предпочтительно на языке программирования Java
- Понимание основ процесса разработки систем
- Java Programming Language, Java SE 6 (SL-275-SE6)
Цели курса:
- Описание процесса разработки объектно-ориентированного программного обеспечения, включая объектно-ориентированные методологии и workflows
- Сбор системных требований посредством интервью через посредников
- Анализ системных требований для определения сценариев использования и доменной модели проблемной области (модель Requirements)
- Создание архитектуры системы (модель Architecture), поддерживающего нефункциональные требования (NFR) и ограничения разработки
- Создание проекта системы (модель Solution), поддерживающего функциональные требования (FR)
Программа курса:
- Концепции и терминология объектно-ориентированного подхода
- Концепции объектно-ориентированного (OO) подхода.
- Терминология объектно-ориентированного подхода.
Введение в моделирование и процесс разработки программного обеспечения
- Процесс Object-Oriented Software Development (OOSD).
- Моделирование и поддержка процесса OOSD.
- Преимущества программного обеспечения моделирования.
- Предназначение, действия и артефакты следующих OOSD workflows (дисциплин): сбор требований, анализ требований, архитектура, дизайн, реализация, тестирование и развертывание.
Создание диаграмм сценариев использования (Use Case)
- Зачем нужны диаграммы сценариев использования.
- Определение и описание существенных элементов в UML диаграммах сценариев использования.
- Разработка диаграмм сценариев использования для систем программного обеспечения, основанных на целях владельца бизнеса.
- Разработка сложных диаграмм сценариев использования, основанных на целях всех посредников.
- Выявление и документирование зависимостей сценариев использования с помощью UML обозначений для расширений, включений и обобщения.
- Управление сложностью диаграмм сценариев использования путем создания UML упакованных представлений.
- Создание сценариев использования и форм.
- Определение и документирование сценариев использования.
- Создание сценариев использования из итоговых сценариев в основном и альтернативном потоках.
- Ссылка на включенные сценарии использования и их расширение.
- Определение и документирование нефункциональных требований (NFR), бизнес правил, рисков и приоритетов для сценариев использования.
- Предназначение Supplementary Specification Document.
Создание диаграмм активности
- Элементы диаграммы активности.
- Моделирование сценариев использования потока событий с помощью диаграммы активности.
Ключевые абстракции
- Определение набора кандидатов в ключевые абстракции.
- Определение ключевых абстракций с помощью CRC анализа.
Построение Problem Domain Model
- Определение существенных элементов в UML диаграмме класса.
- Построение Domain модели с помощью диаграммы класса.
- Определение существенных элементов в UML диаграмме объекта.
- Валидация модели Domain с помощью одной или нескольких диаграмм объектов.
Переход от анализа к проектированиюс помощью диаграмм взаимодействия
- Предназначение и элементы модели проектирования.
- Определение существенных элементов UML диаграммы Communication.
- Создание диаграммного представления Communication модели проектирования.
- Определение существенных элементов последовательности UML диаграмм.
- Создание последовательности диаграммных представлений модели проектирования.
Моделирование состояния объекта с помощью диаграмм машины состояний
- Моделирование состояния объекта.
- Элементы UML диаграммы машины состояний.
Применение шаблонов проектирования к модели проектирования
- Элементы шаблонов программного обеспечения.
- Шаблон Composite.
- Шаблон Strategy.
- Шаблон Observer.
- Шаблон Abstract Factory.
Введение в концепции и диаграммы архитектуры
- Различие между архитектурой и проектированием.
- Уровни, слои и качества системы.
- Workflow архитектуры.
- Диаграммы ключевых представлений архитектуры.
- Выбор типа архитектуры.
- Создание артефактов workflow архитектуры.
Введение в архитектурные уровни
- Концепции клиентского и презентационного уровней.
- Концепции бизнес уровня.
- Концепции уровней ресурсов и интеграции.
- Концепции модели Solution.
Уточнение модели проектирования класса
- Уточнение the атрибутов модели Domain.
- Уточнение связей модели Domain.
- Уточнение методов модели Domain.
- Декларирование конструкторов модели Domain.
- Аннотация поведения метода.
- Создание компонент с интерфейсами.
Обзор процессов разработки программного обеспечения
- Общие рекомендации по OOSD методологиям.
- Особенности некоторых общих методологий.
- Выбор методологии, наиболее подходящей для проекта.
- Разработка плана итераций.
Обзор Frameworks
- Определение framework.
- Преимущества и недостатки использования frameworks.
- Несколько общих frameworks.
- Концепции создания бизнес frameworks.
Обзор курса
- Особенности объектно-ориентированного подхода.
- Обзор ключевых UML диаграмм.
- Обзор workflows анализа требований (анализа) и проектирования.