2. Зміст
1.Історія та основні поняття
2.Відмінності програмної інженерії від інших галузей
3.Еволюція підходів до управління програмними проектами
4.Моделі процесу розробки ПЗ
5.Вибір моделі процесу
6.Що треба робити для успіху програмного проекту
7.Висновки
3. Історія та основні поняття
Програмна інженерія є застосування певного систематичного
вимірного підходу при розробці, експлуатації та підтримки програмного
забезпечення .
Термін software (програмне забезпечення, ПЗ) ввів в 1958 році
всесвітньо відомий статистик Джон Тьюкі (JohnTukey). Термін
softwareengineering (програмна інженерія) вперше з'явився в назві
конференції НАТО, що відбулася в Німеччині в 1968 році і присвяченій так
званій кризі програмного забезпечення. З 1990-го по 1995 рік велася
робота над міжнародним стандартом, який повинен був дати єдине
уявлення про процеси розробки програмного забезпечення.
4. 1. Програмування
2. Професійне програмування
3. Професійний програміст
4. Програмний продукт
5. Процес розробки ПЗ
Основні визначення
5. Основні галузі :
1.Softwarerequirements - програмні вимоги.
2.Softwaredesign - дизайн (архітектура).
3.Softwareconstruction - конструювання програмного забезпечення.
4.Softwaretesting - тестування.
5.Softwaremaintenance - експлуатація (підтримка) програмног забезпечення.
6.Softwareconfigurationmanagement - конфігураційне управління.
7.Softwareengineeringmanagement - управління в програмної інженерії.
8.Softwareengineeringprocess - процеси програмної інженерії.
9.Softwareengineeringtoolsandmethods - інструменти та методи.
10.Softwarequality - якість програмного забезпечення.
Модель процесу розробки
6. Додаткові галузі знань включають в себе:
1.Computerengineering - розробка комп'ютерів.
2.Computerscience - інформатика.
3.Management - загальний менеджмент.
4.Mathematics - математика.
5.Project management - управління проектами.
6.Qualitymanagement - управління якістю.
7.Systemsengineering - системне проектування.
Модель процесу розробки
7. Відмінності програмної інженерії від
інших галузей
Успішність проектів програмістів пов’язаних з ПЗ:
Програмування - не мистецтво і не наука - це
ремесло. Сьогодні ми так само далекі від індустріальної
розробки програм, як і 50 років тому
10. Вибір моделі процесу
АлістерКоуберн, один з авторів «Маніфесту гнучкої розробки
ПЗ» проаналізував дуже різні програмні проекти, які виконувалися
за різними моделями від абсолютно полегшених і «гнучких» до
важких (СММ-5) за останні 20 років. Він не виявив кореляції між
успіхом або провалом проектів та моделями процесу розробки, які
застосовувалися в проектах. Звідси він зробив висновок про те, що
ефективність розробки ПЗ не залежить від моделі процесу, а також
про те, що:
1. У кожного проекту повинна бути своя модель процесу
розробки.
2. У кожної моделі - свій час.
11.
12. Що треба робити для успіху
програмного проекту
Щоб програмний проект став успішним, необхідно:
1. Чітко ставити цілі.
2. Визначати спосіб досягнення цілей.
3. Контролювати і управляти реалізацією.
4. Аналізувати загрози і протидіяти їм.
5. Створювати команду.
13. Висновки
Не існує єдиного правильного процесу розробки ПЗ.
Ефективний виробничий процес повинен грунтуватися на
ітеративності, інкрементальності, самоврядуванні команди і
адаптивності. Головний принцип: не люди повинні підлаштовуватися
під обрану модель процесу, а модель процесу повинна
підлаштовуватися під конкретну команду, щоб забезпечити її
найвищу продуктивність.