Технология производства ПО III (2009755)

Материал из Репозиторий учебно-методических материалов Университета ИТМО
Перейти к: навигация, поиск

Технология производства ПО III (2009755)

Общая информация
Подразделение: Кафедра интеллектуальных технологий в гуманитарной сфере (ИТГС)

Автор(ы): Королев А.А.


Семестр: 2010 (весна)

Дисциплина: ФТД...02 Технология производства ПО
Трудоемкость (Общ/Лек/Лаб/Прак/СРС): 88/0/0/0/88
Форма контроля: экзамен
Преподаватели: Кайсарова Д.В.

Семестр: 2011 (весна)

Дисциплина: ФТД...02 Технология производства ПО
Трудоемкость (Общ/Лек/Лаб/Прак/СРС): 88/0/0/0/88
Форма контроля: экзамен
Преподаватели: Кайсарова Д.В.

Семестр: 2012 (весна)

Дисциплина: ФТД...02 Технология производства ПО
Трудоемкость (Общ/Лек/Лаб/Прак/СРС): 88/0/0/0/88
Форма контроля: зачет

Семестр: 2013 (весна)

Дисциплина: ФТД...02 Технология производства ПО
Трудоемкость (Общ/Лек/Лаб/Прак/СРС): 88/0/0/0/88
Форма контроля: зачет

Содержание

Программа

Цели и задачи дисциплины

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

Учебные задачи дисциплины 

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

Место дисциплины среди других дисциплин учебного плана

Дисциплина преподается в течение пяти семестров, начиная с четвертого семестра обучения. Она относится к циклу факультативных дисциплин и является дисциплиной по выбору студентов. Для изучения дисциплины в четвертом семестре обучающиеся должны быть знакомы с основами программирования и иметь навыки работы на компьютере и в Интернете, в дальнейшем изучение дисциплины основывается на знаниях и умениях, получаемых студентами при изучении следующих дисциплин ?Технологии программирования?, ?Управление данными?, ?Объектно-ориентированное программирование?, ?Представление знаний в информационных системах?, а также дисциплины педагогической направленности ?Психолого-педагогические основы проектирования информационных систем в образовании?, ?Мировые образовательные ресурсы?. Дисциплина служит подготовкой для изучения дисциплин ?Проектирование информационных систем в образовании?, ?Управление проектами в информационных образовательных системах?. Кроме того, знания и умения, полученные при изучении дисциплины, используются при защитах курсовых и выпускной квалификационной работ, проведении НИРС, а также при прохождении практик.

Методы преподавания дисциплины

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

Требования к уровню освоения содержания дисциплины

А. Знание и понимание Студенты должны понимать назначение, особенности и области применения различных прикладных и теоретических методов программирования (А1) Студенты должны иметь представление о программной инженерии, ее месте в инженерной деятельности специалистов при создании компьютерных систем и общее описание десяти областей знаний профессионального ядра знаний SWEBOK. (A2); Студенты должны иметь представление о стандарте ISO/IEC 12207 (А3) Студенты должны знать основные принципы функционального моделирования и моделирования потоков данных (А4) Студенты должны демонстрировать знание современных языковых средств и спецификации интерфейсов объектов программирования (А5); Студенты должны демонстрировать знание основных моделей жизненного цикла, которые используются в практике проектирования программных систем. (А6); Студенты должны иметь представление о принципах и методах планирования и управления программным проектом, рисками и формированием версий программных систем (А7); Студенты должны знать основные методы и процессы тестирования (и верификации), сбора данных о дефектах и отказах (А8); Студенты должны знать современный подход к моделированию и проектированию структур БД (А9); Студенты должны иметь представление о основных подходах к обеспечению качества программного обеспечения (А10); Студенты должны иметь представление о принципах групповой разработки программного обеспечения (А11); Студенты должны иметь представление об основных задачах и этапах внедрения и сопровождения ПО (А12).

B. Интеллектуальные навыки Студенты должны уметь проводить анализ и давать описание инженерии программирования (B1); Студенты должны уметь формировать требования программной инженерии с учетом нормативно-правовых, педагогическими и эргономических требований (B2); Студенты должны уметь выбирать объектно-ориентированные и стандартизованные, традиционные методы проектирования архитектуры системы (B3); Студенты должны уметь использовать основные модели жизненного цикла в практике проектирования программных систем (В4); Студенты должны уметь применять стандарт ISO/IEC 12207 и определять подходы к формированию рабочих моделей жизненного цикла на его основе. (В5); Студенты должны уметь оценивать характеристики фундаментальных моделей ЖЦ (водопадной, спиральной, инкрементной, эволюционной) и стандартной модели (В6); Студенты должны уметь осуществлять документирование проекта разработки программного обеспечения с помощью формальных описаний и распределять ресурсы на отдельных этапах проекта (В7); Студенты должны уметь создавать инфологические модели знакомых предметных областей (В8); Студенты должны уметь выбирать адекватные методы тестирования и верификации ПО (В9). C. Практические навыки Студенты должны владеть различными методами прикладного, систематического (структурного, компонентного, аспектно-ориентированного и др.) и теоретического (алгебраического, композиционного) программирования (С1); Студенты должны уметь составлять документы в соответствии со стандартом ISO/IEC 12207 (С2); Студенты должны уметь строить функциональные модели в нотации IDEF0 (С3); Студенты должны уметь описывать потоки данных в простой информационной системе с помощью методологии DFD (С4); Студенты должны уметь составлять основные типы диаграмм UML (С5); Студенты должны уметь разрабатывать интерфейсы модулей программного обеспечения (С6); Студенты должны уметь составлять структуру таблиц РБД и осуществлять ее нормализацию (С7); Студенты должны получить опыт взаимодействия в условиях групповой разработки ПО (С8); Студенты должны уметь применять методы и процессы тестирования (и верификации), методы сбора данных о дефектах и отказах, модели оценки надежности программ, использующие данные результатов тестирования (С9).

D. Переносимые навыки Студенты должны уметь давать комплексную оценку программному обеспечению (D1); Студенты должны уметь выбирать стратегию создания программного обеспечения (D2);

Формы контроля учебных достижений студента по модулю

Прикладные и теоретические методы программирования

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 12
Письменные домашние задания 10
Доклад по теме 8
Контрольные работы 4
Личностные качества 5

Средства программной инженерии, современные среды разработки

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 9
Письменные домашние задания 4
Доклад по теме 11
Контрольные работы 4
Личностные качества 5

Основы программной инженерии и базовые стандарты жизненного цикла (ЖЦ) программного обеспечения

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 12
Письменные домашние задания 10
Доклад по теме 8
Контрольные работы 4
Личностные качества 5

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

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 9
Письменные домашние задания 4
Доклад по теме 11
Контрольные работы 4
Личностные качества 5

Проектирование программного обеспечения. Определения требований в программной инженерии и архитектур.

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 8
Письменные домашние задания 10
Доклад по теме 6
Контрольные работы 4
Личностные качества 5

Проектирование программного обеспечения. Унифицированный язык моделирования UML.

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 3
Письменные домашние задания 4
Доклад по теме 8
Контрольные работы 4
Личностные качества 5

Базы данных в информационных проектах

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 12
Письменные домашние задания 10
Доклад по теме 8
Контрольные работы 4
Личностные качества 5

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

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 9
Письменные домашние задания 4
Доклад по теме 11
Контрольные работы 4
Личностные качества 5

Координация в разработке больших программных продуктов

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 12
Письменные домашние задания 10
Доклад по теме 8
Контрольные работы 4
Личностные качества 5

Обеспечение качества ПО

Форма контроля Максимальное количество баллов Критерии
Присутствие на практических занятиях 4
Участие в дискуссиях 9
Письменные домашние задания 4
Доклад по теме 11
Контрольные работы 4
Личностные качества 5

Структура

Название Лек., ч Пр., ч Лаб., ч Описание
Модуль 7 0 18 0
Тема 1.1. Структурное программирование 0 4 0
Тема 1.2. Объектно-ориентированное программирование 0 6 0
Тема 1.3. Компонентный подход к программированию 0 4 0
Тема 1.4. Теоретическое программирование 0 4 0
Модуль 8 0 18 0
Тема 2.1. MS Visual Studio 0 6 0
Тема 2.2. Среда разработки Eclipse 0 4 0
Тема 2.3. Фрейморки (.NET Framework) 0 4 0
Тема 2.4. Среда разработки Zend Studio 0 4 0
Модуль 9 0 17 0
Тема 3.1. Характеристика областей знаний SWEBOK 0 4 0
Тема 3.2. ЖЦ стандарта ISO/IEC 12207, примеры ЖЦ системы автоматизации образования 0 6 0
Тема 3.3. Типы моделей ЖЦ 0 3 0
Тема 3.4. Выбор модели ЖЦ 0 4 0
Модуль 10 0 17 0
Тема 4.1. Основы управления проектами 0 4 0
Тема 4.2. Диаграмма Ганта 0 6 0
Тема 4.3. PERT-диаграммы 0 4 0
Тема 4.4. Оценка ресурсов и управления рисками 0 3 0

Практические работы

  • Структурное программирование

  • Объектно-ориентированное программирование
  • Компонентный подход к программированию

  • Теоретическое программирование
  • MS Visual Studio (C#)
  • Ellipse (JAVA)
  • Фреймворки (.NET Framework.).
  • Zend Studio 5.5.0. (PHP)
  • Характеристика областей знаний SWEBOK

  • ЖЦ стандарта ISO/IEC 12207, примеры ЖЦ системы автоматизации образования
  • Типы моделей ЖЦ
  • Выбор модели ЖЦ
  • Основы управления проектами
  • Диаграмма Ганта
  • PERT-диаграммы
  • Оценка ресурсов и управление рисками

Литература

Основная
  1. Базовый учебник

1.Виснадул Б.Д., Гагарина Л.Г., Кокарева Е.В. Технология разработки программного обеспечения. Гриф УМО ВУЗов России М.: Изд-во "Инфра-М" ? 2008. ? 400 стр

Базовое учебное пособие ?

Основная литература по дисциплине 1.Вендров А. М. Проектирование программного обеспечения экономических информационных систем: Учебник - М.: Финансы и статистика, 2002 ?352 стр. 2.Ким Хелдман Профессиональное управление проектами. ? ?Бином? ?Москва?, 2005. ?517 стр. 3.Орлов С.А. Технологии разработки программного обеспечения. Учебник для вузов (3-е издание) СПб.: Издательство "Питер", 2004. ? 528 стр. 4.Фаулер М. UML. Основы.  ? М.: Символ-Плюс, 2006. ? 192 стр. 5.Якобсон А., Буч Г., Рамбо Дж. Унифицированный процесс разработки программного обеспечения.- СПб.: Питер, 2002 ?496 стр. 6.Липаев В. Процессы и стандарты жизненного цикла сложных программных средств. Справочник. М.: ?Синтег?, 2004. ? 284 стр.

Дополнительная литература 1.Брукс Ф.-- Мифический человеко-месяц или как создаются программные системы: Пер. с англ. -- СПб.: Символ-Плюс, 1999 2.Буч Г. -- Объектно-ориентированный анализ и проектирование с примерами приложений на С++. 2-е изд.: Пер. с англ. -- М.: Издательство Бином, СПб.: Невский диалект, 1999 3.Буч Г.,. Рамбо Дж, А. Джекобсон -- Язык UML. Руководство пользователя.: Пер. с англ. -- М.: ДМК, 2000 4.Гома Х.-- UML. Проектирование систем реального времени, распределенных и параллельных приложений.: Пер. с англ. -- М.: ДМК, 2002 5.Калашян А.Н., Калянов Г.Н. -- Структурные модели бизнеса: DFD-технологии. -- М.: Финансы и статистика, 2003 6.Каменнова М., Громов А., Ферапонтов М., Шматалюк А.-- Моделирование бизнеса. Методология ARIS. -- М.: Весть-МетаТехнология, 200 7.Кармайкл Э., Хейвуд Д. -- Быстрая и качественная разработка программного обеспечения.: Пер. с англ. -- М.: Вильямс, 2003 8.Кватрани Т. -- Визуальное моделирование с помощью Rational Rose 2002 и UML..: Пер. с англ. -- М.: Вильямс, 2003 9.Коберн А. -- Быстрая разработка программного обеспечения.: Пер. с англ. -- М.: ЛОРИ, 2002 10.Коберн А.-- Современные методы описания функциональных требований к системам.: Пер. с англ. -- М.: ЛОРИ, 2002 11.Конноли Т., Бегг К.-- Базы данных: проектирование, реализация и сопровождение. Теория и практика. 3-е издание.: Пер. с англ. -- М.: Вильямс, 2003 12.Крачтен Ф.-- Введение в Rational Unified Process.: Пер. с англ. -- М.: Вильямс, 2002 13.Ларман К.-- Применение UML и шаблонов проектирования. 2-е издание.: Пер. с англ. -- М.: Вильямс, 2002 14.Леффингуэлл Д., Уидриг Д.-- Принципы работы с требованиями к программному обеспечению. Унифицированный подход.: Пер. с англ. -- М.: Вильямс, 2002 15.Маклаков С.В. -- Создание информационных систем с AllFusion Modeling Suite. -- М.: Диалог-МИФИ, 2003 16.Палмер С.Р., Фелсинг Дж.М. -- Практическое руководство по функционально-ориентированной разработке ПО.: Пер. с англ. -- М.: Вильямс, 2002 17.Рамбо Дж., Буч Г., Якобсон А.-- UML. Специальный справочник: Пер. с англ. -- СПб: Питер, 2002 18.Розенберг Д., Скотт К.-- Применение объектно-ориентированного моделирования с использованием UML и анализ прецедентов.: Пер. с англ. -- М.: ДМК, 2002