Рабочая программа по дисциплине «Технология разработки программного обеспечения» для специальности 230105 (220400) «Программное обеспечение вычислительной техники и автоматизированных систем» icon

Рабочая программа по дисциплине «Технология разработки программного обеспечения» для специальности 230105 (220400) «Программное обеспечение вычислительной техники и автоматизированных систем»


1 чел. помогло.

Смотрите также:
Рабочая программа по дисциплине “Дискретная математика” для специальности 230105 (220400)...
Рабочая программа по дисциплине Архитектура вычислительных систем Для специальности...
Рабочая программа по дисциплине Параллельное программирование (Спецкурс 1) Для специальности...
Рабочая программа по дисциплине «Информатика» для специальности 230105(220400)   «Программное...
Рабочая программа по дисциплине «проектирование систем управления и менеджмента» для...
Рабочая программа по дисциплине: «Программное обеспечение сетей эвм» Для специальности...
Рабочая программа по дисциплине: «Сети ЭВМ и телекоммуникации» Для специальности...
Рабочая программа по дисциплине: «Объектно-ориентированное программирование» Для специальности...
Программа по дисциплине «Основы теории управления» для специальности 230105 «Программное...
Рабочая программа по дисциплине «Метрология...
Рабочая программа рассмотрена и одобрена на заседании кафедры вычислительной техники (протокол №...
Рабочая программа учебной дисциплины од...



скачать


МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ


Томский государственный университет систем управления и радиоэлектроники


УТВЕРЖДАЮ

Проректор по учебной работе

__________ М.Т.Решетников

"____"_______________2007 г.


РАБОЧАЯ ПРОГРАММА

По дисциплине «Технология разработки программного обеспечения»

для специальности 230105 (220400) — «Программное обеспечение

вычислительной техники и автоматизированных систем»


Факультет - систем управления

Профилирующая кафедра - Автоматизированных систем управления

Курс - 4

Семестр – 7,8


Учебный план набора 2001, 2002, 2003 и последующих лет.


Распределение учебного времени:


^ Лекции - 68 часа

Лабораторные занятия - 18 часов

Практические занятия - ….. часов

Курсовой проект – 16 часов

Всего аудиторных занятий - 86 часа


Самостоятельная работа - 68 часа

Общая трудоемкость - 170 часов


Экзамен - 8 семестр

Зачет – 7 семестр

Дифференцированный зачет – 8 семестр


2007


Рабочая программа составлена в соответствии с Государственным образовательным стандартом по направлению подготовки 654600 – Информатика и вычислительная техника, специальность 230105 «Программное обеспечение вычислительной техники и автоматизированных систем».

Рабочая программа обсуждена на заседании кафедры АСУ, протокол №___от «___» ________ 2007 г.


^ Зав. обеспечивающей кафедрой А.М.Кориков


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


^ Разработчик В.Т.Калайда


Декан ФСУ Н. В. Замятин


Зав. профилирующей кафедрой А.М.Кориков



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


Технология разработки программного обеспечения   дисциплина, входящая в цикл «Специальные дисциплины» (СД.07) и рассматривающая вопросы проектирования, разработки и испытаний больших программных систем с точки зрения требований разработчика. Этот курс обобщает знания, полученные студентами, и обеспечивает изучение современнных технологий разработки программного обеспечения.


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


В результате изучения курса студенты должны:

  • знать принципы разработки и методы проектирования программных систем, методы управления проектированием программных систем и организации коллективов разработчиков, государственные стандарты, регламентирующие процесс разработки программных систем и их описания;

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

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

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




  1. ^ Объем дисциплины и виды учебной работы




Вид учебной работы

Всего часов

Семестры







7

8

Общая трудоемкость дисциплины

170

86

84

Аудиторные занятия

86

54

32

Лекции

68

36

32

Практические занятия (ПЗ)










Семинары (С)










Лабораторные работы (ЛР)

18

18




Другие виды аудиторных занятий










Самостоятельная работа

68

32

36

Курсовой проект (работа)

16




16

Расчетно-графические работы










Реферат










Другие виды самостоятельных занятий










Вид итогового контроля (зачет, экзамен)




зачет

экзамен, дифференцированный зачет




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


4. 1. Разделы дисциплины и виды занятий


№ п/п

Раздел дисциплины

Лекции/

самостоятельная

ЛР/

самостоятельная

1

Введение


2/0




2
^

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


2/2




3

Методы управления разработкой.

4/2

3

4

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

6/4

3

5

Методы разработки программного обеспечения.

8/6

4

6

Данные.

2/2




7

Правильность программ.

4/2

4

8

Тестирование.

8/4

4

9

Стандартные методы проектирования.

4/2




10

Организация управления проектированием программного изделия

4/4




11

Организация планирования разработок программного изделия.

4/4




12

Организация разработки программного изделия.

4/2




13

Организация обслуживания разработки программного изделия.

4/2




14

Организация выпуска документации.

6/4




15

Организация испытаний программных изделий.

6/4




Итого

68/42

18/10


4. 2. Содержание разделов дисциплины


Введение.

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


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

Анализ требований, предъявляемых к системе. Жизненный цикл программного обеспечения. Функциональные спецификации. Определение спецификаций. Проектирование. Кодирование. Тестирование: программное, системное, оценочное и сравнительное тестирование. Сбой системы, выброс, ошибка. Испытания. Верификация системы. Правильность и надежность программ. Эксплуатация и сопровождение. Периоды обновления. Методы разработки программного обеспечения, как научная дисциплина.


Методы управления разработкой.

Организация интерфейса между модулями, написанными разными программистами. Выполнение проекта. Бригада главного программиста. Методика оценки затрат. Методика инженерно — технической оценки затрат. Методика экспертных оценок. Метод алгоритмического анализа. Пошаговый анализ. Закон Паркинсона. Затраты на завершения разработки. Оценка длительности разработки на основе распределения Рэлея. Контрольные точки. Средства обработки. Надежность. Концептуальная целостность.


Методы проведения разработки программного обеспечения.

Верификация и испытания. Дамп. Трассировка. Анализ графов программ. «Уровни правильности» программ. Методы программирования. Эффективность программ. Определение спецификаций. Язык определения задач и анализатор определения задач (PSL/PSA). Система структурного проектирования SADT. Система SREM. Структурное проектирование. Методика Джексона. Стратегия объединения различных методов проектирования.


Методы разработки программного обеспечения.

Язык проектирования программ PDL. Операторы выбора. Операторы цикла. Операторы описания данных. Операторы ввода вывода и вызова процедур. Оператор leave. Предложения на естественном языке.

Стратегии проектирования. Нисходящее проектирование и нисходящая разработка. Пошаговое совершенствование. Восходящее проектирование. Иерархия абстрактных (виртуальных) машин. Подыгрывающие программы (заглушки). Три «вершины» стратегии нисходящего проектирования. Метод последовательной модернизации.

Структурное проектирование. Простая программа. Элементарная программа. Управляющие структуры, способы их описания.


Данные.

Обзор структур данных. Скалярные и агрегативные типы данных. Массивы. Структуры. Списки. Очереди. Стеки. Множества. Графы. Деревья.

Абстрактные конструкции. Фиксированные данные абстрактного типа. Размещение указателей. Защита данных от несанкционированного доступа.


Правильность программ.

Математическое доказательство правильности программ (верификация). Аксиомы: правила следствия; аксиома присвоения; аксиома следования; аксиома цикла; аксиома выбора. Правила целочисленной арифметики — коммутативность, ассоциативность, дистрибутивность, вычитания, обработка констант. Доказательство правильности программ.


Тестирование.

Стратегия тестирования. Имена переменных. Константы. Входные данные. Списки параметров. Проверка спецификаций. Разработка заглушек. Данные для тестирования. Формализация тестирования программ. Психология и экономика тестирования программ. Инспекции, сквозные просмотры и обзоры программ. Проектирование теста. Тестирование утем покрытия логики программы. Эквивалентное разбиение. Анализ граничных значений. Применеие функциальных диаграмм. Предположение об ошибке.


Стандартные методы проектирования.

Разбиение задачи на независимые подзадачи. Разбиение задачи на одинаковые по сложности части. Рекурсия. Динамическое программирование. Моделирование. Поиск. Поиск в списках. Прямой поиск. Линейный поиск. Двоичный поиск. Хэш-поиск. Сортировка. Обменная сортировка. Сортировка слиянием. Поиск с возвратом. Алгоритм выбора из конечного числа состояний. Стратегия распределения памяти. Сопрограммы.


Организация управления проектированием программного изделия.

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


Организация планирования разработок программного изделия.

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


Организация разработки программного изделия.

Организация разработки программного изделия в фазе исследований. Организация разработки программного изделия в фазе анализа осуществимости. Организация разработки программного изделия в фазе конструирования (проектирования). Организация разработки программного изделия в фазе программирования. Организация разработки программного изделия в фазе оценки. Окончание проекта. Участие группы разработки в фазовых обзорах.


Организация обслуживания разработки программного изделия.

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


Организация выпуска документации.

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


Организация испытаний программных изделий.

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


  1. ^ Лабораторный практикум




№п/п

№ раздела дисциплины

Наименование лабораторных работ

Объем (час)

1

3, 4

Назначение и содержание соглашения о требованиях

6

2

3, 4, 5

Методы написания спецификаций

4

3

7

Доказательство правильности программ

4

4

8

Технология написания тестов

4




  1. Структура (перечень разделов) курсового проекта


1. Анализ требований к программному продукту

1.1. Соглашение о требованиях.

1.2. Расчет длительности разработки по Рэлею.

1.3. Расчет стоимости разработки.

1.4. Календарный план разработки программного изделия.

2. Определение спецификаций.

2.1. Написание функциональных спецификаций (внешних и внутренних).

2.2. Написание спецификаций для абстрактных типов данных.

3. Проектирование разрабатываемой программы одним из изучаемых методов.

4. Доказательство правильности отдельной части программы.

5. Создание комплекса тестов для программы.


  1. Форма самостоятельной работы






п/п

Наменование работы

Кол-во

часов

Форма контроля

1.

2.


3.

Проработка лекционного материала

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

Выполнение курсового проекта

42

10


16

Экзамен, зачет

Отчет. Допуск к лаб. работам

Опрос на занятиях, проведение защиты




Всего часов самостоятельной работы по дисциплине

68







  1. Учебно-методическое обеспечение дисциплины.


8. 1. Рекомендуемая литература.

а) основная литература:


1. Калайда В. Т. Технология разработки программного обеспечения. Методическое пособие. – Томск: Изд.   во ТУСУР, 2007 — 235 с.

2. Брауде Э. Д. Технология разработки программного обеспечения.   СПб.: Питер, 2004. - 654 с. (22 экз.)

3. Гантер Р. Методы управления проектированием программного обеспечения. – М.: Мир, 1981 – 388 с. (4 экз.)

4. Вендров А. М. Проектирование программного обеспечения экономических информационных систем. – М.: Финансы и статистика, 2002. – 176 с. (34 экз)


б) дополнительная литература:


1. Волховер В. Г., Иванов Л. А., Производственные методы разработки программ. — М.: Финансы и статистика, 1983 – 236 с.

2. Боем Б., Браун Дж., Каспар Х. и др. Характеристики качества программного обеспечения. — М.: Мир, 1981 – 176 с.

3. Г. Буч. Объектно-ориентированный анализ и проектирование с примерами приложений на С++, 2-ое издание/ Пер. с англ. – М.:«Издательство Бином», СПб.: «Невский диалект», 1999. – 560 с.

4. Зелькович М., Шоу А., Гэннон Дж. Принципы разработки программного обеспечения.   М.: Мир, 1982   386 с.

5. Брукс Фредерик. Мифический человеко-месяц или как создаются программные системы: Пер. с англ. – СПб.: Символ, 2000. – 298 с.

7 С. Канер, Дж. Фолк, Енг Кек Нгуен. Тестирование программного обеспечения. – К.: Издательство Диасофт, 2000. – 544 с.


  1. Контроль обучения

    1. зачет и оценка за экзамен


Контроль обучения осуществляется в соответствии с рейтинговой системой. Рейтинговые оценки распределяются в соответствии с таблицей:

Вид занятий

Оценка (балл)

Итог

Семестр 7




Лекции

Контрольная точка №1

Контрольная точка №2




30

30

60

Практикум

Задача 1

Задача 2




30

30

60










120

Семестр 8




Лекции

Контрольная точка №1

Контрольная точка №2




30

30

60

Практикум

Задача 3

Задача 4




30

30

60
















120

Максимальный семестровый рейтинг = 120 баллов.

^ Контрольная точка № 1: контрольная работа по лекционному материалу.

Контрольная точка № 2: контрольная работа по лекционному материалу.

Максимально за контрольную работу – 30 баллов.

^ Зачет по курсу в 7 семестре автоматически выставляется при наличии 80-120 баллов.

Экзаменационная оценка «Отлично» по предмету выставляется автоматически при наличии 100–120 баллов за 8 семестр и защищенного курсового проекта на оценку «Отлично». Оценка «Хорошо» по предмету выставляется автоматически при наличии при наличии 80—99 баллов за 8 семестр и защищечноого курсовоого проекта на оценку не менее чем «Хорошо».

При недостаче баллов решаются дополнительные задачи (каждая задача = 10 баллов).


    1. Оценка за курсовую работу


Максимальное количество баллов – 120.

Рейтингу 60–79 соответствует оценка «удовлетворительно».

Рейтингу 80–99 соответствует оценка «хорошо».

Рейтингу 100–120 соответствует оценка «отлично».

Система рейтинга:

  • Выбор темы курсовой работы (сложность и творческие моменты) – до 20 баллов.

  • Первое контрольное собеседование (анализ требований) – до 15 баллов

  • Второе контрольное собеседование (представление предварительных материалов курсовой работы) – до 15 баллов.

  • Содержание пояснительной записки – до 20 баллов.

  • Оформление пояснительной записки – до 10 баллов.

  • Творческие моменты в доказательстве правильности программы – до 10 баллов.

  • Тестирование программы – до 15 баллов

  • Защита проекта (ответы на вопросы) – до 15 баллов.

Если курсовая работа не выполнена в положенной срок (до экзаменационной сессии), то выставляется оценка на балл меньше, чем по полученному рейтингу и рейтинг обнуляется.

  1. ^ Требования к обязательному минимуму содержания основной
    образовательной программы по дисциплине





СД.07

Технология разработки программного обеспечения:




программные продукты (изделия); жизненный цикл ПО; метрология и качество ПО; критерии качества: сложность, корректность, надежность, трудоемкость; измерения и оценка качества ПО; процесс производства ПО: методы, технология и инструментальные средства; тестирование и отладка; документирование; проектирование программного обеспечения; технологический цикл разработки программных систем; коллективная работа по созданию программ; организация процесса разработки и инструментальные средства поддержки; автоматизация проектирования программных продуктов; принципы построения, структура и технология использования САПР ПО.






Скачать 190,53 Kb.
оставить комментарий
Дата28.09.2011
Размер190,53 Kb.
ТипРабочая программа, Образовательные материалы
Добавить документ в свой блог или на сайт

плохо
  2
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Документы

наверх