Казахстан, г. Алматы, ул. Шевченко 90, БЦ «Каратал», офис 53
Казахстан, г. Астана, ул. Иманова 19, БЦ Деловой Дом "Алма-Ата", офис 612

кол-во дней: 5
кол-во часов: 40
код курса: OO-226

В данном курсе изучаются эффективное использование объектно-ориентированных технологий и моделирование при разработке программного обеспечения. Курс включает лекции, групповые обсуждения и практические занятия. В курсе используется прагматический подход к разработке объектно-ориентированного (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 анализа требований (анализа) и проектирования.