1 / 30

Sigurimi i Cilesise se Software (Software Quality Assurance)

Sigurimi i Cilesise se Software (Software Quality Assurance). Inxhinieri Software Leksion 13. Hyrje. Disiplina e Inxhinierisë Software punon për të arritur një qëllim final: prodhimin e produkteve software me cilësi të lartë.

luke-rivera
Download Presentation

Sigurimi i Cilesise se Software (Software Quality Assurance)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Sigurimi i Cilesise se Software (Software Quality Assurance) Inxhinieri Software Leksion 13 Iralda Mitro

  2. Hyrje • Disiplina e Inxhinierisë Software punon për të arritur një qëllim final:prodhimin e produkteve software me cilësi të lartë. • Sigurimi i cilësisë së software si një aktivitet çadër i ciklit jetësor e shoqëron projektin gjatë gjithë skedulës së tij • Ështëi gabuar mendimi se ky aktivitet fillon me gjenerimin e kodit. • Jo të gjithë kanë të njëjtin mendim mbi cilësinë dhe mënyrat e arritjes së saj. • Nqs një pjesë e software nuk realizohet me cilësinë e duhur, kjo pjesë duhet të ripunohet ose në rastin më të keq mund të çojë në dështimin e projektit. • Nqs një skuadër software e vendos theksin mbi cilësinë gjatë gjithë aktiviteteve inxhinierikë, zvogëlohet ndjeshëm sasia e punës që duhet të ribëhet çka rezulton në kosto më të ulët dhe nxjerrje të hershme të produktit në treg Iralda Mitro

  3. Qellimi • Nuk është e mjaftueshme vetëm të theksosh se sa e rëndësishme është cilësia në një sistem/produkt software. Ajo që duhet është: • Të përcaktohet në mënyrë eksplicite se çfarë kuptohet me “cilësi të software”. • Të përcaktohen një grup aktivitetesh të cilët ndihmojnë në sigurimin e cilësisë. • Të zbatohen aktivitetet e paracaktuar në çdo projekt software. • Të përdoren metrika për përmirësimin e procesit software dhe për pasojë cilësinë e tij. IraldaMitro

  4. CfareperfshinSigurimi i Cilësisë? • Metoda dhe mjete efektivë të Inxhinierisë Software. • Rishikime teknike formale gjatë gjithë procesit software. • Një strategji të ndërlidhur testimi të software. • Kontroll të dokumentacionit të software dhe të ndryshimeve të bëra në të. • Procedura të cilat sigurojnë përputhjen e software-it me standardet e zhvillimit. • Matje dhe mekanizma raportues. • Të gjitha finalizohen në një plan SQA. Ky plan ndërtohet për të përcaktuar strategjinë që do të përdorë skuadra software për sigurimin e cilësisë. Iralda Mitro

  5. Koncepte të Sigurimit të Cilësisë Iralda Mitro

  6. 1. KontrolliiCilësisëdheKontrolliivariacionit • Fabrikimi i produkteve identikë është një ndër sfidat me të cilat duhet të përballen industritë prodhuese të shumë produkteve. • Nuk është e lehtë që të gjithë produktet t’i përputhen me të njëjtën saktësi standarteve të paracaktuar për zhvillim. • Dy qarqe elektronikë ndonëse mund të jenë të prodhuar nga e njëjta fabrikë, paraqesin ndryshime nga pikëpamja gjeometrike e vendosjes së transistorëve dhe e organizimit të tyre. Një dukuri e tillë njihet si ndryshimi midis mostrave. • Kontrolli i variacionit është zemra e kontrollit të cilësisë. Iralda Mitro

  7. 1. KontrolliiCilësisëdheKontrolliivariacionit • Në kontekstin e software kontrolli i variacionit aplikohet mbi procesin e përdorur, burimet e shpenzuar dhe cilësinë e atributeve të produktit përfundimtar. • Ajo që synohet është minimizimi i diferencave midis burimeve të shpenzuar dhe atyre të parashikuar për shpenzim duke përfshirë këtu stafin, pajisjet, kohën kalendarike etj. • Përveç minimizimit të numrit të defekteve synohet edhe kontrolli i variacionit të numrit të bug-eve nga një lëshim në tjetrin. Iralda Mitro

  8. 1. KontrolliiCilësisëdheKontrolliivariacionit • Kontrolli i cilësisë (i cili shpesh barazohet me Kontrollin e variacionit) përfshin një sërë inspektimesh, rishikimesh dhe testimesh që përdoren gjatë procesit software për tu siguruar që çdo produkt i punës përputhet me kërkesat që i janë caktuar. • Kontrolli i cilësisë përbën një cikël feedback ndaj procesit software që ka prodhuar produktin nën shqyrtim. • Aktivitetet e kontrollit të cilësisë mund të kryhen në mënyrë manuale, të automatizuar ose si një kombinim i këtyre të dyjave. • Në çdo rast është e rëndësishme që paraprakisht të specifikohen standarde të matshme për çdo produkt të pritur në mënyrë që të mundësohet krahasimi. Iralda Mitro

  9. 2. Cilesia • Pavarësisht nga çfarë kuptojnë njerëz të ndryshëm me cilësi gjithmonë i referohen tipareve të “shkëlqyer” të produktit që presin. • Për qëllimet që interesohemi cilësia e software përkufizohet si: • Shkalla e konformancës ndaj kërkesave të parapërcaktuara funksionale dhe të performancës , standardeve të zhvillimit të dokumentuara në mënyrë eksplicite dhe karakteristikave implicite që priten prej një produkti të zhvilluar në mënyrë profesionale. • Cilësia e një produkti në përgjithësi lidhet me atribute të matshme dhe tekrahasueshme të tij. • Atribute të tillë për një produkt software janë • kompleksiteti ciklomatik • Kohezioni • numri i pikave funksionale dhe i rreshtave kod etj; • Të gjithë këta koncepte janë çështje të matjeve dhe metrikave software-ike(Software measurement and metrics). Iralda Mitro

  10. 2. Cilesia • Kur ekzaminohen atributet e matshëm të një njësie software, merren në konsideratë dy lloj cilësish: • Cilësinëdizenjim. Cilësia në dizenjim i referohet karakteristikave që dizenjuesi specifikon për një njësi software. Sa më të mira të specifikohen karakteristikat në dizenjim aq më e lartë është vetë cilësia e software. • Cilësinëkonformancë. Cilësia në konformancë është shkalla e respektimit të specifikimeve të Dizenjimit gjatë prodhimit të software. Sa më e lartë të jetë shkalla e konformancës aq më e lartë pritet të jetë cilësia e software. • Gjatë zhvillimit të software, cilësia në dizenjim përfshin kërkesat, specifikimin dhe dizenjimin e sistemit. • Ndërsa cilësia në konformancë kryesisht fillon gjatë implementimit. Nqs implementimi ndjek dizenjimin dhe sistemi rezultant kënaq kërkesat e tij + qëllimet e performancës atëherë cilësia e konformancës është e lartë. Iralda Mitro

  11. 3. Kostoja e cilësisë • Kostoja e cilësisë përfshin të gjitha shpenzimet e kryer në kërkim të cilësisë ose gjatë kryerjes së aktiviteteve të lidhur me cilësinë. Të tillë shpenzime janë: • Shpenzime parandalimi. Shembuj: Planifikim cilësie, rishikime teknike formale, testim pajisjesh, trajnim. • Shpenzime vlerësimi. Shembuj: Inspektime të procesit, mirëmbajtja dhe përshtatja e pajisjeve, testimi. • Shpenzime dështimi. Shembuj: Rikryerja e punëve, riparimi, analiza dështimi. • Shpenzime të jashtëm dështimi. Shembuj: Zgjidhje të pakënaqësive, kthim i produkteve, zëvendësim i produkteve, punë që përfshihen në garanci, suport & ndihmë. Iralda Mitro

  12. Sigurimiicilësisë Iralda Mitro

  13. Sigurimi i cilësisë • Sigurimi i cilësisë konsiston në funksione auditues dhe raportues të menaxhimit. • Qëllimi është ta pajisë menaxhimin me të dhënat e nevojshme për tu informuar rreth cilësisë së produktit për tu siguruar se ai po përmbush qëllimet e tij. • Sigurisht që nqs të dhënat e përftuara gjatë sigurimit të cilësisë identifikojnë probleme, është detyrë e menaxhimit t’i adresojë dhe të aplikojë burimet e nevojshëm për të zgjidhur çështjet e cilësisë. Iralda Mitro

  14. Aktivitetetësigurimittëcilësisë • Inxhinierët software, menaxherët e projektit, klientët, agjentët e shitjes, grupi SQA; të gjithë këta kanë përgjegjësi për sigurimin e cilësisë. • Grupi SQA shërben si përfaqësues i brendshëm i klientit në projekt, çka do të thotë se grupi SQA duhet ta shikojë projektin nga këndvështrimi i klientit. • Qëllimi i grupit SQA është të ndihmojë skuadrën software të arrijë nivele të lartë të cilësisë. Iralda Mitro

  15. Aktivitetetësigurimittëcilësisë • Instituti i Inxhinierisë Software(SEI-Software Engineering Institute) propozon një sërë aktivitetesh SQA të cilët kryhen ose ndërmjetësohen prej grupit SQA: • Përgatit një plan SQA për projektin. • Merr pjesë në zhvillimin e përshkrimit të procesit të projektit software. • Rishikon aktivitetet e inxhinierisë software për të verifikuar përputhjen e tyre me procesin software të përcaktuar. • Auditon produktet e punës për të kontrolluar përputhjen e tyre me produktet e punës të përcaktuar si pjesë e procesit software. • Sigurohet se deviacionet gjatë punës në software dhe trajtimi i tyre janë të dokumentuar. • Regjistron çdo mospërputhje dhe e raporton atë tek instancat kryesore të menaxhimit. Iralda Mitro

  16. Rishikimi i software • Rishikimi i software punon si një filtër ndaj procesit të Inxhinierisë Software. • Ky aktivitet aplikohet në momente të ndryshëm të zhvillimit të software dhe shërben për të zbuluar defektet dhe gabimet e tij të cilët mund të ndreqen më vonë. • Rishikimi i software purifikon aktivitetet e analizës, dizenjimit dhe kodimit. • Rishikimet mund të jenë informalë ose formalë. • Një rishikim informal mund të jetë një diskutim i thjeshtë për problemet teknikë të software. • Rishikimet formale janë filtra më efektivë dhe më sistematikë për përmirësimin e cilësisë së software. Iralda Mitro

  17. Rishikimetteknikeformale • Janë aktivitete që kryhen prej inxhinierëve software(dhe të tjerëve) për inxhinierët software. • Objektivat e FTR(Formal Technical Reviews) janë: • Të zbulojë gabimet funksionalë, logjikë ose të implementimit të software. • Të verifikojë nqs software-i plotëson kërkesat e tij. • Të sigurohet nqs software- është paraqitur sipas standardeve. • Të mundësojë zhvillimin uniform të software. • T’i bëjë projektet më të menaxhueshëm. Iralda Mitro

  18. Rishikimetteknikeformale • Pavarësisht nga formati i tyre, rishikimet teknike formale janë të kufizuar në njerëz, kohë dhe objektiva. • Në to marrin pjesë jo më tepër se 5-6 njerëz detyrimisht të përgatitur dhe trajnuar në avancë. • Një FTR nuk duhet të zgjatë më shumë se dy orë. • Qëllimi është të gjenden defektet dhe jo të zgjidhen në moment. • Diskutimet e zgjatur nuk janë shumë dobiprurës për çështje të cilat mund të zgjidhen më mirë në mënyrë të pavarur. • Eshtë mirë që fokusi i takimit të jetë ngushtë(psh disa komponentë dhe jo i gjithë dizenjimi) pasi kështu ka më tepër gjasa që të zbulohen gabimet. • Takimi dhe përfundimet e tij mbahen shënim. • Gjatë takimeve FTR duhet të shmangen diskutimet brutale dhe tendencat për fajësim dhe për adresim të përgjegjësive. • Në fund të takimit merret një vendim nqs produkti i marrë në shqyrtim do të pranohet ose jo dhe nqs pranohet, vlerësohet nevoja për një takim tjetër FTR për të. Iralda Mitro

  19. Metoda statistikore për sigurimin e cilësisë • Edhe në aktivitetet SQA reflektohet tendenca e industrisë për të vendosur terma sasiorë ndaj cilësisë. • Për sa i përket software, sigurimi statistikor i cilësisë përmban hapat e mëposhtëm: • Mbledhja dhe kategorizimi i informacionit mbi defektet software. • Përpjekja për të gjetur shkakun që fshihet pas secilit defekt. Disa shkaqe të mundshëm të gabimeve janë: • Specifikim i gabuar ose jo i plotë. • Keqinterpretim i komunikimit me klientin. • Devijim i qëllimshëm nga specifikimi. • Shkelje e standardeve të programimit. • Gabim në paraqitjen e të dhënave. • Ndërfaqe inkonsistente e komponentëve. • Gabim në logjikën e Dizenjimit. • Testim i gabuar ose jo i plotë. • Dokumentim i pakujdesshëm ose jo i plotë. • Gabim gjatë përkthimit të Dizenjimit në gjuhë programimi. • Ndërfaqe jokonsistente ose me dykuptimësi. • Përdorimi i parimit Pareto: “80% e defekteve mund të gjenden në 20% të rasteve”. Izolimi i pjesës së rëndësishme 20%. • Ndreqja e problemeve që kanë shkaktuar defektet. Iralda Mitro

  20. Metoda statistikore për sigurimin e cilësisë • Përdorimi i metodave statistikore dhe parimit Pareto në SQA mund të përmblidhet si: • Shpenzoje kohën duke u fokusuar në gjërat që kanë me të vërtetë rëndësi, por paraprakisht sigurohu që e ke kuptuar mirë se çfarë është vërtet e rëndësishme. Iralda Mitro

  21. Besueshmëria dhe Siguria e software Iralda Mitro

  22. Besueshmëria • Besueshmëria e software përkufizohet në terma statistikor si “probabiliteti i dështimit të operimit të një programi kompjuterik në një mjedis të caktuar, në një kohë të caktuar”. • Pra, lidhet me operimin/vënien në punë apo jo korrektësisht të programit. • Nqs marrim në konsideratë një sistem kompjuterik, një matje e thjeshtë e besueshmërisë së tij është koha e destinuar për dështimin(mean-time-between-failure): • MTBF = MTTF + MTTR ku: • MTTF: Mean-time-to-failure • MTTR: Mean-time-to-repair  Iralda Mitro

  23. Siguria • Siguria e Software është një aktivitet i SQA që fokusohet në identifikimin dhe vlerësimin e problemeve potenciale që mund ta ndikojnë s/w negativisht dhe/ose të shkaktojnë një sistem te gjithin të dështojë. • Ndonëse midis besueshmërisë dhe sigurisë ekziston një lidhje e ngushtë është rigoroze të qartësohet diferenca midis tyre. • Besueshmëria e Software përdor analiza statistikore për të përcaktuar shanset që një dështim të ndodhë. • Sidoqoftë, ndodhja e këtij dështimi nuk çon domosdoshmërisht në probleme fatalë. • Siguria e Software ekzaminon mënyrat në të cilat dështimi çon në ato kushte që sjellin probleme fatale (mishap,hazard). • Dështimet nuk konsiderohen në vakum, por vlerësohen në kontekst te gjithë sistemit. Iralda Mitro

  24. PlaniSQA • Një plan SQA shërben si udhëzues dhe drejtues gjatë realizimit të sigurisë së software;prodhohet dhe mirëmbahet nga grupi SQA. Përmban disa seksione: • Seksioni fillestar i cili përshkruan qëllimin e dokumentacionit dhe tregon aktivitetet që do të kryhen në kuadrin e SQA. • Në seksionin e menaxhimit tregohet se cili është vendi i SQA në strukturën organizative dhe në procesin software. • Seksioni i dokumentimit tregon me anë të referencave secilin prej produkteve të punës të prodhuar si pjese e procesit software. • Seksioni i standardeve, praktikave dhe konvencioneve liston të gjitha praktikat, matjet dhe standardet që janë aplikuar gjatë procesit software. • Seksioni i auditivit dhe rishikimeve identifikon historikun e rishikimeve të kryer nga grupi SQA, skuadra software dhe klienti. • Seksioni i testimit i referohet planit dhe procedurave të testimit. • Pjesa tjetër e planit SQA identifikon mjetet dhe metodat e përdorur në aktivitetet dhe detyrat SQA si edhe ofron informacionin e nevojshëm për procedurat e menaxhimit të konfigurimt. Iralda Mitro

  25. Përcaktimiikërkesavetëpërdoruesit • SQA duhet të bëhet pjesë e punës së stafit që në fazat e hershme të inxhinierimit. • Aktivitetet e SQA duhet të sigurohen se puna e zhvillimit të software të mos fillojë pa përfunduar specifikimi i kërkesave software. • Kërkesat kontrollohen për konsistencë, dykuptimësi, etj. • Për më tepër hapi i Validimit të Kërkesave është pjesë e Sigurimit të Cilësisë në këtë fazë Iralda Mitro

  26. Kontrolliiplanevetëmenaxhimit • Planet e menaxhimit rishikohen dhe modifikohen gjatë gjithë projektit. • Rifreskimi dhe vlerësimi i tyre në kohë është pjesë e kontrollit të cilësisë. • Edhe përkufizimi i procesit i nënshtrohet rishikimit. • Në këtë mënyrë skuadra software sigurohet se procesi dhe hapat e tij po ecin sipas planifikimit(përputhje në kohë dhe në përmbajtje) dhe sipas standardeve të parashikuar. Iralda Mitro

  27. Modelimiiarkitekturës • Qëllimi i modelimit të arkitekturës është ndërtimi i një modeli fizik i cili tregon se si punon software-i. • SW dekompozohet në module dhe komponentë sipas një këndvështrimi top-down (nga lart poshtë). • Gjatë kësaj faze SQA kontrollon çështje si: • A po përdoret metoda e duhur dizenjuese? • Zhvilluesit e kanë përdorur këtë metodë diznjuese më parë apo nevojitet trajnim? • A suportohet metoda dizenjuese nga mjetet CASE? • A është specifikuar modelimi i arkitekturës deri në nivelet më të ulët? Iralda Mitro

  28. Modelimiidetajuardhelëshimi • Modelimi i detajuar analizohet në çdo nivel të tij nga grupi SQA. • Modelimi i detajuar duhet të jetë një zgjerim logjik i modelimit të arkitekturës dhe të vazhdojë idenë dhe qëllimet e arkitekturës së sistemit. • Më tej kontrollohen kodimi, ripërdorimi dhe testimi. • SQA kujdeset që për secilin aktivitet dhe detyrë të bëhet dokumentimi përkatës. Iralda Mitro

  29. Kodimi • SQA inspekton kodin për sa i përket shkallës së respektimit të standardeve të kodimit. • Ky proces mund të vijë si pjesë e një procesi tjetër ose mund të kryhet si një proces më vete. • Në cilësinë e kodit trajtohen pika kyçe si përmasat e moduleve, shkalla e komentimit, kompleksiteti. Iralda Mitro

  30. Testimi • Një software i patestuar ka shumë të ngjarë që të mos jetë korrekt. • SQA luan një rol vital për ta siguruar skuadrën zhvilluese dhe menaxhuese se testimi është kryer ashtu siç duhet. • SQA kontrollon nqs: • Aktivitetet testues janë të përshtatshëm për shkallën e sigurisë që i nevojitet software-it. • Aktivtetet testues përputhen me kërkesat për testim dhe pranim të software-it. • Aktivitetet testues janë dokumentuar mirë në Planin e Testimit. • Me anë të testimit SQA kontrollon progresin e projektit dhe shikon se si varion numri i gabimeve nga një testim në tjetrin dhe nga një cikël testimi në tjetrin. • SQA gjithashtu interesohet edhe mbi shkallën e përfshirjes së të gjitha kërkesave në testim. • Për këtë zhvillohen disa lloj testimesh:testim njësi, testim komponenti, testim integrimi. Iralda Mitro

More Related