software dhe besueshmeria nasa

22
Software dhe Besueshmeria Metrika te perdorura

Upload: lione-milan

Post on 27-Sep-2015

16 views

Category:

Documents


1 download

DESCRIPTION

asdasdsa

TRANSCRIPT

  • Software dhe BesueshmeriaMetrika te perdorura

  • Cili eshte perkufizimi i Besueshmerise?Aftesia e nje sistemi ose komponenti per te kryer funksionet e kerkuara nen kushte te specifikuara, per nje periudhe kohore te percaktuar.

  • Per shume menaxhere te projekteve zhvilluese te software, besueshmeria eshte e lidhur me korrektesine. Pra ata perqendrohen tek testimi si dhe numri i bugs/gabimeve te gjetur dhe rregulluar.Pergjate procesit te gjetjes dhe rregullimit te gabimeve ne testim ,eshte e rendesishme te sigurohet besueshmeri: nje menyre e mire eshte te zhvillohet nje produkt robust, me cilesi te larte pergjate gjithe fazave te ciklit jetesor.

    Besueshmeria e kodit eshte e lidhur me cilesine e gjithe proceseve dhe produkteve te zhvillimit te software: dokumentimi i kerkesave, kodimi, plane testimi, dhe testim

  • Software Assurance Technology Center (SATC), NASA eshte perpjekur vazhdimisht te identifikoje dhe aplikoje metrikat per produktet e s/w qe konceptojne dhe vleresojne Besueshmerine. NASA, se bashku me SATC, aplikojne metrika per te permiresuar cilesine dhe besueshmerine e produkteve software.

    Besueshmeria eshte nenprodukti i cilesise, dhe cilesia e software mund te matet.

  • Nga cilat aktivitete kryesore perbehet Besueshmeria e Software?Tre aktivitet kryesore:1- Parandalim gabimesh2- Gjetje faji/gabimi dhe eleminim3- Masa per te maximizuar besueshmerine dhe qe suportojne dy aktivitetet e para.

  • Cili eshte ndryshimi mes ketyre koncepteve?Error- Fault Failure1- Error (gabim): veprim apo mungese veprimi nga programuesi qe rezulton ne gabim me te madh (fault) te s/w2- Fault: defekt i s/w qe shkakton deshtim

    3- Failure(Deshtim): dalja e papritur e veprimit/operimit te nje programi nga kerkesat .Fokusi Parandalimi i Gabimeve

  • Ndryshimi midis hardware failure rate dhe software failure rate

  • Fokusi Parandalimi i GabimevePer te maksimizuar besueshmerine duke parandaluar gabimet e s/w, fokusi duhet te qendroje ne kerkesat e permbledhura dhe nje plan testimi te detajuar, duke siguruar qe te gjitha kerkesat jane te testuara.

    Fokusi duhet te jete gjithashtu mbi mirembajtjen e software, duke qene se ka nje faze useful life ku inxhinierimi mbeshtetes (sustaining engineering) eshte i nevojshem. Ndaj, per te parandaluar gabimet e software duhet te kryhen te meposhtmet:

  • Aktivitetet Baze1- Fillohet me kerkesat, duke siguruar qe produkti i zhvilluar eshte ai i specifikuari, qe te gjitha kerkesat jane specifikuar qarte dhe sakte funksionalitetet e produktit final.2- Sigurohet qe kodi mund te suportoje inxhinierimin mbeshtetes/mirembajtjes pa bere gabime te metejshme.3- Nje program testimi permbledhes duhet bere qe te verifikoje se gjithe funksionalitet jane te perfshira.

  • Besueshmeria si Atribut CilesieMeqenese Besueshmeria eshte nje nga kriteret baze te cilesise, themi se Besueshmeria varet nga Cilesia e larte e software.Parandalimi i rrezikut duhet bere ne ciklet e hershme.Duke u perqendruar ne parandalimin e gabimeve, eshte nevoja te identifikohen dhe maten kritere te cilesise se aplikuara ne faza te ndryshme. Duhet nje perqendrim shume i madh ne Kerkesa, Modelim, Implementim, dhe TestimDiagrami tregon lidhjet e Besueshmerise me fazat e ndryshme te ciklit jetesor (Faktoret ndikues)

  • Metrika te software per BesueshmerineBazohen ne:A- Metrika mbi Kerkesat

    B- Metrika mbi Modelim dhe Kodim

    C- Metrika Testimi

  • Metrika te besueshmerise mbi kerkesatDuke perdorur atributet e cilesise per Besueshmerine,si ne diagram, per te siguruar besueshmeri te larte software, kerkesat duhet te jene te strukturuara, te plota,dhe te lehta per tu aplikuarKerkesat duhe te jene me formate te percaktuara mire.Duhen eleminuar percaktimet TBD/ TBA/TBS (cojne ne Disjointed Architecture)Gjuhe formale perdoret, kur eshte e nevojshme: Z notation

  • Metrika te besueshmerise mbi kerkesatPerdoren CASE tools:ARM- Automated Requirement Measurement

    ARM, nuk vlereson drejtperdrejt korrektesine, POR Vlereson specifikimet individuale te moduleveVlereson fjalorin e perdorur per specifikimin e kerkesaveKa aftesi te vleresoje strukturen e dokumentimit te kerkesave

  • Metrika te besueshmerise mbi design dhe kodimSATC analizon kodin nga ana e struktures dhe arkitektures per te identifikuar gabime te mundshme, neper module, bazuar ne kompleksitet, permasa, dhe modularitet.

  • Kompleksiteti i softwareEshte e njohur qe modulet me komplekse jane me te veshtira per tu kuptuar dhe kane nje probabilitet me te larte te defekteve. Ndaj, kompleksiteti ka nje ndikim direkt mbi cilesine, dhe kryesisht mbi mirembajtjen. Ka disa lloje te matjes se kompleksitetit, SATC perdor me shpesh kompleksitetin llogjik (Cyclomatic), i cili perllogaritet si numri rrugeve te pavarura te testimit (independent test path).

  • Permasa e softwarePermasa eshte nje nga njesite e matjes se software nga me te vjetrat dhe me te zakonshmet. Permasa e moduleve eshte ne vetvete nje indikator cilesie. Permasa mund te matet nga: rreshtat kod ne total, numerimi i rreshtave; deklaratat e ekzekutueshme te percaktuara nga nje delimiter gjuhe.

  • SATC ka gjetur se vleresimi me efektiv eshte kombinimi i permases me kompleksitetin. Modulet me kompleksitet te larte dhe permase te madhe kane besueshmerine me te vogel. Modulet me permase te vogel dhe kompleksitet te larte jane po ashtu me rrezik besueshmerie, sepse jane kod shume preciz qe eshte i veshtire te ndryshoje ose modifikohet.

  • Model Metrike i BesueshmeriseWeighted Methods per Class eshte parashikues i sasise se kohes dhe perpjekjeve qe kerkohen per te zhvilluar dhe mirembajtur nje klase. Sa me e larte WMC, me shume testim dhe mirembajtje nevojitet. Ne pergjithesi, klasat kane me pak se 20 metoda, por deri ne 40 eshte e pranueshme. Kompleksiteti i nje metode nuk duhet te kaloje 5. Ndaj, WMC preferohet te mbahet nen 100, dhe nuk duhet te kaloje 200. Klasat me WMC te larte do te kerkojne testim te shumte per tu mbuluar teresisht. Ato jane dhe te veshtira per tu mirembajtur, ndaj rezultohet qe keto klasa kane besueshmeri te ulet.

  • Metrika te besueshmerise mbi TestimTesting Reliability MetricsKeto metrika duhet te konsiderojne dy drejtime per te vleresuar besueshmerine. Drejtimi i pare eshte vleresimi i nje plani testimi, duke siguruar qe sistemi permban funksionalitetin e specifikuar ne kerkesa. Ky aktivitete duhet te ule nr. e gabimeve qe behen per shkak te mosperputhjes me funksionalitetet e percaktuara. Drejtimi i dyte, i lidhur shpesh me besueshmerine, eshte vleresimi i numrit te gabimeve ne kod, dhe ritmin e gjetjes/rregullimit te tyre. SATC ka zhvilluar model per te simuluar procesin e gjetjes se gabimeve dhe projekton numrin e gabimeve te mbetura, si dhe kohen kur ato do te mund te identifikohen.

  • Metrika te besueshmerise mbi TestimPer tu siguruar qe sistemi kryen funksionalitetin e specifikuar, shkruhen plane testimi qe permbajne shume raste testimi; cdo rast testimi bazohet ne nje komponent sistemi dhe teston disa funksione qe bazohen ne nje bashkesi te lidhur kerkesash.

    Objektiva e nje programi per verifikim efektiv eshte te siguroje qe cdo kerkese testohet.

  • Si perfundim..Metrika per te matur besueshmerine e s/w ekzistojne dhe mund te perdoren ne fazen e kerkesave. Ne cdo faze te ciklit jetesor, metrikat mund te identifikojne fusha potenciale problemesh qe mund te cojne ne gabime te medha. Gjetja e ketyre fushave ne fazen kur ato zhvillohen ul koston dhe parandalon efektet negative te ardhshme.

    Metrikat e perdorura sa me heret, ndihmojne ne gjetje dhe korrektesim te gabimeve. Faktoret pozitiv te korrektimit te gabimeve ne fazen e kerkesave jane shume te ndjeshem, ndaj dhe i jepet shume fokus faktit qe ky aktivitet duhet ndjekur me kujdes, si dhe duhet ndertuar besueshmeria duke filluar qe ne fazat me te hershme te specifikimit.