Рабочая программа наименование дисциплины Технологии программирования По направлению подготовки

Вид материалаРабочая программа

Содержание


По профилю подготовки
Информационных систем
Цели и задачи дисциплины
Частные цели
Основной задачей
2. Место дисциплины в структуре ООП
3. Требования к результатам освоения дисциплины
4. Объем дисциплины и виды учебной работы
Аудиторные занятия (всего)
Самостоятельная работа (всего)
Другие виды самостоятельной работы
5. Содержание дисциплины
Принципы создания удобного пользовательского интерфейса
5.2 Разделы дисциплины и междисциплинарные связи с обеспечиваемыми (последующими) дисциплинами
5.3. Разделы дисциплин и виды занятий
Принципы создания удобного пользовательского интерфейса
6. Лабораторный практикум
7. Практические занятия (семинары) (не предусмотрены)
10. Материально-техническое обеспечение дисциплины
Подобный материал:


МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

Р

ОССИЙСКОЙ ФЕДЕРАЦИИ


ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ




Государственное образовательное учреждение высшего профессионального образования

«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПЕЧАТИ»

УТВЕРЖДАЮ

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

______________Т.В. Маркелова



«_____» ___________2011


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


Наименование дисциплины

Технологии программирования


По направлению подготовки 230400 - Информационные системы и технологии


По профилю подготовки

Информационные системы и технологии

(указывается наименование профиля в соответствии с ПрООП)


Факультет Информационных технологий и медиасистем


Кафедра Информационные системы


Квалификация (степень) выпускника бакалавр

Москва — 2011


Разработчики:

Профессор_______ д.ф.-м.н., проф. Белоусов И.Р.__________

(занимаемая должность) (учёная степень и учёное звание) (инициалы, фамилия)


Доцент___________ к.т.н. Шурыгин В.Н. __________

(занимаемая должность) (учёная степень и учёное звание) (инициалы, фамилия)


Рецензенты:

Профессор FH Шмалькальден д.т.н., проф. Байер Д.

(занимаемая должность) (учёная степень и учёное звание) (инициалы, фамилия)


Профессор_______ д.т.н., проф. Попов Д.И.__________

(занимаемая должность) (учёная степень и учёное звание) (инициалы, фамилия)



    Рабочая программа обсуждена на заседании кафедры «___ Информационных систем__»

    (дата) ____________ 2010 г, протокол № .

    Зав. кафедрой __Марков А.А.____/ /

    Одобрена Советом факультета _Цифровых систем и технологий

    (дата) ____________ 2010 г, протокол №

    Председатель__ Иванова А.Е.__________/ /






Индекс по учебному плану

Цикл

Компонент

Базовая часть

вариативная часть

по выбору студента

Б.3.Б6


Гуманитарный и социальный

и экономический цикл










Математический и естественнонаучный цикл










Профессиональный цикл


Х










Форма

обучения

курс

семестр

Трудоемкость дисциплины в часах

Форма

итогового

контроля

Всего часов

Аудиторных часов

Лекции

Семинарские (практически) занятия

Лабораторные занятия

Курсовая

Работа (проект)

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

Очная


3

5

252

85

34




51




167

Экзамен

Очно-заочная































Заочная


































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


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


Частные цели: изучение организации процесса проектирования программного обеспечения (ПО); использования декомпозиции и абстракции при проектировании ПО; методов проектирования структуры ПО; методологии объектно-ориентированного программирования; технологических средств разработки программного обеспечения; инструментальных сред разработки; методов отладки и тестирования программ; документирования и оценки качества программных продуктов; методов проектирования интерфейса с пользователем; обучение практическим навыкам выполнения этапов разработки программных продуктов в средах Xcode или Eclipse.

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


2. Место дисциплины в структуре ООП: Данная учебная дисциплина входит в раздел «Б.3. Профессиональные дисциплины ФГОС по направлению подготовки ВПО «Информационные системы и технологии».

Данная учебная дисциплина взаимосвязана с другими дисциплинами, входящими в модуль Б.2. ФГОС по направлению подготовки ВПО «Информационные системы и технологии», а именно: «Математика», «Дискретная математика» «Информатика», «Физика», «Архитектура информационных систем», «Основы современных алгоритмов», «Объектно-ориентированное программирование», «Проектирование и дизайн медиа приложений», «Проектирование приложений для мобильных устройств».

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

Для направления «Информационные системы и технологии» курс «Технологии программирования» является профессиональной дисциплиной. Курс базируется на самых различных отраслях знаний и научных выводах математики, информатики, инженерных дисциплин. Изучением дисциплины достигается формирование у специалистов представления о неразрывном единстве методов и средств разработки программ.


(указывается цикл, к которому относится дисциплина; формулируя требования к входным знаниям, умениям и компетенциям студента, необходимым для ее изучения; определяются дисциплины, для которых данная дисциплина является предшествующей)


3. Требования к результатам освоения дисциплины:

    Процесс изучения дисциплины направлен на формирование следующих компетенций:

Данная дисциплина способствует формированию следующих компетенций, предусмотренных ФГОС по направлению подготовки «Информационные системы и технологии»:

владение широкой общей подготовкой (базовыми знаниями) для решения практических задач в области информационных систем и технологий (ОК-6);

способность проводить рабочее проектирование (ПК–3);

способность проводить выбор исходных данных для проектирования (ПК–4);

способность оценивать надежность и качество функционирования объекта проектирования (ПК–6);

готовность разрабатывать, согласовывать и выпускать все виды проектной документации (ПК–10).

способность разрабатывать средства реализации информационных технологий (методические, информационные, математические, алгоритмические, технические и программные) (ПК–12);

готовность участвовать в работах по доводке и освоению информационных технологий в ходе внедрения и эксплуатации информационных систем (ПК–15);

способность осуществлять организацию рабочих мест, их техническое оснащение, размещение компьютерного оборудования (ПК–19);

способность к инсталляции, отладки программных и настройки технических средств для ввода информационных систем в опытную эксплуатацию (ПК-29);

готовность проводить сборку информационной системы из готовых компонентов (ПК–30);

способность осуществлять инсталляцию, отладку программных и настройку технических средств для ввода информационных систем в промышленную эксплуатацию (ПК–31).

способность поддерживать работоспособность информационных систем и технологий в заданных функциональных характеристиках и соответствии критериям качества (ПК–32);

готовность обеспечивать безопасность и целостность данных информационных систем и технологий (ПК–33);

готовность адаптировать приложения к изменяющимся условиям функционирования (ПК–34);

способность составления инструкций по эксплуатации информационных систем (ПК–35).


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

знать:

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

уметь:

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

владеть:

Языками процедурного и объектно-ориентированного программирования;
навыками владения одной из технологий программирования;

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


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


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

Всего часов

Семестры

5










Аудиторные занятия (всего)

85

85










В том числе:




-

-

-

-

Лекции

34

34










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















Семинары (С)















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

51

51










Самостоятельная работа (всего)

167

167










В том числе:

-

-

-

-

-

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
















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
















Реферат
















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

167

157




























Вид промежуточной аттестации (зачет, экзамен)

экзамен

Экз










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

зач. ед.

252

252










7

7











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

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

№ п/п

Наименование раздела дисциплины

Содержание раздела

1

Проблемы разработки сложных программных систем

Программы «большие» и «маленькие». Принципы работы со сложными системами.

2

Жизненный цикл и процессы разработки ПО

Понятие жизненного цикла ПО. Стандарты жизненного цикла. Группа стандартов ISO. Группа стандартов IEEE. Группа стандартов CMM, разработанных SEI. Модели жизненного цикла.

3

Унифицированный процесс разработки и экстремальное программирование

«Тяжелые» и «легкие» процессы разработки. Унифицированный процесс Rational. Экстремальное программирование.

4

Анализ предметной области и требования к ПО

Анализ предметной области. Выделение и анализ требований. Варианты использования.

5

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

Качество программного обеспечения. Методы контроля качества. Тестирование. Проверка на моделях. Ошибки в программах.

6

Архитектура программного обеспечения

Анализ области решений. Архитектура программного обеспечения. Разработка и оценка архитектуры на основе сценариев. UML. Виды диаграмм UML. Статические диаграммы. Динамические диаграммы.

7

Образцы проектирования

Образцы человеческой деятельности. Образцы анализа. Архитектурные стили. Каналы и фильтры. Многоуровневая система. Данные–представление–обработка. Образцы проектирования. Подписчик. Идиомы. Шаблонный метод. Образцы организации и образцы процессов. Инспекция программ по Фагану.

8
Принципы создания удобного пользовательского интерфейса

Удобство использования программного обеспечения. Психологические и физиологические факторы. Человеку свойственно ошибаться. Скоростные показатели деятельности человека. Внимание человека. Понятность. Память человека. Разные категории пользователей. Факторы удобства использования и принципы создания удобного ПО. Методы разработки удобного программного обеспечения. Контроль удобства программного обеспечения.

9

Компонентные технологии и разработка распределенного ПО

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

10

Управление разработкой ПО

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



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


5.2 Разделы дисциплины и междисциплинарные связи с обеспечиваемыми (последующими) дисциплинами

№ п/п

Наименование обеспе-чиваемых (последую-щих) дисциплин

№ № разделов данной дисциплины, необходимых для изучения обеспечиваемых (последующих) дисциплин

1

2

3

4

5

6

7

8

9




Информатика

Х

Х

Х

Х

Х

Х

Х

Х

Х




Математика
















Х

Х

Х







Дискретная математика

Х




Х




Х

Х

Х

Х

Х




Физика

Х




Х










Х

Х







Архитектура информационных систем

Х

Х

Х

Х

Х

Х

Х

Х

Х




Основы современных алгоритмов

Х

Х

Х

Х

Х

Х

Х

Х

Х




Объектно-ориентированное программирование

Х

Х

Х

Х

Х

Х

Х

Х

Х




Проектирование и дизайн медиа приложений

Х

Х

Х

Х

Х

Х

Х

Х

Х




Проектирование приложений для мобильных устройств







Х

Х

Х

Х

Х

Х

Х


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

№ п/п

Наименование раздела дисциплины

Лекц.

Практ.

зан.

Лаб.

зан.

Семин

СРС

Все-го

Час.

1.

Проблемы разработки сложных программных систем

2










16

18

2.

Жизненный цикл и процессы разработки ПО

2










16

18

3.

Унифицированный процесс разработки и экстремальное программирование

4




8




16

28

4.

Анализ предметной области и требования к ПО

4




16




16

36

5.

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

4




8




16

28

6.

Архитектура программного обеспечения

4




8




22

34

7.

Образцы проектирования

4




11




22

37

8.
Принципы создания удобного пользовательского интерфейса

4










18

22

9.

Компонентные технологии и разработка распределенного ПО

4










14

18

10.

Управление разработкой ПО

2










11

13




ИТОГО

34




51




167

252


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

№ п/п

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

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

Трудо-емкость

(час.)

1

3

Анализ требований к системе, планирование проекта

8

2

4

Классификация, моделирование предметной области

8

3

4

Проектирование общей архитектуры системы. Многоуровневые и многослойные системы

8

4

5

Модульное тестирование. Изучение оболочки cppUnit и простых шаблонов тестирования

8

5

6

Рефакторинг. Изучение шаблонов рефакторинга

8

6

7

Шаблоны (паттерны) проектирования. Разработка приложений с использованием шаблонов

11







ИТОГО

51


7. Практические занятия (семинары) (не предусмотрены)

8. Примерная тематика курсовых работ (проектов) (не предусмотрена)

9. Учебно-методическое и информационное обеспечение дисциплины:

а) основная литература:
  1. Соммервилл И.. Инженерия программного обеспечения. М.: Вильямс, 2002.
  2. Брауде Э. Дж.. Технология разработки программного обеспечения. СПб.: Питер, 2004.
  3. Прата Стивен. Язык программирования С++. Лекции и упражнения. Вильямс. 2007

б) дополнительная литература:
  1. Герберт Шилдт С++ базовый курс. Вильямс. 2008.
  2. Герберт Шилдт Полный справочник по С++. Вильямс. 2007.
  3. Г. Буч. Объектно-ориентированный анализ и проектирование с примерами приложений на C++. Второе издание. М.: Бином, СПб.: Невский диалект, 2000.
  4. ГОСТ Р-1999. ИТ. Процессы жизненного цикла программных средств.
  5. У. Ройс. Управление проектами по созданию программного обеспечения. М.: Лори, 2002.
  6. А. Якобсон, Г. Буч, Дж. Рамбо. Унифицированный процесс разработки программного обеспечения. СПб.: Питер, 2002.
  7. А. Коберн. Современные методы описания требований к системам. М.: Лори, 2002.
  8. Д. Леффингуэлл, Д. Уидриг. Принципы работы с требованиями к программному
  9. обеспечению. Унифицированный подход. М.: Вильямс, 2002.
  10. В. В. Липаев. Методы обеспечения качества крупномасштабных программных средств. М.: Синтег, 2003.
  11. Э. М. Кларк, О. Грамберг, Д. Пелед. Верификация моделей программ: Model Checking. М.: МЦНМО, 2002.
  12. Б. Боэм, Дж. Браун, Х. Каспар и др. Характеристики качества программного обеспечения. М.: Мир, 1991.
  13. Л. Басс, П. Клементс, Р. Кацман. Архитектура программного обеспечения на практике. СПб.: Питер, 2006.
  14. Г. Буч, Дж. Рамбо, А. Джекобсон. Язык UML. Руководство пользователя. М.: ДМК, 2000.
  15. Дж. Рамбо, А. Якобсон, Г. Буч. UML: Специальный справочник. СПб.: Питер, 2002.
  16. М. Фаулер, К. Скотт. UML в кратком изложении. М.: Мир, 1999.
  17. Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес. Приемы объектно-ориентированного проекирования. Паттерны проектирования. СПб.: Питер-ДМК, 2001.
  18. У. Вудсон, Д. Коновер. Справочник по инженерной психологии для инженеров и художников-конструкторов. М.: Мир, 1968.
  19. Л. Константайн, Л. Локвуд. Разработка программного обеспечения. СПб.: Питер, 2004.
  20. Управление проектами. Сборник статей под ред. Дж. Пинто. СПб.: Питер, 2004.
  21. К. Камерон, Р. Куинн. Диагностика и измерение организационной культуры. СПб.: Питер, 2001.
  22. Ф. Брукс. Мифический человеко-месяц или Как создаются программные системы. СПб.: Символ-Плюс, 2001.
  23. Т. Демарко, Т. Листер. Человеческий фактор: успешные проекты и команды. СПб.: Символ-Плюс, 2005.


в) программное обеспечение и Интернет-ресурсы
  1. Ю. К. Стрелков. Инженерная и профессиональная психология. Доступно по ссылке u/science/public/strelkov/index.php.
  2. В. В. Головач. Дизайн пользовательского интерфейса. Доступна на сайте k1.ru.


г) базы данных, информационно-справочные и поисковые системы не предусмотрены


10. Материально-техническое обеспечение дисциплины:

Возможности доступа в Internet.

Компьютерный класс, оснащенный современными компьютерами (IBM PC или МАС) с лицензионным программным обеспечением.

Комплекс технических средств, позволяющих проецировать изображение из программ подготовки презентаций (экран, медиапроектор, Notebook). Возможности доступа в Internet.


11. Методические рекомендации по организации изучения дисциплины:

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