Российской Федерации Федеральное агентство по образованию обнинский государственный технический университет атом­ной энергетики (иатэ) программа дисциплины

Вид материалаПрограмма дисциплины
Подобный материал:
Министерство образования и науки Российской Федерации Федеральное агентство по образованию

ОБНИНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ АТОМ­НОЙ ЭНЕРГЕТИКИ (ИАТЭ)


ПРОГРАММА ДИСЦИПЛИНЫ

ДС.11. МЕТОДЫ ПРОЕКТИРОВАНИЯ ПРОГРАММ

для студентов специальности 010501 «Прикладная математика и информатика» направления 010500 «Прикладная математика и информатика»

Форма обучения: очная

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



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

Всего часов

Семестры

9

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

60

60

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

39

39

Лекции

13

13

Практические занятия и семинары

13

13

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

13

13

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







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

21

21

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







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

зачет

зачет

Обнинск 2008


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

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

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

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

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

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

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

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


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

3.1 Лекции

1. Основные этапы решения задач на ЭВМ; жизненный цикл программы. (2 часа)

Понятия программного средства (ПС), обеспечения, продукта (ПП). Проблемы технологии

разработки сложного ПП. Обеспечение качества ПП: факторы, критерии, метрики,

оценочные элементы, методика оценки.

Предпосылки создания ПП. Требования к ПП. Жизненный цикл (ЖЦ) ПС.

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

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

программного обеспечения (ПО).

Основная литература: [1],[2].


2. Структурное программирование. Основные цели, принципы и методы. (2 часа).

Цели создания ПН. Внешняя спецификация ПП. Построение и описание алгоритмов. Теорема о структурировании.

Структурное программирование. Нисходящее, восходящее проектирование. Внешние спецификации модулей. Внутреннее проектирование модулей (структурное кодирование). Прочность и независимость модулей. Монолитная и пошаговая сборка «снизу вверх», «сверху вниз». Драйверы и заглушки. Основная литература: [1],[2].

3. Модели жизненного цикла. (4 часа)

Стандарт ISO/IEC 12207. Процессы жизненного цикла.

Модели ЖЦ программного обеспечения: каскадная, поэтапная или итерационная с промежуточным контролем, спиральная; тенденция одновременной реализации всех фаз ЖЦ. Особенности технологии быстрой разработки приложений RAD и быстрого итеративного прототяпирования RIPP. Экстремальное программирование (ХР). Средства контроля версий и совместной разработки. Репозитории исходного кода, операции с модулями. Использование CVS. Основная литература: [1],[2].

4. Объектно-ориентированное проектирование. Язык UML. (3 часа)

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

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

полиморфизм, наследование. Наследование в виде встраивания. Статические и виртуальные методы. Раннее и позднее связывание.

Общие принципы объектно-ориентированного анализа и проектирования сложных

систем. Типовая и структурная иерархия. Алгоритмическая и объектно-ориентированная декомпозиция.

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

Основная литература: [2]. Дополнительная литература: [1],[2].

5. Тестирование и отладка. (2 часа)

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

Понятие и этапы отладки. Классификация ошибок. Причины возникновения ошибок. Методы отладки.

Основная литература: [1].[2].

6. Оценки качества ПО. (2 часа)

Стандартизация жизненного цикла программного средства в системе государственных стандартов и стандартов ISO. Документирование на фазах жизненного цикла по требованиям ЕСПД и стандартов ISO. Оценка качества программного продукта и меры по обеспечению качества в соответствии с положениями ГОСТ Р и стандартами ISO. Основная литература: [1],[2].

3.2 Практические занятия

Раздел (ы)

Темы практических занятий

Литература

Число часов

1,2

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

[1], [2]

2

3

Выбор модели жизненного цикла разработки.

[1], [2]

2

4

Объектно-ориентированное проектирование. Использование языка UML при проектировании программных систем.

[2]

5

5,6 Обеспечение качества программ.

[2] 4



Раздел (ы)
3.3. Лабораторный практикум

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

1, 2

Использование среды разработки NetBeans. Проектирование интерфейса пользователя.

Число часов

Создание UML-диаграмм в среде NetBeans.










3

Работа с репозиторием CVS в среде NetBeans.

2

8

Тестирование Java-приложения. Проверка на соответствие техническому заданию.

4










3.4. Курсовая работа

Не предусмотрена.

3.5. Формы текущего контроля



Раздел (ы)

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

Неделя

1,2

Проверка технического задания на соответствие ГОСТ.

4

3,5

Проверка и защита лабораторных работ

8

4

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

12

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

Основы работы в визуальных средствах разработки. [2] 10 ч. Постановка задачи на разработку ПО.[1], [2] 7 ч.

Составление UML-диаграмм. [2] 4 ч.

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

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

4.1.1. Основная литература (имеется в библиотеке ИАТЭ)

1. Мирзеабасов О.А. Методы разработки программного обеспечения: Учебное пособие по курсу «Технология программирования». - Обнинск: ИАТЭ, 2006. - 80 с. (40 экз, выдается студентам также в электронном виде).

2. Иванова Г.С. Технология программирования. Учебник для вузов. - М: Издательство МГТУ им. Н.Э.Баумана, 2002 (40 экз.)


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

1. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на C++, 2-е изд.: Пер. с англ. - М.: Издательство Бином, 1998.

2. Дейтел Х.М., Дейтел П.Дж., Сантри СИ. Технологии программирования на Java 2: Книга 1.
Графика, JavaBeans, интерфейс пользователя (пер. с англ.). - М.: ООО «Бином-Пресс», 2003. -560 с.

4.2. Средства обеспечения освоения дисциплины

Операционная система Linux (OpenSUSE, ALTLinux);

Сервер системы контроля версий CVS; сервер БД Firebird. Средства разработки - Java Development Kit 6, NetBeans 6.1.

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

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

Компьютерный класс сетевых технологий. Класс оснащен 10 компьютерами Pentium IV с установленной операционной системой Linux.

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