Ohjelmiston laatu

" Ohjelmisto laatu tarkoitetaan kokonaisuudessaan ominaisuudet ja tunnusomaiset arvot ohjelmistotuote , jotka liittyvät sen soveltuvuus täytettävä tietyt tai oletettuja tarpeita" (todellinen / kohde).

Määritelmät IEEE

Laadukkaat mallit

Laatumalli (metataso)

konsepti

Itse ohjelmistolaadun käsite on toimimaton; H. ei sovelleta suoraan käytännössä. Siksi on olemassa laatumalleja, jotka konkretisoivat termin ja operoivat sen yksityiskohtaisemmin. Tämä luo puun (tai verkon ) termeistä ja alaehdoista.

Laatuominaisuuksia kutsutaan englanniksi tekijäksi , laatuosaominaisuuksia kutsutaan kriteereiksi ja laatuindikaattorit ovat mittareita . Siksi kirjallisuudessa esiintyy sellaisia laatumalleja kuin "FCM-mallit" (esim. FURPS , Boehm ym. 1978, DGQ -modell 1986, McCall ym. 1977). indikaattoreiden olisi oltava havaittavissa olevia tai mitattavissa olevia tosiasioita. Esimerkiksi tässä voidaan käyttää ohjelmistomittareita .

Esimerkki ISO / IEC 9126: sta

Ohjelmistojen laatukriteerit ISO 9126 mukaan

Laatumalleja on esimerkiksi ISO-standardin ISO / IEC 9126 muodossa . Tämä standardi määrittelee vierekkäisessä kuvassa esitettyjen ohjelmistojen laatukriteerit kaksitasoisessa rakenteessa. Sitten käy selväksi, että ohjelmiston laadun ymmärretään tarkoittavan muutakin kuin vapautta virheistä (jotka voidaan olennaisesti osoittaa toiminnallisuuden kriteerille).

Laatuominaisuuksissa nimetään erilaiset ominaisuudet, jotka ohjelmistolla pitäisi olla. Nämä ovat ylimmällä tasolla:

  • toiminnalliset ominaisuudet, "ohjelmiston toimintojen perusominaisuudet" (mitä sen tulisi toiminnallisesti suorittaa ja miten),
  • ei-toiminnalliset ominaisuudet, jotka luonnehtivat "ohjelmistotuotteen toimintakäyttäytymistä päivittäisessä käytössä".

Vaatimukset, jotka ohjelmistotuotteen on täytettävä käytön aikana, on luokiteltava ei-toiminnallisiin ominaisuuksiin luotettavuuden, käytettävyyden ja tehokkuuden suhteen, vaihdettavuuden ( ylläpidettävyyden ) ja siirrettävyyden laatukriteerit ohjelmiston sisäiseen luonteeseen (lähinnä. lähdeteksti ), jonka on mahdollistettava / yksinkertaistettava kaikki tarvittavat mukautustoimenpiteet.

Nämä kriteerit edustavat kehystä, joka voidaan määrittää yksittäisille ohjelmistotuotteille yksittäisissä eritelmissä, jotta ne voidaan ottaa huomioon ohjelmistokehityksessä.

Ohjelmiston laadun varmistaminen

On olemassa useita prosessimalleja ja -menetelmiä sen varmistamiseksi, että ohjelmisto täyttää erilaisten laatuominaisuuksien vaatimukset (= laadunvarmistus , laadunvarmistus lyhyesti) .

Jotkut mallit voidaan määrittää prosessin laadun käsitteelle . Tämä olettaa, että korkealaatuinen tuotekehitysprosessi suosii korkealaatuisten tuotteiden luomista. Siksi seuraavat mallit asettavat laatuvaatimuksia prosessille, jossa ohjelmisto kehitetään.

On kuitenkin olemassa myös menettelytapamalleja , kuten tavoite-kysymys-metrinen lähestymistapa, joka johtaa yksittäisiin laatumalleihin.

Mallit ja menetelmät

Jotkut mallit:

Yritysprosessien toteutuksen arvioimiseksi on olemassa ISO / IEC 15504 (kutsutaan myös nimellä SPICE) tai sen toimialakohtaiset muunnokset (kuten Automotive SPICE ECU-toimittajien kehitysprosesseihin)

Joitakin menetelmiä:

Jotkut mallit voidaan yhdistää toisiinsa, menetelmät suurimmaksi osaksi. Ketterien prosessien mallit, kuten äärimmäinen ohjelmointi, ovat erityisen mielenkiintoisia, koska niissä käytetään synergiavaikutuksia, jotka johtuvat eri menetelmien samanaikaisesta käytöstä.

Laadunvalvonta keskittyy ohjelmistojen testaukseen

Laatu- ja testausmenetelmät projektin aikana

Testaus on tärkeä osa ohjelmistokehitystä ohjelmiston laadun kannalta. Laatu ohjelmisto, joka on luotu tai muunnettu / kehitetään edelleen on tarkastetaan eri menetelmillä (esim. Avainsana perustuvat testit , riski-testaus, data-driven testaus, ...), prosessi malleja , testi tyypit , testi tasot , tms. ennen kuin se luovutetaan todelliseen käyttöön . Kirjallisuus (tässä) kutsuu tätä "luottamuksen luomiseksi ohjelmiston laatuun" ja selittää: "Testit eivät ole ainoa mittari laadunhallinnassa ohjelmistokehityksessä, mutta ne ovat usein viimeisiä mahdollisia; Laatua ei voida 'testata'. " .

Vastaavasti laadunvarmistustoimenpiteiden osalta tehdään ero rakentavien ja analyyttisten toimenpiteiden välillä (katso kuva).

  • Rakentaviin toimenpiteisiin kuuluvat esimerkiksi tieteenalat, kuten systemaattinen projektin määrittely ja projektin tavoitteiden määrittely , sekä yksityiskohtainen (ja projektin asiakkaiden sitovasti hyväksymä) vaatimusten analyysi , vakiintuneiden tai määriteltyjen ohjelmointistandardien käyttö jne.
  • Analyyttiset toimenpiteet voidaan jakaa
    • staattiset mittarit (katso staattisen koodin analyysi , kuten koodiarvostelut ), joissa luodun sovelluksen koodi tarkistetaan ilman, että sovellusta todella suoritetaan. Toimenpiteen tyypistä riippuen tarkistus tapahtuu eri aikoina, esim. B. välittömästi koodikehityksen aikana (katso pariohjelmointi ) tai vasta ennen julkaisua käyttäjän testejä varten.
    • dynaamiset testit, joissa luotu sovellus todella suoritetaan monenlaisten konstellaatioiden alla (katso myös testitapaus ), ja saadut tulokset tarkistetaan.

Ohjelmiston laatu on siis eri tiloissa eri aikoina kehityksen aikana, ja sen on täytettävä kaikki määritellyt vaatimukset / kriteerit, kun sitä todella käytetään tuottavasti.

Ohjelmistotyyppikohtaiset laatuominaisuudet

Ohjelmistojen laatukriteerit voivat vaihdella merkitykseltään ohjelmistotyypistä riippuen , niitä ei voida aina arvioida / painottaa yhdenmukaisesti, ja myös muita yksityiskohtaisia ​​vaatimuksia voi syntyä. Tämän seurauksena erilainen menettely on joskus tarpeen tai mahdollista tuotannon ja myös laadunvarmistuksen aikana.

Esimerkiksi, kun kriteereitä, kuten oikeellisuudesta ja oikeellisuudesta (osittainen kriteerit varten toiminnallisuuden ) on yleensä sama tai samankaltainen merkitys / painotus kaikki ohjelmistot tyyppejä , tämä voi olla erilainen muut kriteerit riippuen. Tällaiset poikkeamat / erikoispiirteitä laatukriteerit on kuvattu alla esimerkin avulla ja viittaamalla laatukriteerit ohjelmiston mukaisesti ISO / IEC 9126 :

Vakio-ohjelmisto

Tämän tyyppisille ohjelmistoille, jotta eri käyttäjät voivat käyttää sitä , siirrettävyyden (mukautuvuuden) kriteeri on erityisen tärkeä. Vakio-ohjelmiston toiminta-alue voidaan siten mukauttaa ( parametroimalla ) yrityksen vaatimien toimintojen alueelle.

Järjestelmäohjelmisto

Kriteerit tehokkuus (kulutuskäyttäytymistä, aika käyttäytyminen) voi olla erityisen tärkeää tämäntyyppisiä ohjelmia; samoin uudelleenkäytettävyys ja yhteensopivuus (= suoritettavuus eri järjestelmäympäristöissä ).

Peliohjelmisto

Täältä tulee erityisen tärkeä tehokkuus , esimerkiksi grafiikkakorttien paras hyödyntäminen ("sujuvat" kuvaliikkeet). On olemassa myös erityisiä vaatimuksia osalta käytettävyys (kuten tasaisuus, yksinkertaisuus).

Mobiililaiteohjelmisto

Toiminnallisuus

Turvallisuuden alaehto : Verrattuna kiinteiden tietokoneiden sovelluksiin, käyttäjän liikeprofiilit luodaan myös arkaluontoisina tiedoina.

Tehokkuus

Yksittäisissä kriteeriä kulutuksen käyttäytymisen , käyttö prosessorin suorituskykyä , keskusmuisti ja online tietomäärästä ovat erityisen tärkeitä. Alhainen akun kulutus voi taata mahdollisimman pitkän käyttöajan.

Vaihdettavuus

Suurin ero työasematietokoneisiin on alustojen moninaisuus ja niiden nopeampi jatkokehitys, mikä vaatii yksinkertaisia ​​/ nopeita ohjelmistomuutoksia.

Tämä joustavuus voidaan saavuttaa käyttämällä kehyksiä (kuten PhoneGap ja Xamarin ) eri käyttöjärjestelmissä ja ympäristöissä, ja se voidaan asentaa helposti ( asennettavuus ). Toinen vaihtoehto alustan riippumattomuuden saavuttamiseksi ovat ns. Verkkosovellukset , eli sovellukset, jotka näytetään ja joita käytetään verkkoselaimessa.

Siirrettävyys

Mobiililaitteille on ominaista erikokoiset näyttöalueet (1-10 tuumaa ). Sovellusten on oltava käytettävissä pienillä näytöillä ja niiden on voitava käyttää mielekkäästi suurempia näyttöjä. Vaihto pysty- ja vaakasuoran muodon välillä on yleistä mobiilialustoilla, mutta poikkeus työasemilla.

Suurimman osan ajasta ei ole oikeaa näppäimistöä käytettävissä, näppäimistön syöttö on hitaampaa, näppäimiä on vähemmän ja näppäinyhdistelmät ovat harvinaisia. Toisaalta on usein vaihtoehtoisia syöttövaihtoehtoja, jotka on tallennettava toimintojen kanssa.

vaatimustenmukaisuus

Tätä laatukriteeriä varten - että kaikessa edellä Kriteeriryhmiä sovelletaan - esimerkkinä käytettävyydestä / käytettävyydestä mobiilijärjestelmien valmistajien suunnittelusäännöt / eritelmät suurelle määrälle sovelluksia muodostavat hyvän perustan suunnittelulle. Esimerkkejä: Google, Apple ja Microsoft

kirjallisuus

  • Ralf Kneuper, Ernest Wallmüller (toim.): CMMI käytännössä. Tapaustutkimuksia CMMI: n kehittämisprosessien parantamiseksi . dpunkt, Heidelberg 2009, ISBN 978-3-89864-571-3 .
  • Ernest Wallmüller: Ohjelmiston laadunhallinta käytännössä. Ohjelmiston laatu hallitsemalla ja parantamalla ohjelmistoprosesseja . 2. painos. Hanser, München ym. 2001, ISBN 3-446-21367-8 .

nettilinkit

Yksittäiset todisteet

  1. B a b Helmut Balzert: Ohjelmistotekniikan oppikirja . nauha 2 : ohjelmistojen hallinta, ohjelmistojen laadunvarmistus, liiketoimintamallinnus . Spektrum Akademischer Verlag, Heidelberg 1998, ISBN 3-8274-0065-1 , s. 257 .
  2. Jim A.McCall, Paul K.Richards, Gene F.Walters: Tekijöitä ohjelmiston laadussa . Vols I-III. Rooman ilmakehityskeskus, Griffissin ilmavoimien tukikohta New York 1977 ( osa I, PDF ).
  3. Torsten Cleff: Perustiedot testausohjelmistoista. Herdecke, Witten 2010, ISBN 978-3-86834-012-9 , [1] s. 68.
  4. Martin Pol, Tim Koomen, Andreas Spillner: Testausprosessin hallinta ja optimointi. Käytännön opas ohjelmistojen testaamiseen onnistuneesti TPI: n ja TMap: n avulla . dpunkt, Heidelberg 2002, ISBN 3-89864-156-2 .
  5. Uudet testitekniikat seuraavan sukupolven sovelluksille. Julkaisussa: entwickler.de. 2. elokuuta 2013, luettu 11. elokuuta 2015 .
  6. a b Boles, 2.1 Ohjelmistokehityksen perusteet [2]
  7. Tietojärjestelmien tietosanakirja [3] Standardiohjelmistojen parametrointi
  8. 14: 00-17: 00: ISO / IEC 25010: 2011. Käytetty 1. syyskuuta 2020 .
  9. Mobiilisovellukset keräävät enemmän tietoja kuin poliisi. Haettu 31. heinäkuuta 2015 .
  10. https://www.pagerduty.com/blog/mobile-monitoring-reliability/
  11. http://www.imn.htwk-leipzig.de/~weicker/pmwiki/pmwiki.php/Main/%DCbertragbarkeit  ( sivu ei ole enää käytettävissä , etsi verkkoarkistoistaTiedot: Linkki merkittiin automaattisesti vialliseksi. Tarkista linkki ohjeiden mukaisesti ja poista tämä ilmoitus.@ 1@ 2Malli: Toter Link / www.imn.htwk-leipzig.de  
  12. - ( Memento of alkuperäisen alkaen 21 huhtikuu 2017 vuonna Internet Archive ) Info: arkisto yhteys oli lisätään automaattisesti, ei ole vielä tarkastettu. Tarkista alkuperäinen ja arkistolinkki ohjeiden mukaisesti ja poista sitten tämä ilmoitus. @ 1@ 2Malline: Webachiv / IABot / iso25010.info
  13. Google- materiaalisuunnittelu [4]
  14. Apple Mobile HIG [5]
  15. Microsoftin suunnittelu [6]