загрузка...
загрузка...
На головну

Спіральна модель розробки ПЗ

  1. I. Завдання семіотики і передумови, необхідні для її розробки
  2. А (додаткова). Історична біогеографія. Вікаріантная модель і концепція «відтиснутих реліктів». Фітоспредінг.
  3. Адаптивна поліноміальна модель першого порядку
  4. Акустична модель фрикційного контакту
  5. Алгоритм розробки стратегії
  6. Альтернативна модель: умовне єдність
  7. американська модель

Принципи. На практиці, при вирішенні досить великої кількості завдань, розробка ПО має циклічний характер, коли після виконання деяких стадій доводиться повертатися на попередні. Це може відбуватися за такими основними причинами:

O через помилки розробників, Допущених на ранніх стадіях і виявлених на пізніх стадіях (це помилки аналізу, проектування, кодування, які виявляються, як правило, на стадії тестування);

O через зміну вимог в процесі розробки - «помилки» замовників (це або неготовність замовників сформулювати вимоги, або зміни вимог, викликані змінами ситуації в процесі розробки (зміни ринку, нові технології і т.п.)).

Спіральна модель була запропонована як альтернатива каскадної моделі для подолання перерахованих вище проблем і враховує повторюваний характер розробки програмного забезпечення.

Основними прінціпаміспіральной моделі є:

· Розробка варіантів продукту, що відповідають різним варіантам вимог з можливістю повернутися до більш ранніх варіантів;

· створення прототипів ПО як засобу спілкування з замовником для уточнення і виявлення вимог;

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

· Планування наступних варіантів з оцінкою альтернатив і аналізом ризиків, пов'язаних з переходом до наступного варіанта;

· Перехід до розробки наступного варіанта до завершення попереднього в разі, коли ризик завершення чергового варіанту (прототипу) стає невиправдано високий;

· Використання каскадної моделі як схеми розробки чергового варіанту;

· Активне залучення замовника до роботи над проектом (замовник бере участь в оцінці чергового прототипу ПЗ, в уточненні вимог при переході до наступного, в оцінці запропонованих альтернатив чергового варіанта й оцінки ризиків).

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

 
 


· Визначення цілей, альтернативних варіантів і обмежень;

· Оцінка альтернативних варіантів, ідентифікація і дозвіл ризиків;

· Розробка продукту наступного рівня;

· Планування наступної фази.

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

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

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

Наступний цикл - реалізація проекту - Також починається з планування. Варіанти реалізації можуть відрізнятися через застосовуваних технологій реалізації і залучених ресурсів. Оцінка альтернативних варіантів і пов'язаних з ними ризиків на цьому циклі визначається ступенем «опрацьованості» технологій і «якістю» наявних ресурсів. Фаза розробки виконується по каскадної моделі, результатом є діючий варіант (прототип) продукту.

Таким чином, особливостями спіральної моделі є:

u до початку розробки ПО проходить кілька повних циклів аналізу вимог і проектування;

u кількість циклів моделі (як в частині аналізу і проектування, так і в частині реалізації) не обмежена і визначається складністю і обсягом завдання;

u в моделі передбачаються повернення на залишені варіанти при зміні вартості ризиків.

Переваги і недоліки. Спіральна модель (по відношенню до каскадної) має наступні очевидні переваги:

§ більш ретельне проектування (Кілька початкових ітерацій) з оцінкою результатів проектування, що дозволяє виявити помилки проектування на більш ранніх стадіях і зменшити як вартість проекту, так і час його розробки;

§ поетапне уточнення вимог в процесі виконання ітерацій, що дозволяє більш точно задовольнити вимогам замовника;

§ участь замовника у виконанні проекту з використанням прототипів програми. Замовник бачить, що і як створюється, не висуває необгрунтованих вимог, оцінює реальні обсяги фінансування;

§ планування і управління ризиками при переході на наступні ітерації дозволяє розумно планувати використання ресурсів і обґрунтовувати фінансування робіт;

§ можливість розробки складної програмної системи «по частинах», виділяючи на перших етапах найбільш значимі вимоги.

Основні недоліки спіральної моделі пов'язані з її складністю:

§ складність аналізу і оцінки ризиків при виборі варіантів;

§ складність підтримки версій продукту (зберігання версій, повернення до попередніх версій, комбінація версій);

§ складність оцінки точки переходу на наступний цикл;

§ нескінченність моделі - На кожному витку замовник може висувати нові вимоги, які призводять до необхідності наступного циклу розробки.

Застосовність. Циклічний характер розробки ПО відображений в спіральної моделі ЖЦ, запропонованої Б. Боема в 1988 році [24].

Спіральну модель доцільно застосовувати при наступних умовах:

u коли користувачі не впевнені в своїх потребах або коли вимоги занадто складні і можуть змінюватися в процесі виконання проекту і необхідно прототипирование для аналізу і оцінки вимог;

u коли досягнення успіху не гарантовано і необхідна оцінка ризиків продовження проекту;

u коли проект є складним, дорогим і обгрунтування його фінансування можливо тільки в процесі його виконання;

u коли мова йде про застосування нових технологій, що пов'язано з ризиком їх освоєння і досягнення очікуваного результату;

u при виконанні дуже великих проектів, які в силу обмеженості ресурсів можна робити тільки по частинах.




Л. С. Зеленко | Структурний підхід до розробки програмних систем | Об'єктний підхід до розробки програмних систем | інженерні процеси | Технологія швидкої розробки додатків RAD | ТЕХНОЛОГІЇ ПРОГРАМУВАННЯ І ПРОГРАМНА ІНЖЕНЕРІЯ |

загрузка...
© um.co.ua - учбові матеріали та реферати