- •Лекція 2 Загальні питання проектування і впровадження кіс.
- •2.1 Що дає впровадження кіс?
- •2.2 Принципи побудови кіс
- •2.3 Етапи проектування кіс:
- •Класичний життєвий цикл
- •Макетування (прототипирование)
- •Стратегії розробки пз
- •Інкрементна стратегія
- •Еволюційна стратегія розробки пз
- •Спіральна модель
- •Компонентно-орієнтована модель
- •Вагові і полегшені процеси
Стратегії розробки пз
Стратегії розробки ПЗ можна підрозділити на три групи:
Лінійна послідовність етапів розробки - одноразовий прохід (водоспадна стратегія)
Інкрементна стратегія, коли спочатку визначаються усі вимоги (призначені для користувача і системні), а потім частина розробки, що залишилася, виконується у вигляді послідовності версій, перша з яких реалізує частину запланованих можливостей, а усі наступні версії реалізують додаткові можливості до тих пір, поки не буде отримана повна система.
Еволюційна стратегія.
При цій стратегії початковий етап не містить повного об'єму вимоги, вони уточнюються в ході розробки нових послідовних версій.
Інкрементна стратегія
Інкрементна модель є класичним прикладом інкрементної стратегії розробки ПЗ, об'єднуючи елементи послідовної водоспадної моделі з ітераційною філософією макетування. Вона є декількома постачаннями (інкрементів) тих, що є послідовністю аналізу, проектування, кодування і тестування.
Розробка першого інкремента дозволяє отримати базовий продукт, що реалізовує базові вимоги, при цьому багато допоміжних вимог залишаються нереалізованими. План наступних інкрементів передбачає послідовну модифікацію базового продукту, що забезпечують додаткові характеристики і функціональність.
За своєю природою інкрементний процес итеративен, але на відміну від макетування інкрементна модель забезпечує у кінці інкрементної ітерації працюючий продукт.
Еволюційна стратегія розробки пз
Еволюційну стратегію розглянемо на прикладах спіральної моделі, компонентно-орієнтованої моделі і ваговитих і полегшених процесах проектування.
Спіральна модель
Спіральна модель (автор Боэм Би, 1988 р.) спирається на кращі властивості класичного життєвого циклу і макетування, до яких додається новий елемент - аналіз ризику, відсутній в цих кроках розробки.
Спіральна модель визначає планування (визначення цілей, варіантів, обмежень), аналіз ризику (аналіз варіантів і розпізнавання/вибір ризику), конструювання (розробка продукту наступного рівня), оцінювання (оцінка замовником поточних результатів розробки).
З кожною ітерацією по спіралі (просуванням від центру до периферії) будуються усе більш повні версії ПЗ. У першому витку спіралі визначаються:
початкові цілі, варіанти і обмеження;
розпізнавання і аналіз ризику;
необхідність використання макетування;
оцінка замовником конструктивної роботи і внесення пропозиції по модифікації;
наступна фаза планування і аналізу риска, що базується на пропозиціях замовника.
У кожному циклі по спіралі результати аналізу ризику формуються у виді «продовжувати, не продовжувати». Якщо ризик занадто великий, проект може бути зупинений. У більшості випадків рух по спіралі триває, з кожним кроком просуваючи розробників до загальнішої моделі системи. У кожному циклі по спіралі потрібно конструювання, яке може бути реалізоване класичним життєвим циклом або макетуванням.
До достоїнств спіральної моделі відноситься:
найбільш реальне (у вигляді еволюції) відображення розробки програмного забезпечення
можливість явно враховувати ризик на кожному витку еволюційної розробки
включення кроку системного підходу в ітераційну структуру розробки
використання моделювання для зменшення ризику і вдосконалення програмного виробу.
Недоліками спіральної моделі є:
підвищені вимоги до замовника
труднощі контролю і управління часом розробки.