- Kasaysayan
- Paglikha
- Alternatibong sa modelo ng talon
- Mga tampok ng modelo ng spiral
- Kontrol sa peligro
- Paglalarawan ng spiral
- Generic
- Nababaluktot
- Metamodel
- Mga yugto
- Alamin ang mga layunin, kahalili at hadlang
- Pagsusuri ng mga panganib
- Pag-unlad at pagsubok
- Pagpaplano ng susunod na pag-ikot
- Halimbawa
- Kalamangan
- Ikotikong istraktura
- Pamamahala sa peligro
- Paglahok at puna ng customer
- Tamang-tama para sa malalaking proyekto
- Mga Kakulangan
- Mahal
- Medyo kumplikado
- Pamamahala ng oras
- Maraming mga hakbang
- Mga Sanggunian
Ang modelo ng spiral ay isang archetype ng proseso ng pag-unlad ng aplikasyon. Ito ay batay sa hypothesis na ang pag-unlad ng software ay isang siklo ng iterative na paulit-ulit hanggang makamit ang mga itinatag na layunin. May kakayahang hawakan ang malaking bilang ng mga panganib na maaaring mangyari kapag bumubuo ng anumang software.
Ito ay isa sa mga pinakamahalagang modelo upang suportahan ang pamamahala sa peligro. Tulad ng iminumungkahi ng pangalan nito, ang modelong ito ay ipinapakita bilang hugis ng spiral, kung saan ang iba't ibang mga yugto ng modelo ay ipinamamahagi sa iba't ibang mga siklo. Ang bilang ng mga siklo sa modelo ay hindi maayos at maaaring mag-iba mula sa proyekto hanggang sa proyekto.

Pagtatasa, pagsusuri, pagpaplano at pag-unlad. Pinagmulan ng Software Development Spiral: Beao commons.wikimedia.org
Kasaysayan
Paglikha
Ang modelo ng spiral ay tinukoy ng Amerikanong matematiko at propesor ng software sa engineering na si Barry Boehm. Matapos ipakita ang kanyang konsepto noong 1986 para sa pagpapaunlad ng mga kumplikadong aplikasyon, inilathala niya ang kanyang modelo noong 1988 sa isang mas komprehensibong balangkas sa kanyang artikulo na "Isang Spiral Model of Software Development and Improvement".
Bahagi ng ito ng publication sa 1988 ay kumakatawan sa modelo ng spiral na graphic, na nagpapakita sa isang komprehensibong paraan kung ano ang hitsura ng proseso ng pag-unlad ng software sa isang spiral fashion at suportado ng mga siklo.
Ang Boehm ay kilala para sa kanyang maraming mga kontribusyon sa software engineering, tulad ng konstrukturang gastos na modelo (COCOMO), ang modelo ng spiral ng proseso ng software, ang diskarte sa G-Theory (win-win) sa mga kinakailangan sa pagpapasiya at pamamahala. ng software.
Alternatibong sa modelo ng talon
Sa kanyang publikasyon, inilarawan ni Boehm ang modelo ng spiral bilang isang posibleng alternatibo sa dating itinatag na modelo ng talon, na nagsilbi ring batayan para sa kanyang pagsasanay.
Ang modelo ng spiral ay hindi ang una upang talakayin ang pag-unlad ng siklista, ngunit ito ang unang modelo na nagpapaliwanag kung bakit mahalaga ang pag-iiba. Tulad ng orihinal na pinlano, na-target ito sa mga malalaking, kumplikadong proyekto na karaniwang mga saklaw ng mga iterations mula sa 6 na buwan hanggang 2 taon.
Hindi ipinapalagay ng modelong ito na ang mga gawain sa pag-unlad ng software ay idinisenyo nang sunud-sunod, hindi katulad ng modelo ng talon, ngunit sa halip ay nakikita ang mga ito bilang mga gawain ng iterative.
Naimpluwensyang ito ang paikot na modelo na Model Based Software Engineering Architecture (MBASE) at matinding programming.
Mga tampok ng modelo ng spiral
Kontrol sa peligro
Ano ang lubos na pagkakaiba-iba ng modelong ito mula sa iba pang mga modelo ng proseso ng software ay malinaw na kinikilala ang mga panganib. Sa gayon, lubos na binabawasan ang kabiguan ng mga malalaking proyekto ng software sa pamamagitan ng paulit-ulit na pagtatasa ng mga panganib at pag-verify ng produkto sa ilalim ng pag-unlad sa bawat oras.
Ang modelong kompyuter na ito ay naglalaman ng mga sangkap mula sa halos lahat ng iba pang modelo ng cycle ng buhay ng software, tulad ng modelo ng talon, ang modelo ng prototyping, modelo ng iterative, modelo ng ebolusyon, atbp.
Dahil dito, may kakayahang pangasiwaan ang halos anumang uri ng peligro na karaniwang hindi mahawakan ng ibang mga modelo. Gayunpaman, dahil sa pagkakaroon ng napakaraming mga sangkap, ang modelong ito ay mas kumplikado kaysa sa iba pang mga modelo ng pag-unlad ng software.
Paglalarawan ng spiral
Ang bawat pagliko ng spiral ay kumakatawan sa isang kumpletong ikot, kung saan palaging pinapasa ang apat na quadrant, na kumakatawan sa apat na yugto ng modelo.
Tulad ng pagtaas ng laki ng spiral, ganoon din ang pag-unlad. Samakatuwid, ang mga yugto ay hindi naisakatuparan ng isang beses lamang, ngunit maraming beses, sa isang spiral fashion.
Bagaman ang pag-uulit na ito ng cyclical ay ginagawang dahan-dahang lumapit ang proyekto sa mga itinatag na layunin, ang panganib na nabigo ang proseso ng pag-unlad ay mababawasan.
Generic
Ang apat na yugto ay nagpapatupad lamang ng mga pangunahing layunin ng isang ikot, ngunit hindi nila kailangang ipakita sa bawat pag-ikot.
Ang pagkakasunud-sunod ng bawat pag-ikot ay hindi mahigpit na tinutukoy. Samakatuwid, ang modelo ay maaaring pagsamahin sa anumang oras sa iba pang mga modelo.
Nababaluktot
Ito ay lubos na kakayahang umangkop, dahil isinasagawa ang kahulugan ng mga layunin, pagsusuri sa panganib, mga proseso ng pag-unlad at pagpaplano nang hiwalay para sa bawat yugto ng proyekto.
Metamodel
Ito ay itinuturing na isang metamodel dahil kasama nito ang iba pang mga modelo. Halimbawa, kung ang spiral ay isang solong siklo ay kumakatawan ito sa modelo ng talon, dahil isinasama nito ang unti-unting pamamaraan ng klasikong modelo na ito.
Ginagamit din niya ang diskarte ng modelo ng prototyping, tulad ng sa simula ng bawat pag-ikot ay nagtipon siya ng isang prototype upang pamahalaan ang panganib.
Bukod dito, katugma ito sa modelo ng ebolusyon, dahil ang mga iterations ng spiral ay maaaring isaalang-alang na mga antas ng ebolusyon, kung saan binuo ang pangwakas na sistema.
Mga yugto
Alamin ang mga layunin, kahalili at hadlang
Ang mga kinakailangan ng system ay tinukoy sa mas maraming detalye hangga't maaari, kasama ang pagganap, mga interface ng hardware / software, mga pangunahing tagapagpahiwatig ng tagumpay, atbp. at kung ano ang mga layunin ay dapat na nauugnay sa kasalukuyang pag-unlad cycle ay isinasaalang-alang.
Bilang karagdagan, ang iba't ibang mga kahalili para sa pagpapatupad nito ay nasuri, tulad ng build vs. bumili, gumamit muli ng mga umiiral na sangkap o outsource, atbp.
Gayundin, ang mga paghihigpit tulad ng gastos, iskedyul at mga interface, pagkonsumo ng oras, atbp.
Pagsusuri ng mga panganib
Ang lahat ng mga iminungkahing alternatibo ay nasuri. Ang mga layunin at hadlang ay nagsisilbing pagtukoy ng mga sanggunian upang piliin ang pinakamahusay na solusyon.
Bilang karagdagan, ang mga panganib na maaaring hadlangan ang tagumpay ng proyekto ay natukoy, tulad ng kakulangan ng karanasan, mga bagong teknolohiya, masikip na iskedyul, hindi magandang proseso, atbp.
Sa wakas, ginagamit ang mga pamamaraan tulad ng prototyping, simulation, analytical models at mga survey ng gumagamit.
Pag-unlad at pagsubok
Ang lahat ng kinakailangang pag-unlad ay isinasagawa, gamit ang teknolohiya at napiling solusyon. Sa bawat pag-ulit ng isang mas mahusay na bersyon ng application ay nilikha.
Ang aktwal na code ay nakasulat at nasubok nang maraming beses hanggang sa maabot ang ninanais na resulta, na magsisilbing batayan para sa mga hakbang sa pag-unlad sa hinaharap.
Pagpaplano ng susunod na pag-ikot
Sa pagkumpleto ng isang siklo, nagsisimula ang pagpaplano para sa susunod. Ang pagpaplano na ito ay maaaring magpatuloy sa proyekto nang normal kung naabot ang layunin ng ikot, isinasaalang-alang ang kahulugan ng susunod na layunin.
Maaari rin itong maghanap ng iba pang mga solusyon, kung ang naunang yugto ng pag-unlad ay napatunayan na may mali. Ang umiiral na diskarte ay maaaring mapalitan ng isa sa naunang tinukoy na mga alternatibo o bago. Gamit nito, magsisimula ang isang bagong pagtatangka upang maabot ang naibigay na layunin.
Halimbawa
Pinagtibay ng militar ng Estados Unidos ang modelo ng spiral para sa pag-unlad at pag-upgrade ng programa ng modernization Fighting Systems (SCF).
Opisyal na inilunsad noong 2003, ang mga SCF ay naisip upang magbigay ng kasangkapan sa mga tropa na may mga sasakyan na konektado sa real time sa isang sobrang sobrang bilis at nababaluktot na network ng mga battlefield.
Ang proyekto ay nahahati sa apat na mga spirals ng pag-unlad na halos dalawang taon bawat isa. Ang Spiral 1 ay nakatakdang magsimula sa 2008 at maghatid ng mga prototypes para magamit at pagsusuri.
Matapos makumpleto ang spiral 1, ang spiral 2 ay naka-iskedyul na magsimula sa 2010. Ang pangwakas na pag-unlad ng produkto ay nakatakdang maihatid sa 2015.
Noong Agosto 2005, inihayag ni Boeing ang pagkumpleto ng unang pangunahing milyahe sa proyekto, na kung saan ay ang pag-overhaul ng functional ng mga system. Ang Boeing at Science Applications International Corporation ay ang mga co-pinuno ng proyekto.
Gayunpaman, para sa Oktubre 2005 inirerekumenda ng Pentagon na maantala ang proyekto dahil sa mataas na epekto sa mga gastos mula sa digmaang Iraq at tulong mula sa Hurricane Katrina.
Ang proyekto ay nakansela noong 2009 matapos ang paglabas ng badyet, nang hindi napapatunayan ang mga benepisyo ng modelo ng spiral sa misyon na ito
Kalamangan
Ikotikong istraktura
Dahil sa ganitong uri ng istraktura, ang mga problema sa pagitan ng disenyo at mga kinakailangan sa teknikal ng software ay tacitly tinanggal, salamat sa pana-panahong mga tseke.
Pamamahala sa peligro
Nasuri ang mga panganib sa bawat yugto ng produkto bago magpatuloy. Makakatulong ito upang malampasan o mapagaan ang mga potensyal na panganib.
Ang lahat ng mga empleyado ay nakikinabang mula sa malaking kahalagahan ng pagsusuri sa panganib sa modelong ito, marahil ay kumakatawan sa kanilang pinakadakilang kalamangan sa iba pang mga modelo ng proseso.
Mahalaga ang regular na pagtatasa ng peligro kapag gumagamit ng nobelang teknikal na mga kapaligiran, na sa pangkalahatan ay nauugnay sa isang partikular na potensyal na peligro dahil sa kawalan ng mga halaga ng empirikal.
Paglahok at puna ng customer
Ang mga customer ay kasangkot sa bawat yugto ng proyekto, hanggang sa makumpleto ang proyekto. Samakatuwid, ang iba't ibang mga puna ay maaaring tipunin upang mapagbuti ang susunod na bersyon ng proyekto.
Gayundin, ang feedback ay maaaring makuha sa anumang oras dahil sa advance na hugis ng spiral. Kaya, ang mga customer at mga gumagamit ay maaaring maisama mula sa simula sa proseso ng pag-unlad.
Tamang-tama para sa malalaking proyekto
Ito ay partikular na sikat at kilalang tao para sa mga malalaki at kumplikadong proyekto, kung saan ang kontrol sa badyet ay isang priyoridad para sa mga kliyente at developer. Mayroon kang maximum na kontrol sa mga gastos, mapagkukunan at kalidad ng proyekto ng software.
Mga Kakulangan
Mahal
Maaari itong medyo mahal, dahil nangangailangan ito ng isang mataas na antas ng kadalubhasaan para sa pagsusuri sa panganib. Bilang karagdagan, ang mga proyekto ay gumugol ng maraming oras upang makabuo, na maaaring tumaas sa itaas.
Medyo kumplikado
Ang isang napaka-aktibo at kumplikadong naunang pamamahala ng proyekto ay kinakailangan, kung saan ang bawat pag-ikot ay patuloy at maingat na kinokontrol at dokumentado.
Ito ay medyo mas kumplikado kaysa sa iba pang mga modelo, dahil maraming mga siklo, bawat isa ay dumadaan sa iba't ibang mga yugto, sa gayon pinapataas ang pagsisikap ng proseso ng dokumentasyon.
Ang kaalaman sa pagsusuri at pamamahala ng peligro, na kung saan ay madalas na hindi magagamit, ay mahalaga.
Pamamahala ng oras
Mahirap na pamahalaan ang oras dahil hindi alam ang bilang ng mga siklo. Bilang karagdagan, ang proseso ng pag-unlad ay maaaring maantala sa anumang oras kung ang mga mahahalagang desisyon ay dapat gawin sa loob ng isang siklo o sa pamamagitan ng mga karagdagang pagkilos kapag pinaplano ang susunod na pag-ikot.
Maraming mga hakbang
Ang paggawa ng maraming mga hakbang sa pag-unlad ng software ay hindi palaging kanais-nais dahil, sa kabila ng kakayahang magamit ng pagsubok, ang mga hindi natapos na mga bahagi ng programa ay maaaring maabot ang natapos na sistema.
Bilang isang kinahinatnan, palaging may panganib na ang anumang pagkakamali sa konsepto o hindi pagkakapare-pareho ay nakakaapekto sa panghuling produkto.
Mga Sanggunian
- Victor Font Jr (2019). Ang Modelong Spiral. Ang Ultimate Guide sa SDLC. Kinuha mula sa: ultimatesdlc.com.
- Ionos (2019). Modelo ng spiral: modelo ng proseso ng pag-unlad ng software na hinihimok ng panganib. Kinuha mula sa: ionos.com.
- Techuz (2018). Ano ang Spiral Model? Isang Simpleng Paliwanag ng Spiral Software Development Life Cycle (SDLC). Kinuha mula sa: techuz.com.
- One Stop Testing (2020). Modelo ng Spiral. Kinuha mula sa: onestoptesting.com.
- Mga Geeks para sa Geeks (2020). Software Engineering - Model ng Spiral. Kinuha mula sa: geeksforgeeks.org.
- Chandu (2019). Spiral Model sa Software Engineering. Kinuha mula sa: medium.com.
