Спіральна модель — генератор моделі процесу керування ризиками для проєктів програмного забезпечення. Заснована на унікальних моделях ризиків даного проєкту, спіральна модель скеровує команду на прийняття елементів однієї чи кількох моделей процесів, як-от інкрементного, водоспадного чи [en].
Історія
Дану модель було вперше описано [en] у його статті 1986 року «Спіральна модель розробки та поліпшення програмного забезпечення». 1988 року Бом опублікував схожу статтю для більшої аудиторії. Ці статті вводять діаграму, яку було відтворено у численних майбутніх публікаціях про спіральну модель.
Ці ранні статті використовували термін «модель процесів» для позначення спіральної моделі поряд з інкрементним, водоспадним, прототипним та іншими підходами. Проте, спіральним моделям притаманна суміш керування ризиками вже наявних особливостей інших моделей процесів:
Керована ризиками підмножина кроків спіральної моделі дозволяє їй містити будь-яку відповідну суміш орієнтованих на специфікацію, прототип, симуляцію, автоматичну трансформацію чи будь-що інше підходів до розробки програмного забезпечення. Оригінальний текст (англ.) Risk-driven subsetting of the spiral model steps allows the model to accommodate any appropriate mixture of a specification-oriented, prototype-oriented, simulation-oriented, automatic transformation-oriented, or other approach to software development. | ||
— [en], |
У пізніших публікаціях Бом описує спіральну модель як «генератор моделі процесів», де вибори, засновані на ризиках проєкту, породжують відповідну модель процесів для проєкту. Таким чином, інкрементна, водоспадна, прототипна та інші моделі процесів є особливими випадками спіральної моделі, що охоплює моделі ризиків даних проєктів.
Бом також визначив кількість хибних уявлень, що випливає з надмірних спрощень на початковій діаграмі спіральної моделі. Найнебезпечнішими хибними уявленнями він назвав такі:
- те, що спіраль є простою послідовністю водоспадних інкрементів;
- те, що всі діяльності проєкту слідують єдиній спіральній послідовності;
- те, що кожна діяльність на діаграмі повинна бути виконана, і в зазначеній послідовності.
Хоч ці хибні уявлення можуть відповідати моделям ризиків окремих проєктів, вони не будуть відповідними для більшості проєктів.
У доповіді Національної ради з науково-дослідної роботи дану модель було розширено шляхом включення ризиків, пов'язаних із людським фактором.
Для кращого розрізнення їх від «небезпечних спіральних двійників» Бом навів шість характеристик, спільних для всіх автентичних застосувань спіральної моделі[].
Шість інваріантів
Аутентичні застосування спіральної моделі керуються циклами, що завжди відображають шість характеристик. Бом проілюстрував кожну з них прикладом «небезпечного спірального двійника», що порушує інваріантність.
Одночасне визначення артефактів
Послідовне визначення ключових артефактів проєкту часто знижує можливість розробки системи, що відповідає «виграшним умовам» зацікавлених сторін (завданням та обмеженням).
Даний інваріант виключає процеси «небезпечного спірального двійника», що використовує послідовність інкрементних водоспадних проходів у налаштуваннях, де основні припущення водоспадної моделі неприпустимі. Бом перелічив наступні з них:
- Вимоги є відомими завчасно до реалізації.
- Вимоги не мають жодних невирішених, ризикованих наслідків, як-от ризики вартості, графіку, продуктивності, гарантії, безпеки, користувацьких інтерфейсів, організаційних впливів та ін.
- Природа вимог не змінюватиметься надто сильно протягом розробки чи еволюції.
- Вимоги є сумісними з усіма ключовими очікуваннями зацікавлених сторін від системи, включно з користувачами, клієнтом, розробниками, підтримкою та інвесторами.
- Правильна архітектура для реалізації вимог добре розуміється.
- Достатньо календарного часу для послідовного виконання.
У ситуаціях, коли ці припущення є застосовними, наявний ризик проєкту не визначити вимоги та не виконувати послідовно. Таким чином, водоспадна модель стає випадком спіральної моделі з управлінням ризиками.
Виконання чотирьох основних дій на кожному циклі
Даний інваріант визначає чотири основні дії, що повинні відбуватися на кожному циклі спіральної моделі:
- Розглянути умови виграшу всіх критичних до успіху зацікавлених сторін.
- Визначити й оцінити альтернативні підходи до задоволення умов виграшу.
- Визначити та вирішити ризики, що стають на заваді обраних підходів.
- Отримати схвалення всіх критичних до успіху зацікавлених сторін, а також зобов'язання щодо переходу на наступний цикл.
Цикли проєкту, що випускають або скорочують будь-яку з цих дії, ризикують витрачати зусилля на підходи, неприйнятні для ключових зацікавлених сторін, або ж надто ризиковані.
Деякі процеси «небезпечних спіральних двійників» порушують даний інваріант, усуваючи ключових зацікавлених сторін від деяких послідовних фаз або циклів. Наприклад, підтримка й адміністратори системи можуть бути не залучені до визначення та розробки системи. Як наслідок, система може не задовольняти виграшних умов.
Ризик визначає рівень зусиль
Для будь-якої дії над проєктом (як-от аналізу вимог, проєктування, прототипування чи тестування), команда проєкту повинна вирішити, скількох зусиль буде достатньо. В автентичних циклах спірального процесу ці рішення приймаються задля мінімізації загального ризику.
Наприклад, виділення додаткового часу на тестування програмного продукту часто знижує ризик відкликання з ринку поганого продукту. Проте, додатковий час тестування може збільшити ризик того, що конкурент раніше вийде на ринок. З точки зору спіральної моделі тестування повинно відбуватися до мінімізації сумарного ризику, і не далі[].
«Небезпечні спіральні двійники», що порушують даний інваріант, містять еволюційні процеси, які ігнорують ризик заради масштабованості, та інкрементні процеси, які забагато вкладають у технічну архітектуру того, що повинно бути перепроєктовано чи замінено для забезпечення майбутніх інкрементів продукту.
Ризик визначає ступінь деталізації
Для будь-якого артефакту проєкту (як-от специфікації вимог, проєктної документації чи плану тестування), команда проєкту повинна визначити достатній рівень його деталізації. В автентичних циклах спірального процесу таке рішення мінімізує загальний ризик.
Розглядаючи специфікацію вимог як приклад, проєкт повинен точно визначати такі функції, в яких ризик зменшено через точну специфікацію (наприклад, інтерфейси між апаратним і програмним забезпеченням чи між підрядниками та субпідрядниками). І навпаки, проєкт не має точно визначати ті функції, які лише збільшують ризик (як-от графічні макети екрану чи поведінка компонентів «з полиці»).
Використання опорних точок
Початковий опис спіральної моделі Бома не містив жодних віх проєкту. В подальших уточненнях він представив три опорні точки, які слугують індикаторами прогресу та точками зобов'язання. Дані опорні точки можуть характеризуватися такими ключовими питаннями.
- Завдання життєвого циклу. Чи існує достатнє визначення технічного й управлінського підходу для задоволення умов виграшу кожного? Якщо зацікавлені особи погоджуються з відповіддю «Так», то проєкт пройшов віху LCO. Інакше проєкт може бути покинуто чи зацікавлені особи можуть спробувати на іншому циклі отримати «Так».
- Архітектура життєвого циклу. Чи існує достатнє визначення найкращого підходу для задоволення умов виграшу кожного, і чи всі значні ризики усунуто чи зменшено? Якщо зацікавлені особи погоджуються з відповіддю «Так», то проєкт пройшов віху LCA. Інакше проєкт може бути покинуто чи зацікавлені особи можуть спробувати на іншому циклі отримати «Так».
- Початкові операційні можливості. Чи існує достатня підготовка програмного забезпечення, сайту, користувачів, операторів і підтримки для задоволення умов виграшу кожного при запуску системи? Якщо зацікавлені особи погоджуються з відповіддю «Так», то проєкт пройшов віху IOC та запущений. Інакше проєкт може бути покинуто чи зацікавлені особи можуть спробувати на іншому циклі отримати «Так».
«Небезпечні спіральні двійники», що порушують даний інваріант, містять еволюційні й інкрементні процеси, що виділяють значні ресурси не реалізацію рішення з погано визначеною архітектурою[].
Три опорні точки легко вписуються в Rational Unified Process (RUP) з LCO-маркуванням границі між фазами RUP Початок і Розробка, LCA-маркуванням — між Розробкою та Конструюванням, та IOC-маркуванням — між Конструюванням та Переходом.
Зосередження на системі та її життєвому циклі
Даний інваріант висвітлює важливість усієї системи та довгострокові проблеми, що охоплюють увесь її життєвий цикл. Він виключає «небезпечних спіральних двійників», які надто зосереджуються на початковій розробці програмного коду. Ці процеси можуть призвести від опублікованих підходів до об'єктно-орієнтованого чи структурного аналізу та проєктування програмного забезпечення, порівняно як без урахування інших аспектів технологічних потреб проєкту.
Примітки
- (9 лютого 2000). Гансен, Вілфред Дж. (ред.). Spiral Development: Experience, Principles and Refinements [Спіральна розробка: досвід, принципи та уточнення] (PDF) (спеціальна доповідь). Spiral Development Workshop (англійською) . Піттсбург: . с. 36. (PDF) оригіналу за 13 липня 2017. Процитовано 17 березня 2017.
- (серпень 1986). A spiral model of software development and enhancement [Спіральна модель розробки та поліпшення програмного забезпечення]. ACM SIGSOFT (PDF) (англійською) . Т. 11, № 4. Нью-Йорк: Association for Computing Machinery. с. 14—24. doi:10.1145/12944.12948.
{{}}
:|format=
вимагає|url=
()Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url () - (травень 1988). A Spiral Model of Software Development and Enhancement [Спіральна модель розробки та поліпшення програмного забезпечення] (PDF) (стаття) (англійською) . Т. 21, № 5. Інститут інженерів з електротехніки та електроніки. с. 61—72. (PDF) оригіналу за 14 лютого 2017. Процитовано 17 березня 2017.
- П'ю, Річард В.; Мавор, Анна С. [Людино-системна інтеграція у процес розробки систем: Новий погляд] (доповідь) (англійською) . Вашингтон: [en]. с. 396. doi:10.17226/11893. ISBN . Архів оригіналу (PDF) за 18 березня 2017. Процитовано 17 березня 2017.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Spiralna model generator modeli procesu keruvannya rizikami dlya proyektiv programnogo zabezpechennya Zasnovana na unikalnih modelyah rizikiv danogo proyektu spiralna model skerovuye komandu na prijnyattya elementiv odniyeyi chi kilkoh modelej procesiv yak ot inkrementnogo vodospadnogo chi en Spiralna model Bom 2000 Kilkist hibnih uyavlen pohodit iz nadmirnih sproshen na cij shiroko poshirenij diagrami na cij diagrami nayavni deyaki pomilki IstoriyaDanu model bulo vpershe opisano en u jogo statti 1986 roku Spiralna model rozrobki ta polipshennya programnogo zabezpechennya 1988 roku Bom opublikuvav shozhu stattyu dlya bilshoyi auditoriyi Ci statti vvodyat diagramu yaku bulo vidtvoreno u chislennih majbutnih publikaciyah pro spiralnu model Ci ranni statti vikoristovuvali termin model procesiv dlya poznachennya spiralnoyi modeli poryad z inkrementnim vodospadnim prototipnim ta inshimi pidhodami Prote spiralnim modelyam pritamanna sumish keruvannya rizikami vzhe nayavnih osoblivostej inshih modelej procesiv Kerovana rizikami pidmnozhina krokiv spiralnoyi modeli dozvolyaye yij mistiti bud yaku vidpovidnu sumish oriyentovanih na specifikaciyu prototip simulyaciyu avtomatichnu transformaciyu chi bud sho inshe pidhodiv do rozrobki programnogo zabezpechennya Originalnij tekst angl Risk driven subsetting of the spiral model steps allows the model to accommodate any appropriate mixture of a specification oriented prototype oriented simulation oriented automatic transformation oriented or other approach to software development en U piznishih publikaciyah Bom opisuye spiralnu model yak generator modeli procesiv de vibori zasnovani na rizikah proyektu porodzhuyut vidpovidnu model procesiv dlya proyektu Takim chinom inkrementna vodospadna prototipna ta inshi modeli procesiv ye osoblivimi vipadkami spiralnoyi modeli sho ohoplyuye modeli rizikiv danih proyektiv Bom takozh viznachiv kilkist hibnih uyavlen sho viplivaye z nadmirnih sproshen na pochatkovij diagrami spiralnoyi modeli Najnebezpechnishimi hibnimi uyavlennyami vin nazvav taki te sho spiral ye prostoyu poslidovnistyu vodospadnih inkrementiv te sho vsi diyalnosti proyektu sliduyut yedinij spiralnij poslidovnosti te sho kozhna diyalnist na diagrami povinna buti vikonana i v zaznachenij poslidovnosti Hoch ci hibni uyavlennya mozhut vidpovidati modelyam rizikiv okremih proyektiv voni ne budut vidpovidnimi dlya bilshosti proyektiv U dopovidi Nacionalnoyi radi z naukovo doslidnoyi roboti danu model bulo rozshireno shlyahom vklyuchennya rizikiv pov yazanih iz lyudskim faktorom Dlya krashogo rozriznennya yih vid nebezpechnih spiralnih dvijnikiv Bom naviv shist harakteristik spilnih dlya vsih avtentichnih zastosuvan spiralnoyi modeli dzherelo Shist invariantivAutentichni zastosuvannya spiralnoyi modeli keruyutsya ciklami sho zavzhdi vidobrazhayut shist harakteristik Bom proilyustruvav kozhnu z nih prikladom nebezpechnogo spiralnogo dvijnika sho porushuye invariantnist Odnochasne viznachennya artefaktiv Poslidovne viznachennya klyuchovih artefaktiv proyektu chasto znizhuye mozhlivist rozrobki sistemi sho vidpovidaye vigrashnim umovam zacikavlenih storin zavdannyam ta obmezhennyam Danij invariant viklyuchaye procesi nebezpechnogo spiralnogo dvijnika sho vikoristovuye poslidovnist inkrementnih vodospadnih prohodiv u nalashtuvannyah de osnovni pripushennya vodospadnoyi modeli nepripustimi Bom perelichiv nastupni z nih Vimogi ye vidomimi zavchasno do realizaciyi Vimogi ne mayut zhodnih nevirishenih rizikovanih naslidkiv yak ot riziki vartosti grafiku produktivnosti garantiyi bezpeki koristuvackih interfejsiv organizacijnih vpliviv ta in Priroda vimog ne zminyuvatimetsya nadto silno protyagom rozrobki chi evolyuciyi Vimogi ye sumisnimi z usima klyuchovimi ochikuvannyami zacikavlenih storin vid sistemi vklyuchno z koristuvachami kliyentom rozrobnikami pidtrimkoyu ta investorami Pravilna arhitektura dlya realizaciyi vimog dobre rozumiyetsya Dostatno kalendarnogo chasu dlya poslidovnogo vikonannya U situaciyah koli ci pripushennya ye zastosovnimi nayavnij rizik proyektu ne viznachiti vimogi ta ne vikonuvati poslidovno Takim chinom vodospadna model staye vipadkom spiralnoyi modeli z upravlinnyam rizikami Vikonannya chotiroh osnovnih dij na kozhnomu cikli Danij invariant viznachaye chotiri osnovni diyi sho povinni vidbuvatisya na kozhnomu cikli spiralnoyi modeli Rozglyanuti umovi vigrashu vsih kritichnih do uspihu zacikavlenih storin Viznachiti j ociniti alternativni pidhodi do zadovolennya umov vigrashu Viznachiti ta virishiti riziki sho stayut na zavadi obranih pidhodiv Otrimati shvalennya vsih kritichnih do uspihu zacikavlenih storin a takozh zobov yazannya shodo perehodu na nastupnij cikl Cikli proyektu sho vipuskayut abo skorochuyut bud yaku z cih diyi rizikuyut vitrachati zusillya na pidhodi neprijnyatni dlya klyuchovih zacikavlenih storin abo zh nadto rizikovani Deyaki procesi nebezpechnih spiralnih dvijnikiv porushuyut danij invariant usuvayuchi klyuchovih zacikavlenih storin vid deyakih poslidovnih faz abo cikliv Napriklad pidtrimka j administratori sistemi mozhut buti ne zalucheni do viznachennya ta rozrobki sistemi Yak naslidok sistema mozhe ne zadovolnyati vigrashnih umov Rizik viznachaye riven zusil Dlya bud yakoyi diyi nad proyektom yak ot analizu vimog proyektuvannya prototipuvannya chi testuvannya komanda proyektu povinna virishiti skilkoh zusil bude dostatno V avtentichnih ciklah spiralnogo procesu ci rishennya prijmayutsya zadlya minimizaciyi zagalnogo riziku Napriklad vidilennya dodatkovogo chasu na testuvannya programnogo produktu chasto znizhuye rizik vidklikannya z rinku poganogo produktu Prote dodatkovij chas testuvannya mozhe zbilshiti rizik togo sho konkurent ranishe vijde na rinok Z tochki zoru spiralnoyi modeli testuvannya povinno vidbuvatisya do minimizaciyi sumarnogo riziku i ne dali dzherelo Nebezpechni spiralni dvijniki sho porushuyut danij invariant mistyat evolyucijni procesi yaki ignoruyut rizik zaradi masshtabovanosti ta inkrementni procesi yaki zabagato vkladayut u tehnichnu arhitekturu togo sho povinno buti pereproyektovano chi zamineno dlya zabezpechennya majbutnih inkrementiv produktu Rizik viznachaye stupin detalizaciyi Dlya bud yakogo artefaktu proyektu yak ot specifikaciyi vimog proyektnoyi dokumentaciyi chi planu testuvannya komanda proyektu povinna viznachiti dostatnij riven jogo detalizaciyi V avtentichnih ciklah spiralnogo procesu take rishennya minimizuye zagalnij rizik Rozglyadayuchi specifikaciyu vimog yak priklad proyekt povinen tochno viznachati taki funkciyi v yakih rizik zmensheno cherez tochnu specifikaciyu napriklad interfejsi mizh aparatnim i programnim zabezpechennyam chi mizh pidryadnikami ta subpidryadnikami I navpaki proyekt ne maye tochno viznachati ti funkciyi yaki lishe zbilshuyut rizik yak ot grafichni maketi ekranu chi povedinka komponentiv z polici Vikoristannya opornih tochok Pochatkovij opis spiralnoyi modeli Boma ne mistiv zhodnih vih proyektu V podalshih utochnennyah vin predstaviv tri oporni tochki yaki sluguyut indikatorami progresu ta tochkami zobov yazannya Dani oporni tochki mozhut harakterizuvatisya takimi klyuchovimi pitannyami Zavdannya zhittyevogo ciklu Chi isnuye dostatnye viznachennya tehnichnogo j upravlinskogo pidhodu dlya zadovolennya umov vigrashu kozhnogo Yaksho zacikavleni osobi pogodzhuyutsya z vidpoviddyu Tak to proyekt projshov vihu LCO Inakshe proyekt mozhe buti pokinuto chi zacikavleni osobi mozhut sprobuvati na inshomu cikli otrimati Tak Arhitektura zhittyevogo ciklu Chi isnuye dostatnye viznachennya najkrashogo pidhodu dlya zadovolennya umov vigrashu kozhnogo i chi vsi znachni riziki usunuto chi zmensheno Yaksho zacikavleni osobi pogodzhuyutsya z vidpoviddyu Tak to proyekt projshov vihu LCA Inakshe proyekt mozhe buti pokinuto chi zacikavleni osobi mozhut sprobuvati na inshomu cikli otrimati Tak Pochatkovi operacijni mozhlivosti Chi isnuye dostatnya pidgotovka programnogo zabezpechennya sajtu koristuvachiv operatoriv i pidtrimki dlya zadovolennya umov vigrashu kozhnogo pri zapusku sistemi Yaksho zacikavleni osobi pogodzhuyutsya z vidpoviddyu Tak to proyekt projshov vihu IOC ta zapushenij Inakshe proyekt mozhe buti pokinuto chi zacikavleni osobi mozhut sprobuvati na inshomu cikli otrimati Tak Nebezpechni spiralni dvijniki sho porushuyut danij invariant mistyat evolyucijni j inkrementni procesi sho vidilyayut znachni resursi ne realizaciyu rishennya z pogano viznachenoyu arhitekturoyu proyasniti Tri oporni tochki legko vpisuyutsya v Rational Unified Process RUP z LCO markuvannyam granici mizh fazami RUP Pochatok i Rozrobka LCA markuvannyam mizh Rozrobkoyu ta Konstruyuvannyam ta IOC markuvannyam mizh Konstruyuvannyam ta Perehodom Zoseredzhennya na sistemi ta yiyi zhittyevomu cikli Danij invariant visvitlyuye vazhlivist usiyeyi sistemi ta dovgostrokovi problemi sho ohoplyuyut uves yiyi zhittyevij cikl Vin viklyuchaye nebezpechnih spiralnih dvijnikiv yaki nadto zoseredzhuyutsya na pochatkovij rozrobci programnogo kodu Ci procesi mozhut prizvesti vid opublikovanih pidhodiv do ob yektno oriyentovanogo chi strukturnogo analizu ta proyektuvannya programnogo zabezpechennya porivnyano yak bez urahuvannya inshih aspektiv tehnologichnih potreb proyektu Primitki 9 lyutogo 2000 Gansen Vilfred Dzh red Spiral Development Experience Principles and Refinements Spiralna rozrobka dosvid principi ta utochnennya PDF specialna dopovid Spiral Development Workshop anglijskoyu Pittsburg s 36 PDF originalu za 13 lipnya 2017 Procitovano 17 bereznya 2017 serpen 1986 A spiral model of software development and enhancement Spiralna model rozrobki ta polipshennya programnogo zabezpechennya ACM SIGSOFT PDF anglijskoyu T 11 4 Nyu Jork Association for Computing Machinery s 14 24 doi 10 1145 12944 12948 a href wiki D0 A8 D0 B0 D0 B1 D0 BB D0 BE D0 BD Cite news title Shablon Cite news cite news a format vimagaye url dovidka Obslugovuvannya CS1 Storinki z parametrom url status ale bez parametra archive url posilannya traven 1988 A Spiral Model of Software Development and Enhancement Spiralna model rozrobki ta polipshennya programnogo zabezpechennya PDF stattya anglijskoyu T 21 5 Institut inzheneriv z elektrotehniki ta elektroniki s 61 72 PDF originalu za 14 lyutogo 2017 Procitovano 17 bereznya 2017 P yu Richard V Mavor Anna S Lyudino sistemna integraciya u proces rozrobki sistem Novij poglyad dopovid anglijskoyu Vashington en s 396 doi 10 17226 11893 ISBN 978 0 309 10720 4 Arhiv originalu PDF za 18 bereznya 2017 Procitovano 17 bereznya 2017