МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Саратовский государственный университет имени
Факультет компьютерных наук и информационных технологий
УТВЕРЖДАЮ
_______________________
"_____"__________________20___ г.
ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ
Программная инженерия
Направление подготовки
010300 – Фундаментальная информатика и информационные технологии
Профиль подготовки
Информатика и компьютерные науки
Квалификация (степень) выпускника
Бакалавр
Форма обучения
Очная
Саратов
2011
1. Цели освоения дисциплины.
Целями освоения дисциплины «Программная инженерия» являются изучение современных инженерных методов создания качественного программного обеспечения, удовлетворяющего заданным требованиям, применение методов программной инженерии.
2. Место дисциплины в структуре ООП бакалавриата.
Данная учебная дисциплина входит в раздел «Профессиональный цикл. Базовая часть» ФГОС-3.
Для изучения дисциплины необходимы компетенции, сформированные у обучающихся в результате изучения дисциплин «Введение в информационные технологии», «Основы программирования», «Моделирование информационных процессов».
Сформированные в процессе изучения дисциплины «Программная инженерия» компетенции, необходимы студенту при изучении дисциплин «Технология командной разработки ПО», «Человеко-центрирование проектирование ПО», «Технология компонентного программирования».
3. Компетенции обучающегося, формируемые в результате освоения дисциплины:
Данная дисциплина способствует формированию следующих компетенций:
способность применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий (в соответствии с профилизацией) (ПК-1);
способность разрабатывать и реализовывать процессы жизненного цикла информационных систем, программного обеспечения, сервисов систем информационных технологий, а также методы и механизмы оценки и анализа функционирования средств и систем информационных технологий; способность разработки проектной и программной документации, удовлетворяющей нормативным требованиям (ПК-3);
способность в составе научно-исследовательского и производственного коллектива решать задачи профессиональной деятельности (в соответствии с профилем подготовки) (ПК-5);
способность применять на практике международные и профессиональные стандарты информационных технологий, современные парадигмы и методологии, инструментальные и вычислительные средства (в соответствии с профилем подготовки) (ПК-7);
способность осуществлять на практике современные методологии управления жизненным циклом и качеством систем, программных средств и сервисов информационных технологий (ПК-9)
способность реализовывать процессы управления качеством производственной деятельности, связанной с созданием и использованием систем информационных технологий, осуществлять мониторинг и оценку качества процессов производственной деятельности (ПК-12);
способность составлять и контролировать план выполняемой работы, планировать необходимые для выполнения работы ресурсы, оценивать результаты собственной работы (ПК-13);
способность осуществлять мониторинг за соответствием производственных процессов требованиям систем контроля окружающей среды и безопасности труда (ПК-14);
знание международных стандартов в области разработки программного обеспечения, понимание процессного подхода, методов управления жизненным циклом и качеством программного обеспечения (ПК-21);
уверенное знание теоретических и методических основ, понимание функциональных возможностей, следующих предметных областей (ПК-25):
Разработка информационных систем;
Моделирование и анализ программного обеспечения;
Технологии мультимедиа;
Архитектура и организация компьютеров;
Конфигурирование и использование операционных систем;
Разработка и принципы сетевых технологий;
Человеко-машинное взаимодействие;
Приложения и использование баз данных;
Социальные и этические вопросы ИТ;
Анализ технических требований;
Графика и визуализация; Интеллектуальные системы; Теория баз данных;
понимание теоретических основ и общих принципов использования следующих профессиональных областей (ПК-26): Анализ бизнес-требований; Электронная коммерция; Экономика программной инженерии; Сопровождение программного обеспечения; Процессы жизненного цикла программного обеспечения; Качество программного обеспечения; Технология вычислительных систем; Системное администрирование; Системная интеграция; Основы программной инженерии; Верификация и испытания программного обеспечения; Встроенные системы; Распределенные системы; Управление безопасностью ИТ; Управление инфокоммуникациями;
способность квалифицированно применять в профессиональной деятельности современные языки программирования и языки баз данных, методологии системной инженерии, системы автоматизации проектирования, электронные библиотеки и коллекции, сетевые технологии, библиотеки и пакеты программ, современные профессиональные стандарты информационных технологий (ПК-27);
способность решать задачи производственной и технологической деятельности на высоком профессиональном уровне, включая: разработку алгоритмических и программных решений в области системного и прикладного программирования; разработку математических, информационных и имитационных моделей по тематике выполняемых опытно-конструкторских работ и проектов; создание информационных ресурсов глобальных сетей, образовательного контента, прикладных баз данных; разработку тестов и средств тестирования систем и средств на соответствие стандартам и исходным требованиям; разработку эргономичных человеко-машинных интерфейсов в соответствии с профилизацией (ПК-28);
В результате освоения дисциплины обучающийся должен:
знать:
· различные модели жизненного цикла ПО;
· основы программных требований;
· способы проектирования ПО;
· различные виды тестирования ПО.
уметь:
· проводить анализ требований к разрабатываему ПО, управлять изменениями требований;
· писать программы на одном из языков программирования;
· систематически тестировать и отлаживать программы;
владеть:
· навыками программирования на языке Java для решения профессиональных задач;
· навыками работы в интегрированных средах разработки программного обеспечения IDEA/NetBeans/Eclipse.
4. Структура и содержание дисциплины.
Общая трудоемкость дисциплины составляет 2 зачетные единицы, 72 часа.
№ п/п | Раздел дисциплины | Семестр | Неделя семестра | Виды учебной работы, включая самостоятельную работу студентов и трудоемкость (в часах) | Формы текущего контроля успеваемости (по неделям семестра) Формы промежуточной аттестации (по семестрам) | |||
Лек | Лаб | Сам | ||||||
1 | Модели жизненного цикла программного обеспечения (ПО) | 6 | 1 | 2 | 3 | |||
2 | Управление требованиями к программному обеспечению. | 6 | 2 | 2 | 3 | |||
3 | Проектирование программного обеспечения. | 6 | 3-4 | 4 | 6 | Контрольная работа №1 (на 4 неделе) | ||
4 | Конструирование (детальное проектирование) ПО | 6 | 5 | 2 | 3 | |||
5 | Тестирование программного обеспечения | 6 | 6 | 2 | 3 | |||
6 | Сопровождение программного обеспечения | 6 | 7 | 2 | 3 | |||
7 | Конфигурационное управление | 6 | 8 | 2 | 3 | |||
8 | Управление программной инженерией | 6 | 9 | 2 | 3 | |||
9 | Процесс программной инженерии | 6 | 10 | 2 | 3 | |||
10 | Инструменты и методы программной инженерии | 6 | 11 | 2 | 3 | |||
11 | Качество программного обеспечения | 6 | 12-13 | 4 | 6 | Контрольная работа №2 (на 13 неделе) | ||
12 | Документирование программного обеспечения | 6 | 14 | 2 | 3 | |||
13 | Технико-экономическое обоснование проектов программных средств | 6 | 15 | 2 | ||||
Промежуточная аттестация | Зачет | |||||||
Итого | 30 | 42 |
Модели жизненного цикла программного обеспечения (ПО).
Процессы жизненного цикла ПО. Модели жизненного цикла. Каскадная (водопадная) модель. Итеративная и инкрементальная модель (эволюционный подход). Спиральная модель.
Управление требованиями к программному обеспечению.
Основы программных требований. Процесс работы с требованиями. Извлечение требований. Анализ требований. Спецификация требований. Проверка требований. Управление изменениями.
Проектирование программного обеспечения.
Основы проектирования. Ключевые вопросы проектирования. Структура и архитектура программного обеспечения. Анализ качества и оценка программного дизайна. Нотации проектирования. Стратегии и методы проектирования программного обеспечения.
Конструирование (детальное проектирование) ПО.
Основы конструирования. Управление конструированием.
Тестирование программного обеспечения.
Основы тестирования. Уровни тестирования. Техники тестирования. Измерение результатов тестирования. Процесс тестирования.
Сопровождение программного обеспечения.
Основы сопровождения ПО. Ключевые вопросы сопровождения ПО. Процесс сопровождения. Техники сопровождения.
Конфигурационное управление.
Управление SCM-процессом. Идентификация программных конфигураций. Учет статусов конфигураций. Аудит конфигураций. Управление выпуском и поставкой.
Управление программной инженерией.
Инициирование и определение содержания. Планирование программного проекта. Выполнение программного проекта. Обзор и оценка. Закрытие. Измерения в программной инженерии.
Процесс программной инженерии.
Реализация и изменение процесса. Определение процесса. Оценка процесса. Измерения в отношении процессов и продуктов.
Инструменты и методы программной инженерии.
Инструменты программной инженерии. Методы программной инженерии.
Качество программного обеспечения.
Основы качества программного обеспечения. Процессы управления качеством ПО. Практическое применение.
Документирование программного обеспечения.
Технико-экономическое обоснование проектов программных средств.
5. Образовательные технологии
При проведении занятий по данному курсу используются следующие активные и интерактивные формы: организация дискуссий и обсуждений спорных вопросов, использование метода мозгового штурма, использование мультимедийных презентаций.
6. Учебно-методическое обеспечение самостоятельной работы студентов. Оценочные средства для текущего контроля успеваемости, промежуточной аттестации по итогам освоения дисциплины.
7. Учебно-методическое и информационное обеспечение дисциплины.
а) основная литература:
1. Мацяшек программная инженерия на основе учебного примера. М.: БИНОМ. 2009.
б) дополнительная литература:
2. Липаев инженерия. Методологические основы. Гос. ун-т – Высшая школа экономики. М.: ТЕИС, 2006.
8. Материально-техническое обеспечение дисциплины.
· лекционная аудитория с мультимедийным оборудованием с выходом в Интернет,
· компьютерные классы с программным обеспечением под управлением операционной системы Microsoft Windows 7 или Linux с подключением к Internet, рассчитанные на обучение группы студентов из 8 – 12 человек, удовлетворяющие санитарно-гигиеническим требованиям;
· Компилятор языка Java (Java 6), среда разработки на языке Java (IntelliJ IDEA Community Edition).
Программа составлена в соответствии с требованиями ФГОС ВПО с учетом рекомендаций и Примерной ООП ВПО по направлению 010300 Фундаментальная информатика и информационные технологии и профилю подготовки Информатика и компьютерные науки.
Автор Зав. кафедрой | ___________ |
Программа одобрена на заседании базовой кафедры «Технологии программирования» от «15» апреля 2011 года, протокол
Заведующий базовой кафедрой «Технологии программирования» | ___________ | |
Декан факультета КНиИТ, Доцент | ___________ |


