Уровень сложности:
Длительность курса: -1 ак.ч.
График обучения:
Аннотация
Курс посвящен обзору современных технологий разработки программного обеспечения. В курсе рассматриваются наиболее общие технологии, фактически не зависящие от конкретной аппаратно-программной платформы и охватывающие все стадии жизненного цикла программного обеспечения (ПО).
Основное внимание уделяется изучению таких важных тем как:
- разработка требований к ПО и оценка стоимости проекта;
- определение архитектуры программной системы и выбор базовых технологий;
- технологии практической разработки ПО;
- технологии развертывания и сопровождения ПО;
- документирование ПО.
Заключительная часть курса посвящена вопросам практического использования рассмотренных технологий на примере разработки учебно-демонстрационного приложения.
Знания и умения, полученные в результате обучения
В результате успешного освоения курса слушатель:
- получает представление о современных технологиях разработки ПО;
- знакомится с основами разработки требований к ПО;
- овладевает рядом методик оценки проектов с точки зрения его ресурсоемкости, архитектуры и возможности применения конкретных технологий;
- знакомится с основными методами практической разработки ПО;
- приобретает навыки документирования ПО и процесса его разработки.
Полезные Интернет-ссылки
http://www.sun.com — сайт компании Sun Microsystems
http://www.microsoft.com/MSDN/ — Microsoft Developers Network
Расчёт стоимости с учётом возможных скидок представлен как справочная информация.
Фактический размер скидки может несколько отличаться из-за округления значения суммы.
Начальные требования
Слушатель должен:
- уверенно владеть хотя бы одним объектно-ориентированным языком программирования (наиболее желательно знание С++ и/или Java);
- иметь представление об архитектуре современного ПО;
- знать принципы работы и основы применения баз данных;
- иметь представление о задачах и принципах администрирования ОС, баз данных и сетей.
Тематический план
Лекции
Лекция 1. Разработка требований. Оценки проекта
Введение.
- Определение задачи курса и обзор рассматриваемых тем.
- Общие термины и понятия.
- Обзор эволюции технологий разработки.
- Основные принципы разработки современного ПО. Ограничения, оказывающие влияние на разработку ПО.
- Жизненный цикл ПО. Основные особенности каждого этапа жизненного цикла ПО.
Разработка требований к ПО
- Виды и структура требований.
- Оценки обоснованности требований.
- Методы разработки требований
- Документирование требований.
- Типичные ошибки при определении требований к ПО.
Оценки проекта
- Методы предварительной оценки ресурсов, необходимых для реализации программного проекта.
- Виды рисков. Оценки рисков
- Вопросы точности оценок
Лекция 2. Архитектура ПО
- Обзор истории развития архитектуры.
- Характеристики современных архитектур.
- Влияние требований к ПО на выбор его архитектуры.
- Технологии разработки архитектуры.
- Выбор платформы для реализации ПО
- Возможности применения решений, не зависящих от платформы
- Вопросы стандартизации решений
- Протоколы
- Интерфейсы.
- Основные принципы построения пользовательского интерфейса и его влияние на технологические решения
Лекция 3. Технологии практической реализации ПО
- Обзор истории развития технологий реализации ПО
- Обзор современных технологий реализации.
- Паттерны проектирования и их применение.
- Автоматизация разработки
- Документирование процесса разработки
Лекция 4. Технологии развертывания и сопровождения ПО
- Основные задачи и принципы развертывания ПО
- Технологии развертывания
- Задачи и основные технологии сопровождения ПО
- Заключительный обзор курса
Практические работы
Практическое занятие 1. Разработка требований и архитектуры демонстрационно-учебного приложения
Практическое занятие 2. Вопросы практической реализации приложений. Пример развертывания системы