Моделі ЖЦ проекту ІС

Узагальнена модель ЖЦ проекту може бути представлена 3-ма фазами:

1. Розробка стратегії;

2. Створення і впровадження системи;

3. Супровід проекту;

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

Створення ІС і впровадження системи (2 фаза). Інформаційна система може бути побудована в залежності від прийнятої моделі ЖЦ проекту. Головну роль протягом цієї фази відіграє організація-розробник.

Супровід (3 фаза) проекту здійснюється розробником після впровадження системи, коли вона надходить в розпорядження замовника або організації користувача. У процесі супроводу розробник усуває всі помилки, виявлені після впровадження, здійснює адаптацію ІС з урахуванням умов експлуатації, на вимогу замовника доопрацьовує її з метою підвищення якості функціонування.

Існуючі моделі ЖЦ розрізнюються структурою і конкретним змістом фаз створення і впровадження ІС. Всі такі моделі утворять спектр моделей на протилежних кінцях якого знаходяться Каскадна та Спіральна моделі.

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

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

1) Детермінованість моделі;

2) Чітка регламентованість (що спрощує управління проектом, особливо контроль за виконанням).

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

1) Від затвердження ТЗ до впровадження готового продукту минає багато часу. Існує ризик, що вимоги користувачів зміняться і не будуть задоволені.

2) Можливі випадки, коли реальні потреби залишилися незмінними, але були неправильно або недостатньо використані користувачем під час розробки ТЗ.

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

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

Переваги спіральної моделі - відсутність недоліків каскадної моделі, так як можна врахувати вимоги, що змінилися.

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

Якщо проект великий, то зазвичай виділяють в ньому окрему підсистему, яку доцільно розробляти використовуючи спіральну модель. Ця модель використовується у випадках, коли замовник, розробник і користувач - одна особа, продукт для масового споживача.

Існує цілий ряд моделей, які відбивають проміжний стан між каскадною і спіральною моделями, а саме:

1) Метод швидкого прототипу;

2) Метод послідовного нарощування функцій;

3) Еволюційна модель;

4) Модель заснована на повторному використанні компонент;

5) Модель заснована на автоматизованому синтезі програм;

Метод швидкого прототипу (1) - передбачає розробку в стислі терміни діючого макета частини ІС найбільш критичної до змін вимоги користувача, проведення досвідченої експлуатації пакету до переходу до розробки основного зразка. Зазвичай насамперед підлягає прототипуванню інтерфейс користувача до майбутніх змін. Це дозволяє залучити користувача до участі в розробці на ранніх стадіях і уникнути дорогих доробок кінцевих змін.

Основне призначення - полегшити виявлення вимог користувача. Прототип після ТЗ не використовується і в іншому модель ЖЦ, бо співпадає з каскадною.

Приклад такого підходу Британський стандарт SSADM. Він реалізовує модель схожу на каскадну, однак передбачає багатократне коригування документів.

Метод послідовного нарощування функцій (2) - полягає в поетапній розробці і реалізації системи, на кожному етапі збільшується кількість функцій. Ця модель дозволяє зменшити час впровадження. Таким чином користувач раніше починає відчувати перевагу від автоматизації. Таким чином перевага - скорочення термінів окупності.

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

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

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

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

Дана модель є ідеалізацією і в чистому вигляді не використовується.

Модель заснована на автоматизованому синтезі програм (5) - заснований на трансляції спеціально розроблених програм на мові високого рівня в машинні програми. У сучасному розумінні ця концепція заснована на знаннях як про предметну область так і про процес створення програмних засобів. На відміну від інших підходів він вимагає досить високих первинних витрат на побудову моделі знань та особливо на створення інструментальних засобів їх підтримки, що збільшує вартість розробки.

В цей же час автоматизований синтез програм дозволяє різко скоротити всі види витрат на кожний подальший зразок ІС і реалізувати високу якість програмного продукту.

Для вибору моделі ЖЦ проекту необхідно порівняти сильні і слабкі сторони моделей. Вибір залежить від того, хто є замовником ІС. Якщо замовником є приватне підприємство, не державна організація, то вибір диктується тільки логікою здорового глузду. Якщо проект розробляється за державним замовленням, то необхідно дотримуватись ДСТУ, тобто треба застосовувати каскадну модель.

Питання для самоконтролю:

1. Що таке ЖЦ проекту?

2. Від чого залежить кількість етапів проектування?

3. Що таке фази ЖЦ проекту?

4. Скільки існує фаз ЖЦ проекту?

5. Охарактеризуйте фази ЖЦ проекту.

6. Які існують моделі ЖЦ проекту?

7. Які відмінності існуючих моделей ЖЦ проекту?

8. Охарактеризуйте каскадну модель ЖЦ проекту.

9. Які характеристики спіральної моделі ЖЦ проекту?

10. Що таке метод швидкого прототипу?

11. В чому суть методу послідовного нарощування функцій?

12. Охарактеризуйте еволюційну модель ЖЦ проекту.

13. Як використовують модель засновану на повторному використанні компонент?

14. В яких проектах використовують модель засновану на автоматизованому синтезі програм?



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: