Программа дисциплины «Программная инженерия» - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Рабочая программа дисциплины информационная безопасность Направление... 1 306.73kb.
Программа дисциплины «Менеджмент» для направления 231000. 62 «Программная... 1 364.48kb.
Программа дисциплины Проектирование и архитектуры программных систем... 1 289.19kb.
Программа дисциплины Компьютерная графика для направления 231000. 1 162.58kb.
Программа дисциплины Английский язык для направления 231000. 6 1590.35kb.
Рабочая программа дисциплины: б б 11 Разработка и анализ требований... 1 102.43kb.
Рабочая программа дисциплины программная инженерия направление подготовки... 1 277.79kb.
Программа дисциплины Оптимизация и математические методы в принятии... 1 267.73kb.
«Программная инженерия» Квалификация (степень) – Бакалавр 6 2492.61kb.
Программа научно-исследовательской практики Направление магистерской... 1 160.6kb.
Программа вступительных испытаний по дисциплине «архитектура ЭВМ... 1 191.41kb.
Программа вступительных испытаний по дисциплине «архитектура ЭВМ... 1 191.41kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

Программа дисциплины «Программная инженерия» - страница №1/1




Национальный исследовательский университет «Высшая школа экономики»
Программа дисциплины «Программная инженерия» для направления 230700 «Прикладная информатика» подготовки бакалавра





Правительство Российской Федерации
Федеральное государственное автономное образовательное учреждение высшего профессионального образования
"Национальный исследовательский университет
"Высшая школа экономики"

Факультет Прикладной математики и кибернетики

Программа дисциплины Программная инженерия

для направления 230700 «Прикладная информатика» подготовки бакалавра

Автор программы:

Гришкина М.П., к.т.н., mgrishkina@hse.ru

Шимко Н.А., к.ф.-м.н.,nshimko@hse.ru

Одобрена на заседании кафедры Кибернетики «___»____________ 20 г

Зав. кафедрой Афанасьев В.Н.
Рекомендована секцией УМС [Введите название секции УМС] «___»____________ 20 г

Председатель [Введите И.О. Фамилия]


Утверждена УС факультета Прикладной математики и кибернетики «___»_____________20 г.

Ученый секретарь [Введите И.О. Фамилия] ________________________ [подпись]

Москва, 2012

Настоящая программа не может быть использована другими подразделениями университета и другими вузами без разрешения кафедры-разработчика программы.

1Область применения и нормативные ссылки


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

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

Программа разработана в соответствии с:


  • ФГОС для направления 230700 «Прикладная информатика» подготовки бакалавра.

  • Рабочим учебным планом университета по направлению подготовки 230700 «Прикладная информатика», утвержденным в 2012 г.

2Цели освоения дисциплины


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

3Компетенции обучающегося, формируемые в результате освоения дисциплины


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

  • Знать:

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

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

  • информатики.

  • Современные автоматизированные методы и инструментальные средства поддержки длительного жизненного цикла программных продуктов.

  • Парадигмы и технологии программирования.

  • Уметь:

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

  • Программировать алгоритмы, используя средства языков высокого уровня и низкого уровня.

  • Разрабатывать тестовые случаи и сценарии.

  • Иметь навыки (приобрести опыт)

  • В разработке программных приложений.

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

  • В проведении анализа получаемых результатов и оформлении документации на программу.

В результате освоения дисциплины студент осваивает следующие компетенции:



Компетенция

Код по ФГОС/ НИУ

Дескрипторы – основные признаки освоения (показатели достижения результата)

Формы и методы обучения, способствующие формированию и развитию компетенции

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

ОК-5

Использует

Самостоятельная работа, выполнение лабораторных, домашних и контрольных работ

Способен работать с информацией в глобальных компьютерных сетях

ОК-8

Владеет и применяет

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

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

ОК-13

Владеет и применяет

Самостоятельная работа, выполнение домашних и лабораторных работ

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

ОК-14

Демонстрирует

Выполнение домашних и лабораторных работ

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

ОК-15

Владеет и применяет

Самостоятельная работа, выполнение домашних и лабораторных работ

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

ПК-1

Владеет и применяет

Самостоятельная работа, выполнение лабораторных, домашних и контрольных работ

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


ПК-4

Владеет и применяет

Самостоятельная работа, выполнение лабораторных, домашних и контрольных работ

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

ПК-10

Владеет и применяет

Самостоятельная работа, выполнение лабораторных, домашних и контрольных работ

4Место дисциплины в структуре образовательной программы


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

  • Информатика и программирование;

  • Математика;

  • Вычислительные системы и сети;

  • Операционные системы.

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

  • знать основы информатики и ИКТ;

  • знать языки и методы программирования;

  • уметь использовать программные и аппаратные средства информатики.

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

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

  • Проектирование информационных систем

  • Проектный практикум

  • Базы данных

  • Информационная безопасность

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

5Тематический план учебной дисциплины







Название раздела

Всего часов

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

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

Лекции

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

Лабораторные работы

1

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

40

10

10




20

2

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

28

4

4




20

3

Архитектура ПО и способы проектирования ПО

34

6

6

8

14

4

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

132

16

16

10

90




Всего

234

36

36

18

144


6Формы контроля знаний студентов


В качестве текущего контроля проводится три контрольные работы по темам: «Средства программной инженерии, Методология программной инженерии и Основы объектно-ориентированного программирования на языке С++, а также домашняя работа на тему Наследование и абстрактные типы в ООП.

В курсе предусмотрено выполнение и защита курсовой работы на тему Применение технологии объектно-ориентированного проектирования к разработке классов для информационно-математических моделей.

Итоговый контроль – экзамен.


6.1Критерии оценки знаний, навыков



Оценки по всем формам текущего контроля выставляются по 10-ти балльной шкале.

Для формирования практических навыков проводятся лабораторные и практические работы и выполняются домашние задания и курсовая работа. При этом студент должен продемонстрировать не только уровень знаний, но и результаты самостоятельной работы: стремление к выполнению профессиональной деятельности (ОК-5), способность к поиску информации (ОК-8), использование для выполнения заданий компьютерных технологий (ОК-13,14).

Основной целью проведения лабораторных работ является приобретение опыта практической разработки программных приложений (ПК-1,ПК-4 и ПК-10). При выполнении лабораторных работ закрепляются навыки проектирования, программирования и документирования решений прикладных, в том числе математических, задач с помощью ЭВМ.

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

Оценка за лабораторную/курсовую работу учитывает:


  • Насколько точно студент выполнил задание, сформулированное в работе;

  • Степень и полноту усвоенных навыков работы со средствами разработки и отладки программ;

  • Насколько слушатель правильно и аргументировано ответил на все вопросы при обсуждении выполненного задания;

  • Качество оформления документации к программе и/или отчета по решению поставленной задачи.



6.2Порядок формирования оценок по дисциплине

Накопленная оценка рассчитывается как средняя оценка по всем формам отчетности (контрольные, домашние, лабораторные и курсовая работы)

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

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


Раздел

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

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

1

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

Введение в технологии программирования. Понятие большой программы. Свойства. О технологиях разработки больших программ. Понятие о программном обеспечении (ПО). Этапы (процессы) разработки ПО. Жизненный цикл ПО. Модели жизненного цикла ПО. Стандарты.

Инфологическая методология разработки ПО. Декларативные парадигмы программирования.

Понятие о дружественном интерфейсе и способы его разработки.

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



2

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

Требования к качеству ПО и методы его обеспечения.

Способы контроля качества для достижения надежности ПО. Тестирование. Моделирование. Верификация.





3

Архитектура ПО и способы проектирования ПО

Архитектура ПО. Патерны проектирования ПО. Цель разработки структуры программы. Понятие программного модуля. Основные характеристики программного модуля. Методы разработки структуры программы. Спецификация программного модуля. Контроль структуры программы.

Методология разработки программного модуля: нисходящая и восходящая. Структурное программирование. Экстремальное программирование.



4

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

Объектно-ориентированный подход (ООП) к разработке ПО.

Понятие объектно-ориентированной среды. Объекты. Супервайзер. Таймер. Инкапсуляция.

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

Языки программирование, поддерживающие ООП. Понятие гибридных языков.

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

Механизмы концепции ООП, реализованные в С++: наследование, полиморфизм, абстрактные (виртуальные) классы

Порождение и обработка исключений.

Технология перегрузки функций и операций в С++

Понятие о потоках.

8Образовательные технологии


В учебном процессе, помимо чтения лекций, которые составляют 50% аудиторных занятий, широко используются интерактивные формы (обсуждение отдельных разделов дисциплины, защита домашних заданий и лабораторных работ). В сочетании с внеаудиторной самостоятельной работой это способствует формированию и развитию как общекультурных, так и профессиональных компетенций.

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



9Оценочные средства для текущего контроля и аттестации студента

9.1Тематика заданий текущего контроля


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

Темы лабораторных работ:


  1. Обработка текстовой информации (4 часа)

  2. Потоковый обмен данными с внешними носителями информации (6 часов)

  3. Этапы разработки программных продуктов на примере построения базы данных (8 часов)




9.2Вопросы для оценки качества освоения дисциплины

  1. Унифицированный подход к разработки ПО.

  2. Экстремальное программирование.

  3. Критерии качества ПО.

  4. Методы обеспечения качества ПО.

  5. Образцы проектирования. Архитектурные стили.

  6. Архитектура ПО.

  7. Основные виды ресурсов, используемых при проектировании ПО, и управление ими.

  8. Понятие жизненного цикла программного обеспечения (ПО).

  9. Структура организации-исполнителя проекта.

  10. Потребности, функции, требования к ПО.

  11. Парадигмы и языки программирования

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

  13. Концепция типов данных в структурном программировании.

  14. Теория объектно-ориентированного проектирования: понятие объектно-ориентированной среды, супервайзер, таймер, объекты и их идентификация.

  15. Способы общения объектов в объектной среде.

  16. Способы порождения новых объектов в объектной среде. Механизмы С++ соответствующие этим принципам.

  17. С++ - язык объектно-ориентированного программирования (приведите соответствие понятий теории и механизмов С++)

  18. Классы и объекты в С++: описание, компонентные функции, компонентные данные. Инкапсуляция.

  19. Специальные компоненты в классах в С++ (this, конструкторы, деструкторы)

  20. Перегрузка функций и операций в С++. Применение перегрузки в классах. Друзья классов.

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

10.1Основная литература


  1. И. Соммервилл. Инженерия программного обеспечения. Вильямс, 2002.

  2. Э. Дж. Брауде. Технология разработки программного обеспечения. Питер, 2004.

  3. В. В. Липаев. Методы обеспечения качества крупномасштабных программных средств. М., Синтег, 2003.

  4. А. Якобсон, Г. Буч, Дж. Рамбо. Унифицированный процесс разработки программного обеспечения. Питер, 2002.

  5. Подбельский В.В. Язык С++. – М.: «Финансы и статистика», 2003 г.

  6. Архангельский А.Я. Программирование в C++ Builder. - М.: "БИНОМ-Пресс", 2010 г.



10.2Дополнительная литература


  1. У. Ройс. Управление проектами по созданию программного обеспечения. М., Лори, 2002.

  2. М. Фаулер и др. Архитектура корпоративных программных приложений. Вильямс, 2004.

  3. Демидов В.М.,Григорошенко М.М. С и и Си++. Учебное пособие. – М.: «Олита», 2002 г.

  4. Культин Н.Б. C++ Builder в задачах и примерах. - СПб:БХВ-Петербург, 2003г.

10.3Программные средства


Для успешного освоения дисциплины, студент использует следующие программные средства:

  • Операционная система Windows (Windows XP, Windows Vista, Windows 7)

  • Borland C++ 5.0 (или 3.1)


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


Для успешного освоения дисциплины необходимо следующее материально-техническое обеспечение:

  • Дисплейный класс, оборудованный современными персональными компьютерами

  • Интерактивная доска и/или проектор с экраном.