Презентация

Никогда еще качество программного обеспечения не было столь необходимым, как сегодня. Записывайтесь на данную специализацию и получите доступ к самому обширному материалу в области компьютерной инженерии”

##IMAGE##

Качество программного обеспечения гарантирует, что системы не только соответствуют функциональным требованиям, но и являются интуитивно понятными, безопасными и устойчивыми в долгосрочной перспективе. Этот аспект особенно важен в критически значимых секторах, таких как финансы, здравоохранение и транспорт, где сбои могут привести к серьезным последствиям. Кроме того, ориентация на качество позволяет компаниям гибко адаптироваться к постоянному технологическому прогрессу и эффективно реагировать на растущие требования рынка. 

С помощью таких методологий, как гибкая разработка, DevOps и внедрение международных стандартов качества, инженерия программного обеспечения гарантирует поставку продуктов в более короткие сроки. Кроме того, контролируемые затраты и уровень качества, минимизирующий критические ошибки, были улучшены за счет интеграции новых технологий, таких как искусственный интеллект, облачные вычисления и кибербезопасность. В этом контексте программа, разработанная TECH, направлена на подготовку высококвалифицированных специалистов по проектированию, разработке, управлению и обеспечению качества программного обеспечения. Для приобретения необходимых навыков учебный план Профессиональной магистерской специализации включает самые актуальные концепции по управлению технологическими проектами и стратегическому руководству. Этот подход представляет собой дополнительную ценность как для инженеров, которые уже занимают ответственные должности и хотят обновить свои знания, так и для тех, кто впервые стремится возглавить команды и проекты в этой области. 

Одним из основных преимуществ этой программы является то, что она будет проводиться полностью онлайн, что исключает необходимость в поездках и привязке к конкретным расписаниям. Кроме того, студенты смогут воспользоваться методом обучения Relearning, который адаптируется к их индивидуальному темпу учебы. Этот гибкий подход оказывается очень полезным, так как позволяет студентам эффективно организовывать свои повседневные обязательства — будь то профессиональные или семейные — и таким образом достичь полного развития. 

В TECH вы научитесь не только разрабатывать программное обеспечение, но и создавать системы, которые меняют жизнь людей и компаний к лучшему" 

Данная Профессиональная магистерская специализация в области программной инженерии и качества программного обеспечения содержит самую полную и актуальную программу на рынке. Основными особенностями обучения являются:

  • Разбор практических кейсов, представленных экспертами в области информатики 
  • Наглядное, схематичное и исключительно практическое содержание курса предоставляет научную и практическую информацию по тем дисциплинам, которые необходимы для осуществления профессиональной деятельности 
  • Практические упражнения для самопроверки, контроля и улучшения успеваемости 
  • Особое внимание уделяется инновационным методикам в области программной инженерии и качества программного обеспечения 
  • Теоретические занятия, вопросы эксперту, дискуссионные форумы по спорным темам и самостоятельная работа 
  • Учебные материалы курса доступны с любого стационарного или мобильного устройства с выходом в интернет 

Овладейте самыми передовыми инженерными навыками и инструментами с помощью самой инновационной методики преподавания на современной академической сцене" 

В преподавательский состав программы входят профессионалы в области информатики, которые вносят свой опыт работы в эту программу, а также признанные специалисты, принадлежащие к ведущим научным сообществам. 

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

В центре внимания этой программы — проблемно-ориентированное обучение, с помощью которого студент должен попытаться разрешить различные ситуации из профессиональной практики, возникающие в течение учебного курса. Для этого специалисту будет помогать инновационная интерактивная видеосистема, созданная признанными и опытными специалистами. 

Повысьте свои профессиональные ожидания, обучаясь на 100% онлайн, не мешая своим личным и семейным обязанностям"

##IMAGE##

Станьте ведущим инженером-профессионалом, готовым учиться из любой точки мира"

Учебный план

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

##IMAGE##

Профессиональная магистерская специализация готовит вас к тому, чтобы стать экспертом, который меняет ситуацию в сфере программной инженерии и качества программного обеспечения" 

Модуль 1. Качество программного обеспечения. Уровни развития TRL

1.1. Элементы, влияющие на качество программного обеспечения (I). Технический долг

1.1.1. Технический долг. Причины и последствия
1.1.2. Качество программного обеспечения. Общие принципы
1.1.3. Беспринципное и принципиальное качество программного обеспечения

1.1.3.1. Последствия
1.1.3.2. Необходимость применения принципов качества в программном обеспечении

1.1.4. Качество программного обеспечения. Типология
1.1.5. Качество программного обеспечения. Специфические особенности

1.2. Элементы, влияющие на качество программного обеспечения (II). Сопутствующие расходы

1.2.1. Качество программного обеспечения. Влияющие элементы
1.2.2. Качество программного обеспечения. Заблуждения
1.2.3. Качество программного обеспечения. Сопутствующие расходы

1.3. Модели качества программного обеспечения (I). Управление знаниями

1.3.1. Общие модели качества

1.3.1.1. Всеобщее управление качеством
1.3.1.2. Европейская модель делового совершенства (EFQM)
1.3.1.3. Концепция шести сигм

1.3.2. Модели управления знаниями

1.3.2.1. Модель Dyba
1.3.2.2. Модель Seks

1.3.3. Фабрика опыта и парадигма QIP
1.3.4. Качество используемых моделей (25010)

1.4. Модели качества программного обеспечения (III). Качество данных, процессов и моделей SEI

1.4.1. Модель качества данных
1.4.2. Моделирование процессов программного обеспечения
1.4.3. Software & Systems Process Engineering Metamodel Specification (SPEM)
1.4.4. Модели SEI

1.4.4.1. CMMI
1.4.4.2. SCAMPI
1.4.4.3. IDEAL

1.5. Стандарты качества программного обеспечения ISO (I). Анализ стандартов

1.5.1. Стандарт ISO 9000

1.5.1.1. Стандарт ISO 9000
1.5.1.2. Семейство стандартов качества ISO (9000)

1.5.2. Другие стандарты ISO, связанные с качеством
1.5.3. Стандарты моделирования качества (ISO 2501)
1.5.4. Стандарты измерения качества (ISO 2502n)

1.6. Стандарты качества программного обеспечения ISO (II). Требования и оценка

1.6.1. Стандарты по требованиям к качеству (2503н)
1.6.2. Стандарты по оценке качества (2504n)
1.6.3. ISO/IEC 24744:2007

1.7. Уровни развития TRL (I). Уровни с 1 по 4

1.7.1. Уровни TRL
1.7.2. Уровень 1: основные принципы
1.7.3. Уровень 2: концепция и/или применение
1.7.4. Уровень 3: критическая аналитическая функция
1.7.5. Уровень 4: проверка основных компонентов в лабораторных условиях

1.8. Уровни развития TRL (II). Уровни с 5 по 9

1.8.1. Уровень 5: проверка основных компонентов в реальных условиях.
1.8.2. Уровень 6: модель системы/подсистемы
1.8.3. Уровень 7: демонстрация в условиях эксплуатации
1.8.4. Уровень 8: полная и сертифицированная система
1.8.5. Уровень 9: успех в реальных условиях

1.9. Уровни развития TRL. Использование

1.9.1. Пример компании с лабораторной средой
1.9.2. Пример компании, занимающейся НИОКР
1.9.3. Пример промышленной компании, занимающейся НИОКР
1.9.4. Пример совместной лабораторно-инженерной компании

1.10. Качество программного обеспечения. Ключевые детали

1.10.1. Методологические детали
1.10.2. Технические детали
1.10.3. Детали управления программными проектами

1.10.3.1. Качество информационных систем
1.10.3.2. Качество программного продукта
1.10.3.3. Качество программного обеспечения

Модуль 2. Разработка программных проектов. Функциональная и техническая документация.

2.1. Управление проектами

2.1.1. Управление проектами в области качества программного обеспечения
2.1.2. Управление проектами. Преимущества
2.1.3. Управление проектами. Типология

2.2. Методика управления проектами

2.2.1. Методика управления проектами
2.2.2. Проектные методики. Типология
2.2.3. Методики управления проектами. Применение

2.3. Фаза выявления требований

2.3.1. Определение требований к проекту
2.3.2. Управление проектными совещаниями
2.3.3. Предоставляемая документация

2.4. Модель

2.4.1. Начальный этап
2.4.2. Этап анализа
2.4.3. Этап строительства
2.4.4. Этап тестирования
2.4.5. Предоставление

2.5. Используемая модель данных

2.5.1. Определение новой модели данных
2.5.2. Определение плана миграции данных
2.5.3. Набор данных

2.6. Влияние на другие проекты

2.6.1. Влияние проекта. Примеры

2.7. MUST проекта

2.7.1. MUST проекта
2.7.2. Идентификация MUST проекта
2.7.3. Определение точек реализации проекта

2.8. Команда для строительства проекта

2.8.1. Роли, которые необходимо выполнять в соответствии с проектом
2.8.2. Контакт с отделом кадров для подбора персонала
2.8.3. Результаты и график проекта

2.9. Технические аспекты программного проекта

2.9.1. Архитектор проекта. Технические аспекты
2.9.2. Технические лидеры
2.9.3. Проектирование программного обеспечения
2.9.4. Оценка качества кода Sonar

2.10. Результаты проекта

2.10.1. Функциональный анализ
2.10.2. Модель данных
2.10.3. Диаграмма состояний
2.10.4. Техническая документация

Модуль 3. Тестирование программного обеспечения. Автоматизация тестирования

3.1. Модели качества программного обеспечения

3.1.1. Качество продукта
3.1.2. Качество процесса
3.1.3. Качество использования

3.2. Качество процесса

3.2.1. Качество процесса
2.3.2. Модели зрелости
3.2.3. Стандарт ISO 15504

3.2.3.1. Цели
3.2.3.2. Контекст
3.2.3.3. Этапы

3.3. Стандарт ISO/IEC 15504

3.3.1. Категории процессов
3.3.2. Процесс разработки. Пример
3.3.3. Фрагмент программы
3.3.4. Этапы

3.4. CMMI (Интеграция модели зрелости возможностей)

3.4.1. CMMI. Интеграция модели зрелости возможностей
3.4.2. Модели и области. Типология
3.4.3. Области процесса
3.4.4. Уровни способности
3.4.5. Управление процессами
3.4.6. Управление проектами

3.5. Управление изменениями и репозиториями

3.5.1. Управление изменениями в программном обеспечении

3.5.1.1. Элемент конфигурации. Непрерывная интеграция
3.5.1.2. Линии
3.5.1.3. Блок-схемы
3.5.1.4. Бранчи

3.5.2. Репозиторий

3.5.2.1. Контроль версий
3.5.2.2. Работа в команде и использование репозитория
3.5.2.3. Непрерывная интеграция в репозитории

3.6. Team Foundation Server (TFS)

3.6.1. Установка и настройка
3.6.2. Создание командного проекта
3.6.3. Добавление содержимого в систему управления источниками
3.6.4. TFS в облаке

3.7. Тестирование

3.7.1. Мотивы для тестирования
3.7.2. Проверочные испытания
3.7.3. Бета-тестирование
3.7.4. Реализация и обслуживание

3.8. Нагрузочное тестирование

3.8.1. Нагрузочное тестирование
3.8.2. Тестирование LoadView
3.8.3. Тестирование с помощью K6 Cloud
3.8.4. Тестирование с помощью Loader

3.9. Нагрузочные и выносливые испытания устройства

3.9.1. Мотивы для проведения модульного тестирования
3.9.2. Инструменты для модульного тестирования
3.9.3. Мотивы для проведения стресс-тестирования
3.9.4. Стресс-тестирование
3.9.5. Мотивы для проведения тестов на устойчивость
3.9.6. Тестирование с помощью LoadRunner

3.10. Масштабируемость. Масштабируемое проектирование программного обеспечения

3.10.1. Масштабируемость и архитектура программного обеспечения
3.10.2. Независимость между слоями
3.10.3. Связь между слоями. Архитектурные паттерны

Модуль 4. Методологии управления проектами программного обеспечения. Каскадная модель vs agile-методологии

4.1. Каскадная модель

4.1.1. Каскадная модель
4.1.2. Каскадная модель. Влияние на качество программного обеспечения
4.1.3. Каскадная модель. Примеры

4.2. Методологии Agile

4.2.1. Методологии Agile
4.2.2. Agile-методологии. Влияние на качество программного обеспечения
4.2.3. Agile-методологии. Примеры

4.3. Методология SCRUM

4.3.1. Методология SCRUM
4.3.2. SCRUM-манифест
4.3.3. Применения SCRUM

4.4. Канбан-доска

4.4.1. Канбан-метод
4.4.2. Канбан-доска
4.4.3. Канбан-доска Примеры применения

4.5. Управление проектами в каскадной модели

4.5.1. Фазы проекта
4.5.2. Видение в каскадной модели
4.5.3. Результаты, которые необходимо рассмотреть

4.6. Управление проектами в SCRUM

4.6.1. Фазы проекта SCRUM
4.6.2. Видение проекта SCRUM
4.6.3. Результаты, которые необходимо рассмотреть

4.7. Каскадная модель vs SCRUM. Сравнение

4.7.1. Пилотный проект
4.7.2. Проект с применением каскадной модели. Пример
4.7.3. Проект с применением SCRUM. Пример

4.8. Видение клиента

4.8.1. Документы в каскадной модели
4.8.2. Документы в SCRUM
4.8.3. Сравнение

4.9. Структура Канбан

4.9.1. Истории пользователей
4.9.2. Backlog
4.9.3. Анализ Канбан

4.10. Гибридные проекты

4.10.1. Проектирование
4.10.2. Управление проектами
4.10.3. Результаты, которые необходимо рассмотреть

Модуль 5. TDD (Test Driven Developement). Разработка программного обеспечения через тестирование

5.1. TDD. Разработка программного обеспечения через тестирование

5.1.1. TDD. Разработка программного обеспечения через тестирование
5.1.2. TDD. Влияние TDD на качество
5.1.3. Проектирование и разработка на основе тестирования. Примеры

5.2. Цикл TDD

5.2.1. Выбор требования
5.2.2. Тестирование. Типологии

5.2.2.1. Модульные тесты
5.2.2.2. Интеграционное тестирование
5.2.2.3. Сквозное тестирование

5.2.3. Проверка тестирования. Ошибки
5.2.4. Создание реализации
5.2.5. Выполнение автоматизированных тестов
5.2.6. Устранение дублирования
5.2.7. Обновление списка требований
5.2.8. Повторение цикла TDD
5.2.9. Цикл TDD Теоретический и практический пример

5.3. Стратегии внедрения TDD

5.3.1. Ошибочное внедрение
5.3.2. Треугольное внедрение
5.3.3. Очевидное внедрение

5.4. TDD. Применение. Преимущества и недостатки

5.4.1. Преимущества использования
5.4.2. Ограничения на использование
5.4.3. Баланс качества при реализации

5.5. TDD. Передовая практика

5.5.1. Правила TDD
5.5.2. Правило 1: Проводить предыдущий неудачный тест, прежде чем приступать к кодированию в производстве.
5.5.3. Правило 2: Не писать более одного модульного теста.
5.5.4. Правило 3: не писать больше кода, чем требуется
5.5.5. Ошибки и антипаттерны, которых следует избегать в TDD

5.6. Моделирование реального проекта для использования TDD (I)

5.6.1. Обзор проекта (Компания А)
5.6.2. Применение TDD
5.6.3. Предлагаемые тесты
5.6.4. Тесты. Обратная связь

5.7. Моделирование реального проекта для использования TDD (II)

5.7.1. Обзор проекта (Компания B)
5.7.2. Применение TDD
5.7.3. Предлагаемые тесты
5.7.4. Тесты. Обратная связь

5.8. Моделирование реального проекта для использования TDD (III)

5.8.1. Обзор проекта (Компания С)
5.8.2. Применение TDD
5.8.3. Предлагаемые тесты
5.8.4. Тесты. Обратная связь

5.9. Альтернативы TDD. Разработка программного обеспечения через тестирование

5.9.1. TCR (Test Commit Revert)
5.9.2. BDD (Behavior Driven Development)
5.9.3. ATDD (Acceptance Test Driven Development)
5.9.4. TDD. Теоретическое сравнение

5.10. TDD TCR, BDD и ATDD. Практическое сравнение

5.10.1. Определение проблемы
5.10.2. Решение с помощью TCR
5.10.3. Решение с помощью BDD
5.10.4. Решение с помощью ATDD

Модуль 6. DevOps Управление качеством программного обеспечения

6.1. DevOps Управление качеством программного обеспечения

6.1.1. DevOps
6.1.2. DevOps и качество программного обеспечения
6.1.3. DevOps. Преимущества культуры DevOps

6.2. DevOps. Отношения с Agile

6.2.1. Ускоренная доставка
6.2.2. Качество
6.2.3. Снижение затрат

6.3. Запуск DevOps

6.3.1. Определение проблемы
6.3.2. Внедрение в компании
6.3.3. Метрики внедрения

6.4. Цикл доставки программного обеспечения

6.4.1. Методы проектирования
6.4.2. Соглашения
6.4.3. План действий

6.5. Разработка кода без ошибок

6.5.1. Удобный в обслуживании код
6.5.2. Схемы развития
6.5.3. Тестирование кода
6.5.4. Разработка программного обеспечения на уровне кода. Передовая практика

6.6. Автоматизация

6.6.1. Автоматизация. Виды тестирования
6.6.2. Стоимость автоматизации и технического обслуживания
6.6.3. Автоматизация. Смягчение ошибок

6.7. Развертывания

6.7.1. Оценка цели
6.7.2. Разработка автоматического и адаптированного процесса
6.7.3. Обратная связь и оперативность

6.8. Управление инцидентами

6.8.1. Готовность к инцидентам
6.8.2. Анализ и разрешение инцидентов
6.8.3. Как избежать ошибок в будущем

6.9. Автоматизация развертывания

6.9.1. Подготовка к автоматическому развертыванию
6.9.2. Автоматическая оценка состояния процессов
6.9.3. Метрики и возможность отката

6.10. Передовая практика. Эволюция DevOps

6.10.1. Руководство по использованию DevOps
6.10.2. DevOps Методология для команды
6.10.3. Избегание ниш

Модуль 7. DevOps и непрерывная интеграция. Передовые практические решения в разработке программного обеспечения

7.1. Поток поставки программного обеспечения

7.1.1. Идентификация действующих лиц и артефактов
7.1.2. Проектирование потока поставки программного обеспечения
7.1.3. Поток поставки программного обеспечения. Межэтапные требования

7.2. Автоматизация процессов

7.2.1. Непрерывная интеграция
7.2.2. Непрерывное развертывание
7.2.3. Конфигурирование сред и управление секретами

7.3. Декларативные конвейеры

7.3.1. Различия между традиционными, кодоподобными и декларативными конвейерами
7.3.2. Декларативные конвейеры
7.3.3. Декларативный конвейер в Jenkins
7.3.4. Сравнение поставщиков услуг непрерывной интеграции

7.4. Качественные ворота и богатая обратная связь

7.4.1. Качественные ворота
7.4.2. Стандарты качества с качественными воротами. Обслуживание
7.4.3. Бизнес-требования в запросах на интеграцию

7.5. Управление артефактами

7.5.1. Артефакты и жизненный цикл
7.5.2. Системы хранения и управления артефактами
7.5.3. Безопасность в управлении артефактами

7.6. Непрерывное развертывание

7.6.1. Непрерывное развертывание в виде контейнеров
7.6.2. Непрерывное развертывание с помощью PaaS

7.7. Улучшение времени выполнения конвейера: статический анализ и Git Hooks

7.7.1. Статический анализ
7.7.2. Правила стиля кода
7.7.3. Git Hooks и модульные тесты
7.7.4. Влияние инфраструктуры

7.8. Уязвимости контейнеров

7.8.1. Уязвимости контейнеров
7.8.2. Сканирование изображений
7.8.3. Периодические отчеты и оповещения

Модуль 8. Проектирование баз данных (БД). Стандартизация и производительность. Качество программного обеспечения

8.1. Проектирование баз данных

8.1.1. Базы данных. Типология
8.1.2. Используемые в настоящее время базы данных

8.1.2.1. Реляционные
8.1.2.2. Ключ-значение
8.1.2.3. На основе сети

8.1.3. Качество данных

8.2. Проектирование модели сущность - связь (I)

8.2.1. Модель сущность - связь. Качество и документация
8.2.2. Сущности

8.2.2.1. Сильная сущность
8.2.2.2. Слабая сущность

8.2.3. Атрибуты
8.2.4. Набор отношений

8.2.4.1. 1 к 1
8.2.4.2. 1 к многим
8.2.4.3. Многие к 1
8.2.4.4. Многие ко многим

8.2.5. Ключевые моменты

8.2.5.1. Первичный ключ
8.2.5.2. Внешний ключ
8.2.5.3. Первичный ключ слабой сущности

8.2.6. Ограничения
8.2.7. Кардинальность
8.2.8. Наследственность
8.2.9. Агрегация

8.3. Модель взаимоотношений между сущностями(II). Инструменты

8.3.1. Модель сущность-связь. Инструменты
8.3.2. Модель сущность-связь. Наглядный пример
8.3.3. Реальная модель сущность-связь

8.3.3.1. Визуальный пример
8.3.3.2. Образец в представлении таблицы

8.4. Стандартизация базы данных (БД) (I). Соображения по качеству программного обеспечения

8.4.1. Стандартизация БД и качество
8.4.2. Зависимости

8.4.2.1. Функциональная зависимость
8.4.2.2. Свойства функциональной зависимости
8.4.2.3. Предполагаемые свойства

8.4.3. Ключевые моменты

8.5. Стандартизация базы данных (БД) (II). Нормальная форма и правила Кодда

8.5.1. Нормальные формы

8.5.1.1. Первая нормальная форма (1FN)
8.5.1.2. Вторая нормальная форма (2FN)
8.5.1.3. Третья нормальная форма (3FN)
8.5.1.4. Нормальная форма Бойса — Кодда (BCNF)
8.5.1.5. Четвертая нормальная форма (4FN)
8.5.1.6. Пятая нормальная форма (5FN)

8.5.2. Правила Кодда

8.5.2.1. Правило 1: Информационное правило
8.5.2.2. Правило 2: Гарантированный доступ к данным
8.5.2.3. Правило 3: Систематическая поддержка отсутствующих значений
8.5.2.4. Правило 4: Описание базы данных
8.5.2.5. Правило 5: Полнота подмножества языка
8.5.2.6. Правило 6: Изменение представлений
8.5.2.7. Правило 7. Вставка и обновление
8.5.2.8. Правило 8: Физическая независимость данных
8.5.2.9. Правило 9: Логическая независимость данных
8.5.2.10. Правило 10: Независимость контроля целостности

8.5.2.10.1. Правила целостности

8.5.2.11. Правило 11: Независимость от расположения
8.5.2.12. Правило 12: Согласование языковых уровней

8.5.3. Наглядный пример

8.6. Хранилище данных/OLAP-система

8.6.1. Хранилище данных
8.6.2. Таблица фактов
8.6.3. Таблица размеров
8.6.4. Создание системы OLAP. Инструменты

8.7. Производительность базы данных (БД)

8.7.1. Оптимизация индекса
8.7.2. Оптимизация запросов
8.7.3. Разбиение таблиц

8.8. Моделирование реального проекта для проектирования БД (I)

8.8.1. Обзор проекта (Компания А)
8.8.2. Применение проектирования баз данных
8.8.3. Предлагаемые тесты
8.8.4. Предлагаемые тесты. Обратная связь

8.9. Моделирование реального проекта для проектирования БД (II)

8.9.1. Обзор проекта (Компания B)
8.9.2. Применение проектирования баз данных
8.9.3. Предлагаемые упражнения
8.9.4. Предлагаемые упражнения. Обратная связь

8.10. Актуальность оптимизации БД для качества программного обеспечения

8.10.1. Оптимизация проектирования
8.10.2. Оптимизация кода запросов
8.10.3. Оптимизация кода хранимой процедуры
8.10.4. Влияние триггеров на качество программного обеспечения. Рекомендации по применению

Модуль 9. Проектирование масштабируемых архитектур. Архитектура в жизненном цикле программного обеспечения

9.1. Проектирование масштабируемых архитектур (I)

9.1.1. Масштабируемые архитектуры
9.1.2. Принципы масштабируемой архитектуры

9.1.2.1. Надежность
9.1.2.2. Масштабируемость
9.1.2.3. Поддержка

9.1.3. Типы масштабируемости

9.1.3.1. Вертикальная
9.1.3.2. Горизонтальная
9.1.3.3. Комбинированная

9.2. Предметно-ориентированное проектирование (Domain-Driven Design)

9.2.1. Модель DDD. Ориентация на домен
9.2.2. Слои, распределение ответственности и шаблоны проектирования
9.2.3. Разделение как основа для качества

9.3. Проектирование масштабируемых архитектур (II). Преимущества, ограничения и стратегии проектирования

9.3.1. Масштабируемая архитектура. Преимущества
9.3.2. Масштабируемая архитектура. Ограничения
9.3.3. Стратегии разработки масштабируемых архитектур (описательная таблица)

9.4. Жизненный цикл программного обеспечения (I). Этапы

9.4.1. Жизненный цикл программного обеспечения

9.4.1.1. Этап планирования
9.4.1.2. Этап анализа
9.4.1.3. Этап проектирования
9.4.1.4. Этап реализации
9.4.1.5. Этап тестирования
9.4.1.6. Этап установки/развертывания
9.4.1.7. Этап использования и обслуживания

9.5. Модели жизненного цикла программного обеспечения

9.5.1. Каскадная модель
9.5.2. Повторяющаяся модель
9.5.3. Спиральная модель
9.5.4. Модель Большого взрыва

9.6. Жизненный цикл программного обеспечения (II). Автоматизация

9.6.1. Жизненный цикл разработки программного обеспечения. Решения

9.6.1.1. Непрерывная интеграция и разработка (CI/CD)
9.6.1.2. Agile-методологии
9.6.1.3. DevOps / Производственные операции

9.6.2. Будущие тенденции
9.6.3. Практические примеры

9.7. Архитектура программного обеспечения в жизненном цикле программного обеспечения

9.7.1. Преимущества
9.7.2. Ограничения
9.7.3. Инструменты

9.8. Моделирование реального проекта для проектирования архитектуры программного обеспечения (I)

9.8.1. Обзор проекта (Компания А)
9.8.2. Применение проектирования архитектуры программного обеспечения
9.8.3. Предлагаемые тесты
9.8.4. Предлагаемые тесты. Обратная связь

9.9. Моделирование реального проекта Для для проектирования архитектуры программного обеспечения (II)

9.9.1. Обзор проекта (Компания B)
9.9.2. Применение проектирования архитектуры программного обеспечения
9.9.3. Предлагаемые тесты
9.9.4. Предлагаемые упражнения Обратная связь

9.10. Симуляция реального проекта для проектирования архитектуры программного обеспечения (III)

9.10.1. Обзор проекта (Компания С)
9.10.2. Применение проектирования архитектуры программного обеспечения
9.10.3. Предлагаемые упражнения
9.10.4. Предлагаемые упражнения. Обратная связь

Модуль 10. Критерии качества ISO, IEC 9126. Метрики качества программного обеспечения

10.1. Критерии качества. Стандарт ISO, IEC 9126

10.1.1. Критерии качества
10.1.2. Качество программного обеспечения. Обоснование. Стандарт ISO, IEC 9126
10.1.3. Измерение качества программного обеспечения как ключевой показатель

10.2. Критерии качества программного обеспечения. Характеристики

10.2.1. Надежность
10.2.2. Функциональность
10.2.3. Эффективность
10.2.4. Юзабилити
10.2.5. Обслуживаемость
10.2.6. Портативность

10.3. Стандарт ISO, IEC 9126 (I). Презентация

10.3.1. Описание нарушений Стандарт ISO, IEC 9126
10.3.2. Функциональность
10.3.3. Надежность
10.3.4. Юзабилити
10.3.5. Обслуживаемость
10.3.6. Портативность
10.3.7. Качество использования
10.3.8. Метрики качества программного обеспечения
10.3.9. Метрические данные качества в ISO 9126

10.4. Стандарт ISO, IEC 9126 (II). Модели МакКолла и Боэма

10.4.1. Модель МакКолла: Факторы качества
10.4.2. Модель Боэма
10.4.3. Промежуточный уровень. Характеристики

10.5. Метрики качества программного обеспечения (I). Элементы

10.5.1. Измерения
10.5.2. Метрические
10.5.3. Показатели

10.5.3.1. Типы показателей

10.5.4. Размеры и модели
10.5.5. Сфера применения метрики программного обеспечения
10.5.6. Классификация метрик программного обеспечения

10.6. Измерение качества программного обеспечения (II). Практика измерений

10.6.1. Сбор метрических данных
10.6.2. Измерение внутренних атрибутов продукта
10.6.3. Измерение внешних атрибутов продукта
10.6.4. Измерение ресурсов
10.6.5. Метрики для объектно-ориентированных систем

10.7. Разработка единого показателя качества программного обеспечения

10.7.1. Отдельный показатель как глобальный показатель
10.7.2. Разработка, обоснование и применение индикаторов
10.7.3. Примеры применения. Необходимость знать детали

10.8. Моделирование реального проекта для измерения качества (I)

10.8.1. Обзор проекта (Компания А)
10.8.2. Применение измерения качества
10.8.3. Предлагаемые тесты
10.8.4. Предлагаемые тесты. Обратная связь

10.9. Моделирование реального проекта для измерения качества (II)

10.9.1. Обзор проекта (Компания B)
10.9.2. Применение измерения качества
10.9.3. Предлагаемые тесты
10.9.4. Предлагаемые тесты. Обратная связь

10.10. Моделирование реального проекта для измерения качества (III)

10.10.1. Обзор проекта (Компания С)
10.10.2. Применение измерения качества
10.10.3. Предлагаемые тесты
10.10.4. Предлагаемые тесты. Обратная связь

Модуль 11. Методологии, разработка и качество в программировании

11.1. Разработка программного обеспечения на основе моделей

11.1.1. Необходимость
11.1.3. Моделирование объектов
11.1.4. UML
11.1.5. CASE-инструменты

11.2. Моделирование приложений и шаблоны проектирования с помощью UML

11.2.1. Расширенное моделирование требований
11.2.2. Усовершенствованное статическое моделирование
11.2.3. Продвинутое динамическое моделирование
11.2.4. Моделирование компонентов
11.2.5. Введение в шаблоны проектирования с UML
11.2.6. Adapter
11.2.7. Factory
11.2.8. Singleton
11.2.9. Strategy
11.2.10. Composite
11.2.11. Facade
11.2.12. Observer

11.3. Инженерия, управляемая моделями

11.3.1. Введение
11.3.2. Метамоделирование систем
11.3.3. MDA
11.3.4. DSL
11.3.5. Уточнения модели с помощью OCL
11.3.6. Преобразования моделей

11.4. Онтологии в программной инженерии

11.4.1. Введение
11.4.2. Инженерия онтологии
11.4.3. Применение онтологий в программной инженерии

Модуль 12. Управление программного обеспечения проекта

12.1. Управление заинтересованными сторонами и охватом

12.1.1. Выявление заинтересованных сторон
12.1.2. Разработка плана по управлению заинтересованными сторонами
12.1.3. Управление взаимодействием между заинтересованными сторонами
12.1.4. Контроль взаимодействия между заинтересованными сторонами
12.1.5. Цель проекта
12.1.6. Управление охватом и его план
12.1.7. Сбор информации о требованиях
12.1.8. Определение сферы применения
12.1.9. Создание WBS (EDT)
12.1.10. Утверждение и контроль масштаба

12.2. Разработка расписания

12.2.1. Управление временем и его планирование
12.2.2. Определение деятельности
12.2.3. Составление последовательности деятельности
12.2.4. Оценка ресурсов деятельности
12.2.5. Предполагаемая продолжительность деятельности
12.2.6. Разработка графика и расчет критического пути
12.2.7. Контроль расписания

12.3. Составление бюджета и реагирование на риски

12.3.1. Оценка затрат
12.3.2. Разработка бюджета и S-образной кривой
12.3.3. Контроль затрат и метод оценки стоимости
12.3.4. Понятие риска
12.3.5. Как проводить анализ рисков
12.3.6. Разработка плана реагирования

12.4. Коммуникация и человеческие ресурсы

12.4.1. Планирование управления коммуникациями
12.4.2. Анализ требований к коммуникациям
12.4.3. Коммуникационные технологии
12.4.4. Модели коммуникации
12.4.5. Методы коммуникации
12.4.6. План управления коммуникациями
12.4.7. Управление коммуникациями
12.4.8. Управление персоналом
12.4.9. Основные участники и их роли в проектах
12.4.10. Типы организаций
12.4.11. Организация проекта
12.4.12. Рабочая группа

12.5. Закупки

12.5.1. Процесс закупок
12.5.2. Планирование
12.5.3. Поиск поставщиков и запрос на тендеры
12.5.4. Заключение контракта
12.5.5. Администрирование контракта
12.5.6. Контракты
12.5.7. Виды контрактов
12.5.8. Ведение переговоров по контракту

12.6. Выполнение, мониторинг и контроль и закрытие

12.6.1. Группы процессов
12.6.2. Осуществление проекта
12.6.3. Наблюдение и контроль проекта
12.6.4. Закрытие проекта

12.7. Профессиональная ответственность

12.7.1. Профессиональная ответственность
12.7.2. Характеристики социальной и профессиональной ответственности
12.7.3. Кодекс этических норм руководителя проекта
12.7.4. Ответственность vs. PMP®
12.7.5. Примеры ответственности
12.7.6. Преимущества профессионализации

Модуль 13. Платформы для разработки программного обеспечения

13.1. Введение в разработку приложений

13.1.1. Приложения для настольных ПК
13.1.2. Язык программирования
13.1.3. Интегрированные среды разработки
13.1.4. Веб-приложения
13.1.5. Мобильные приложения
13.1.6. Облачные приложения

13.2. Разработка приложений и графического интерфейса на Java

13.2.1. Интегрированные среды разработки для Java
13.2.2. Основные IDE для Java
13.2.3. Знакомство с платформой разработки Eclipse
13.2.4. Знакомство с платформой разработки NetBeans
13.2.5. Модель View Controller для графических пользовательских интерфейсов
13.2.6. Создание графического интерфейса в Eclipse
13.2.7. Дизайн графического интерфейса в NetBeans

13.3. Отладка и тестирование в языке Java

13.3.1. Тестирование и отладка Java-программ
13.3.2. Отладка в Eclipse
13.3.3. Отладка в NetBeans

13.4. Разработка приложений и графического интерфейса на .NET

13.4.1. Net Framework
13.4.2. Компоненты платформы разработки .NET
13.4.3. Визуальная студия .NET
13.4.4. Инструменты графического интерфейса .NET
13.4.5. Графический интерфейс с Windows Presentation Foundation
13.4.6. Отладка и компиляция приложения WPF

13.5. Программирование для сетей .NET

13.5.1. Введение в сетевое программирование в .NET
13.5.2. Запросы и ответы в .NET
13.5.3. Использование прикладных протоколов в .NET
13.5.4. Безопасность при программировании сетей .NET

13.6. Среды разработки мобильных приложений

13.6.1. Мобильные приложения
13.6.2. Мобильные приложения Android
13.6.3. Шаги для разработки Android
13.6.4. Интегрированная среда разработки Android Studio

13,7. Разработка приложений в среде Android Studio

13.7.1. Установить и запустить Android Studio
13.7.2. Запуск Android-приложения
13.7.3. Разработка графического интерфейса в Android Studio
13.7.4. Запуск действий в Android Studio

13.8. Отладка и публикация Android-приложений

13.8.1. Отладка приложения в Android Studio
13.8.2. Сохранение приложений в Android Studio
13.8.3. Публикация приложения в Google Play

13.9. Разработка приложений для облака

13.9.1. Облачные вычисления
13.9.2. Уровни cloud: SaaS, PaaS, IaaS
13.9.3. Основные платформы для разработки облаков
13.9.4. Библиографические ссылки

13.10. Введение в Google Cloud Platform

13.10.1. Основы Google Cloud Platform
13.10.2. Услуги Google Cloud Platform
13.10.3. Инструменты Google Cloud Platform

Модуль 14. Вычисления на стороне клиента в веб-разработке

14.1. Введение в HTML

14.1.1. Структура документа
14.1.2. Цвет
14.1.3. Текст
14.1.4. Гипертекстовые ссылки
14.1.5. Изображения
14.1.6. Списки
14.1.7. Таблицы
14.1.8. Рамки (frames)
14.1.9. Формуляры
14.1.10. Специфические элементы для мобильных технологий
14.1.11. Неиспользуемые предметы

14.2. Таблицы веб-стиля (CSS)

14.2.1. Элементы и структура таблицы стилей

14.2.1.1. Создание таблиц стилей
14.2.1.2. Применение стилей. Селекторы
14.2.1.3. Наследование стилей и каскадирование
14.2.1.4. Форматирование страниц с помощью стилей
14.2.1.5. Форматирование страниц с помощью стилей. Модель коробки

14.2.2. Стили дизайна для различных устройств
14.2.3. Типы таблиц стилей: статические и динамические. Псевдоклассы
14.2.4. Передовая практика использования таблиц стилей

14.3. Введение и история JavaScript

14.3.1. Введение
14.3.2. История JavaScript
14.3.3. Среда разработки для использования

14.4. Основные понятия веб-программирования

14.4.1. Основной синтаксис JavaScript
14.4.2. Примитивные типы данных и операторов
14.4.3. Переменные и области
14.4.4. Текстовые строки и шаблонные литералы
14.4.5. Числа и логические значения
14.4.6. Сравнения

14.5. Сложные структуры JavaScript

14.5.1. Векторы или массивы и объекты
14.5.2. Множества
14.5.3. Карты
14.5.4. Дизъюнкция
14.5.5. Циклы

14.6. Функции и объекты

14.6.1. Определение и вызов функций
14.6.2. Аргументы
14.6.3. Функции стрелок
14.6.4. Функции обратной связи или callback
14.6.5. Функции высшего порядка
14.6.6. Буквальные объекты
14.6.7. Объект this
14.6.8. Объекты как пространства имен: объект Math и объект Date

14.7. Объектная модель документа (DOM)

14.7.1. Что такое DOM?
14.7.2. Немного истории
14.7.3. Навигация и получение элементов
14.7.4. Виртуальный DOM с помощью JSDOM
14.7.5. Селекторы запросов или query selectors
14.7.6. Навигация по свойствам
14.7.7. Распределение элементов по атрибутам
14.7.8. Создание и изменение узлов
14.7.9. Обновление стиля элементов DOM

14.8. Современная веб-разработка

14.8.1. Поток, управляемый событиями, и слушатели
14.8.2. Современные веб toolkits и системы выравнивания
14.8.3. Строгий режим JavaScript
14.8.4. Более подробно о функциях
14.8.5. Асинхронные обещания и функции
14.8.6. Закрытия
14.8.7. Функциональное программирование
14.8.8. POO в JavaScript

14.9. Веб-юзабилити

14.9.1. Введение в удобство использования
14.9.2. Определение удобства использования
14.9.3. Методология дизайна, ориентированного на пользователя
14.9.4. Различия между доступностью и удобством использования
14.9.5. Преимущества и проблемы сочетания доступности и удобства использования
14.9.6. Преимущества и трудности при внедрении веб-сайтов
14.9.7. Методы удобства использования
14.9.8. Анализ требований пользователей
14.9.9. Принципы концептуального дизайна. Прототипирование, ориентированное на пользователя
14.9.10. Руководство по созданию веб-сайтов

14.9.10.1. Рекомендации по использованию Jakob Nielsen
14.9.10.2. Рекомендации по использованию Bruce Tognazzini

14.9.11. Оценка юзабилити

14.10. Доступность веб-сайтов

14.10.1. Введение
14.10.2. Определение веб-доступности
14.10.3. Виды инвалидности

14.10.3.1. Временная или постоянная инвалидность
14.10.3.2. Нарушение зрения
14.10.3.3. Нарушение слуха
14.10.3.4. Двигательные нарушения
14.10.3.5. Неврологические или когнитивные нарушения
14.10.3.6. Трудности, связанные со старением
14.10.3.7. Ограничения, возникающие в связи с окружающей средой
14.10.3.8. Барьеры, препятствующие доступу в интернет

14.10.4. Технические средства и вспомогательные продукты для преодоления барьеров

14.10.4.1. Помощь для слепых людей
14.10.4.2. Помощь для людей со слабым зрением
14.10.4.3. Помощь для людей с дальтонизмом
14.10.4.4. Помощь для людей с ограниченными возможностями слуха
14.10.4.5. Помощь для людей с ограниченными двигательными возможностями
14.10.4.6. Помощь для людей с когнитивными и неврологическими нарушениями

14.10.5. Преимущества и трудности при внедрении полезных веб-сайтов
14.10.6. Правила и стандарты веб-доступности
14.10.7. Органы регулирования веб-доступности
14.10.8. Сравнение норм и стандартов
14.10.9. Руководство по соблюдению нормативных актов и стандартов

14.10.9.1. Описание основных руководящих принципов (изображения, ссылки, видео и т.д.)
14.10.9.2. Руководство по доступной навигации

14.10.9.2.1. Восприимчивость
14.10.9.2.2. Работоспособность
14.10.9.2.3. Понятность
14.10.9.2.4. Устойчивость

14.10.10. Описание процесса обеспечения соответствия требованиям веб-доступности
14.10.11. Уровни соответствия
14.10.12. Критерии соответствия
14.10.13. Требования к соответствию
14.10.14. Методология оценки доступности веб-сайтов

Модуль 15. Вычисления на стороне веб-сервера

15.1. Введение в программирование сервера: PHP

15.1.1. Основы серверного программирования
15.1.2. Основной синтаксис PHP
15.1.3. Генерация HTML-контента с помощью PHP
15.1.4. Среды разработки и тестирования: XAMPP

15.2. Продвинутый PHP

15.2.1. Структуры управления в PHP
15.2.2. Функции в PHP
15.2.3. Работа с массивами в PHP
15.2.4. Работа со строками в PHP
15.2.5. Объектно-ориентированный PHP

15.3. Модели данных

15.3.1. Понятие данных. Жизненный цикл данных
15.3.2. Типы данных

15.3.2.1. Основные
15.3.2.2. Записи
15.3.2.3. Динамические

15.4. Реляционная модель

15.4.1. Описание
15.4.2. Организации и типы организаций
15.4.3. Элементы данных. Атрибуты
15.4.4. Отношения: типы, подтипы, кардинальность
15.4.5. Пароли. Типы паролей
15.4.6. Нормализация. Нормальные формы

15.5. Построение логической модели данных

15.5.1. Спецификация таблиц
15.5.2. Определение столбцов
15.5.3. Спецификация паролей
15.5.4. Переход к нормальным формам. Зависимости

15.6. Физическая модель данных. Файлы данных

15.6.1. Описание файлов данных
15.6.2. Типы файлов
15.6.3. Режимы доступа
15.6.4. Организация файлов

15.7. Доступ к базе данных из PHP

15.7.1. Введение в MariaDB
15.7.2. Работа с базой данных MariaDB: язык SQL
15.7.3. Доступ к базе данных из PHP
15.7.4. Введение в MySql
15.7.5. Работа с базой данных MySql: язык SQL
15.7.6. Доступ к базе данных MySql из PHP

15.8. Взаимодействие с клиентом из PHP

15.8.1. Формы PHP
15.8.2. Файлы cookies
15.8.3. Управление сессиями

15.9. Архитектура веб-приложений

15.9.1. Схема Модель-Представление-Контроллер
15.9.2. Контроллер
15.9.3. Модель
15.9.4. Представление

15,10. Введение в веб-сервисы

15.10.1. Введение в XML
15.10.2. Сервис-ориентированные архитектуры (SOA): веб-сервисы
15.10.3. Создание веб-сервисов SOAP и REST
15.10.4. Протокол SOAP
15.10.5. Протокол REST

Модуль 16. Управление безопасностью

16.1. Визуализация информации

16.1.1. Введение
16.1.2. Информационная безопасность подразумевает конфиденциальность, целостность и доступность
16.1.3. Безопасность - это экономический вопрос
16.1.4. Безопасность - это процесс
16.1.5. Классификация информации
16.1.6. Информационная безопасность включает в себя управление рисками
16.1.7. Безопасность связана с элементами управления безопасностью
16.1.8. Безопасность является как физической, так и логической
16.1.9. Безопасность включает в себя людей

16.2. Специалист по информационной безопасности

16.2.1. Введение
16.2.2. Информационная безопасность как профессия
16.2.3. Сертификация (ISC) 2
16.2.4. Стандарт ISO 27001
16.2.5. Эффективные методы обеспечения безопасности при управлении ИТ-услугами
16.2.6. Модели зрелости для информационной безопасности
16.2.7. Другие сертификаты, стандарты и профессиональные ресурсы

16.3. Контроль доступа

16.3.1. Введение
16.3.2. Требования по контролю доступа
16.3.3. Механизмы аутентификации
16.3.4. Методы авторизации
16.3.5. Учет доступа и аудит
16.3.6. Технологии тройного А

16.4. Программы, процессы и политики информационной безопасности

16.4.1. Введение
16.4.2. Программы управления безопасностью
16.4.3. Управление рисками
16.4.4. Разработка политики безопасности

16,5. Планы обеспечения непрерывности бизнеса (BCP)

16.5.1. Введение в BCP
16.5.2. Стадии I и II
16.5.3. Стадии III и IV
16.5.4. Обслуживание BCP

16.6. Процедуры для надлежащей защиты компании

16.6.1. Сети DMZ
16.6.2. Системы обнаружения вторжений
16.6.3. Требования по контролю доступа
16.6.4. Обучение у нападающего: Honeypot

16.7. Архитектура безопасности. Профилактика

16.7.1. Обзор. Деятельность и многоуровневая модель
16.7.2. Защита периметра (межсетевые экраны, WAF, IPS и т.д.)
16.7.3. Защита конечных точек (оборудование, серверы и услуги)

16.8. Архитектура безопасности. Обнаружение

16.8.1. Обнаружение и мониторинг обзора
16.8.2. Журналы, зашифрованное разбиение трафика, запись и Siems
16.8.3. Оповещения и разведка

16.9. Архитектура безопасности. Реакция

16.9.1. Реакция. Продукты, услуги и ресурсы
16.9.2. Управление инцидентами
16.9.3. CERTS и CSIRT

16.10. Архитектура безопасности. Восстановление

16.10.1. Устойчивость, концепции, бизнес-требования и стандарты
16.10.2. Устойчивость ИТ-решений
16.10.3. Антикризисное управление и руководство

Модуль 17. Безопасность программного обеспечения

17.1. Вопросы безопасности программного обеспечения

17.1.1. Введение в проблему безопасности программного обеспечения
17.1.2. Уязвимости и их классификация
17.1.3. Свойства безопасного программного обеспечения
17.1.4. Рекомендации

17.2. Принципы проектирования безопасности программного обеспечения

17.2.1. Введение
17.2.2. Принципы проектирования безопасности программного обеспечения
17.2.3. Типы S-SDLC
17.2.4. Безопасность программного обеспечения на этапах S-SDLC
17.2.5. Методологии и стандарты
17.2.6. Рекомендации

17.3. Безопасность в жизненном цикле программного обеспечения на этапах разработки требований и проектирования

17.3.1. Введение
17.3.2. Моделирование атак
17.3.3. Случаи жестокого обращения
17.3.4. Разработка требований безопасности
17.3.5. Анализ риска. Архитектура
17.3.6. Модели проектирования
17.3.7. Рекомендации

17.4. Безопасность жизненного цикла программного обеспечения на этапах кодирования, тестирования и эксплуатации

17.4.1. Введение
17.4.2. Тестирование безопасности с учетом рисков
17.4.3. Обзор кода
17.4.4. Тест на проникновение
17.4.5. Операции по обеспечению безопасности
17.4.6. Внешний обзор
17.4.7. Рекомендации

17.5. Приложения для безопасного кодирования I

17.5.1. Введение
17.5.2. Практика безопасного кодирования
17.5.3. Обработка и проверка записей
17.5.4. Переполнение памяти
17.5.5. Рекомендации

17.6. Приложения для безопасного кодирования II

17.6.1. Введение
17.6.2. Переполнения целых чисел, ошибки усечения и проблемы с преобразованием типов между целыми числами
17.6.3. Ошибки и исключения
17.6.4. Приватность и конфиденциальность
17.6.5. Привилегированные программы
17.6.6. Рекомендации

17.7. Безопасность в разработке и в облаке

17.7.1. Безопасность в развитии; методология и практика
17.7.2. Модели PaaS, IaaS, CaaS и SaaS
17.7.3. Безопасность в облаке и для облачных услуг

17.8. Шифрование

17.8.1. Основы криптологии
17.8.2. Симметричное и асимметричное шифрование
17.8.3. Шифрование в состоянии покоя и при транспортировке

17.9. Оркестровка и автоматизация безопасности (SOAR)

17.9.1. Сложность ручной обработки; необходимость автоматизации задач
17.9.2. Продукты и услуги
17.9.3. Архитектура SOAR

17.10. Безопасность при удаленной работе

17.10.1. Потребность и сценарии
17.10.2. Продукты и услуги
17.10.3. Безопасность при удаленной работе

Модуль 18. Администрирование веб-сервера

18.1. Введение в веб-серверы

18.1.1. Что такое веб-сервер?
18.1.2. Архитектура и работа веб-сервера
18.1.3. Ресурсы и содержание веб-сервера
18.1.4. Серверы приложений
18.1.5. Прокси-серверы
18.1.6. Основные веб-серверы на рынке
18.1.7. Статистика использования веб-сервера
18.1.8. Безопасность веб-сервера
18.1.9. Балансировка нагрузки на веб-серверах
18.1.10. Рекомендации

18.2. Работа с протоколом HTTP

18.2.1. Функционирование и структура.
18.2.2. Описание запросов или методов запросов
18.2.3. Коды состояния
18.2.4. Заголовки
18.2.5. Кодирование содержимого. Кодовые страницы
18.2.6. Выполнение HTTP-запросов в Интернете с использованием прокси, livehttpheaders или аналогичного метода, анализ используемого протокола

18.3. Описание многосерверных распределенных архитектур

18.3.1. 3-слойная модель
18.3.2. Устойчивость к сбоям
18.3.3. Распределение нагрузки
18.3.4. Хранилища состояния сеанса
18.3.5. Хранилища кэша

18.4. Информационные службы Интернета (IIS)

18.4.1. Что такое IIS?
18.4.2. История и эволюция IIS
18.4.3. Ключевые преимущества и особенности IIS7 и последующих версий
18.4.4. Архитектура IIS7 и последующих версий

18.5. Установка, администрирование и настройка IIS

18.5.1. Преамбула
18.5.2. Установка информационных служб Интернета (IIS)
18.5.3. Инструменты администрирования IIS
18.5.4. Создание, настройка и администрирование веб-сайтов
18.5.5. Установка и обработка расширений в IIS

18.6. Расширенная безопасность в IIS

18.6.1. Преамбула
18.6.2. Аутентификация, авторизация и контроль доступа в IIS
18.6.3. Настройка защищенного веб-сайта на IIS с помощью SSL
18.6.4. Политики безопасности, применяемые в IIS 8.x

18.7. Введение в Apache

18.7.1. Что такое Apache?
18.7.2. Основные преимущества Apache
18.7.3. Основные характеристики Apache
18.7.4. Архитектура

18.8. Установка и настройка Apache

18.8.1. Начальная установка Apache
18.8.2. Настройка Apache

18.9. Установка и настройка различных модулей в Apache

18.9.1. Установка модулей Apache
18.9.2. Типы модулей
18.9.3. Безопасная настройка Apache

18.10. Расширенная безопасность

18.10.1. Аутентификация, авторизация и контроль доступа
18.10.2. Методы аутентификации
18.10.3. Безопасная конфигурация Apache с помощью SSL

Модуль 19. Аудит безопасности

19.1. Введение в информационные системы и их аудит

19.1.1. Введение в информационные системы и роль компьютерного аудита
19.1.2. Определения ИТ-аудита и внутреннего ИТ-контроля
19.1.3. Функции и цели ИТ-аудита
19.1.4. Различия между внутренним контролем и ИТ-аудитом

19.2. Внутренний контроль информационных систем

19.2.1. Функциональная блок-схема центра обработки данных
19.2.2. Классификация средств контроля информационных систем
19.2.3. Золотое правило

19.3. Процесс и этапы аудита информационных систем

19.3.1. Оценка рисков (EDR) и другие методологии ИТ-аудита
19.3.2. Проведение аудита информационных систем. Этапы аудита
19.3.3. Ключевые навыки аудитора информационных систем

19.4. Технический аудит безопасности систем и сетей

19.4.1. Технические аудиты безопасности. Проверка на вторжение. Предварительные концепции
19.4.2. Аудит безопасности в системах. Инструменты поддержки
19.4.3. Аудит безопасности в cети. Инструменты поддержки

19.5. Технический аудит безопасности интернета и мобильных устройств

19.5.1. Аудит безопасности интернета. Инструменты поддержки
19.5.2. Аудит безопасности мобильных устройств. Инструменты поддержки
19.5.3. Приложение 1. Структура исполнительного отчета и технического отчета
19.5.4. Приложение 2. Набор инструментов
19.5.5. Приложение 3. Методики

19.6. Система управления информационной безопасностью

19.6.1. Безопасность ИТ: свойства и факторы влияния
19.6.2. Общеорганизационный риск и управление рисками: внедрение механизмов контроля
19.6.3. Система управления информационной безопасностью (СУИБ): концепция и критические факторы успеха
19.6.4. СУИБ - модель PDCA
19.6.5. СУИБ ISO-IEC 27001: организационный контекст
19.6.6. Организационная трансформация
19.6.7. Лидерство
19.6.8. Планирование
19.6.9. Поддержка
19.6.10. Эксплуатация
19.6.11. Оценка эффективности
19.6.12. Улучшение
19.6.13. Приложение к ISO 27001/ISO-IEC 27002: цели и средства контроля
19.6.14. Аудит ISMS

19.7. Проведение аудита

19.7.1. Процедуры
19.7.2. Техники

19.8. Прослеживаемость

19.8.1. Методики
19.8.2. Анализ

19.9. Хранение

19.9.1. Техники
19.9.2. Результаты

19.10. Отчетность и представление доказательств

19.10.1. Типы отчетов
19.10.2. Анализ данных
19.10.3. Представление доказательств

Модуль 20. Безопасность в онлайн-приложениях

20.1. Уязвимости и проблемы безопасности в онлайн-приложениях

20.1.1. Введение в безопасность в онлайн-приложениях
20.1.2. Уязвимости безопасности при разработке веб-приложений
20.1.3. Уязвимости безопасности при внедрении веб-приложений
20.1.4. Уязвимости безопасности при развертывания веб-приложений
20.1.5. Официальные списки уязвимостей безопасности

20.2. Политики и стандарты для обеспечения безопасности онлайн-приложений

20.2.1. Основные принципы обеспечения безопасности онлайн-приложений
20.2.2. Политика безопасности
20.2.3. Система управления информационной безопасностью
20.2.4. Жизненный цикл разработки безопасного программного обеспечения
20.2.5. Стандарты безопасности приложений

20.3. Безопасность при разработке веб-приложений

20.3.1. Введение в безопасность веб-приложений
20.3.2. Безопасность при разработке веб-приложений

20.4. Тестирование онлайн безопасности веб-приложений

20.4.1. Анализ и тестирование безопасности веб-приложений
20.4.2. Безопасность при развертывании и производстве веб-приложений

20.5. Безопасность веб-сервисов

20.5.1. Введение в безопасность веб-сервисов
20.5.2. Функции и технологии обеспечения безопасности веб-сервисов

20.6. Тестирование онлайн безопасности веб-приложений

20.6.1. Оценка безопасности веб-сервисов
20.6.2. Онлайн-защита. Межсетевые экраны и шлюзы XML

20.7. Этичный хакинг, вредоносное ПО и криминалистика

20.7.1. Этичный хакинг
20.7.2. Анализ вредоносных программ
20.7.3. Криминалистический анализ

20.8. Эффективные методы обеспечения безопасности приложений

20.8.1. Руководство по надлежащей практике разработки онлайн-приложений
20.8.2. Руководство по передовой практике внедрения онлайн-приложений

20.9. Распространенные ошибки, подрывающие безопасность приложений

20.9.1. Распространенные ошибки при разработке
20.9.2. Распространенные ошибки в хостинге
20.9.3. Распространенные ошибки в производстве

##IMAGE##

Комплексная учебная программа, которая позволит вам освоить область больших данных и стать успешным архитектором бизнес-стратегий" 

Профессиональная магистерская специализация в области программной инженерии и качества программного обеспечения

В последнее десятилетие компьютерная инженерия развивается экспоненциально благодаря достижениям в области технологий и цифровых инструментов. Это ускоренное развитие создало процветающий отраслевой спрос на специалистов, которые в совершенстве владеют всем, что связано с программной инженерией: от правильных инструментов для проектирования и внедрения систем до наиболее эффективных протоколов безопасности для обеспечения неприкосновенного доступа к данным. По этой причине в TECH Технологическом университете мы разработали программу Профессиональной магистерской специализации в области программной инженерии и качества программного обеспечения, направленную на развитие специализации ИТ-специалистов с помощью наиболее полной и актуальной информации в этом секторе. Таким образом, вы получите широкое и высококвалифицированное представление о проектировании и разработке программ на основе тестов, с помощью которых вы обеспечите высокие стандарты качества. Изучите этот курс послевузовского образования и сделайте окончательный шаг вперед в своей профессиональной карьере.

Специализация в области критериев качества для программной инженерии

Если ваша цель — стать экспертом в области инженерии качества программного обеспечения, эта программа послевузовского образования для вас. Благодаря учебному плану вы углубитесь в самые современные критерии, задачи и методологии для надлежащей разработки проекта операционных систем. Вы также проанализируете такие понятия, как технический долг, его причины и последствия, а также ключевые факторы качества этого набора программ: типология и модели, особенности, влияющие элементы, заблуждения, сопутствующие расходы и др. Вы также узнаете, как измерять и количественно оценивать состояние программного обеспечения и внедрять процессы DevOps, а также системы безопасности, чтобы гарантировать их оптимальное состояние. Данная Профессиональная магистерская специализация предоставит вам все необходимое, чтобы превзойти ваши профессиональные ожидания.