Ohjelmiston laadunvarmistus (SQA) on määritelty hyvin suunnitelluksi ja järjestelmälliseksi lähestymistavaksi ohjelmistojen laadun arvioimiseksi. Se tarkistaa ohjelmistotuotteiden standardien, prosessien ja menettelyjen noudattamisen. SQA sisältää järjestelmällisen prosessin, jolla varmistetaan, että standardit ja menettelyt vahvistetaan ja niitä noudatetaan koko ohjelmistokehityksen elinkaaren ja testisyklin ajan.
Testauksen pääpaino on tunnistaa viat järjestelmässä mahdollisimman aikaisin, koska vikojen korjaaminen aikaisin on halvempaa. Tutkimuksen numeroiden mukaan, jos virheitä löydetään julkaisun jälkeen, niiden korjaaminen on kalliimpaa ja ne vaikuttavat myös loppukäyttäjien luottamukseen sovellukseen.
IBM: n tutkimus osoittaa, että sovelluksen julkaisun jälkeen löydettyjen vikojen korjaaminen on 100 kertaa kalliimpaa
- Yhteenvetona voidaan todeta, että ohjelmiston laadunvarmistus on tärkeää, koska sen avulla
- Varmista, että projekti täyttää vaatimukset
- Estä, havaitse ja korjaa viat aikaisin
- Minimoi projektiriskit
- Paranna tuotteen luotettavuutta
- Paranna loppukäyttäjäkokemusta
- Testaus ja standardien noudattaminen
- Julkaisujen hallinta ja julkaisujen hallinta
- Alennetut kehityskustannukset
- Pienemmät ylläpitokustannukset
Testauksen edut
- Lyhyempi aika markkinoille
- Korkealaatuinen
- Uusimmat testausresurssit
- Joustavat resurssit
- Keskity strategisiin painopisteisiin
SQA-toiminnot tapahtuvat kehityksen elinkaaren jokaisessa vaiheessa. Vaiheet luokitellaan vaatimusten keräämisen, järjestelmän suunnittelun, koodauksen ja testauksen sekä lopullisen julkaisun alueille.
- Todentaminen - Järjestelmän tai komponentin arviointiprosessi sen määrittämiseksi, täyttävätkö tietyn kehitysvaiheen tuotteet kyseisen vaiheen alussa asetetut ehdot.
- Vahvistus - prosessi, jolla järjestelmä tai komponentti arvioidaan kehitysprosessin aikana tai lopussa sen määrittämiseksi, täyttääkö se erityisvaatimukset
Vaatimusanalyysin, sovelluskehityksen suunnittelu- ja koodausvaiheiden aikana jokaisen vaiheen tuotokset on mitattava, seurattava ja hallinnoitava, jotta kukin lähtö voidaan tarkistaa sen ennalta määriteltyjen poistumiskriteerien perusteella. Kun lopullinen hakemus on suorittanut koodaus- ja integrointivaiheet, se on validoitava alkuperäisten hakemusvaatimusten mukaisesti ja ylimmän johdon on allekirjoitettava läpäistynä validointitestinä. Tämän sovelluskehityksen jokaisessa vaiheessa on parannettava kehityksen aikana toteutettavia ponnisteluja laadun parantamiseksi ja kilpailukyvyn säilyttämiseksi.
Ero todentamisen, validoinnin ja ohjelmiston laadun mittaamisen välillä
Tehokkaan todentamisen on osoitettava, että kaikki vaatimukset on suoritettu oikein, tämä tehdään testaamalla vaatimukset tuotteen toimitukseen nähden. Nämä testit voidaan suorittaa uudelleen samojen tulosten saavuttamiseksi, jos järjestelmää muutetaan myöhemmin.
Todentaminen osoittaa, että tuote täyttää määritellyt vaatimukset ennalta määritetyissä välitavoitteissa kehityksen elinkaaren aikana. Vahvistus tarkistaa, että järjestelmä täyttää asiakkaan vaatimukset kehityksen elinkaaren lopussa.
Vahvistus on prosessi, jolla arvioidaan lopputuote sen tarkistamiseksi, täyttääkö sovellus asiakkaan odotukset ja vaatimukset. Se on dynaaminen mekanismi todellisen tuotteen validoimiseksi ja testaamiseksi. Vahvistustestauksessa käytetään menetelmiä, kuten mustan laatikon (toiminnallinen) testaus, harmaan laatikon testaus ja valkoisen laatikon (rakenteellinen) testaus jne.
Kussakin prosessissa tai mallissa tuotettavan ohjelmiston laatu kuvataan luotujen vikojen määrällä. Yleensä vikojen yleisimmät mittarit ovat:
- Testitapausten kokonaismäärä
- Hyväksyttyjen testitapausten määrä
- Testitapausten määrä epäonnistui
- Estettyjen testitapausten määrä
- Löydettyjen vikojen määrä
- Hyväksyttyjen vikojen lukumäärä
- Hylättyjen vikojen lukumäärä
- Lykättyjen vikojen lukumäärä
- Kriittisten vikojen määrä
- Suunniteltujen testituntien lukumäärä
- Todellisten testituntien lukumäärä
- Toimituksen jälkeen löydettyjen vikojen määrä
Laadunvarmistuksen eri toiminnot ovat seuraavat:
- Projektin laadun ylläpitäminen eritelmien ja liiketoiminnan vaatimusten mukaisesti.
- Vikojen ehkäisy ja viralliset menetelmät muille vikojen ehkäisytekniikoille.
- Vikojen vähentäminen.
- Tarkastus, muodolliset ja epäviralliset tarkastukset: Suora vian havaitseminen ja poistaminen suorittamatta projektiskenaariota.
- Projektin testaaminen vikojen havaitsemiseksi ja virheen poistamiseksi.
- Riskin tunnistaminen.
- Vikojen seurantatekniikat ja menetelmät.
- Ohjelmiston vikasietoisuus.
- Loppuhuomautukset ja raporttien pitäminen.
Miksi ohjelmiston laadunvarmistus on erittäin tärkeää
- Käyttäjän näkökulma : Ohjelmistosovelluksen laadunvarmistus on hyvä nähdä sovellus loppukäyttäjän näkökulmasta ja luoda siitä riippuva skenaario.
- Vika testausvaiheessa : On hyvä löytää ongelmat varhaisessa vaiheessa ja korjata ne ennen kuin asiakas löytää ne esimerkiksi tuotannosta.
- Projektiriski : Laadunvalvonnalla projektin alkaessa on keskeinen rooli määrittelyvaiheissa tunnistettujen riskien vähentämisessä.
- Luotettavuus : Lisää loppukäyttäjien luottamusta, kun he löytävät sovelluksen toimivan odotustensa mukaisesti. Jopa negatiivisessa tilanteessa armon täydellinen epäonnistuminen lisää loppukäyttäjän luottamusta ja tekee sovelluksesta älykkään.
- Helpottaa loppukäyttäjää : Se auttaa loppukäyttäjää suorittamaan liiketoiminnan ilman teknistä tietoa sovelluksesta. Helposti ymmärrettävissä sovelluksissa on enemmän käyttäjiä kuin perinteisissä sovelluksissa.
- Tietoturvaloukkausten ehkäisy : Se auttaa ohjelmistokehittäjiä suojaamaan käyttäjätietoja tuotantoympäristössä ja havaitsemaan mahdolliset tietovuodot testausympäristössä.
- Kuormituksen ymmärtäminen : Se auttaa ymmärtämään simulaatiossa toimivaa sovellusta ja korjaamaan ongelmat ymmärtämättä järjestelmän todellista kuormitusta tuotantoympäristössä.
- Automaatio : Ohjelmiston testaaminen tavoitteena vähentää testaustoimia, tuottaa valmiuksia nopeammin ja edullisemmin. Se auttaa rakentamaan laadukkaampia ohjelmistoja pienemmällä vaivalla.