8 812 320 13 03
  • Новости
  • Расписание
  • Курсы
  • Организациям
  • Летняя Школа
  • Перезвоните мне

    Управление качеством объектно-ориентированной архитектуры

    Управление качеством объектно-ориентированной архитектуры и программного кода

    Управление качеством объектно-ориентированной архитектуры и программного кода
    Начало курса
    30.11.2017
    Продолжительность
    2 дня (16 часов)
    Расписание
    Чт. 10:00 - 17:30
    Пт. 10:00 - 17:30
    Семинар
    (18 мест)
    35290 записаться
    свернуть

    Описание курса

    Сертификат

    Цели курса: 

    Сформировать у слушателей представление об основных практиках проектирования информационных систем (ИС) уровня предприятия и ознакомить обучаемых с канонической библиотекой типовых шаблонов проектирования. 

    Содержание курса охватывает сведения о порядке декомпозиции приложения на слои, подходах к организации бизнес-логики, использовании и основных аспектах реализации каждого рассматриваемого решения, подкрепленные примерами UML-диаграмм и исходного кода. 

    Курс будет полезен системным и функциональным архитекторам, руководителям групп разработки и тестирования, а также руководителям проектов разработки корпоративных ИС. 

    Целевая аудитория: 

    • руководители проектов разработки корпоративных ИС; 
    • системные и функциональные архитекторы; 
    • руководители групп системного анализа, ведущие системные аналитики; 
    • руководители групп разработки, ведущие разработчики; 
    • руководители групп тестирования, ведущие специалисты по тестированию ПО; 
    • иные специалисты. 

    Минимальные требования для участников: 

    • уверенный пользователь ПК (обязательно); 
    • английский язык — на уровне чтения технической документации (желательно); 
    • опыт системного анализа или системного (функционального) проектирования или руководства проектами продуктовой или заказной разработки ПО или опыт работы в сфере программной инженерии или профильное профессиональное образование. 

    Регламент проведения занятий: 

    • продолжительность тренинга — 3 дня (24 ак. часа); 
    • рекомендуемый режим занятий — с 10:00 до 17:20 с обеденным перерывом (60 мин.) и двумя кофе-паузами (по 5 – 10 мин. каждая). 

    Программа курса: 

    ДЕНЬ 1:
    Модуль 1. Понятие качества исходного кода.
    • Качество программного обеспечения (ПО) и исходного кода. Структурное качество исходного кода. Актуальность вопроса.
    • Основные модели и атрибуты качества ПО. Стандарт ISO/IEC 9126 и модель SQuaRE (ISO 250x0). Управление качеством в контексте дисциплин (практик) программной инженерии и стадий жизненного цикла разработки ПО.
    • Ландшафт методов оценки качества ПО. Ручной и инструментальный статический анализ и структурные показатели качества. Метрики качества в артефактах.
    • Борьба со сложностью исходного кода: самодокументируемость кода, компонентная разработка, контрактное программирование, принцип «корректность по построению».
    • Открытые стандарты и стили кода. Oracle Code Conventions for the Java Programming Language.
    • Предварительное проектирование и сложность кода: шаблоны проектирования, автоматическая генерация, рефакторинг, комментирование и документирование кода.
    Модуль 2. Объектно-ориентированное проектирование "в большом". Архитектура уровня классов. Концептуальное моделирование. 
    • Цели объектно-ориентированного (ОО-)проектирования. Типичные компромиссы.
    • Проблемы ОО-проектирования «в большом»: определение состава и степени детализации объектов; определение интерфейса и реализации объектов, — подходы к их разрешению. Законы ОО-проектирования. Причины перепроектирования.
    • Архитектура уровня классов и ее описание на языке UML.
    • Концептуальное моделирование.
    Модуль 3. Лабораторный практикум №1. Пересмотр унаследованного состава и детализации объектов предметной области и классов Java, как их программной реализации. 
    • Концептуальное моделирование предметной области на языке UML. Пересмотр унаследованных UML-моделей (должны быть заранее подготовлены участниками тренинга) и реконструкция отсутствующих описаний архитектуры классов (при их отсутствии).
    • Защита и обсуждение решений.

    ДЕНЬ 2:
    Модуль 1. Объектно-ориентированное проектирование "в малом". Шаблоны и анти-шаблоны ОО-проектирования. 
    • Шаблоны (паттерны) ОО-проектирования. Фундаментальные (базовые) шаблоны. Каталоги шаблонов: Gang of Four (GoF), GRASP. Пространство шаблонов GoF.
    • Проблемы ОО-проектирования «в малом». Шаблоны ОО-проектирования и качество приложений. Примеры шаблонов.
    • Критерии качества архитектуры. Устранимые и неустранимые конфликты в ОО-архитектуре.
    Модуль 2. Лабораторный практикум №2: Пересмотр унаследованных интерфейсов и реализации классов Java для достижения искомого качества программной архитектуры.
    • Анализ и пересмотр унаследованных (должны быть заранее подготовлены участниками тренинга) или разработанных на ЛП №1 UML-моделей для устранения выявленных проблем ОО-архитектуры.
    • Защита и обсуждение решений.
    Модуль 3. Язык Java и качество исходного кода. Рефакторинг исходного кода и архитектуры уровня классов.
    • Язык Java и его помощь в обеспечении структурного качества исходного кода: строгая типизация, отладочные утверждения и средства RTTI, обобщенное программирование, элементы рефлексии в исходном коде, расширенная поддержка парадигмы ООП. Язык Java и безопасное программирование.
    • Анти-шаблоны структурного и ОО-программирования. «Грязные» техники.
    • Рефакторинг исходного кода и архитектуры как средство устранения анти-шаблонов. SWOT-анализ и порядок осуществления рефакторинга. Основные приемы рефакторинга исходного кода на языке Java. Каталог М. Фаулера.
    • Организационные мероприятия по повышению структурного качества. 
    • «Технический налог» и поддерживаемый дизайн.
    Модуль 4. Лабораторный практикум №3. Рефакторинг унаследованного исходного кода на языке Java. 
    • Рефакторинг унаследованного кода. Документирование изменений.
    • Защита и обсуждение решений.

    свернуть

    Фотографии

    Курсы программирования, тестирования, мобильных и веб-технологий от Level UP!
    Учитесь с профессионалами в сфере IT-образования!