Procesi i zhvillimit të softuerit
Një proces i zhvillimit të softuerit ose procesi i ndërtimit të softuerit (en:Software development process), gjithashtu i njohur edhe si cikli i jetës së zhvillimit të softuerit, është një strukturë e vendosur për zhvilimin e një produkti softuerik. Janë disa modele për proceset e tilla, secili përshkruan qasje të një shumëllojshmërie të detyrave ose aktiviteteve që zhvillohen gjatë procesit.
Disa njerëz e konsiderojnë modelin "lifecycle" një term më të përgjithshëm ndërsa një "proces të zhvillimit të softuerit" një term më specifike. ISO/IEC 12207 është një standard ndërkombëtar për procesin lifecycle të softuerit. Ajo synon të jetë standard që përcakton të gjitha detyrat e nevojshme për zhvillimin dhe mirëmbajtjen e softuerit.
Përmbledhje
RedaktoPër pjesën më të madhe dhe rritjen e trupit të zhvillimit softuerik, organizatat implementojnë metodologji për proceset. Shumica e tyre janë në industrinë e mbrojtjes, e cila në SHBA kerkon një vlerësim të bazuar në 'modelet e proceseve' për të marrë kontrata.
Aktivitetet e zhvillimit të softuerit
RedaktoPlanifikimi
RedaktoNjë detyrë e rëndësishme në krijimin e një programi softuerik është nxjerrja e kërkesave ose analiza e kërkesave. Klientët zakonisht kanë një ide abstrakte të asaj që ata duan si rezulltat, por jo se çfar softueri duhet të bëj. Kërkesat jo të plota, të paqarta madje edhe kërkesat kontradiktore janë të njohura në këtë pikë nga inxhinierët softuerikë me njohuri dhe eksperiencë. Shpesh duke treguar kodin dretperdrejtë mund të ndihmojë në uljen e rrezikut, se kërkesat janë të pasakta.
Pasi kërkesat e përgjithshme janë mbledhur nga klienti, një analizë e fushës së zhvillimit duhet të përcaktohet dhe të shprehet qartë. Kjo është quajtur shpesh si një dokument i fushës.
Disa funksionalitete mund të jenë jashtë fushës së projektit si një funksion i kostos ose si rezultat i kërkesave të paqartë në fillim të zhvillimit. Në qoftë se zhvillimi është bërë nga jashtë, ky dokument mund të konsiderohet një dokument ligjor në mënyrë që nëse ka mosmarrëveshje ndonjëherë, ndonjë paqartësi të asaj që ishte premtuar për të klientit mund të sqarohet.
Implementimi, testimi dhe dokumentimi
RedaktoImplementimi është pjesë e procesit ku inxhinierët softuerik në të vërtetë programojnë kodin për projektin.
Testimi i softuerit është një fazë integrale dhe e rëndësishme e procesit të zhvillimit të softuerit. Kjo pjesë e procesit siguron që defekte e mundshme të softuerit të zbulohen sa më shpejt të jetë e mundur.
Dokumentimi i dizajnit e brendshëm të softuerit me qëllim të mirëmbajtjes në të ardhmen dhe zgjerimi që është bërë gjatë gjithë zhvillimit. Kjo mund të përfshijë edhe të shkruarit e një API, të jetë e jashtme ose të brendshme. Procesi i inxhinierisë softuerike i zgjedhur nga ekipi i zhvillimit do të përcaktojë se sa dokumentacion i brendshëm (nëse ka) është i nevojshëm.
Modelet e zhvillimit të softuerit
RedaktoEkzistojnë disa modele për të përmirësuar procesin e zhvillimit. Secili ka të drejtë për pro dhe kundra, dhe është vendimi i ekipit të zhvillimit të miratojë një më të përshtatshme për projektin. Ndonjëherë një kombinim i modeleve të mund të jenë më i përshtatshëm.
Modeli waterfall
Redakto- Artikulli kryesor: Modeli waterfall
Modeli waterfall tregon një proces, ku zhvilluesit ndjekin këto faza në radhë:
- Specifikat e kërkesave (Kërkesat softuerike)
- Dizajnimi i softuerit
- Implementimi dhe Integrimi
- Testimi (ose Validation)
- Deployment (or Installation)
- Mirëmbajtja
Modeli spiral
Redakto- Artikulli kryesor: Modeli spiral
Karakteristikë kryesore e një modeli spiral është menaxhimi i rrezikut në faza të rregullta në ciklin e zhvillimit.
Zhvillimi i përsëritur dhe rritës
RedaktoZhvillimi Agile
Redakto- Artikulli kryesor: Zhvillimi softuerik Agile
Zhvillimi softuerik Agile përdorën zhvillim ose ndërtim përsëritës si bazë.
Burimi
RedaktoLidhje të jashtme
Redakto- Gerhard Fischer, "The Software Technology of the 21st Century: From Software Reuse to Collaborative Software Design", 2001
- Lydia Ash: The Web Testing Companion: The Insider's Guide to Efficient and Effective Tests, Wiley, May 2, 2003. ISBN 0-471-43021-8
- SaaSSDLC.com Arkivuar 29 qershor 2010 tek Wayback Machine — Software as a Service Systems Development Life Cycle Project
- Software development life cycle (SDLC) [visual image], software development life cycle
- Heraprocess.org — Hera is a light process solution for managing web projects