Kvaliteta softvera: standardi i vrednovanje. Osiguranje kvalitete tehnološkog softvera

Kvaliteta softvera (softvera) određuje se na temelju proučavanja vanjskih i unutarnjih značajki proizvoda. Kvalitetu vanjštine određuje kako funkcionira u stvarnom vremenu, koliko je produktivan za korisnike. Druga značajka usredotočuje se na unutarnje aspekte koji ovise o kvaliteti pisanog koda. Korisnik se više fokusira na način na koji radi na vanjskoj razini, čija se kvaliteta može održavati samo ako je stručnjak napisao dobar programski kod.

Kvaliteta softvera

Za utvrđivanje kvalitete trenutno se koriste dva važna pristupa:
  • Upravljanje defektom.
  • Atribut kvalitete.
  • Sve što ne zadovoljava zahtjev kupca spada u kategoriju nedostataka. Tim programera koji ne mogu u potpunosti razumjeti zahtjeve korisnika omogućit će pogreške u dizajnu.


    U upravljanju nedostacima, njihove se kategorije određuju na temelju ozbiljnosti. Broj problema se broji i poduzima mjere u skladu s utvrđenom težinom. Kontrolne karte mogu se kreirati za mjerenje razvojnih sposobnosti. Kvaliteta softvera značajno se poboljšala tijekom protekla dva desetljeća. Jedan od razloga je to što tvrtke koriste nove tehnologije kao što su objektno-orijentirani razvoj i CASE alati. Osim toga, možete gledatisve veću važnost uvođenja metoda upravljanja u proizvodnju. Upravljanje kvalitetom ZA podijeljeno je u tri glavna područja:
  • Jamstvo. Razvijanje osnova organizacijskih mjera i standarda kvalitete softvera
  • Planiranje. Odabir odgovarajućih standarda i prilagodbe za određeni programski projekt.
  • Kontrola. Identificirajte procese koji osiguravaju da razvoj softvera zadovoljava standarde kvalitete.
  • Politika organizacije SQA-a

    Politika organizacije o kvaliteti softvera mora ispunjavati sljedeće zahtjeve:


  • Relevantnost ciljevima organizacije.
  • Predanost općim konceptima osiguranja kvalitete.
  • Predanost standardima kvalitete koje je organizacija usvojila.
  • Odgovornost za dodjelu odgovarajućih resursa.
  • Želja za kontinuiranim poboljšanjem kvalitete i produktivnosti organizacije.
  • Kako bi ispunili sve zahtjeve standarda, tvrtke imenuju odgovorne za kvalitetu. Obveze zaposlenika:
  • Odgovornost za pripremu godišnjeg programa mjera i proračunskog SQA-a.
  • Organizacija izrade planova za razvoj SQA sustava.
  • Sveukupno praćenje provedbe godišnjeg programa redovnih aktivnosti i planiranih razvojnih projekata.
  • Određivanje prihvatljivosti programskih aktivnosti prema značajkama i opsegu usluga podizvođača i nabavi planiranih za nadolazeću godinu.
  • Prezentacija i promicanje pitanja SQA-a za izvršno rukovodstvo.
  • Pripremljeni prijedlozi studijaOdjel SQA-e za godišnji program aktivnosti, provjeravajući potencijal prijedloga za postizanje ciljeva.
  • Koncepti na visokoj razini

    Kvalitativne karakteristike su koncepti na visokoj razini koji odražavaju važne aspekte i ne podliježu izravnoj procjeni kvalitete softvera. Umjesto toga, plan bi trebao identificirati relevantne pokazatelje koji se mogu koristiti za određivanje jedne ili više značajki.
    Na primjer, prilikom ocjenjivanja XML parser, možete koristiti skup testova za usklađenost XML W3C. To uključuje testove dizajnirane za rješavanje svih aspekata kontrole, kao i preporuke W3C Extensible Markup Language (XML) s posebnim naglaskom na zahtjeve za rukovanje pogreškama u točnosti ili autentičnosti XML dokumenata. Tako se postotak prošlih testnih slučajeva koristi kao metrika za procjenu takvih svojstava razmatranog XML analizatora:
  • Korisnička perspektiva.
  • Funkcionalnost.
  • Pouzdanost i tolerancija na pogreške.
  • Sa stajališta korisnika, postoji nekoliko važnih karakteristika koje odgovaraju na sljedeća pitanja:
  • Tko osigurava cijeli niz potrebnih funkcija u tu svrhu?
  • Radi li pouzdano da biste dobili ispravne rezultate koji su vam potrebni?
  • Radi li program sigurno i pouzdano u slučaju pogrešnog unosa?
  • Je li jednostavno koristiti softverski proizvod?
  • Funkcionira li brzo ili se čini presporo?
  • Dobro integriran program s drugim proizvodom, kojikoristi korisnika?
  • Uz pretpostavku da su pitanja kvalitete važna za korisnika, IT tim odgovoran za postavljanje i održavanje može se suočiti s drugim problemima:
  • Zaštita od štetnih napada.
  • Kvaliteta korištenja računalnih resursa. Resursi niske kvalitete su oni koji zahtijevaju više memorije i računalne snage nego što je potrebno. ISO daje ovom modelu dvije nove kategorije više razine vezane uz osiguravanje kvalitete tehnološkog softvera.

    Zahtjevi ISO 9126 prema proizvodu

    ISO 9126 međunarodni je standard za ocjenjivanje. Podijeljen je u četiri dijela, koji pokrivaju sljedeće teme:
  • Vanjski pokazatelji.
  • Unutarnji pokazatelji.
  • ​​
  • Model kvalitete.
  • Pokazatelji kvalitete softvera.
  • Prvi dio norme ISO 9126 je proširenje prethodnog standarda koji su izradili McCall (1977), Boehm (1978) i FURPS u definiranju skupa značajki kvalitete. ISO 9126 dokumentacija je predmet autorskih prava. Model kvalitete ISO 9126-1 definira 6 glavnih karakteristika:
  • Funkcionalnost.
  • Pouzdanost.
  • Upotrebljivost.
  • Učinkovitost.
  • Rok trajnosti.
  • Prenosivost.
  • Funkcionalnost proizvoda

    Funkcionalnost je primarna svrha bilo kojeg proizvoda ili usluge. Što je više mogućnosti za korištenje proizvoda, to je teže odrediti njegovu funkcionalnost. Jer može biti popis onoga što mu je dostupno. Neke od navedenih značajki (na primjer, praktičnost) prisutne su samo uu određenoj mjeri, to jest, ne samo "uključeno" ili "isključeno". Mnogi ljudi su zbunjeni sa sveukupnom funkcionalnošću procesa i softverskim proizvodom. Često je to zbog činjenice da dijagrami toka podataka (DFD) i drugi simulacijski alati mogu odražavati funkcionalnost procesa, kao skup podataka iz pretvorenih podataka.

    ISO 9126-1 i drugi modeli kvalitete ne pomažu u mjerenju ukupnih troškova ili koristi procesa, već samo istražuju softversku komponentu. Odnos između funkcionalnosti unutar cjelokupnog poslovnog procesa nadilazi ISO 9126. Takve atributne sposobnosti karakteriziraju korisnost u ovom okruženju. Svaki od njih može se mjeriti samo ako postoje odgovarajući programi sustava.

    Značajke pouzdanosti i upotrebljivosti

    Čim softverski sustav počne funkcionirati, karakteristika pouzdanosti određuje njegovu sposobnost da podrži pružanje svojih usluga pod određenim uvjetima u određenim vremenskim razdobljima. Jedan aspekt ove značajke je tolerancija na pogreške. Na primjer, ako je mreža isključena 20 sekundi, sustav bi trebao moći nastaviti s radom. Sposobnost naučiti koristiti sustav (učenje) jedna je od glavnih karakteristika upotrebljivosti. Učinkovitost se odnosi na sistemske resurse koji se koriste za pružanje potrebne funkcionalnosti. Volumen diskovnog prostora, memorije i mreže su dobri pokazatelji učinkovitosti. Kao iu slučaju niza drugih kriterija, postoji podudarnost između njih. Na primjer, pogodnost korištenja sustavautječe na njegovu učinkovitost.

    Prerada i prenosivost

    Sposobnost identificiranja i ispravljanja greške u softverskoj komponenti je ono na što se karakteristika izvedbe odnosi. Na njegovu učinkovitost utječe čitljivost ili složenost koda, kao i njegova modularnost. To je nešto što pomaže u otkrivanju uzroka kvara kako bi ga kasnije riješili. Značajke održavanja:
  • Analiza - identificira glavni razlog neuspjeha.
  • Varijabilnost - Određuje napor koji se dodaje za izmjenu koda kako bi se uklonila pogreška.
  • Stabilnost - Pokazuje koliko je sustav stabilan kada se mijenja.
  • Testiranje - Određuje koliko je truda potrebno za testiranje sustava.
  • Tolerancija - sposobnost sustava da se prilagodi promjenama u svom okruženju.
  • Prilagodljivost - Kako se sustav lako prilagođava promjenama u specifikaciji.
  • Brzina postavljanja - kako se sustav može instalirati.
  • Sposobnost zamjene - kako je lako zamijeniti komponentu sustava.
  • Troškovi kvalitete. Ona je vrlo važna. Kada se programer odluči testirati za svoj proizvod, on će zapravo trošiti vrijeme, novac i napore da ga testira.
  • Podobnost - Određuje je li funkcija u skladu sa zahtjevima.
  • Točnost - utvrđuje ispravnost provedbe funkcija.
  • Interoperabilnost - interakcija s drugim komponentama sustava.
  • SUKLADNOST S POTREBNIM ZAKONIMA I PREPORUKAMA.
  • Osiguravanje kvalitete i sigurnosti softvera i obrade transakcija povezanih s podacima.
  • Pouzdanost - sposobnost rada pod određenim uvjetima tijekom određenog vremenskog razdoblja.
  • Zrelost je učestalost kvarova.
  • Obnova - ideja o sposobnosti sustava da se vrati u punopravni rad nakon neuspjeha.
  • Prenosivost se odnosi na to koliko se ona može prilagoditi promjenama u okolišu ili njegovim zahtjevima. Objektno orijentirani dizajn i metode implementacije mogu pridonijeti tome kako su ove karakteristike kvalitete softvera prisutne u ovom sustavu.

    Troškovi analitičkih procesa

    Troškovi kvalitete izračunavaju se analizom troškova usklađivanja i nedosljednosti. Cijena prvog pokazatelja odnosi se na:
  • troškove prevencije. To je iznos potrošen na osiguravanje ispravnog poštivanja svih metoda. To uključuje timsku obuku, validaciju koda i sve ostale aktivnosti povezane s osiguranjem kvalitete.
  • Procijenjeni troškovi. To je iznos novca koji se troši na planiranje svih testnih zadataka, a zatim na njihovo izvršenje, na primjer, na razvoj testnih slučajeva.
  • Troškovi nesukladnosti. To su troškovi koji proizlaze iz unutarnjih i vanjskih neuspjeha.
  • Unutarnji neuspjesi su troškovi koji se javljaju kada se testni slučajevi prvi put izvode na unutarnjoj razini, s nekim nedostacima. Troškovi se javljaju kada programer mora ispraviti sve nedostatke koji se nalaze u njegovom fragmentu tijekom modularnog ili komponentnog testiranja. vanjskikvarovi su troškovi koji nastaju kada je kvar postavljen od strane kupca, a ne ispitivača. Ti su troškovi znatno viši od onih koji se pojavljuju na unutarnjoj razini. To je osobito istinito ako softver ne uspije.

    Disciplinirana analiza procesa

    Ovo je procesna procjena softverskog proizvoda. To uključuje utvrđivanje i karakterizaciju trenutne prakse, prepoznavanje snaga i slabosti, kao i sposobnost kontrole ili izbjegavanja značajnih uzroka loše kvalitete proizvoda. Revizija programa može biti tri vrste:
  • samopoštovanje. Provodi se unutar vlastitog osoblja organizacije.
  • Procjena organizacije treće strane.
  • Procjena treće strane. Proces revizije procesa provodi se u otvorenom okruženju kako bi se poboljšala njegova učinkovitost korištenjem softvera kvalitete softvera. Rezultati takve revizije su povjerljivi za organizaciju. Što se tiče prikupljanja podataka, koriste se četiri metode:
  • Standardni popis pitanja dospijeća.
  • Individualni i grupni razgovori.
  • Pregledi dokumenata.
  • Sudionici pregledavaju nacrt procjene.
  • Standardna metoda SCAMPI

    Definicija IEEE-a za osiguranje kvalitete softvera:
  • Planiran je sustavni plan za sve radnje potrebne za stvaranje dovoljnog povjerenja da proizvod ili proizvod ispunjava potrebne tehničke zahtjeve.
  • Skup postupaka kojima se procjenjuje kvaliteta kvalitete softvera putem kojihproizvodi se razvijaju ili proizvode.
  • CMMI (Institut za softversko inženjerstvo) za poboljšanje procesa (SCAMPI) razvijen je kako bi zadovoljio zahtjeve temeljene na IPA CBA i CBA. IPI i SCAMPI sastoje se od tri faze:
  • Plan i priprema.
  • Provjera procjene na licu mjesta.
  • Izvješće o rezultatima.
  • Mjere za plan i fazu osposobljavanja uključuju sljedeće čimbenike:
  • Definiranje područja procjene.
  • Izrada plana.
  • Priprema tima za ocjenjivanje.
  • Procjena sudionika.
  • Upravljanje upitnikom CMMI.
  • Proučavanje odgovora u upitnicima.
  • Provođenje početnog pregleda dokumenata.
  • Mjere u fazi izvješćivanja uključuju:
  • Podnošenje konačnih rezultata.
  • Provedba izvršne sjednice.
  • Završetak ocjene kvalitete softvera.
  • Mjere za fazu procjene na licu mjesta uključuju:
  • Organizaciju otvaranja projekta.
  • Vođenje intervjua.
  • Generalizacija informacija.
  • Priprema prezentacije rezultata.
  • Organizacija za zatvaranje projekta.
  • Organizacijska struktura osoblja

    Uključuje one koji su odgovorni za kvalitetu softvera. Takvi ljudi mogu biti:
  • Menadžeri.
  • Top menadžeri, posebno oni koji su izravno odgovorni za osiguranje kvalitete.
  • Voditelji odjela za razvoj i podršku.
  • Voditelji odjela za testiranje.
  • Voditelji projekata i timovi za razvoj projektnog tima i timovi za podršku.
  • Voditelji timovatestiranje.
  • Ispitivači.
  • Članovi timskog testiranja:
  • stručnjaci SQA-a i zainteresirane prakse.
  • povjerenici SQA-a.
  • Članovi odbora i članovi foruma SQA.
  • Članovi tima podjele SQA-a.
  • Samo su rukovoditelji i osoblje odjela za testiranje zaposleni na puno radno vrijeme za zadatke SQA-a. Drugi posvećuju samo dio svog radnog vremena pitanjima kvalitete. Zapravo, u razvojnim organizacijama postoje strukture upravljanja na tri razine:
  • Viši menadžment.
  • Upravljanje odjelima.
  • Upravljanje projektom. Voditelj projekta je osoba odgovorna za osiguravanje da svi članovi tima slijede navedene procedure i upute. Njegov zadatak uključuje profesionalna praktična i upravljačka pitanja. Voditelji projekata obavljaju sljedeće funkcije:
  • Rad jedinice za razvoj i podršku softvera.
  • Rad na integraciji i testiranju razvoja softvera, korekcije i izvršenja regresivnih testova.
  • Izvršenje inspekcija i naknadne ispravke nedostataka.
  • Izvršenje prihvatnih ispitivanja.
  • Instaliranje softvera na udaljenim stranicama klijenta.
  • Potreba za instaliranjem antivirusnih alata

    Prilikom kupnje novog, korisnik razmišlja o tome kada kupiti antivirusni softver. Mnogi još uvijek nazivaju ovu vrstu antivirusa, iako je danas taj termin zastario. Najgore od svega, činjenica da "najbolji" malware, ako ga se može nazvati, tiho prodirena računalu bez znanja vlasnika. Možda će to biti skriveno od očiju korisnika, ali to će donijeti štetu. Uz ozbiljnu nadogradnju operativnih sustava, nestala je potreba za instaliranjem takvih sumnjivih programa za zaštitu računala. Korisnici sada imaju Windows 10. Microsoft je izgradio dva važna alata: vatrozid i Windows Defender. Ova dva štrajka dizajnirana su za zaštitu vašeg računala. Budući da su integrirani u OS, nisu potrebni nikakvi dodatni vanjski softverski resursi. Microsoft često ažurira uslužne programe, nastojeći spriječiti pojavu novih prijetnji. Ako iz nekog razloga nešto izbije, tu je poboljšana verzija "obrane" - branitelja sustava Windows. Radi izvanmrežno. Možete ga pokrenuti bez spajanja na internet s USB uređaja za pohranu. Windows Defender dobar je alat. Nema razloga da se ne koristi. Uz to, novi vlasnici ne nailaze na takve hitne slučajeve kada kupuju antivirusni softver.

    Povezane publikacije