Warning: Parameter 1 to wp_default_scripts() expected to be a reference, value given in /home/qalight/qalight.com.ua/lviv/wp-includes/plugin.php on line 601

Warning: Parameter 1 to wp_default_styles() expected to be a reference, value given in /home/qalight/qalight.com.ua/lviv/wp-includes/plugin.php on line 601
Спіральна модель (Spiral model) - QALight

База знань

Спіральна модель (Spiral model)

Спіральна модель ,запропонована Баррі Боемом в 1986 р, стала істотним проривом у розумінні природи розробки ПЗ, хоча, по великому рахунку, є об’єднанням двох моделей: каскадної і  моделі створення прототипів. Спіральна модель Боема сфокусована на проектуванні. Власне розробка ПЗ відбувається лише на останньому витку спіралі за звичайною каскадною моделлю, однак цьому передує кілька ітерацій проектування на основі створення прототипів – при цьому кожна ітерація включає стадію виявлення і аналізу ризиків і найбільш складних завдань. Оскільки спіральна модель в основному охоплює саме проектування, то в первісному вигляді вона не отримала широкого поширення в якості методу управління всім життєвим циклом створення ПЗ. Однак головна її ідея, яка полягає в тому, що процес роботи над проектом може складатися з циклів, які проходять одні й ті ж етапи, послужила вихідним пунктом для подальших досліджень і стала основою більшості сучасних моделей процесу розробки ПЗ.

Результат пошуку зображень за запитом "spiral model"

Особливості:

Відмінною особливістю цієї моделі є спеціальна увага до ризиків, що впливає на організацію життєвого циклу.

Боем формулює десять найбільш поширених (за пріоритетами) ризиків:

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

Велика частина цих ризиків пов’язана з організаційними та процесними аспектами взаємодії фахівців у проектній команді.

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

Кожен виток розбитий на 4 сектори:

  1. оцінка і дозвіл ризиків;
  2. визначення цілей;
  3. розробка та тестування;
  4. планування.

На кожному витку спіралі можуть застосовуватися різні моделі процесу розробки ПЗ. В кінцевому підсумку на виході отримуємо готовий продукт. Розробка ітераціями відображає об’єктивно існуючий спіральний цикл створення системи. Неповне завершення робіт на кожному етапі дозволяє переходити на наступний етап, не чекаючи повного завершення роботи на поточному. При ітеративному способі розробки відсутню роботу можна буде виконати на наступній ітерації. Головне завдання – якомога швидше показати користувачам системи працездатний продукт, тим самим активізуючи процес уточнення і доповнення вимог. Основна проблема спірального циклу- визначення моменту переходу на наступний етап. Для її вирішення необхідно ввести тимчасові обмеження на кожен з етапів життєвого циклу. Перехід здійснюється відповідно до планів, навіть якщо не вся запланована робота закінчена. План складається на основі статистичних даних, отриманих в попередніх проектах, і особистого досвіду розробників.

Переваги спіральної моделі:

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

Недоліки спіральної моделі:

  • порівняльна новизна (відсутня достатня статистика ефективності моделі);
  • підвищені вимоги до замовника;
  • проблеми контролю і управління часом розробки.

Модель спірального процесу розробки є найбільш поширеною в даний час. Найвідомішими її варіантами є RUP (Rational Unified Process) від фірми Rational і MSF (Microsoft Solution Framework). Як мова моделювання використовується мова UML (Unified Modeling Language). Створення системи передбачається проводити ітераційно, рухаючись по спіралі і, проходячи через одні й ті ж стадії, на кожному витку уточнювати характеристики майбутнього продукту. Здавалося б, тепер все добре: і планується тільки те, що можна передбачити, розробляється те, що заплановано, і користувачі починають знайомитися з продуктом заздалегідь, маючи можливість внести необхідні корективи. Однак для цього потрібні дуже великі кошти. дійсно, якщо раніше можна було створювати і розпускати групи фахівців в міру необхідності, то тепер всі вони повинні постійно брати участь в проекті: архітектори, програмісти, тестувальники, інструктори і т. д. Більш того, зусилля різних груп повинні бути синхронізовані, щоб своєчасно відображати проектні рішення і вносити необхідні зміни.

Набагато більше інформації на курсі базовий модуль тестування