6. Еволюція програмних систем
Одна з основних причин того, що в цей час у великі складні системи усе ширше впроваджується програмне забезпечення, полягає в гнучкості програмних систем. Після ухвалення рішення про розробку і виробництво апаратних компонентів системи внесення в них змін стає досить дорогим. З іншого боку, у програмне забезпечення можна вносити зміни протягом усього процесу розробки системи. Ці зміни також можуть бути вкрай дорогими, але все-таки вони значно дешевше змін в апаратному устаткуванні системи.
Історично склалося так, що існує чітка “демаркаційна лінія” між процесом розробки системи і процесом її вдосконалювання, точніше, процесом супроводу системи. Розробка системи розглядається як творчий процес, починаючи з етапу вироблення загальної концепції системи і закінчуючи одержанням працюючого програмного продукту. Супровід системи ‒ це внесення змін у систему, яка вже знаходиться в експлуатації. І хоча вартість супроводу може в кілька раз перевищувати вартість розробки, однаково процес супроводу вважається менш творчим і відповідальним, чим процес первісного створення системи.
У цей час згадана демаркаційна лінія між процесами розробки і супроводу поступово стирається. Тільки деякі знову створені програмні системи можна назвати повністю новими. Тому має сенс розглядати процес супроводу як безперервне продовження процесу розробки. Замість двох окремих процесів раціонально прийняти еволюційний підхід інженерії програмного забезпечення, де програмні продукти протягом свого життєвого циклу безупинно змінюються (еволюціонують) у відповідь на зміни в системних вимогах і потребах користувачів. Схема цього еволюційного процесу програмних систем показана на рис. 1.13.
Рис. 1.13. Еволюція систем
- Технологія проектування програмних систем
- 1.Опис навчальної дисципліни
- 2. Тематика і зміст лекцій
- 3. Практичні заняття по дисципліні "Технологія проектування програмних систем"
- 4. Шкала оцінювання
- 5. Оцінка успішності в балах при повному виконанні умов і графіку навчального процесу
- Лабораторна робота № 1
- 2. Ітераційні моделі розробки пз
- 3. Специфікація програмного забезпечення
- 4. Проектування і реалізація пз
- 6. Еволюція програмних систем
- 7. Автоматизовані засоби розробки пз
- Лабораторна робота № 2
- 2. Користувацькі вимоги
- 3. Системні вимоги
- 4. Документування системних вимог
- 4. Додатки
- 5. Покажчики
- Лабораторна робота № 3
- 1. Прототипування в процесі розробки пз
- 2. Технології швидкого прототипування
- 3. Прототипування користувацьких інтерфейсів
- Лабораторна робота № 4
- 1. Формальні специфікації в процесі розробки пз
- 2. Специфицирование інтерфейсів
- 3. Специфікація поведінки систем
- Лабораторна робота № 5
- 1. Проектування систем
- 2. Керуючі програми
- 3. Системи спостереження і керування
- 4. Системи збору даних