Компьютерные науки

Программная инженерия

Программа о целостной концепции процесса разработки программного обеспечения, включая методологии CMMI, MSF и Scrum.
Студентов 688 Для специалистов
690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.
Объем

36 час.
Длительность

30 дней
Нагрузка в неделю

9 час.
Формат обучения

Дистанционно (самостоятельно)
Описание Учебный курс посвящен системному взгляду на программную инженерию, фокусируясь на управлении процессами и методологиях разработки. В рамках обучения детально изучаются этапы создания программных продуктов: от анализа требований и проектирования архитектуры до обеспечения качества и конфигурационного управления. Курс раскрывает особенности гибких подходов (Scrum) и классических моделей (CMMI, MSF), а также демонстрирует их реализацию в среде Visual Studio Team System и Team Foundation Server. Материал будет полезен начинающим системным аналитикам, архитекторам, руководителям проектов и специалистам по обеспечению качества, стремящимся освоить индустриальные стандарты организации разработки.
Цели
  • Сформировать целостное представление о процессах программной инженерии.
  • Развить умение выбирать подходящие методологии разработки для конкретных проектов.
  • Систематизировать знания о дисциплинах управления требованиями и конфигурациями.
  • Подготовить к практическому использованию инструментов командной разработки.
Чему я научусь?
  • Различать и применять методологии разработки ПО: Scrum, MSF и CMMI.
  • Проектировать архитектуру программных систем на основе заданных требований.
  • Организовывать конфигурационное управление и процессы тестирования.
  • Использовать функции Team Foundation Server для управления элементами работ.
  • Анализировать рабочие продукты на разных этапах жизненного цикла проекта.

Авторы

Кознов Дмитрий Владимирович
Кознов Дмитрий Владимирович
Кандидат физико-математических наук, доцент, заведующий лабораторией CASE-технологий НИИ ИТ Санкт-петербургского государственного университета (СПбГУ), доцент кафедры системного программирования математико-механического факультета СПбГУ.
Чему я научусь?
  • Различать и применять методологии разработки ПО: Scrum, MSF и CMMI.
  • Проектировать архитектуру программных систем на основе заданных требований.
  • Организовывать конфигурационное управление и процессы тестирования.
  • Использовать функции Team Foundation Server для управления элементами работ.
  • Анализировать рабочие продукты на разных этапах жизненного цикла проекта.

Учебный план

Занятия
Экзамен экстерном Внимание! Экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите подтвердить свои знания по данному курсу без его изучения или поверить свои знания по нему. Экзамен экстерном можно сдать только один раз. 90 мин
1 О предмете изучения Понятие программной инженерии. Основные определения: информатика, Системотехника, Бизнес-реинжиниринг. Программное обеспечение: определение, свойства.
2 Процесс разработки программного обеспечения Понятие процесса разработки ПО. Универсальный процесс. Текущий процесс. Конкретный процесс. Стандартный процесс. Совершенствование процесса. Pull/Push стратегии.... Понятие процесса разработки ПО. Универсальный процесс. Текущий процесс. Конкретный процесс. Стандартный процесс. Совершенствование процесса. Pull/Push стратегии. Классические модели процесса: водопадная модель, спиральная модель. Фазы и виды деятельности. ещё
3 Рабочий продукт, дисциплина обязательств, проект Рабочий продукт. Дисциплина обязательств. Проект. Управление проектами.
Рабочий продукт, дисциплина обязательств, проект тест для курса Программная инженерия 60 мин
4 Архитектура ПО Понятие архитектуры ПО. Точка зрения и характеристики точек зрения. Множественность точек зрения при разработке ПО.
5 Управление требованиями Виды требований: функциональные требования, нефункциональные требования. Свойства требований: ясность и недвусмысленность, полнота и непротиворечивость, необходимый уровень... Виды требований: функциональные требования, нефункциональные требования. Свойства требований: ясность и недвусмысленность, полнота и непротиворечивость, необходимый уровень детализации, прослеживаемость, тестируемость и проверяемость, модифицируемость. Формализация требований. Цикл работы с требованиями. ещё
6 Конфигурационное управление "Понятие конфигурационного управления. Управление версиями. Понятие ""ветки"" проекта. Управление сборками. Средства версионного контроля. Единицы конфигурационного управления.... "Понятие конфигурационного управления. Управление версиями. Понятие ""ветки"" проекта. Управление сборками. Средства версионного контроля. Единицы конфигурационного управления. Понятие baseline." ещё
Конфигурационное управление тест для курса Программная инженерия 60 мин
7 Тестирование Стандартизация качества. Методы обеспечения качества ПО. Понятие тестирования. Тестирование черного ящика. Тестирование белого ящика. Инструменты тестирования.... Стандартизация качества. Методы обеспечения качества ПО. Понятие тестирования. Тестирование черного ящика. Тестирование белого ящика. Инструменты тестирования. Критерии тестирования. Виды тестирования. Работа с ошибками. Средства контроля ошибок (bugtracking systems). ещё
8 Диаграммные техники в работе со знаниями Случаи использования. Работа с требованиями. Случаи использования в управлении разработкой. Итеративный цикл автор/рецензент. Карты памяти.
Диаграммные техники в работе со знаниями тест для курса Программная инженерия 60 мин
9 MSF IT решение. Основные принципы MSF. Модель команды: основные принципы, ролевые кластеры. Масштабирование команды MSF. Модель процесса.... IT решение. Основные принципы MSF. Модель команды: основные принципы, ролевые кластеры. Масштабирование команды MSF. Модель процесса. Управлениекомпромиссами. ещё
10 CMMI Понятие CMMI. Уровни зрелости процессов по CMMI. Области усовершенствования.
11 Гибкие (agile) методы разработки "Общее описание ""гибких"" методов разработки ПО. Extreme Programming: общее описание, основные принципы организации процесса. Scrum: общее... "Общее описание ""гибких"" методов разработки ПО. Extreme Programming: общее описание, основные принципы организации процесса. Scrum: общее описание, роли, практики." ещё
Гибкие (agile) методы разработки тест для курса Программная инженерия 60 мин
12 Обзор технологии Microsoft Visual Studio Team System (VSTS) Состав продукта: обзор, клиентская часть VSTS, серверная часть VSTS. Правила инсталляции. Пакет TeamExplorer.
13 VSTS: управление элементами работ (Work Items) Определение, свойства, жизненный цикл. Реквизиты. Средства использования (на примере элемента работы task). Доступ к элементам работы.... Определение, свойства, жизненный цикл. Реквизиты. Средства использования (на примере элемента работы task). Доступ к элементам работы. Элементы работы при планировании. Элементы работы в дальнейшей разработке. Элементы работы в отчетах. ещё
14 VSTS: конфигурационное управление Система контроля версий. Отслеживание изменений отдельных файлов. Правила внесения изменений. Управление ветками. Сохранение без внесения. Автоматические... Система контроля версий. Отслеживание изменений отдельных файлов. Правила внесения изменений. Управление ветками. Сохранение без внесения. Автоматические сборки. ещё
15 VSTS: тестирование Система отслеживания ошибок. Создание описания ошибки. Связь изменений исходных текстов ПО и ошибок. Система оповещений. Модульные... Система отслеживания ошибок. Создание описания ошибки. Связь изменений исходных текстов ПО и ошибок. Система оповещений. Модульные тесты. Пакеты тестов. Автоматическое тестирование Web-приложений. ещё
16 VSTS: поддержка различных моделей процесса Поддержка шаблонов процесса. Инструменты настройки. Обзор существующих шаблонов. MSF for Agile Software Development. Scrum.
VSTS: поддержка различных моделей процесса тест для курса Программная инженерия 70 мин
17 Практикум Требования к техническому оснащению. Организация процесса. Модельная задача. Требования к студентам. Масштабируемость практикума. Обзор тем и... Требования к техническому оснащению. Организация процесса. Модельная задача. Требования к студентам. Масштабируемость практикума. Обзор тем и задач. Тема 1. Знакомство и создание проекта. Тема 2. Работа с системой отслеживания ошибок. Тема 3. Работа с системой контроля версий. Тема 4. Разработка модульных тестов. Тема 5. Создание и конфигурация автоматической сборки. Тема 6. Настройка шаблона процесса. ещё
18 Вопросы и задания по курсу Введение в программную инженерию
Тренировочный экзамен Внимание! Тренировочный экзамен экстерном не обязательный для сдачи. При желании вы можете его пройти, если хотите проверить свои знания курса перед сдачей экзамена. Тренировочный экзамен можно сдавать сколько угодно один раз. 90 мин
Экзамен 60 мин

Какой документ я получу?

Сертификат

Выдаётся автоматически после успешного завершения программы.

Удостоверение о повышении квалификации

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

Стоимость программы

690 ₽ 1 200 ₽
или любая сумма на ваше усмотрение
Вы можете оплатить любую сумму, чтобы поддержать наш проект и авторов программы. Объем услуг не зависит от размера вашей оплаты.