Учебная программа Дисциплины б7 «Методы программирования» по спе

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

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«Нижегородский государственный университет им. Н.И. Лобачевского»

Радиофизический факультет

Центр «Безопасность информационных систем и средств коммуникаций»

УТВЕРЖДАЮ

Декан радиофизического факультета

____________________Якимов А.В.

«18» мая 2011 г.

Учебная программа

Дисциплины С3.Б7 «Методы программирования»

по специальности 090302 «Информационная безопасность телекоммуникационных систем»

Нижний Новгород

2011 г.

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

Цель курса – познакомить студентов с основными подходами к проектированию сложных программных систем. При изучении дисциплины основное внимание уделяется объектно-ориентированному подходу при создании компьютерного программного обеспечения. Излагаются основные особенности, преимущества использования, а также базовые принципы, которым должны удовлетворять структуры программ при использовании данного подхода. Для привития навыков объектно-ориентированной декомпозиции в рамках лабораторных занятий студенты самостоятельно решают практические задания, в которых требуется выделить составные части программ и определить связи между ними.

2. Место дисциплины в структуре программы специалиста

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

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

Изучение дисциплины «Методы программирования» обеспечивает овладение следующими общекультурными компетенциями:

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

способностью самостоятельно применять методы и средства познания, обучения и самоконтроля для приобретения новых знаний и умений, в том числе в новых областях, непосредственно не связанных со сферой деятельности, развития социальных и профессиональных компетенций, изменения вида своей профессиональной деятельности (ОК-10).

Изучение дисциплины «Методы программирования» обеспечивает овладение следующими профессиональными компетенциями:

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

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

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

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

способностью применять современные методы исследования с использованием компьютерной техники (ПК-12);

способностью проводить математическое моделирование процессов и объектов на базе стандартных пакетов автоматизированного проектирования и исследований (ПК-13);

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

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

знать:

существующие принципы проектирования сложных программных систем;

принципы объектно-ориентированного подхода к проектированию компьютерного программного обеспечения;

семантику и нотацию элементов языка моделирования UML;

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

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

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

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

Всего часов

Семестры

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

108

4

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

51

51

Лекции

34

34

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

Семинары (С)

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

17

17

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

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

57

57

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

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

Реферат

Домашняя работа

57

57

Вид итогового контроля

зачет

зачет

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

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

№ п/п

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

Лекции

ПЗ (или С)

ЛР

1.

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

4

2.

Объектно-ориентированный подход к проектированию сложных систем

6

3.

Универсальный язык визуального моделирования

16

17

4.

Критерии определения качества декомпозиции

8

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

Раздел 1. Основные модели процессов разработки программных систем

Вопросы важности техники, автоматизации процессов человеческой деятельности и программного обеспечения. Потребность в контроле процесса разработки программного обеспечения (ПО). Характерные особенности разработки сложных программных систем. Стандарты, описывающие жизненный цикл программных систем: ISO/IEC 12207 и ГОСТ Р ИСО/МЭК 12207-99. Основные модели процессов разработки программных систем: модель водопада, итеративная разработка, Rational Unified Process (RUP), экстремальное программирование.

Раздел 2. Объектно-ориентированный подход к проектированию сложных систем

Структурный и объектно-ориентированный подходы к проектированию сложных программных систем. Преимущества объектно-ориентированного подхода. Признаки сложных систем. Основные принципы объектно-ориентированного проектирования. Понятие объекта и его свойства. Классы как абстракция объектов реального мира. Отношения между классами. Подходы к классификации при использовании объектно-ориентированного проектирования.

Раздел 3. Универсальный язык визуального моделирования

Основные принципы моделирования сложных программных систем. Общая схема взаимосвязей моделей и представлений сложных систем. История развития языка UML (Unified Modeling Language). Диаграммы UML: диаграмма вариантов использования (use case diagram), диаграмма классов (class diagram), диаграмма кооперации (collaboration diagram), диаграмма последовательности (sequence diagram), диаграмма состояний (state diagram), диаграмма деятельности (activity diagram), диаграмма компонентов (component diagram), диаграмма развертывания (deployment diagram), диаграмма пакетов (package diagram). Шаблоны проектирования.

Раздел 4. Критерии определения качества декомпозиции

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

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

№ п/п

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

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

1.

3

Проектирование автоматизации работы пункта видеопроката

2.

3

Проектирование автоматизации работы библиотеки

3.

3

Проектирование автоматизации работы магазина

4.

3

Проектирование автоматизации работы районной поликлиники

5.

3

Проектирование функционирования антивирусного программного средства

6.

3

Проектирование автоматизации работы станции технического обслуживания автомобилей

7.

3

Проектирование функционирования файловой системы

8.

3

Проектирование функционирования графического редактора

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

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

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

Буч Г. Объектно-ориентированный анализ и проектирование. – М.: Вильямс, 2008.

Леоненков А.В. Самоучитель языка UML. – СПб.: БХВ-Петербург, 2004.

Розенберг Д., Скотт К. Применение объектного моделирования с использованием UML и анализ прецедентов. – М.: ДМК Пресс, 2002.

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

Буч Г., Рамбо Дж., Якобсон И. Язык UML. Руководство пользователя. – М.: ДМК Пресс, 2006.

Рамбо Дж., Блаха М. UML 2.0. Объектно-ориентированное моделирование и разработка. – СПб.: Питер, 2007.

Амблер С. Гибкие технологии. Экстремальное программирование. – СПб.: Питер, 2005.

Арлоу Д., Нейштадт И. UML 2 и унифицированный процесс. Практический объектно-ориентированный анализ и проектирование. – СПб.: Символ-Плюс, 2007.

8. Вопросы для контроля

Стадии процесса разработки ПО.

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

Модель водопада.

Итеративные модели разработки. RUP.

Сложные программные системы. Пять признаков сложных систем.

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

Объектно-ориентированный подход к проектированию. Основные принципы и преимущества.

Принципы объектно-ориентированного проектирования. Абстрагирование.

Принципы объектно-ориентированного проектирования. Инкапсуляция.

Принципы объектно-ориентированного проектирования. Модульность.

Принципы объектно-ориентированного проектирования. Иерархичность.

Принципы объектно-ориентированного проектирования. Наследование и полиморфизм.

Объекты. Состояние, поведение, идентичность. Отношения между объектами.

Классы. Отношения между классами.

Классификация. Подходы к классификации при объектно-ориентированном проектировании.

Критерии определения качества абстракций.

Понятие модели системы. Задачи модели. Основные принципы моделирования сложных систем. Схема взаимосвязей моделей сложных программных систем.

Язык UML. Особенности языка. Виды диаграмм языка.

Диаграмма вариантов использования (use case diagram).

Диаграмма классов (class diagram).

Диаграмма коопераций (collaboration diagram).

Диаграмма последовательностей (sequence diagram).

Диаграмма состояний (state diagram).

Диаграмма деятельности (activity diagram).

Диаграмма компонентов (component diagram).

Диаграмма развертывания (deployment diagram).

Диаграмма пакетов (package diagram).

Шаблоны проектирования.

9. Критерии оценок

Зачтено

Успешное выполнение заданий лабораторного практикума по курсу. Знание основных положений и умение пользоваться методами, изложенными в рамках курса

Не зачтено

В противном случае

10. Примерная тематика курсовых работ и критерии их оценки

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

Программа составлена в соответствии с Федеральным государственным образовательным стандартом по специальности 090302 «Информационная безопасность телекоммуникационных систем».

Автор программы ___________ Корюкалов А.В.

Программа рассмотрена на заседании Центра БИСК 25 марта 2011 г. протокол № 6–2010/2011



Страницы: 1 | 2 | Весь текст