Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основи програмної інженерії(Мучник) / 1-Навч_прог_Основи_прогр_инженерии.doc
Скачиваний:
62
Добавлен:
08.02.2016
Размер:
166.4 Кб
Скачать

Міністерство освіти і науки України

КИЇВСЬКА ДЕРЖАВНА АКАДЕМІЯ ВОДНОГО ТРАНСПОРТУ

імені гетьмана Петра Конашевича-Сагайдачного

Затверджую

Проректор КДАВТ

_____________________ Зорька О.В.

“ ____ “ ________________ 2010 р.

НАВЧАЛЬНА ПРОГРАМА

з дисципліни: "Основи програмної інженерії"

галузь знань: 0501 "Інформатика та обчислювальна техніка"

напрям підготовки: 6.050103 „Програмна інженерія”

факультет: Економіки транспорту

кафедра: Інформаційних технологій

Програму рекомендовано кафедрою

інформаційних технологій,

протокол № 1 від 28 серпня 2010 р.

Завідувач кафедри ІТ

_______________________Бадаєв Ю.І.

1. ЗАГАЛЬНІ ВІДОМОСТІ

Дисципліна “Основи програмної інженерії” відноситься до професійно-орієнтованих дисциплін підготовки студентів за фахом „Програмна інженерія”. У ній розглядаються сучасні методології та технології розробки програм. Дисціпліна “Основи програмної інженерії” узагальнює результати вивчення дисциплін, пов`язаних з використанням комп`ютерної техніки та створенням нових інформаційних технологій.

2. МЕТА І ЗАВДАННЯ ДИСЦІПЛІНИ

Мета дисципліни:

Мета дисципліни “Основи програмної інженерії” – ознайомити студентів з базовими процесами проектування та розробки програм, підготувати фахівців з розробки інформаційних технологій за допомогою сучасних інструментальних засобів проектування та реалізації програмного забезпечення.

Матеріал дисципліни може бути використоний для вдосконалення комп”ютерної освіти за фахом “Програмна інженерия”, а також подальшої професіональної діяльності випускників у сфері розробки програмних виробів.

Завдання дисципліни:

В результаті вивчення курсу “Основи програмної інженерії” студенти повинні придбати такі знання та уміння:

Знання:

  • Методологій та технологій програмування;

  • Методів формування вимог до програмного забезпечення;

  • Моделей життєвого циклу розробки програмного забезпечення;

  • Прнципів проектування програмного забезпечення;

  • Методів тестування програм;

  • Методів оцінки ефективності програм.

Уміння:

  • Формування вимог до програмного забезпечення;

  • Вибору найбільш адекватної методології та технології програмування;

  • Вибору методів проектування програмного забезпечення;

  • Вибору методів та засобів реалізації програм;

  • Вибору методів тестування програм;

  • Методів оцінки ефективності програм.

ІІІ. ЗМІСТ НАВЧАЛЬНОГО МАТЕРІАЛУ ДИСЦИПЛІНИ

Тема 1. Вступ до програмної інженерії

Поняття програмної інженерії. Місце програмної інженерії серед інших інженерних дисциплін. Системотехніка обчислювальних систем. Моделювання систем. Професійні та етичні вимоги до спеціалістів з програмного забезпечення.

Тема 2. Розвиток програмної інженерії в історичному аспекті.

Поняття парадигми програмування. Методології та технології програмування. Етапи розвитку програмної інженерії: стихійне програмування, структурне програмування. об’єктно – орієнтоване програмування, компонентне програмування.

Тема 3. Інженерія розробки програмних продуктів. Основні визначення і підходи.

Класифікація програмного забезпечення. Системне програмне забезпечення. Інструментарій технологій програмування. Пакети прикладних програм..

Тема 4. Особливості створення програмного продукту.

Принципи роботи з вимогами до програмного забезпечення. Оцінка вартості помилок. Керування вимогами. Послідовність роботи з вимогами. Аналіз проблеми. Перешкоди на шляху виявлення вимог.

Тема 5. Оцінка якості процесів створення програмного забезпечення.

Серії стандартів ІSO 9000 та СММ. Процес сертифікації програм на базі інформації про їхнє використання.

Тема 6. Поняття життєвого циклу розробки програми.

Поняття технології розробки програм. Моделі життєвого циклу та їх етапи (каскадна, спіральна, рекурсивна). Поняття про модель життєвого цикла Rational Objectory Process та UML. Специфікування і планування. Процес розробки. Випуск продукту і механізми зворотного зв'язку.

Тема 7. Структури програм та даних

Вибір архітектури програмного забезпечення.

Структура і формат даних. Статичні, полустатичні та динамічні структури даних.

Модульне програмування. Поняття модуля. Основні характеристики програмного модуля. Модульна структура програмних продуктів. Методи розробки при модульному програмуванні.

Тема 8. Аналіз вимог і визначення специфікацій програмного забезпечення.

Визначення вимог до програмних продуктів. Функціональні вимоги. Експлуатаційні вимоги. Аналіз вимог і визначення специфікацій при структурному підході. Специфікації процесів. Діаграми переходів станів (SDT). Функціональні діаграми. Діаграми потоків даних (DFD). Діаграми суть—св’язок..

Тема 9. Проектування програмного забезпечення.

Проектування програмного забезпечення при структурному підході. Структурна схема розроблювального програмного забезпечення. Функціональна схема. Метод покрокової деталізації при складанні алгоритмів та проектуванні. CASE-технології. Прискорена розробка програмного забезпечення за методологією RAD.

Екстремальне програмування. Головні практики ХР. Переваги простого дизайну. Рефакторінг і принцип YAGNI. Нарощування архітектури. UML та ХР. Суть проектування. Програмуванне та тестування при екстремальному програмуванні.