Procesi i zhvillimit të softuerit

Nga Wikipedia, enciklopedia e lirë

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[Redakto | Redakto nëpërmjet kodit]

Pë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[Redakto | Redakto nëpërmjet kodit]

Aktivitetet e procesit të zhvllimit të softuerit të paraqitur në modelin waterfall. Janë esdhe shumë modele të tjera për të paraqitur këtë proces.

Planifikimi[Redakto | Redakto nëpërmjet kodit]

Një 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[Redakto | Redakto nëpërmjet kodit]

Implementimi ë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[Redakto | Redakto nëpërmjet kodit]

Ekzistojnë 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 | Redakto nëpërmjet kodit]


Modeli waterfall tregon një proces, ku zhvilluesit ndjekin këto faza në radhë:

  1. Specifikat e kërkesave (Kërkesat softuerike)
  2. Dizajnimi i softuerit
  3. Implementimi dhe Integrimi
  4. Testimi (ose Validation)
  5. Deployment (or Installation)
  6. Mirëmbajtja

Modeli spiral[Redakto | Redakto nëpërmjet kodit]


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[Redakto | Redakto nëpërmjet kodit]

Zhvillimi Agile[Redakto | Redakto nëpërmjet kodit]

Zhvillimi softuerik Agile përdorën zhvillim ose ndërtim përsëritës si bazë.

Burimi[Redakto | Redakto nëpërmjet kodit]

Lidhje të jashtme[Redakto | Redakto nëpërmjet kodit]