Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л02-3_Загальні принципи розробки ПЗ. Життєвий ц...doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
256 Кб
Скачать
☆

2. Життєвий цикл програмного засобу

Під життєвим циклом ПЗ (software life cycle) розуміють весь період його розробки від виникнення потреби в програмному засобі до повного припинення його використання із-за морального старіння або втрати необхідності розв’язування задач даного типу. Цей процес може бути організований по-різному для різних класів ПЗ і залежно від особливостей колективу розробників.

За тривалістю життя ПЗ діляться на програмні засоби з малою і великою тривалістю життя. До першого класу відносяться наукові і інженерні завдання. До цих програм пред'являються слабкі вимоги по оформленню і випробуванням.

До програм з великим часом життя відносяться ПЗ для регулярної обробки інформації. До них в повному об'ємі пред'являються вимоги, що відносяться до складних систем.

Весь життєвий цикл програмного засобу включає етапи:

  1. Системний аналіз:

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

    • призначення і основні характеристики;

    • оцінка витрат і можливої ефективності КП.

  2. Проектування (розробка).

  3. Експлуатація (робота з програмним засобом замовника).

  4. Супровід, з'ясування питань, що виникають при експлуатації програмного засобу і заміна версій програм.

В даний час можна виділити 5 основних підходів до організації процесу створення і використання ПЗ [3.5].

  • Підхід водопаду. При такому підході розробка ПЗ складається з ланцюжка етапів. На кожному етапі створюються документи, використовувані на подальшому етапі. У початковому документі фіксуються вимоги до ПЗ. В кінці цього ланцюжка створюються програми, що включаються в ПЗ.

  • Дослідницьке програмування. Цей підхід припускає швидку (наскільки це можливо) реалізацію робочих версій програм ПЗ, що виконують лише в першому наближенні необхідні функції. Після експериментального застосування реалізованих програм проводиться їх модифікація з метою зробити їх кориснішими для користувачів. Цей процес повторюється до тих пір, поки ПЗ не буде достатньо прийнятним для користувачів. Такий підхід застосовувався на ранніх етапах розвитку програмування, коли технології програмування не надавали великого значення (використовувалася інтуїтивна технологія). В даний час цей підхід застосовується для розробки таких ПЗ, для яких користувачі не можуть точно сформулювати вимоги (наприклад, для розробки систем штучного інтелекту).

  • Прототипування. Цей підхід моделює початкову фазу дослідницького програмування аж до створення робочих версій програм, призначених для проведення експериментів з метою встановити вимоги до ПЗ. Надалі повинна слідувати розробка ПЗ на встановлені вимоги в рамках якогось іншого підходу (наприклад, водопаду).

  • Формальні перетворення. Цей підхід включає розробку формальних специфікацій ПЗ і перетворення їх в програми шляхом коректних перетворень. На цьому підході базується комп'ютерна технологія (CASE-технологія) розробки ПЗ.

  • Складальне програмування. Цей підхід припускає, що ПЗ конструюється, головним чином, з компонент, які вже існують. Повинне бути деяке сховище (бібліотека) таких компонент, кожна з яких може багато разів використовуватися в різних ПЗ. Такі компоненти називаються повторно використовуваними (reusable). Процес розробки ПЗ при даному підході складається скоріше із збірки програм з компонент, чим з їх програмування .

У нашому курсі лекцій ми, в основному, розглядатимемо підхід водопаду з деякими модифікаціями. По-перше, тому, що в цьому підході доводитися мати справу з більшістю процесів програмної інженерії, а, по-друге, тому, що в рамках цього підходу створюються більшість великих програмних систем. Саме цей підхід розглядається як індустріальний підхід розробки програмного забезпечення. Дослідницьке програмування виходить з погляду на програмування як на мистецтво. Воно застосовується тоді, коли підхід водопаду не застосовний через те, що не вдається точно сформулювати вимоги до ПЗ. У нашому курсі ми цей підхід розглядати не будемо. Прототипування розглядається як допоміжний підхід, використовуваний в рамках інших підходів, в основному, для прояснення вимог до ПЗ. Комп'ютерній технології (включаючи обговорення життєвого циклу ПЗ, створеного за цією технологією) буде присвячена окрема лекція. Складальне програмування ми в нашому курсі розглядати не будемо, хоча про повторно використовувані програмні модулі ми говорити будемо, обговорюючи властивості програмних модулів.

В рамках підходу водопаду розрізняють наступні стадії життєвого циклу ПЗ (див. мал. 3.1): розробку ПЗ, виробництво програмних виробів (ПВ) і експлуатацію ПЗ.