Цели освоения дисциплины: изучение и практическое освоение общих принципов и современных методов технологии программирования.

 В результате обучения обучающийся должен:

 знать: технологию разработки алгоритмов и программ; методы отладки и решения задач; основные стандарты в области инфокоммуникационных систем и технологий; основы объектно-ориентированного подхода к программированию;

 уметь: проектировать и разрабатывать различные виды программного обеспечения на основе объектно-ориентированного подхода;

 владеть: технологией разработки программ средней сложности.

 Компетенции: ОПК-2, ОПК-6, ПК-2, ПК-3.

 Распределение по курсу и семестру:

Курс

Семестр

Лекции

Практики

Лабораторные работы

Курсовая работа

Вид промежуточной аттестации

3

5

34

17

34

КП

экзамен

 

Содержание дисциплины:

Понятие программного средства. Технология программирования и основные этапы ее развития. Жизненный цикл программного средства. Архитектура ПО. Системный анализ при создании ПС. Системный подход при разработке ПС. Модели разработки: каскадная, с промежуточным контролем, спиральная и т.д.; СASE и RAD-технологии. Управление проектом, планирование и распределение ресурсов, контроль исполнения сроков. Методы проектирования программного обеспечения. Использование декомпозиции и абстракции при проектировании ПО. Спецификация процедур и данных. Декомпозиция задачи. Методы защиты программ и данных. Парадигмы программирования. Объектно-ориентированная парадигма: понятия объекта, класса объектов; основные понятия объектно-ориентированного программировании; классы и объекты; интерфейсы и реализация. Технология создания программного кода. Библиотеки стандартных компонентов, библиотеки объектов. Проектирование интерфейса с пользователем. Структуры диалога; поддержка пользователя. Статические, полустатические и динамические типы данных. Простые и составные типы данных, операция квалификации. Технологии распределенных вычислений. Технологии коллективной разработки программного обеспечения. Обзор и классификация средств поддержки коллективной разработки ПО. Программные средства планирования и управления процессом разработки. Сетевые графики и диаграммы рабочего процесса. Сценарии выполнения работ. Применение систем управления документами. CASE-технологии. Технологические средства разработки программного обеспечения. Инструментальная среда разработки. Библиотека VCL. Средства поддержки проекта. Отладчики. CASE-технология. UML-диаграммы. Методы отладки и тестирования программ. Категории программных ошибок. Типы тестов. Тестирование на этапе планирования. Тестирование на этапе проектирования. Регрессионное тестирование. Разработка тестов. Документирование и оценка качества программных продуктов. Пользовательская документация программных средств. Документация по сопровождению программных средств. Стандарт ISO9126. Модель качества. Характеристики и субхарактеристики качества программного средства. Метрики качества программного средства.

 Общая трудоемкость дисциплины: 6 зачетных единиц, 216 часа.