Cikli i jetës së softuerit. Fazat dhe fazat. Cikli jetësor i sistemeve softuerike Koncepti i ciklit jetësor të një programi dhe fazat e tij

Zhvillimi i teknologjisë kompjuterike po zgjeron vazhdimisht klasat e problemeve të zgjidhshme që lidhen me përpunimin e informacionit të llojeve të ndryshme.

Këto janë në thelb tre lloje informacioni dhe, në përputhje me rrethanat, tre klasa problemesh për të cilat përdoren kompjuterët:

1) Probleme llogaritëse që lidhen me përpunimin e informacionit numerik. Këto përfshijnë, për shembull, problemin e zgjidhjes së një sistemi ekuacionesh lineare me dimension të madh. Më parë, ishte zona kryesore, dominuese e përdorimit të kompjuterit.

2) Detyrat simbolike të përpunimit të informacionit që lidhen me krijimin, redaktimin dhe transformimin e të dhënave të tekstit. Zgjidhja e problemeve të tilla përfshin punën e, për shembull, një sekretari-daktilografist.

3) Detyrat për përpunimin e informacionit grafik ᴛ.ᴇ. diagrame, vizatime, grafikë, skica etj. Detyra të tilla përfshijnë, për shembull, detyrën e një projektuesi që zhvillon vizatime për produkte të reja.

4) Detyrat për përpunimin e informacionit alfanumerik - IS. Sot ajo është bërë një nga fushat bazë të aplikimit kompjuterik dhe detyrat po bëhen gjithnjë e më komplekse.

Zgjidhja e problemeve të çdo klase në një kompjuter ka specifikat e veta, por mund të ndahet në disa faza karakteristike për shumicën e problemeve.

Teknologjia e programimitstudion proceset teknologjike dhe rendin e kalimit (fazat) e tyre duke përdorur njohuri, metoda dhe mjete.

Është i përshtatshëm për të karakterizuar teknologjitë në dy dimensione - vertikale (që përfaqësojnë proceset) dhe horizontale (fazat që përfaqësojnë).

Vizatim

Një proces është një grup veprimesh të ndërlidhura (operacione teknologjike) që transformojnë disa të dhëna hyrëse në të dhëna dalëse. Proceset përbëhen nga një grup veprimesh (operacione teknologjike), dhe çdo veprim përbëhet nga një grup detyrash dhe metodash për zgjidhjen e tyre. Dimensioni vertikal pasqyron aspektet statike të proceseve dhe funksionon me koncepte të tilla si proceset e punës, veprimet, detyrat, rezultatet e performancës, performuesit.

Një fazë është një pjesë e aktiviteteve të krijimit të softuerit, e kufizuar nga një kornizë kohore e caktuar dhe që përfundon me lëshimin e një produkti specifik, të përcaktuar nga kërkesat e specifikuara për këtë fazë. Ndonjëherë fazat kombinohen në korniza më të mëdha kohore të quajtura faza ose faza. Pra, dimensioni horizontal përfaqëson kohën, pasqyron aspektet dinamike të proceseve dhe funksionon me koncepte të tilla si fazat, fazat, fazat, përsëritjet dhe pikat e kontrollit.

Zhvillimi i softuerit ndjek një cikël të caktuar jetësor.

Cikli jetësor Softueri është një grup aktivitetesh të vazhdueshme dhe të porositura që kryhen dhe menaxhohen në kuadër të çdo projekti për zhvillimin dhe funksionimin e softuerit, duke filluar nga momenti kur shfaqet ideja (plani) për krijimin e disa softuerëve dhe merret një vendim për rëndësinë kritike. krijimit dhe përfundimit të tij në momentin e tërheqjes së plotë nga shërbimi për arsyet e mëposhtme:

a) vjetrim;

b) humbjet me rëndësi ekstreme në zgjidhjen e problemeve përkatëse.

Qasjet teknologjike - mekanizmat e zbatimit cikli jetësor.

Qasja teknologjike përcaktohet nga kombinimi specifik i fazave dhe proceseve, të fokusuara në klasa të ndryshme Softueri dhe veçoritë e ekipit të zhvillimit.

Cikli i jetës përcakton fazat (fazat, fazat), në mënyrë që një produkt softuer të lëvizë nga një fazë në tjetrën, duke filluar nga fillimi i konceptit të produktit dhe duke përfunduar me fazën e kolapsit të tij.

Cikli jetësor i zhvillimit të softuerit duhet të paraqitet me shkallë të ndryshme të detajeve të fazës. Përfaqësimi më i thjeshtë i ciklit jetësor përfshin fazat:

Dizajn

Zbatimi

Testimi dhe korrigjimi

Zbatimi, funksionimi dhe mirëmbajtja.

Përfaqësimi më i thjeshtë i një programi të ciklit jetësor (qasja teknologjike kaskadë për menaxhimin e ciklit jetësor):

Proceset

Dizajn

Programimi

Testimi

Shoqërues

Analiza Projektimi i Zbatimit Testimi Operacioni i Zbatimit

dhe korrigjimi dhe mirëmbajtja

Në fakt, ka vetëm një proces që kryhet në çdo fazë. Është e qartë se gjatë zhvillimit dhe krijimit programe të mëdha Kjo skemë nuk është mjaft e saktë (e pazbatueshme), por mund të merret si bazë.

Faza e Aalizit fokusohet në kërkesat e sistemit. Kërkesat përcaktohen dhe specifikohen (përshkruhen). Është kryer zhvillimi dhe integrimi i modeleve funksionale dhe modeleve të të dhënave për sistemin. Në të njëjtën kohë, regjistrohen kërkesat jofunksionale dhe kërkesat e tjera të sistemit.

Faza e projektimit ndahet në dy nënfaza bazë: projektimi arkitektonik dhe i detajuar. Në veçanti, dizajni i programit, ndërfaqja e përdoruesit dhe strukturat e të dhënave janë duke u përmirësuar. Çështjet e projektimit që ndikojnë në kuptueshmërinë, mirëmbajtjen dhe shkallëzueshmërinë e sistemit janë ngritur dhe dokumentuar.

Faza e zbatimit përfshin shkrimin e një programi.

Dallimet në harduer dhe softuer janë veçanërisht të dukshme në skenë operacion. Nëse mallrat e konsumit kalojnë nëpër fazat e prezantimit në treg, rritjes, pjekurisë dhe rënies, atëherë jeta e softuerit i ngjan më shumë historisë së një ndërtese të papërfunduar, por që po kompletohet dhe përditësohet vazhdimisht (aeroplan). (Abonent).

Cikli i jetës së softuerit rregullohet nga shumë standarde, duke përfshirë dhe ndërkombëtare.

Qëllimi i standardizimit të cikleve të jetës së nënstacioneve komplekse:

Përgjithësimi i përvojës dhe rezultateve të kërkimit të shumë specialistëve;

Duke punuar jashtë proceset teknologjike dhe teknikat e zhvillimit, si dhe një bazë metodologjike për automatizimin e tyre.

Standardet përfshijnë:

Rregullat për përshkrimin e informacionit fillestar, metodat dhe metodat e kryerjes së operacioneve;

Vendosja e rregullave për monitorimin e proceseve teknologjike;

Vendosja e kërkesave për paraqitjen e rezultateve;

Rregullojnë përmbajtjen e dokumenteve teknologjike dhe operacionale;

Përcaktoni struktura organizative ekipi i zhvillimit;

Siguroni shpërndarjen dhe planifikimin e detyrave;

Sigurimi i kontrollit mbi ecurinë e krijimit të SP.

Në Rusi ekzistojnë standarde që rregullojnë ciklin e jetës:

Fazat e zhvillimit të softuerit - GOST 19.102-77

Fazat e krijimit të AS - GOST 34.601 –90;

Specifikimet teknike për krijimin e AS - GOST 34.602-89;

Llojet e testimit AC - GOST 34.603-92;

Në të njëjtën kohë, krijimi, mirëmbajtja dhe zhvillimi i softuerit aplikativ për sistemet e informacionit nuk janë pasqyruar mjaftueshëm në këto standarde, dhe disa nga dispozitat e tyre janë të vjetruara nga pikëpamja e ndërtimit të komplekseve moderne të programeve të shpërndara të aplikacioneve. cilësi të lartë në sistemet e kontrollit dhe përpunimit të të dhënave me arkitektura të ndryshme.

Në këtë drejtim, vlen të përmendet standardi ndërkombëtar ISO/IEC 12207-1999 – “Teknologjia e informacionit – Proceset e ciklit jetësor të softuerit”.

ISO - Organizata Ndërkombëtare e Standardizimit - Organizata ndërkombëtare mbi standardizimin, IEC - Komisioni Ndërkombëtar Elektroteknik - Komisioni Ndërkombëtar për Inxhinierinë Elektrike.

Ai përcakton strukturën e ciklit jetësor të softuerit dhe proceset e tij.

ato. krijimi i softuerit nuk është i tillë detyrë e thjeshtë, në lidhje me këtë, ekzistojnë standarde në të cilat përshkruhet gjithçka: çfarë duhet bërë, kur dhe si.

Struktura e ciklit jetësor të softuerit sipas standardit ndërkombëtar ISO/IEC 12207-95 bazohet në tre grupe procesesh:

1) proceset kryesore të ciklit jetësor të softuerit (blerja, shpërndarja, zhvillimi, funksionimi, mirëmbajtja). Ne do të përqendrohemi në këtë të fundit.

2) proceset ndihmëse që sigurojnë ekzekutimin proceset bazë (dokumentacionin, menaxhimi i konfigurimit, sigurimi i cilësisë, verifikimi, certifikimi, analiza e përbashkët (vlerësimi), auditimi, zgjidhja e problemeve).

1. Menaxhimi i konfigurimitKjo një proces që mbështet proceset kryesore të ciklit jetësor të softuerit, kryesisht proceset e zhvillimit dhe mirëmbajtjes. Kur zhvillohen projekte komplekse softuerike që përbëhen nga shumë komponentë, secili prej të cilëve mund të ketë variacione ose versione, lind problemi i marrjes parasysh të lidhjeve dhe funksioneve të tyre, krijimit të një strukture të unifikuar (ᴛ.ᴇ. të unifikuar) dhe sigurimit të zhvillimit të të gjithë sistemit. . Menaxhimi i konfigurimit ju lejon të organizoni, merrni parasysh dhe kontrolloni në mënyrë sistematike ndryshimet në komponentë të ndryshëm të softuerit në të gjitha fazat e ciklit të tij jetësor.

2. Verifikimiështë procesi i përcaktimit nëse gjendja aktuale e softuerit e arritur në një fazë të caktuar i plotëson kërkesat e asaj faze.

3. Certifikimi– konfirmimin me ekzaminim dhe paraqitjen e provave objektive që kërkesat specifike për objekte të veçanta janë zbatuar plotësisht.

4. Analizë e përbashkët (vlerësim) përcaktimi sistematik i shkallës së përputhshmërisë së një objekti me kriteret e përcaktuara.

5. Auditimi– një kontroll i kryer nga një autoritet (person) kompetent për të siguruar vlerësim i pavarur shkalla e përputhshmërisë së produkteve ose proceseve softuerike kërkesat e vendosura. Ekzaminimi ju lejon të vlerësoni përputhshmërinë e parametrave të zhvillimit me kërkesat fillestare. Verifikimi pjesërisht përkon me testimin, ai kryhet për të përcaktuar dallimet midis rezultateve aktuale dhe të pritshme dhe për të vlerësuar përputhshmërinë e karakteristikave të softuerit me kërkesat origjinale. Në procesin e zbatimit të projektit, çështjet e identifikimit, përshkrimit dhe kontrollit të konfigurimit të përbërësve individualë dhe të gjithë sistemit në tërësi zënë një vend të rëndësishëm.

3) proceset organizative (menaxhimi i projektit, krijimi i infrastrukturës së projektit, përcaktimi, vlerësimi dhe përmirësimi i vetë ciklit jetësor, trajnimi).

Menaxhimi i projektit lidhur me çështjet e planifikimit dhe organizimit të punës, krijimit të ekipeve zhvillimore dhe monitorimit të kohës dhe cilësisë së punës së kryer. Mbështetja teknike dhe organizative për projektin përfshin zgjedhjen e metodave dhe mjeteve për zbatimin e projektit, përcaktimin e metodave për përshkrimin e gjendjeve të ndërmjetme të zhvillimit, zhvillimin e metodave dhe mjeteve për testimin e softuerit të krijuar, trajnimin e personelit, etj. Sigurimi i cilësisë së projektit shoqërohet me probleme të verifikimit, verifikimit dhe testimit të komponentëve të softuerit.

Ne do të shqyrtojmë ciklin jetësor të softuerit nga këndvështrimi i zhvilluesit.

Procesi i zhvillimit në përputhje me standardin përfshin veprime dhe detyra të kryera nga zhvilluesi, dhe mbulon punën për krijimin e softuerit dhe përbërësve të tij në përputhje me kërkesat e specifikuara, duke përfshirë përgatitjen e projektimit dhe dokumentacionit operacional, si dhe përgatitjen e materialeve të nevojshme për testimi i funksionalitetit dhe përputhshmërisë së cilësisë së produkteve softuerike, materialeve të nevojshme për trajnimin e personelit, etj.

Sipas standardit, cikli i jetës së softuerit IS përfshin veprimet e mëposhtme:

1) shfaqja dhe hulumtimi i një ideje (plani);

2) fazë përgatitore - zgjedhja e një modeli të ciklit jetësor, standardet, metodat dhe mjetet e zhvillimit, si dhe hartimi i një plani pune.

3) analiza e kërkesave të sistemit të informacionit - duke e përcaktuar atë

funksionalitetin, kërkesat e përdoruesit, kërkesat e besueshmërisë dhe sigurisë, kërkesat për ndërfaqet e jashtme, etj.

4) dizajni i arkitekturës së sistemit të informacionit - përcaktimin e përbërjes së pajisjeve kritike, softuerit dhe operacioneve të kryera nga personeli i mirëmbajtjes.

5) analiza e kërkesave të softuerit- Përkufizimi i funksionalitetit, duke përfshirë karakteristikat e performancës, mjedisin e funksionimit të komponentit, ndërfaqet e jashtme, specifikimet e besueshmërisë dhe sigurisë, kërkesat ergonomike, kërkesat e të dhënave, instalimin, pranimin, dokumentacionin e përdoruesit, funksionimin dhe mirëmbajtjen.

6) dizajni i arkitekturës së softuerit - përcaktimi i strukturës së softuerit, dokumentimi i ndërfaqeve të komponentëve të tij, zhvillimi i një versioni paraprak të dokumentacionit të përdoruesit, si dhe kërkesat e testimit dhe një plan integrimi.

7) dizajn i detajuar i softuerit - të detajuara

përshkrimi i komponentëve të softuerit dhe ndërfaqeve ndërmjet tyre, përditësimi i dokumentacionit të përdoruesit, zhvillimi dhe dokumentimi i kërkesave të testit dhe një plan testimi, komponentët e softuerit, përditësimi i planit të integrimit të komponentëve.

8) kodimi i softuerit -zhvillimin dhe dokumentacionin

çdo komponent softuerësh;

9)testimi i softuerit – zhvillimi i një grupi procedurash testimi dhe të dhënash për testimin e tyre, testimin e komponentëve, përditësimin e dokumentacionit të përdoruesit, përditësimin e planit të integrimit të softuerit;

10) integrimin e softueritmontimi i komponentëve të softuerit në përputhje me

një plan integrimi dhe testim softueri për përputhshmërinë me kërkesat e kualifikimit, të cilat janë një grup kriteresh ose kushtesh që janë jashtëzakonisht të rëndësishme për t'u plotësuar në mënyrë që të kualifikohet një produkt softuer që plotëson specifikimet e tij dhe i gatshëm për përdorim në kushte të caktuara operimi;

11) testimi i kualifikimit të softuerittestimi i softuerit në

prania e klientit për të demonstruar pajtueshmërinë e tij

kërkesat dhe gatishmëria për operim; në të njëjtën kohë, kontrollohet edhe gatishmëria dhe plotësia e dokumentacionit teknik dhe të përdoruesit;

12) integrimin e sistemitmontimi i të gjithë komponentëve të sistemit të informacionit, duke përfshirë softuerin dhe harduerin;

13) Testimi i kualifikimit të IPtestimi i sistemit për

pajtueshmërinë me kërkesat për të dhe kontrollin e ekzekutimit dhe plotësinë e dokumentacionit;

14) instalimi i softueritinstalimi i softuerit në pajisjet e klientit dhe kontrollimi i funksionalitetit të tij;;

15) pranimi i softueritvlerësimi i rezultateve të një të kualifikuar

testimin e softuerit dhe sistemeve të informacionit në tërësi dhe

dokumentimi i rezultateve të vlerësimit së bashku me klientin, certifikimi dhe transferimi përfundimtar i softuerit te klienti.

16) Menaxhimi dhe zhvillimi i dokumentacionit;

17) operacion

18) shoqërim - procesi i krijimit dhe zbatimit të versioneve të reja

produkt software. ;

19)përfundimi i operimit.

Këto veprime mund të grupohen në fazat kryesore të mëposhtme të zhvillimit të softuerit:

· deklarata e problemit (TOR) (sipas fazës GOST 19.102-77 ʼʼ Kushtet e referencësʼʼ)

· analiza e kërkesave dhe zhvillimi i specifikimeve (sipas GOST 19.102-77 faza ʼʼ Draft dizajnʼʼ)

· dizajn (sipas GOST 19.102-77 faza "Dizajni teknik")

· zbatimi (kodimi, testimi dhe korrigjimi) (sipas fazës GOST 19.102-77 "Draft i punës").

· funksionimin dhe mirëmbajtjen.

Cikli jetësor dhe fazat e zhvillimit të softuerit - koncepti dhe llojet. Klasifikimi dhe veçoritë e kategorisë "Cikli jetësor dhe fazat e zhvillimit të softuerit" 2017, 2018.

në inxhinieri elektrike). Ky standard përcakton një strukturë të ciklit jetësor që përmban proceset, aktivitetet dhe detyrat që duhet të kryhen gjatë krijimit të një sistemi softuerësh.

Në këtë standard PS (ose produkt software) përkufizohet si një koleksion i programeve kompjuterike, procedurave dhe ndoshta dokumentacionit dhe të dhënave të lidhura. Një proces përkufizohet si një grup veprimesh të ndërlidhura që transformojnë disa të dhëna hyrëse në dalje (G. Myers e quan këtë përkthim të dhënash). Çdo proces karakterizohet nga detyra dhe metoda të caktuara për zgjidhjen e tyre. Nga ana tjetër, çdo proces ndahet në një grup veprimesh dhe çdo veprim në një grup detyrash. Çdo proces, veprim ose detyrë inicohet dhe ekzekutohet nga një proces tjetër sipas nevojës, dhe nuk ka sekuenca të paracaktuara ekzekutimi (natyrisht, duke ruajtur lidhjet në të dhënat hyrëse).

Duhet të theksohet se në Bashkimin Sovjetik, dhe më pas në Rusi, krijimi i softuerit (softuerit) fillimisht, në vitet 70 të shekullit të kaluar, u rregullua nga standardet GOST ESPD ( Sistemi i unifikuar dokumentacioni i programit - seria GOST 19.ХХХ), të cilat u përqendruan në klasë në lidhje me programe të thjeshta vëllim i vogël i krijuar nga programues individualë. Aktualisht, këto standarde janë të vjetruara konceptualisht dhe në formë, periudha e vlefshmërisë së tyre ka skaduar dhe përdorimi i tyre është i papërshtatshëm.

Proceset e krijimit të sistemeve të automatizuara (AS), të cilat përfshijnë softuer, rregullohen nga standardet GOST 34.601-90. Teknologjia e informacionit. Një grup standardesh për sisteme të automatizuara. Fazat e krijimit", GOST 34.602-89 "Teknologjia e informacionit. Një grup standardesh për sistemet e automatizuara. Kushtet e referencës për krijimin e një sistemi të automatizuar" dhe GOST 34.603-92 "Teknologjia e informacionit. Llojet e testimit të sistemeve të automatizuara." Megjithatë, shumë nga dispozitat e këtyre standardeve janë të vjetruara dhe të tjerat nuk janë pasqyruar aq sa duhet për t'u përdorur për projekte serioze për krijimin e nënstacioneve. Prandaj, në zhvillimet e brendshme, këshillohet përdorimi i standardeve moderne ndërkombëtare. .

Në përputhje me standardin ISO/IEC 12207, të gjitha proceset e ciklit jetësor të softuerit ndahen në tre grupe (Fig. 5.1).


Oriz. 5.1.

Grupet përcaktojnë pesë procese kryesore: blerjen, dorëzimin, zhvillimin, funksionimin dhe mbështetjen. Tetë procese ndihmëse ofrojnë ekzekutimin e proceseve kryesore, përkatësisht dokumentacionin, menaxhimi i konfigurimit, sigurimi i cilësisë, verifikimi, certifikimi, vlerësimi i përbashkët, auditimi, zgjidhja e problemit. Katër procesi organizativ ofrojnë menaxhim, krijimin e infrastrukturës, përmirësim dhe trajnim.

5.2. Proceset kryesore të ciklit jetësor të PS

Procesi i blerjes përbëhet nga veprimet dhe detyrat e klientit që blen softuerin. Ky proces mbulon aktivitetet e mëposhtme:

  1. fillimi i blerjes;
  2. përgatitja e propozimeve të ofertave;
  3. përgatitja dhe rregullimi i kontratës;
  4. mbikëqyrjen e aktiviteteve të furnizuesit;
  5. pranimi dhe përfundimi i punës.

Fillimi i një blerjeje përfshin detyrat e mëposhtme:

  1. përcaktimi nga konsumatori i nevojave të tij për blerjen, zhvillimin ose përmirësimin e një sistemi, produkte softuerike ose shërbime;
  2. marrjen e vendimeve në lidhje me blerjen, zhvillimin ose përmirësimin e softuerit ekzistues;
  3. kontrollimi i disponueshmërisë së dokumentacionit të nevojshëm, garancive, certifikatave, licencave dhe mbështetjes në rast të blerjes së një produkti softuer;
  4. përgatitjen dhe miratimin e planit të blerjes, duke përfshirë kërkesat e sistemit, llojin e kontratës, përgjegjësitë e palëve, etj.

Propozimet për aplikim duhet të përmbajnë:

  1. kërkesat për sistemin;
  2. lista e produkteve softuerike;
  3. kushtet e blerjes dhe marrëveshjes;
  4. kufizime teknike (për shembull, në mjedisin e funksionimit të sistemit).

Ofertat i dërgohen furnizuesit të përzgjedhur ose disa furnizuesve në rast të një tenderi. Furnizuesi është një organizatë që lidh një kontratë me një klient për furnizimin e një sistemi, softueri ose shërbimi softuerësh sipas kushteve të përcaktuara në kontratë.

Përgatitja dhe rregullimi i kontratës përfshin detyrat e mëposhtme:

  1. përcaktimi nga klienti i një procedure për zgjedhjen e një furnizuesi, duke përfshirë kriteret për vlerësimin e propozimeve nga furnitorët e mundshëm;
  2. përzgjedhja e një furnizuesi specifik bazuar në analizën e propozimeve;
  3. përgatitjen dhe përfundimin marrëveshjet me furnizuesin;
  4. duke bërë ndryshime (nëse është e nevojshme) në kontratë gjatë zbatimit të saj.

Mbikëqyrja e aktiviteteve të furnizuesit kryhet në përputhje me veprimet e parashikuara në proceset e përbashkëta të vlerësimit dhe auditimit. Gjatë procesit të pranimit përgatiten dhe kryhen testet e nevojshme. Përfundimi i punës sipas kontratës kryhet nëse plotësohen të gjitha kushtet e pranimit.

Procesi i dorëzimit mbulon aktivitetet dhe detyrat e kryera nga furnizuesi i cili furnizon klientin me një produkt ose shërbim softuerësh. Ky proces përfshin hapat e mëposhtëm:

  1. fillimi i dorëzimit;
  2. përgatitja e një përgjigjeje për propozimet e ofertave;
  3. përgatitja e kontratës;
  4. planifikimi i punës sipas kontratës;
  5. ekzekutimin dhe kontrollin e punëve me kontratë dhe vlerësimin e tyre;
  6. dorëzimi dhe përfundimi i punës.

Fillimi i dorëzimit konsiston në shqyrtimin e ofertës nga furnizuesi dhe vendosjen nëse do të pajtohet me kërkesat dhe kushtet e deklaruara ose do të ofrojë të tyren (të rënë dakord). Planifikimi përfshin detyrat e mëposhtme:

  1. marrjen e një vendimi nga furnizuesi në lidhje me kryerjen e punës vetë ose me përfshirjen e një nënkontraktori;
  2. zhvillimi nga furnizuesi i një plani të menaxhimit të projektit që përmban strukturën organizative të projektit, përcaktimin e përgjegjësive, kërkesat teknike për mjedisin dhe burimet e zhvillimit, menaxhimin e nënkontraktorëve, etj.

Procesi i zhvillimit përfshin veprimet dhe detyrat e kryera nga zhvilluesi dhe mbulon punën e krijimit të softuerit dhe përbërësve të tij në përputhje me kërkesat e specifikuara. Kjo përfshin përgatitjen e dokumentacionit të projektimit dhe operacional, përgatitjen e materialeve të nevojshme për testimin e performancës dhe cilësinë e produkteve softuerike, materialet e nevojshme për organizimin e trajnimit të personelit, etj.

Procesi i zhvillimit përfshin hapat e mëposhtëm:

  1. punë përgatitore;
  2. analiza e kërkesave të sistemit;
  3. dizajni i arkitekturës së sistemit;
  4. analiza e kërkesave të softuerit;
  5. dizajni i arkitekturës së softuerit;
  6. dizajn i detajuar i softuerit;
  7. kodimi dhe testimi i softuerit;
  8. integrimi i softuerit;
  9. testimi i kualifikimit të softuerit;
  10. integrimi i sistemit;
  11. testimi i kualifikimit të sistemit;
  12. instalimi i softuerit;
  13. pranimi i softuerit.

Puna përgatitore fillon me zgjedhjen e një modeli të ciklit jetësor të softuerit që korrespondon me shkallën, rëndësinë dhe kompleksitetin e projektit. Aktivitetet dhe detyrat e procesit të zhvillimit duhet të korrespondojnë me modelin e zgjedhur. Zhvilluesi duhet të zgjedhë, të përshtatet me kushtet e projektit dhe të përdorë standardet, metodat dhe mjetet e zhvillimit, si dhe harton planin e ekzekutimit të punës.

Analiza e kërkesave për sistemin përfshin përcaktimin e funksionalitetit të tij, kërkesat e përdoruesit, kërkesat për besueshmërinë, sigurinë, kërkesat për ndërfaqet e jashtme, performancën, etj. Kërkesat e sistemit vlerësohen bazuar në kriteret e fizibilitetit dhe testueshmërisë.

Projektimi i arkitekturës së një sistemi përfshin përcaktimin e komponentëve të harduerit të tij (hardware), softuerit dhe operacioneve të kryera nga personeli që operon sistemin. Arkitektura e sistemit duhet të jetë në përputhje me kërkesat e sistemit dhe standardet dhe praktikat e pranuara të projektimit.

Analiza e kërkesave të softuerit përfshin përcaktimin e karakteristikave të mëposhtme për secilin komponent të softuerit:

  1. funksionalitetin, duke përfshirë karakteristikat e performancës dhe mjedisin e funksionimit të komponentit;
  2. ndërfaqet e jashtme;
  3. specifikimet e besueshmërisë dhe sigurisë;
  4. kërkesat ergonomike;
  5. kërkesat për të dhënat e përdorura;
  6. kërkesat e instalimit dhe pranimit;
  7. kërkesat për dokumentacionin e përdoruesit;
  8. kërkesat për funksionim dhe mirëmbajtje.

Kërkesat e softuerit vlerësohen në bazë të kritereve të përputhshmërisë me kërkesat për sistemin në tërësi, fizibilitetit dhe testueshmërisë.

Dizajni i arkitekturës së softuerit përfshin detyrat e mëposhtme për secilin komponent të softuerit:

  1. transformimi i kërkesave të softuerit në një arkitekturë që përcakton në një nivel të lartë strukturën e softuerit dhe përbërjen e komponentëve të tij;
  2. zhvillimi dhe dokumentimi i ndërfaqeve të softuerit dhe bazave të të dhënave (DB);
  3. zhvillimi i një versioni paraprak të dokumentacionit të përdoruesit;
  4. zhvillimin dhe dokumentimin e kërkesave të testimit paraprak dhe planit të integrimit të softuerit.

Dizajni i detajuar i softuerit përfshin detyrat e mëposhtme:

  1. përshkrimi i komponentëve të softuerit dhe ndërfaqeve ndërmjet tyre në një nivel më të ulët të mjaftueshëm për kodimin dhe testimin e mëvonshëm;
  2. zhvillimin dhe dokumentimin e një dizajni të detajuar të bazës së të dhënave;
  3. përditësimi (nëse është e nevojshme) dokumentacioni i përdoruesit;
  4. zhvillimin dhe dokumentimin e kërkesave të testimit dhe një plan testimi për komponentët e softuerit;

Kodimi dhe testimi i softuerit përfshin detyrat e mëposhtme:

  1. kodimin dhe dokumentimin e çdo komponenti softuerik dhe bazën e të dhënave, si dhe përgatitjen e një grupi procedurash testimi dhe të dhënash për testimin e tyre;
  2. testimin e çdo softueri dhe komponenti të bazës së të dhënave për pajtueshmërinë me kërkesat për to, e ndjekur nga dokumentacioni i rezultateve të testimit;
  3. përditësimi i dokumentacionit (nëse është e nevojshme);
  4. përditësimin e planit të integrimit të softuerit.

Integrimi i softuerit përfshin montimin e komponentëve të softuerit të zhvilluar në përputhje me planin e integrimit dhe testimit për komponentët e grumbulluar. Për secilin nga komponentët e grumbulluar, grupet e testimit dhe procedurat e testimit janë zhvilluar për të verifikuar secilën nga kërkesat e kualifikimit gjatë testimit të mëpasshëm të kualifikimit. Kërkesa për kualifikimështë një grup kriteresh ose kushtesh që duhet të plotësohen për t'u kualifikuar produkt software pasi plotëson specifikimet e tij dhe gati për përdorim në terren.

Testimi i kualifikimit të softuerit kryhet nga zhvilluesi në prani të klientit (

Procesi i funksionimit mbulon aktivitetet dhe detyrat e organizatës së operatorit që operon sistemin. Procesi i funksionimit përfshin hapat e mëposhtëm.

  1. Puna përgatitore, e cila përfshin operatorin që kryen detyrat e mëposhtme:

    1. planifikimi i aktiviteteve dhe punës së kryer gjatë operimit dhe vendosja e standardeve operacionale;
    2. përcaktimin e procedurave për lokalizimin dhe zgjidhjen e problemeve që dalin gjatë operimit.
  2. Testimi operacional i kryer për çdo botim pasues të një produkti softuer, pas të cilit ky botim vihet në funksion.
  3. Funksionimi aktual i sistemit, i cili kryhet në mjedisin e destinuar për këtë në përputhje me dokumentacionin e përdoruesit.
  4. analiza e problemeve dhe kërkesave për modifikim të softuerit (analiza e mesazheve për një problem ose kërkesë për modifikim, vlerësimi i shkallës, kostoja e modifikimit, efekti që rezulton, vlerësimi i fizibilitetit të modifikimit);
  5. modifikimi i softuerit (duke bërë ndryshime në komponentët dhe dokumentacionin e produktit softuerik në përputhje me rregullat e procesit të zhvillimit);
  6. verifikimi dhe pranimi (përsa i përket integritetit të sistemit të modifikuar);
  7. transferimi i softuerit në një mjedis tjetër (konvertimi i programeve dhe të dhënave, funksionimi paralel i softuerit në mjedisin e vjetër dhe të ri për një periudhë të caktuar kohore);
  8. çmontimi i softuerit me vendim të klientit me pjesëmarrjen e organizatës operative, shërbimit mbështetës dhe përdoruesve. Në këtë rast, produktet softuerike dhe dokumentacioni i nënshtrohen arkivimit në përputhje me marrëveshjen.

Koncepti i ciklit jetësor të softuerit (SOLC) është një nga ato bazë në inxhinierinë e softuerit. Cikli jetësor përkufizohet si një periudhë kohore që fillon nga momenti kur merret një vendim për nevojën e krijimit të softuerit dhe përfundon në momentin që ai hiqet plotësisht nga shërbimi.

Në përputhje me standardin ISO/IEC 12207, të gjitha proceset e ciklit jetësor ndahen në tre grupe (Fig. 2.1).

Nën modeli i ciklit jetësor Softueri kuptohet si një strukturë që përcakton sekuencën e ekzekutimit dhe marrëdhëniet e proceseve, veprimeve dhe detyrave gjatë gjithë ciklit jetësor. Kjo varet nga specifikat, shkalla dhe kompleksiteti i projektit dhe kushtet specifike në të cilat sistemi është krijuar dhe funksionon. Cikli i jetës së softuerit zakonisht përfshin fazat e mëposhtme:

1. Formimi i kërkesave për softuer.

2. Dizajn.

3. Zbatimi.

4.Testimi.

5. Vënia në punë.

6. Funksionimi dhe mirëmbajtja.

7. Dekomisionimi.

Aktualisht, modelet kryesore të mëposhtme të ciklit të jetës së softuerit përdoren më gjerësisht:

a) kaskada dhe

b) spirale (evolucionare).

E para u përdor për programe të vogla që përbëjnë një tërësi të vetme. Tipar themelor qasje kaskadeështë se kalimi në fazën tjetër kryhet vetëm pasi puna në atë aktuale është përfunduar plotësisht dhe nuk sigurohet kthime në fazat e përfunduara. Diagrami i tij është paraqitur në Fig. 2.2.

Përparësitë e përdorimit të modelit të kaskadës janë si më poshtë:

Në çdo fazë formohet një grup i plotë dokumentacionin e projektit;

Fazat e punës që po kryhen bëjnë të mundur planifikimin e datës së përfundimit dhe kostove përkatëse.

Ky model përdoret për sistemet për të cilat të gjitha kërkesat mund të formulohen saktësisht në fillim të zhvillimit. Këto përfshijnë, për shembull, sisteme në të cilat kryesisht zgjidhen problemet llogaritëse. Proceset reale zakonisht kanë një natyrë përsëritëse: rezultatet e fazës tjetër shpesh shkaktojnë ndryshime në zgjidhjet e projektimit të zhvilluara në fazat e mëparshme. Kështu, modeli më i zakonshëm është me kontrollin e ndërmjetëm, i cili tregohet në Fig. 2.3.

Disavantazhi kryesor i qasjes së kaskadës është një vonesë e konsiderueshme në marrjen e rezultateve dhe, si rezultat, një rrezik mjaft i lartë për krijimin e një sistemi që nuk plotëson nevojat në ndryshim të përdoruesve.

Këto probleme eliminohen në modeli i ciklit jetësor spirale (Fig. 2.4). Karakteristika e tij themelore është se softueri aplikativ nuk krijohet menjëherë, si në rastin e qasjes së kaskadës, por në pjesë duke përdorur metodën prototipizim . Një prototip kuptohet si një komponent i softuerit që funksionon që zbaton funksionet individuale dhe ndërfaqen e jashtme të softuerit të zhvilluar. Krijimi i prototipeve kryhet në disa përsëritje - kthesa spirale.

Modeli kaskadë (evolucionar) mund të paraqitet në formën e një diagrami, i cili është paraqitur në figurën 2.5.

Një nga rezultatet e përdorimit të modelit të ciklit jetësor spirale është metoda e përdorur gjerësisht e të ashtuquajturës zhvillimi i shpejtë i aplikacioneve , ose RAD (Zhvillimi i shpejtë i aplikacionit). Cikli i jetës së softuerit sipas kësaj metode përfshin katër faza:

1) analiza dhe planifikimi i kërkesave;

2) dizajni;

3) zbatimi;

4) zbatimi.

Analiza e ciklit jetësor të programit ju lejon të sqaroni përmbajtjen dhe të nënvizoni proceset e mëposhtme për hartimin e sistemeve komplekse.

1) Strategjia;

2) Analiza;

3) Dizajn;

4) Zbatimi;

5) Testimi;

6) Zbatimi;

7) Operacioni dhe mbështetje teknike.

Strategjia

Përcaktimi i një strategjie përfshin ekzaminimin e sistemit. Objektivi kryesor i anketës është të vlerësojë qëllimin real të projektit, qëllimet dhe objektivat e tij, si dhe të marrë përkufizime të nivelit të lartë të subjekteve dhe funksioneve. Në këtë fazë, tërhiqen analistë biznesi shumë të kualifikuar të cilët kanë akses të vazhdueshëm në menaxhmentin e kompanisë. Gjithashtu, pritet ndërveprim i ngushtë me përdoruesit kryesorë të sistemit dhe ekspertët e biznesit. Detyra kryesore e një ndërveprimi të tillë është të marrë informacion sa më të plotë për sistemin, të kuptojë qartë kërkesat e klientit dhe të transferojë informacionin e marrë në një formë të formalizuar tek analistët e sistemit. Në mënyrë tipike, informacioni rreth sistemit mund të merret përmes një sërë bisedash (ose seminaresh) me menaxhmentin, ekspertët dhe përdoruesit.

Rezultati i fazës së përcaktimit të strategjisë është një dokument që shpreh qartë sa vijon:

Çfarë saktësisht i detyrohet klientit nëse ai pranon të financojë projektin;

Kur do të mund të marrë produktin e përfunduar (orari i punës);

Sa do t'i kushtojë atij (orari i financimit të fazave të punës për projekte të mëdha).

Dokumenti duhet të pasqyrojë jo vetëm kostot, por edhe përfitimet, për shembull, periudhën e pritshme të shlyerjes së projektit efekt ekonomik(nëse mund të vlerësohet).

Faza e konsideruar e ciklit jetësor të softuerit mund të përfaqësohet vetëm një herë në model, veçanërisht nëse modeli ka një strukturë ciklike. Kjo nuk do të thotë se në modelet ciklike planifikimi strategjik bëhet një herë e përgjithmonë. Në modele të tilla, fazat e përcaktimit dhe analizës së strategjisë janë, si të thuash, të kombinuara, dhe ndarja e tyre ekziston vetëm në fazën e parë, kur menaxhmenti i ndërmarrjes merr një vendim themelor për fillimin e projektit. Në përgjithësi fazë strategjike i kushtohet zhvillimit të një dokumenti në nivelin e menaxhimit të ndërmarrjes.

Faza e analizës përfshin një studim të detajuar të proceseve të biznesit (funksionet e përcaktuara në fazën e mëparshme) dhe informacionin e nevojshëm për zbatimin e tyre (entitetet, atributet e tyre dhe lidhjet (marrëdhëniet)). Kjo fazë prodhon një model informacioni, dhe faza tjetër e projektimit prodhon një model të dhënash.

Të gjitha informacionet rreth sistemit të mbledhura në fazën e përcaktimit të strategjisë formalizohen dhe qartësohen në fazën e analizës. Vëmendje e veçantë I kushton vëmendje plotësisë së informacionit të marrë, analizës së tij për konsistencë, si dhe kërkimit të informacionit të papërdorur ose të kopjuar. Si rregull, klienti së pari formon kërkesa jo për sistemin në tërësi, por për komponentët e tij individualë. Dhe në këtë rast të veçantë, modelet ciklike të ciklit jetësor të softuerit kanë një avantazh, pasi ka të ngjarë të kërkohet ri-analizë me kalimin e kohës, pasi klienti shpesh ka një oreks kur ha. Në këtë fazë, përcaktohen komponentët e nevojshëm të planit të testimit.

Analistët mbledhin dhe regjistrojnë informacione në dy forma të ndërlidhura:

a) funksionet - informacione për ngjarjet dhe proceset që ndodhin në biznes;

b) entitete - informacione për objektet që janë të rëndësishme për organizatën dhe për të cilat dihet diçka.

Kjo krijon diagrame të komponentëve, rrjedhave të të dhënave dhe cikleve të jetës që përshkruajnë dinamikën e sistemit. Këto do të diskutohen më vonë.

Dizajn

Në fazën e projektimit, formohet një model i të dhënave. Projektuesit përpunojnë të dhënat e analizës. Produkti përfundimtar i fazës së projektimit është një skemë e bazës së të dhënave (nëse ekziston në projekt) ose një skemë e depove të të dhënave (modeli ER) dhe një grup specifikimesh të moduleve të sistemit (modeli i funksionit).

Në një projekt të vogël (për shembull, një kurs), të njëjtët njerëz mund të veprojnë si analistë, projektues dhe zhvillues. Diagramet dhe modelet e listuara më sipër ndihmojnë për të gjetur, për shembull, të pa përshkruar fare, komponentë të sistemit të përshkruar në mënyrë të paqartë, të përshkruar në mënyrë jokonsistente dhe mangësi të tjera, gjë që ndihmon në parandalimin e gabimeve të mundshme.

Të gjitha specifikimet duhet të jenë shumë të sakta. Plani i testimit të sistemit gjithashtu finalizohet gjatë kësaj faze zhvillimi. Në shumë projekte, rezultatet e fazës së projektimit zyrtarizohen në formën e një dokumenti të vetëm - i ashtuquajturi specifikim teknik. Në të njëjtën kohë aplikim të gjerë mori gjuhën UML, e cila ju lejon të merrni njëkohësisht dokumentet e analizës, të cilat janë më pak të detajuara (konsumatorët e tyre janë menaxherë prodhimi), dhe dokumentet e projektimit (konsumatorët e tyre janë menaxherë të grupeve të zhvillimit dhe testimit). Kjo gjuhë do të diskutohet më vonë. Softueri i ndërtuar duke përdorur UML e bën më të lehtë gjenerimin e kodit - të paktën hierarkinë e klasës, si dhe disa pjesë të kodit të vetë metodave (procedurave dhe funksioneve).

Objektivat e projektimit janë:

Rishikimi i rezultateve të analizës dhe kontrollimi i plotësisë së tyre;

Seminare me klientin;

Identifikimi i zonave kritike të projektit dhe vlerësimi i kufizimeve të tij;

Përkufizimi i arkitekturës së sistemit;

Vendimi për përdorimin e produkteve të palëve të treta, si dhe për metodat e integrimit dhe mekanizmat për shkëmbimin e informacionit me këto produkte;

Dizajni i magazinës së të dhënave: modeli i bazës së të dhënave;

Dizajni i procesit dhe kodit: përzgjedhja përfundimtare e mjeteve të zhvillimit, përcaktimi i ndërfaqeve të programit, hartëzimi i funksioneve të sistemit në modulet e tij dhe përcaktimi i specifikimeve të modulit;

Përcaktimi i kërkesave për procesin e testimit;

Përcaktimi i kërkesave të sigurisë së sistemit.

Zbatimi

Kur zbatoni një projekt, është veçanërisht e rëndësishme të koordinoni ekipin(et) e zhvillimit. Të gjithë zhvilluesit i nënshtrohen rregullave strikte të kontrollit të burimit. Ata, pasi kanë marrë projekt teknik, filloni të shkruani kodin e modulit. Detyra kryesore e zhvilluesve është të kuptojnë specifikimin: projektuesi shkruan atë që duhet bërë, dhe zhvilluesi përcakton se si ta bëjë atë.

Në fazën e zhvillimit, ekziston një ndërveprim i ngushtë midis projektuesve, zhvilluesve dhe grupeve të testimit. Në rastin e zhvillimit intensiv, testuesi është fjalë për fjalë i pandashëm nga zhvilluesi, duke u bërë efektivisht një anëtar i ekipit të zhvillimit.

Më shpesh, ndërfaqet e përdoruesve ndryshojnë gjatë fazës së zhvillimit. Kjo është për shkak të demonstrimit periodik të moduleve tek klienti. Ai gjithashtu mund të ndryshojë ndjeshëm pyetjet e të dhënave.

Faza e zhvillimit shoqërohet me fazën e testimit dhe të dy proceset zhvillohen paralelisht. Sistemi i gjurmimit të gabimeve sinkronizon veprimet e testuesve dhe zhvilluesve.

Defektet duhet të klasifikohen sipas përparësisë. Për çdo klasë gabimesh, duhet të përcaktohet një strukturë e qartë e veprimeve: "çfarë duhet bërë", "sa urgjente", "kush është përgjegjës për rezultatin". Çdo problem duhet të gjurmohet nga projektuesi/zhvilluesi/testuesi përgjegjës për rregullimin e tij. E njëjta gjë vlen edhe për situatat kur shkelet zhvillimi i planifikuar dhe shpërndarja e moduleve për testim.

Përveç kësaj, duhet të organizohen depo të moduleve të gatshme të projektit dhe bibliotekave që përdoren gjatë montimit të moduleve. Kjo depo azhurnohet vazhdimisht. Një person duhet të kontrollojë procesin e përditësimit. Një depo është krijuar për modulet që kanë kaluar testimin funksional, e dyta - për modulet që kanë kaluar testimin e lidhjes. E para është skica, e dyta është diçka nga e cila tashmë është e mundur të montoni një komplet të shpërndarjes së sistemit dhe t'ia demonstroni atë klientit për kryerjen e testeve të kontrollit ose për të kaluar çdo fazë të punës.

Testimi

Ekipet e testimit mund të përfshihen në bashkëpunim tashmë në fazat e hershme të zhvillimit të projektit. Në mënyrë tipike, testimi kompleks ndahet në një fazë të veçantë zhvillimi. Në varësi të kompleksitetit të projektit, testimi dhe rregullimi i gabimeve mund të marrin një të tretën, gjysmën e kohës totale të shpenzuar për të punuar në projekt, ose edhe më shumë.

Sa më kompleks të jetë projekti, aq më e madhe është nevoja për të automatizuar sistemin e gjurmimit të gabimeve, i cili ofron funksionet e mëposhtme:

Ruajtja e mesazhit të gabimit (me cilin komponent të sistemit lidhet gabimi, kush e gjeti, si ta riprodhojë, kush është përgjegjës për rregullimin e tij, kur duhet rregulluar);

Sistemi i njoftimeve për shfaqjen e gabimeve të reja, për ndryshimet në statusin e gabimeve të njohura në sistem (njoftime nga email);

Raporte mbi gabimet aktuale për komponentët e sistemit;

Informacion në lidhje me gabimin dhe historinë e tij;

Rregullat për qasjen në gabime të kategorive të caktuara;

Ndërfaqja e aksesit të kufizuar në sistemin e gjurmimit të gabimeve për përdoruesin përfundimtar.

Sisteme të tilla marrin shumë problemet organizative, në veçanti çështjet e njoftimit automatik të gabimeve.

Vetë testet e sistemit zakonisht ndahen në disa kategori:

a) testet offline module; ato përdoren tashmë në fazën e zhvillimit të komponentëve të sistemit dhe ju lejojnë të gjurmoni gabimet e përbërësve individualë;

b) testet e lidhjes komponentët e sistemit; këto teste përdoren gjithashtu në fazën e zhvillimit, ato ju lejojnë të monitoroni ndërveprimin dhe shkëmbimin e saktë të informacionit midis komponentëve të sistemit;

c) testi i sistemit ; është kriteri kryesor për pranimin e sistemit; si rregull, ky është një grup testesh që përfshin teste autonome, teste lidhjeje dhe modele; një test i tillë duhet të riprodhojë funksionimin e të gjithë komponentëve dhe funksioneve të sistemit; qëllimi i tij kryesor është pranimi i brendshëm i sistemit dhe vlerësimi i cilësisë së tij;

d) test pranimi; qëllimi i tij kryesor është t'ia dorëzojë sistemin klientit;

e) testet e performancës dhe ngarkesës; Ky grup testesh përfshihet në sistemin një, ai është kryesori për vlerësimin e besueshmërisë së sistemit.

Secili grup përfshin domosdoshmërisht testet e modelimit të dështimit. Ata testojnë përgjigjen e një komponenti, një grupi komponentësh dhe të sistemit në tërësi ndaj dështimeve të mëposhtme:

Një komponent i veçantë i sistemit të informacionit;

Grupet e komponentëve të sistemit;

Modulet kryesore të sistemit;

Sistemi operativ;

Dështim i fortë (dështim i energjisë, dështim i hard drive-it).

Këto teste bëjnë të mundur vlerësimin e cilësisë së nënsistemit për rivendosjen e gjendjes së duhur të sistemit të informacionit dhe shërbejnë si burimi kryesor i informacionit për zhvillimin e strategjive për të parandaluar pasojat negative të dështimeve gjatë funksionimit industrial.

Një aspekt tjetër i rëndësishëm i një programi të testimit të sistemeve të informacionit është disponueshmëria e gjeneratorëve të të dhënave të testimit. Ato përdoren për të kryer teste të funksionalitetit, besueshmërisë dhe performancës së sistemit. Problemi i vlerësimit të karakteristikave të varësisë së performancës së një sistemi informacioni nga rritja e vëllimeve të informacionit të përpunuar nuk mund të zgjidhet pa gjenerues të të dhënave.

Zbatimi

Operacioni i provës mbivendos procesin e testimit. Sistemi rrallëherë zbatohet plotësisht. Në mënyrë tipike, ky është një proces gradual ose përsëritës (në rastin e një cikli jetësor ciklik).

Komisionimi kalon në të paktën tre faza:

2) grumbullimi i informacionit;

3) arritja e kapacitetit të projektimit (d.m.th., kalimi aktual në fazën e funksionimit).

informacioni mund të shkaktojë një gamë mjaft të ngushtë gabimesh: kryesisht, mospërputhja e të dhënave gjatë ngarkimit dhe gabimet e vetë ngarkuesit. Metodat e kontrollit të cilësisë së të dhënave përdoren për identifikimin dhe eliminimin e tyre. Gabime të tilla duhet të korrigjohen sa më shpejt që të jetë e mundur.

Gjatë grumbullimi i informacionit zbulohet në sistemin e informacionit numri më i madh gabime që lidhen me aksesin me shumë përdorues. Kategoria e dytë e rregullimeve lidhet me faktin se përdoruesi nuk është i kënaqur me ndërfaqen. Në të njëjtën kohë, modelet ciklike dhe modelet me reagime skenike mund të ulin kostot. Kjo fazë është gjithashtu testi më serioz - testet e pranimit të klientit.

Sistemi arrin kapacitetin e projektimit V opsion i mirë- ky është rregullim i saktë i gabimeve të vogla dhe gabimeve të rralla serioze.

Operacioni dhe mbështetja teknike

Në këtë fazë, dokumenti i fundit për zhvilluesit është certifikata e pranimit teknik. Dokumenti përcakton personelin e nevojshëm dhe pajisjet e nevojshme për të mbështetur funksionalitetin e sistemit, si dhe kushtet për dështimin e produktit dhe përgjegjësitë e palëve. Për më tepër, termat dhe kushtet e mbështetjes teknike zakonisht hartohen si një dokument i veçantë.

Koncepti i "ciklit jetësor" nënkupton diçka që lind, zhvillohet dhe vdes. Ashtu si një organizëm i gjallë, produktet softuerike krijohen, operohen dhe zhvillohen me kalimin e kohës.

Cikli jetësor softueri përfshin të gjitha fazat e zhvillimit të tij: nga shfaqja e nevojës për të deri në ndërprerjen e plotë të përdorimit të tij për shkak të vjetërsimit ose humbjes së nevojës për të zgjidhur problemet përkatëse.

Mund të dallojmë disa faza të ekzistencës së një produkti softuer gjatë ciklit të tij jetësor. Nuk ka ende emra të pranuar përgjithësisht për këto faza dhe numrin e tyre. Por nuk ka ndonjë mosmarrëveshje të veçantë për këtë çështje. Prandaj, ekzistojnë disa opsione për ndarjen e ciklit jetësor të softuerit në faza. Nëse kjo ndarje e veçantë është më e mirë se të tjerat nuk është pyetja kryesore. Gjëja kryesore është të organizoni siç duhet zhvillimin e softuerit duke marrë parasysh ato.

Bazuar në kohëzgjatjen e ciklit të tyre jetësor, produktet softuerike mund të ndahen në dy klasa: i vogël Dhe jetë e gjatë. Këto klasa programesh korrespondojnë me një qasje fleksibël (të butë) për krijimin dhe përdorimin e tyre dhe një qasje të vështirë industriale ndaj dizajnit dhe funksionimit të rregulluar të produkteve softuerike. NË organizatat shkencore dhe universitetet, për shembull, mbizotëron zhvillimi i programeve të klasit të parë, dhe në organizatat e projektimit dhe industriale - i dyti.

Produkte softuerike me jetëgjatësi të shkurtër janë krijuar kryesisht për të zgjidhur probleme shkencore dhe inxhinierike, për të marrë rezultate specifike llogaritëse. Programe të tilla janë zakonisht relativisht të vogla. Ato zhvillohen nga një specialist ose një grup i vogël. Ideja kryesore programi diskutohet nga një programues dhe përdoruesi përfundimtar. Disa detaje janë hedhur në letër dhe projekti përfundon brenda pak ditësh ose javësh. Ato nuk janë të destinuara për riprodhim ose transferim për përdorim të mëvonshëm në grupe të tjera. Në thelb, programe të tilla janë pjesë e punës kërkimore-shkencore dhe nuk mund të konsiderohen si produkte softuerike të tjetërsueshme.

Cikli jetësor i tyre përbëhet nga një interval i gjatë i analizës së sistemit dhe formalizimi i problemit, një fazë e rëndësishme e hartimit të programit dhe një kohë relativisht e shkurtër e funksionimit dhe marrjes së rezultateve. Kërkesat për karakteristikat funksionale dhe të projektimit, si rregull, nuk janë të zyrtarizuara dhe nuk ka teste formale të programeve. Treguesit e cilësisë së tyre kontrollohen vetëm nga zhvilluesit në përputhje me idetë e tyre joformale.

Produkte softuerike me jetëgjatësi të shkurtër

Mirëmbajtja dhe modifikimi i programeve të tilla nuk kërkohet dhe cikli i jetës së tyre përfundon pas marrjes së rezultateve të llogaritjes. Kostot kryesore në ciklin jetësor të programeve të tilla bien në fazat e analizës dhe projektimit të sistemit, të cilat zgjasin nga një muaj deri në 1...2 vjet, si rezultat.

ku cikli i jetës së një produkti softuerik rrallë i kalon 3 vjet.

Produkte softuerike me një jetë të gjatë shërbimi janë krijuar për përpunimin dhe menaxhimin e rregullt të informacionit. Struktura e programeve të tilla është komplekse. Madhësitë e tyre mund të ndryshojnë shumë (1...1000 mijë komanda), por të gjitha kanë vetitë e njohjes dhe mundësinë e modifikimit gjatë mirëmbajtjes dhe përdorimit afatgjatë nga specialistë të ndryshëm. Produktet softuerike të kësaj klase mund të përsëriten, ato shoqërohen me dokumentacion si produkte industriale dhe përfaqësojnë produkte softuerike të tjetërsuar nga zhvilluesi.

Produkte softuerike me një jetë të gjatë shërbimi

Dizajni dhe funksionimi i tyre kryhen nga ekipe të mëdha specialistësh, gjë që kërkon formalizimin e sistemit softuerik, si dhe testimin e zyrtarizuar dhe përcaktimin e treguesve të cilësisë së arritur të produktit përfundimtar. Cikli jetësor i tyre është 10...20 vjet. Deri në 70...90% të kësaj kohe shpenzohet për funksionimin dhe mirëmbajtjen. Për shkak të riprodhimit masiv dhe mirëmbajtjes afatgjatë, kostot totale gjatë funksionimit dhe mirëmbajtjes së produkteve të tilla softuerike tejkalojnë ndjeshëm kostot e analizës dhe projektimit të sistemit.

I gjithë prezantimi i mëpasshëm fokusohet në temën e zhvillimit të madh (kompleks) software menaxhimi dhe përpunimi i informacionit.

Modeli i përgjithësuar cikli jetësor Produkti i softuerit mund të duket si ky:

I. Analiza e sistemit:

a) kërkime;

b) analiza e fizibilitetit:

Operacionale;

Ekonomik;

Komerciale.

II. Dizajni i softuerit:

a) dizajni:

Zbërthimi funksional i sistemit, arkitektura e tij;

Dizajn i jashtëm i softuerit;

Dizajni i bazës së të dhënave;

Arkitektura e softuerit;

b) programimi:

Dizajn i brendshëm i softuerit;

Dizajn i jashtëm i moduleve softuerike;

Dizajn i brendshëm i moduleve softuerike;

Kodimi;

Programet e korrigjimit;

Paraqitja e programit;

c) korrigjimi i softuerit.

III. Vlerësimi (testimi) i softuerit.

IV. Përdorimi i softuerit:

a) operacion;

b) shoqërim.

I. Analiza e sistemit. Në fillim të zhvillimit të softuerit, kryhet një analizë e sistemit (projektimi paraprak), gjatë së cilës përcaktohet nevoja për të, qëllimi i tij dhe karakteristikat kryesore funksionale. Janë vlerësuar kostot dhe efektiviteti i mundshëm i përdorimit të produktit të ardhshëm softuer.

Në këtë fazë, përpilohet një listë e kërkesave, domethënë një përkufizim i qartë i asaj që pret përdoruesi produkt i përfunduar. Këtu përcaktohen qëllimet dhe objektivat, për hir të të cilave zhvillohet vetë projekti. Në fazën e analizës së sistemit mund të dallohen dy drejtime: hulumtimi dhe analiza e fizibilitetit.

Hulumtimi fillon që nga momenti kur menaxheri i zhvillimit e kupton nevojën për softuerin.

Puna konsiston në planifikimin dhe koordinimin e aktiviteteve të nevojshme për të përgatitur një listë zyrtare, të shkruar me dorë të kërkesave për produktin softuer që po zhvillohet.

Hulumtimi përfundon kur kërkesat janë formuar në atë mënyrë që ato të bëhen të dukshme dhe, nëse është e nevojshme, të mund të modifikohen dhe miratohen nga drejtuesi përgjegjës.

Analiza e Fizibilitetit ka pjesa teknike kërkimi dhe fillon kur qëllimi i menaxhmentit është mjaft i fortë sa që një menaxher projekti të caktohet për të organizuar projektimin dhe shpërndarjen e burimeve (punës).

Puna konsiston në studimin e produktit softuerik të propozuar për të marrë një vlerësim praktik të fizibilitetit të projektit, në veçanti, përcaktohen sa vijon:

- fizibiliteti operacional , A do të jetë produkti mjaft i përshtatshëm për përdorim praktik?

- fizibiliteti ekonomik , A është e pranueshme kostoja e produktit që po zhvillohet? Sa është kjo kosto? A do të jetë produkti ekonomikisht mjet efektiv në duart e përdoruesit?

- fizibiliteti komercial, A do të jetë produkti tërheqës, i kërkuar, i lehtë për t'u instaluar, i lehtë për t'u mirëmbajtur, i lehtë për t'u mësuar?

Këto dhe çështje të tjera duhet të trajtohen kryesisht duke marrë parasysh kërkesat e mësipërme.

Studimi i fizibilitetit përfundon kur të jenë mbledhur dhe miratuar të gjitha kërkesat.

Përpara se të vazhdoni më tej me projektin, është e nevojshme të siguroheni që të gjitha informacionet e nevojshme janë marrë. Ky informacion duhet të jetë i saktë, i kuptueshëm dhe i zbatueshëm. Ai duhet të përfaqësojë një grup të plotë kërkesash që kënaqin përdoruesin për produktin softuer që po zhvillohet, të formalizuar në formën e një specifikimi.

Në rast mospërputhjeje këtë kërkesëështë e mundur të ngadalësohet ndjeshëm zbatimi i projektit në të ardhmen për shkak të kërkesave të përsëritura të përsëritura drejtuar përdoruesit për sqarimin e detajeve të interpretuara gabimisht, kushteve të paspecifikuara dhe, si rezultat, do të kërkohet ripërpunimi i pjesëve të tij tashmë të zhvilluara.

Shpesh gjatë periudhës së analizës së sistemit, merret një vendim për të ndaluar zhvillimin e mëtejshëm të softuerit.

II. Dizajni i softuerit. Dizajni është faza kryesore dhe vendimtare e ciklit jetësor të softuerit, gjatë së cilës krijohet një produkt softuerik dhe 90% merr formën e tij përfundimtare.

Kjo fazë e jetës mbulon lloje të ndryshme aktivitetet e projektit dhe mund të ndahen në tre faza kryesore: projektimi, programimi dhe korrigjimi i produktit softuer.

Ndërtimi zhvillimi i softuerit zakonisht fillon në fazën e analizës së fizibilitetit, sapo disa qëllime dhe kërkesa paraprake për të regjistrohen në letër.

Deri në momentin që kërkesat të miratohen, puna në fazën e projektimit do të jetë në lëvizje të plotë.

Në këtë fazë të jetës së softuerit, kryhen sa vijon:

Zbërthimi funksional i problemit që zgjidhet, në bazë të të cilit përcaktohet arkitektura e sistemit të kësaj detyre;

Dizajni i softuerit të jashtëm, i shprehur në formë ndërveprimi i jashtëm atë me përdoruesin;

Dizajnimi i bazës së të dhënave, nëse është e nevojshme;

Dizajni i arkitekturës së softuerit - përcaktimi i objekteve, moduleve dhe ndërfaqeve të tyre.

Fillon programimi tashmë në fazën e projektimit, sapo të bëhen të disponueshme specifikimet bazë për komponentët individualë të produktit softuer, por jo përpara miratimit të marrëveshjes së kërkesave. Mbivendosja e fazave të programimit dhe projektimit rezulton në kursime në kohën e përgjithshme të zhvillimit, si dhe në sigurimin e verifikimit të korrektësisë së vendimeve të projektimit dhe në disa raste ndikon në zgjidhjen e çështjeve kryesore.

Në këtë fazë, kryhet puna në lidhje me montimin e produktit softuer. Ai konsiston në hartimin e brendshëm të detajuar të një produkti softuer, në zhvillimin e logjikës së brendshme të çdo moduli të sistemit, i cili më pas shprehet në tekstin e një programi specifik.

Faza e programimit përfundon kur zhvilluesit përfundojnë dokumentimin, korrigjimin dhe montimin e pjesëve individuale të produktit softuer në një tërësi të vetme.

Korrigjimi i softuerit kryhet pasi të gjithë përbërësit e tij të jenë korrigjuar veçmas dhe të grumbullohen në një produkt të vetëm softuerësh.

III. Vlerësimi (testimi) i softuerit. Në këtë fazë, produkti softuerik i nënshtrohet testimit rigoroz të sistemit nga një grup jo-zhvilluesish.

Kjo bëhet për t'u siguruar që produkti i përfunduar i softuerit plotëson të gjitha kërkesat dhe specifikimet, mund të përdoret në mjedisin e përdoruesit, është i lirë nga çdo defekt dhe përmban dokumentacionin e nevojshëm që përshkruan saktë dhe plotësisht produktin e softuerit.

Faza e vlerësimit fillon sapo të gjithë komponentët (modulet) të grumbullohen dhe testohen, d.m.th. pas korrigjimit të plotë të produktit softuerik të përfunduar. Ai përfundon pas marrjes së konfirmimit se produkti softuer i ka kaluar të gjitha testet dhe është gati për përdorim.

Zgjat aq sa programimi.

IV. Duke përdorur softuerin. Nëse analiza e sistemit është një sinjal për betejë, dizajni është një sulm dhe kthehet fitimtar, atëherë përdorimi i një produkti softuerësh është një mbrojtje e përditshme, jetike, por zakonisht jo e nderuar për zhvilluesit.

Një krahasim i tillë është i përshtatshëm për faktin se gjatë përdorimit të një produkti softuer, korrigjohen gabimet që depërtuan gjatë procesit të projektimit të tij.

Faza e përdorimit të një produkti softuer fillon kur produkti transferohet në sistemin e shpërndarjes.

Kjo është koha gjatë së cilës produkti është në funksion dhe përdoret në mënyrë efektive.

Në këtë kohë, kryhet trajnimi i personelit, zbatimi, konfigurimi, mirëmbajtja dhe, ndoshta, zgjerimi i produktit softuer - i ashtuquajturi dizajn i vazhdueshëm.

Faza e përdorimit përfundon kur produkti hiqet nga përdorimi dhe pushojnë aktivitetet e përmendura më sipër. Megjithatë, vini re se produkti softuer mund të vazhdojë të përdoret nga dikush tjetër shumë kohë pasi të ketë përfunduar faza e përdorimit siç përcaktohet këtu. Sepse ky dikush mund të përdorë produktin softuer në shtëpi edhe pa ndihmën e një zhvilluesi.

Përdorimi i një produkti softuer përcaktohet nga funksionimi dhe mirëmbajtja e tij.

Funksionimi i produktit softuerik konsiston në ekzekutimin e tij, funksionimin në një kompjuter për përpunimin e informacionit dhe marrjen e rezultateve që janë qëllimi i krijimit të tij, si dhe sigurimin e saktësisë dhe besueshmërisë së të dhënave të prodhuara.

Mirëmbajtja e Softuerit konsiston në mirëmbajtjen operacionale, zhvillimin e funksionalitetit dhe përmirësimin e karakteristikave të performancës së produktit softuer, riprodhimin dhe transferimin e produktit softuer në lloje të ndryshme objektet kompjuterike.

Mirëmbajtja luan rolin e reagimit të nevojshëm nga faza e funksionimit.

Gjatë funksionimit të softuerit, mund të zbulohen gabime në programe dhe ka nevojë për modifikimin e tyre dhe zgjerimin e funksioneve.

Këto përmirësime, si rregull, kryhen njëkohësisht me funksionimin e versionit aktual të produktit softuer. Pas kontrollit të rregullimeve të përgatitura në një nga kopjet e programit, versioni tjetër i produktit softuer zëvendëson ato të përdorura më parë ose disa prej tyre. Në këtë rast, procesi i funksionimit të një produkti softuer mund të jetë pothuajse i vazhdueshëm, pasi zëvendësimi i një versioni të një produkti softuerësh është afatshkurtër. Këto rrethana çojnë në faktin se procesi i funksionimit të një versioni të një produkti softuerësh zakonisht vazhdon paralelisht dhe pavarësisht nga faza e mirëmbajtjes.

Mbivendosja ndërmjet fazave të ciklit jetësor të produktit softuer

Mbivendosja ndërmjet fazave të ndryshme të ciklit jetësor të një produkti softuerësh është e mundur dhe zakonisht e dëshirueshme. Megjithatë, nuk duhet të ketë mbivendosje ndërmjet proceseve jo ngjitur.

E mundshme reagime ndërmjet fazave. Për shembull, gjatë një prej hapave të dizajnit të jashtëm, mund të zbulohen gabime në formulimin e qëllimeve, atëherë duhet të ktheheni menjëherë dhe t'i korrigjoni ato.

Modeli i konsideruar i ciklit jetësor të produktit softuer, me disa modifikime, mund të shërbejë si model për projekte të vogla.

Për shembull, kur projektohet një program i vetëm, shpesh është e mundur të shmanget dizajnimi i arkitekturës së sistemit dhe

dizajnimi i bazës së të dhënave; proceset fillestare dhe të detajuara të projektimit të jashtëm shpesh bashkohen, etj.

Zhvillimi i softuerit është i pamundur pa kuptuar të ashtuquajturin cikli jetësor i softuerit. Përdoruesi mesatar mund të mos ketë nevojë ta dijë këtë, por këshillohet që të zotërojë standardet bazë (më vonë do të thuhet pse kjo është e nevojshme).

Çfarë është cikli i jetës në një kuptim formal?

Cikli i jetës së çdo aplikacioni zakonisht kuptohet si koha e ekzistencës së tij, duke filluar nga faza e zhvillimit dhe deri në momentin e braktisjes së plotë të përdorimit në fushën e zgjedhur të aplikimit, deri në tërheqjen e plotë të aplikacionit nga përdorimi.

Duke folur në gjuhë të thjeshtë, sistemet e informacionit në formën e programeve, bazave të të dhënave apo edhe “sistemeve operative” kërkohen vetëm nëse të dhënat dhe mundësitë që ato ofrojnë janë të përditësuara.

Besohet se përkufizimi i ciklit jetësor nuk zbatohet në asnjë mënyrë për testimin e aplikacioneve, siç janë versionet beta, të cilat janë më të paqëndrueshmet në funksionim. Vetë cikli i jetës së softuerit varet nga shumë faktorë, ndër të cilët një nga rolet kryesore luan mjedisi në të cilin do të përdoret programi. Megjithatë, është gjithashtu e mundur të theksohet kushtet e përgjithshme, përdoret në përcaktimin e konceptit të ciklit jetësor.

Kërkesat fillestare

  • deklarata e problemit;
  • analiza e kërkesave të ndërsjella të softuerit të ardhshëm për sistemin;
  • dizajni;
  • programim;
  • kodimi dhe kompilimi;
  • testimi;
  • korrigjimi i gabimeve;
  • zbatimin dhe mirëmbajtjen e produktit softuerik.

Zhvillimi i softuerit përbëhet nga të gjitha fazat e sipërpërmendura dhe nuk mund të bëhet pa të paktën njërën prej tyre. Por janë vendosur standarde të veçanta për kontrollin e proceseve të tilla.

Standardet e procesit të ciklit jetësor të softuerit

Ndër sistemet që paracaktojnë kushtet dhe kërkesat për procese të tilla, sot mund të përmendim vetëm tre kryesore:

  • GOST 34.601-90;
  • ISO/IEC 12207:2008;
  • Oracle CDM.

Për të dytën standard ndërkombëtar në dispozicion Analog rus. Ky është GOST R ISO/IEC 12207-2010, i cili është përgjegjës për inxhinierinë e sistemit dhe softuerit. Por cikli i jetës së softuerit i përshkruar në të dy rregullat është në thelb identik. Kjo shpjegohet mjaft thjesht.

Llojet e softuerit dhe përditësimet

Nga rruga, për shumicën e programeve multimediale të njohura aktualisht, ato janë një mjet për të ruajtur parametrat bazë të konfigurimit. Përdorimi i softuerit të këtij lloji është, natyrisht, mjaft i kufizuar, por të kuptuarit e parimeve të përgjithshme të punës me të njëjtët lojtarë të mediave nuk do të dëmtojë. Dhe ja pse.

Në fakt, ato përfshijnë ciklin e jetës së softuerit vetëm në nivelin e përditësimit të versionit të vetë luajtësit ose instalimit të kodekëve dhe dekoderëve. Dhe transkoduesit audio dhe video janë atribute integrale të çdo sistemi audio ose video.

Shembull i bazuar në FL Studio

Fillimisht, studio-sekuencuesi virtual FL Studio u quajt Fruity Loops. Cikli i jetës së softuerit në modifikimin e tij fillestar ka skaduar, por aplikacioni është transformuar disi dhe ka marrë formën e tij aktuale.

Nëse flasim për fazat e ciklit jetësor, së pari, në fazën e vendosjes së problemit, u vendosën disa kushte të detyrueshme:

  • krijimi i një moduli daulle të ngjashëm me makinat me ritëm si Yamaha RX, por duke përdorur mostra ose sekuenca me një goditje në formatin WAV të regjistruara drejtpërdrejt në studio;
  • integrimi në sistemet operative Windows;
  • aftësia për të eksportuar një projekt në formatet WAV, MP3 dhe OGG;
  • Pajtueshmëria e projekteve me aplikacionin shtesë Fruity Tracks.

Në fazën e zhvillimit, u përdorën mjetet e gjuhës programuese C. Por platforma dukej mjaft primitive dhe nuk i dha përdoruesit fundor cilësinë e kërkuar tingull.

Në këtë drejtim, në fazën e testimit dhe korrigjimit, zhvilluesit duhej të ndiqnin rrugën e korporatës gjermane Steinberg dhe të aplikonin mbështetje për modalitetin Full Duplex në kërkesat për drejtuesin kryesor të zërit. Cilësia e zërit është bërë më e lartë dhe ju lejon të ndryshoni ritmin, lartësinë dhe të aplikoni efekte shtesë FX në kohë reale.

Fundi i ciklit jetësor të këtij softueri konsiderohet të jetë lëshimi i versionit të parë zyrtar të FL Studio, i cili, ndryshe nga paraardhësit e tij, kishte tashmë ndërfaqen e një sekuencieri të plotë me aftësinë për të modifikuar parametrat në një virtual 64. -Konsola e përzierjes së kanaleve me shtim të pakufizuar të këngëve audio dhe këngëve MIDI.

Nuk u ndal me kaq. Në fazën e menaxhimit të projektit, u prezantua mbështetje për lidhjen e shtojcave të formatit VST (së pari versioni i dytë dhe më pas i tretë), i cili dikur u zhvillua nga Steinberg. Përafërsisht, çdo sintetizues virtual që mbështet VST-host mund të lidhet me programin.

Nuk është për t'u habitur që së shpejti çdo kompozitor mund të përdorë analoge të modeleve "hardware", për shembull, grupe të plota tingujsh të Korg M1 dikur të njohur. Më tej - më shumë. Përdorimi i moduleve si Addictive Drums ose shtojca universale Kontakt bëri të mundur riprodhimin e tingujve të drejtpërdrejtë instrumente reale, të regjistruara me të gjitha nuancat e artikulimit në studio profesionale.

Në të njëjtën kohë, zhvilluesit u përpoqën të arrinin cilësinë maksimale duke krijuar mbështetje për drejtuesit ASIO4ALL, të cilët rezultuan të ishin koka dhe supet mbi modalitetin Full Duplex. Prandaj, shpejtësia e biteve gjithashtu u rrit. Sot cilësia e eksportuar skedar zanor mund të jetë 320 kbps me një shpejtësi kampionimi prej 192 kHz. Dhe ky është tingull profesional.

Sa i përket versionit fillestar, cikli i tij i jetës mund të quhet plotësisht i plotë, por një deklaratë e tillë është relative, pasi aplikacioni ndryshoi vetëm emrin e tij dhe fitoi aftësi të reja.

Perspektivat e zhvillimit

Se cilat janë fazat e ciklit jetësor të softuerit është tashmë e qartë. Por zhvillimi i teknologjive të tilla vlen të përmendet veçmas.

Eshtë e panevojshme të thuhet se çdo zhvillues softuerësh nuk është i interesuar të krijojë një produkt të shpejtë që nuk ka gjasa të mbijetojë në treg për disa vite. Në terma afatgjatë, të gjithë po shikojnë përdorimin e tij afatgjatë. Kjo mund të arrihet në mënyra të ndryshme. Por, si rregull, pothuajse të gjitha zbresin në lëshimin e përditësimeve ose versioneve të reja të programeve.

Edhe në rastin e Windows OS, tendenca të tilla mund të shihen me sy të lirë. Nuk ka gjasa që sot të ketë të paktën një përdorues që përdor sisteme si modifikimet 3.1, 95, 98 ose Millennium. Cikli i tyre i jetës përfundoi pas lëshimit të XP. Por versionet e serverit të bazuara në teknologjitë NT janë ende të rëndësishme. Edhe Windows 2000 sot jo vetëm që është shumë i rëndësishëm, por në disa parametra instalimi apo sigurie i tejkalon edhe zhvillimet më të fundit. E njëjta gjë vlen edhe për sistemin NT 4.0, si dhe një modifikim të specializuar të Windows Server 2012.

Por në lidhje me këto sisteme, mbështetja është ende e deklaruar në nivelin më të lartë. Por Vista dikur e bujshme po përjeton qartë rënien e ciklit të saj. Jo vetëm që doli të ishte i papërfunduar, por kishte aq shumë gabime në të dhe boshllëqe në sistemin e tij të sigurisë sa mund të merret me mend vetëm se si një zgjidhje e tillë e paqëndrueshme mund të lëshohej në tregun e softuerit.

Por nëse themi se zhvillimi i softuerit të çdo lloji (kontrolli apo aplikacioni) nuk qëndron ende, mund të themi vetëm se sot nuk ka të bëjë vetëm me sistemet kompjuterike, dhe pajisje celulare, në të cilin teknologjitë e përdorura janë shpesh përpara sektorit të kompjuterave. Shfaqja e çipave të procesorit të bazuar në tetë bërthama nuk është më e mira shembulli më i mirë? Por jo çdo laptop mund të mburret se ka një pajisje të tillë.

Disa pyetje shtesë

Sa i përket të kuptuarit të ciklit jetësor të softuerit, është mjaft arbitrare të thuhet se ai përfundoi në një moment të caktuar kohor, sepse produktet softuerike ende kanë mbështetje nga zhvilluesit që i krijuan ato. Përkundrazi, përfundimi i referohet aplikacioneve të trashëguara që nuk plotësojnë kërkesat sistemet moderne dhe nuk mund të punojnë në mjedisin e tyre.

Por edhe duke marrë parasysh progresin teknik shumë prej tyre së shpejti mund të bëhen të falimentuar. Atëherë do t'ju duhet të merrni një vendim ose të lëshoni përditësime ose të rishikoni plotësisht të gjithë konceptin e përfshirë fillimisht në produktin softuer. Prandaj cikli i ri, i cili përfshin ndryshimin e kushteve fillestare, mjedisin e zhvillimit, testimin dhe përdorimin e mundshëm afatgjatë në një zonë të caktuar.

Por në teknologjive kompjuterike Sot, përparësi i jepet zhvillimit të sistemeve të automatizuara të kontrollit (ACS), të cilat përdoren në prodhim. Edhe sistemet operative, në krahasim me programet e specializuara, humbasin.

Mjediset e bazuara në Visual Basic mbeten shumë më të njohura se sistemet Windows. Dhe nuk po flasim fare për softuer aplikativ për sistemet UNIX. Çfarë mund të themi nëse pothuajse të gjitha rrjetet e komunikimit të të njëjtave Shtetet e Bashkuara punojnë ekskluzivisht për ta. Nga rruga, sistemet si Linux dhe Android gjithashtu u krijuan fillimisht në këtë platformë. Prandaj, ka shumë të ngjarë, UNIX ka shumë më tepër perspektiva sesa produktet e tjera të kombinuara.

Në vend të një totali

Mbetet të shtohet se në këtë rast jepen vetëm parimet e përgjithshme dhe fazat e ciklit jetësor të softuerit. Në fakt, edhe detyrat e vendosura fillimisht mund të ndryshojnë shumë. Prandaj, dallimet mund të vërehen në faza të tjera.

Por teknologjitë bazë për zhvillimin e produkteve softuerike dhe mbështetja e tyre pasuese duhet të jenë të qarta. Për pjesën tjetër, duhet të merren parasysh specifikat e softuerit që krijohet, mjediset në të cilat supozohet të funksionojë, dhe aftësitë e programeve që i ofrohen përdoruesit përfundimtar ose prodhimit, dhe shumë më tepër.

Përveç kësaj, ndonjëherë ciklet e jetës mund të varen nga rëndësia e mjeteve të zhvillimit. Nëse, për shembull, një gjuhë programimi bëhet e vjetëruar, askush nuk do të shkruajë programe të bazuara në të, aq më pak do t'i zbatojë ato në sistemet e automatizuara të kontrollit të prodhimit. Këtu nuk janë as programuesit që dalin në plan të parë, por tregtarët që duhet t'i përgjigjen ndryshimeve në kohën e duhur. tregu i kompjuterëve. Dhe nuk ka kaq shumë specialistë të tillë në botë. Personeli shumë i kualifikuar që mund të mbajë gishtin në pulsin e tregut po bëhet më i kërkuari. Dhe ata shpesh janë të ashtuquajturit "kardinalë gri" nga të cilët varet suksesi ose dështimi i një produkti të caktuar softuerësh në fushën e IT.

Ata mund të mos e kuptojnë gjithmonë thelbin e programimit, por janë qartësisht në gjendje të përcaktojnë modelet e ciklit jetësor të softuerit dhe kohëzgjatjen e përdorimit të tyre, bazuar në tendencat globale në këtë fushë. Menaxhimi efektiv shpesh jep rezultate më të prekshme. Po, të paktën teknologjitë PR, reklamat, etj. Përdoruesi mund të mos ketë nevojë për ndonjë aplikacion, por nëse reklamohet në mënyrë aktive, përdoruesi do ta instalojë atë. Ky është tashmë, si të thuash, një nivel nënndërgjegjeshëm (i njëjti efekt i kornizës së 25-të, kur informacioni futet në ndërgjegjen e përdoruesit në mënyrë të pavarur prej tij).

Sigurisht, teknologji të tilla janë të ndaluara në botë, por shumë prej nesh as nuk e kuptojnë se ato ende mund të përdoren dhe të ndikojnë në nënndërgjegjeshëm në një mënyrë të caktuar. Thjesht shikoni koston e "zombizimit" nga kanalet e lajmeve ose faqet e internetit, për të mos përmendur përdorimin e mjeteve më të fuqishme, siç është ekspozimi ndaj infratingujve (kjo u përdor në një prodhim opere), si rezultat i të cilit një person mund të përjetojë frikë ose emocione të papërshtatshme.

Duke iu rikthyer softuerit, ia vlen të shtohet se disa programe përdorin një sinjal zanor gjatë fillimit për të tërhequr vëmendjen e përdoruesit. Dhe, siç tregon hulumtimi, aplikacione të tilla janë më të zbatueshme se programet e tjera. Natyrisht, cikli i jetës së softuerit gjithashtu rritet, pavarësisht se çfarë funksioni i ishte caktuar fillimisht. Dhe, për fat të keq, shumë zhvillues e përdorin këtë, gjë që ngre dyshime për ligjshmërinë e metodave të tilla.

Por nuk na takon ne ta gjykojmë këtë. Është e mundur që në të ardhmen e afërt të zhvillohen mjete për të identifikuar kërcënime të tilla. Deri më tani kjo është vetëm një teori, por, sipas disa analistëve dhe ekspertëve, deri në aplikim praktik Ka mbetur shumë pak. Nëse ata tashmë po krijojnë kopje të rrjeteve nervore të trurit të njeriut, atëherë çfarë mund të themi?




Top