Хотите получать информацию по новым курсам и их датам проведения?
(OO-226) Object-Oriented Analysis and Design Using UML
Описание курса
В данном курсе изучаются эффективное использование объектно-ориентированных технологий и моделирование при разработке программного обеспечения. Курс включает лекции, групповые обсуждения и практические занятия. В курсе используется прагматический подход к разработке объектно-ориентированного (OO) программного обеспечения, в соответствии с проверенными OO технологиями, принципами и шаблонами с использованием языка программирования Java(TM). Слушатели используют язык графического моделирования Unified Modeling Language (UML) version 2.2. Структура курса отражает общий процесс разработки программного обеспечения, выделяя при этом аспекты анализа и проектирования применительно к OO программному обеспечению. Рассматриваются также шаблоны и frameworks, позволяющие создавать более гибкие повторно используемые компоненты программного обеспечения.
Необходимая предварительная подготовка:
- Понимание объектно-ориентированных концепций и методологии
- Понимание программирования, предпочтительно на языке программирования Java
- Понимание основ процесса разработки систем
- Java Programming Language, Java SE 6 (SL-275-SE6)
Цель курса:
- Описание процесса разработки объектно-ориентированного программного обеспечения, включая объектно-ориентированные методологии и workflows
- Сбор системных требований посредством интервью через посредников
- Анализ системных требований для определения сценариев использования и доменной модели проблемной области (модель Requirements)
- Создание архитектуры системы (модель Architecture), поддерживающего нефункциональные требования (NFR) и ограничения разработки
- Создание проекта системы (модель Solution), поддерживающего функциональные требования (FR)
Аудитория курса:
- Java EE разработчики
- Java разработчики
- Разработчики приложений
- Системные аналитики.
Программа курса
Концепции и терминология объектно-ориентированного подхода
Концепции объектно-ориентированного (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 анализа требований (анализа) и проектирования.
Дни | 5 дней |
---|---|
Дата курса | По запросу |
Город | Все города |
Формат обучения | Корпоративный |