Tarkvara projekt seminar VI Eelmise iteratsiooni tagasivaade, testimine, installatsioonijuhend, järgmise iteratsiooni näited. Karel Kravik
Administratiivset:protestid Probleem: protestide hulk ja kvaliteet ei ole mõistlik Lahendus: Protesti esitamine muutub edaspidi "tasuliseks". Kui protesti ei rahuldata, kaotab rühm 10% protestitava tulemi eest antavatest punktidest. Märkus: Protestidele suunatud energia: kui te sellest poole suunaksite rakenduse parendamisse saaksite te ilmselt palju rohkem punkte juurde... 23.03.2007 Karel Kravik, Webmedia AS 2
Administratiivset: installatsioonijuhend Järgmine tarne on kooditarne Seega nihkub installatsioonijuhendi esitamine III tarnesse Punktimäär jääb samaks 23.03.2007 Karel Kravik, Webmedia AS 3
Administratiivset: keskkond Kas on rühmi kellel on probleeme infrastruktuuriga? SVN Changelogic ats.cs.ut.ee Andmebaasid Rakendusserverid Veebiserverid... 23.03.2007 Karel Kravik, Webmedia AS 4
Üldist Püüdsin hinnata sisu, mitte vormistust Tulemus peaks olema parem süsteem ja ühtlasi ka parem hinne Punktide ümberjaotus et saaks praegu karmimalt hinnata Järgmine risthindamine lugege, mis eelmine kord valesti oli 23.03.2007 Karel Kravik, Webmedia AS 5
Nõuded: keskenduge olulisele Millist probleemi te lahendate? Mis on killer feature? Mis on kõige põhilisem kasutussituatsioon? Mis on kõige keerulisem osa? Prioritiseerige nõuded Vaadake visiooni 23.03.2007 Karel Kravik, Webmedia AS 6
Nõuded: välistage umbmäärasus Süsteem peab olema ilus Süsteemis peab olema võimalikult vähe vigu Kood peab olema mõistlikult vormistatud 23.03.2007 Karel Kravik, Webmedia AS 7
Ainemudel: keep it simple Klassifikaatorisüsteem Õigustesüsteem Dünaamilised parameetrid Mitu-mitmele seosed Kardinaalsus 1 15, 1:1 Uus tabel 1:n seosega, kohas kus piisaks vabateksti väljast olemi parameetris Kuupäevaarvutused (end_date, etc) 23.03.2007 Karel Kravik, Webmedia AS 8
Teie enda huvides esitades pooliku koodi, kaotate palju rohkem kui need 10 punkti mudeli eest 23.03.2007 Karel Kravik, Webmedia AS 9
Ainemudel: seletused Ainemudel ja/või andmesõnastik Klassifikaatorite väärtuste loetelu Abstraktsed nimed: transaction, content, aruanne, reegel, protsess, menetlus 23.03.2007 Karel Kravik, Webmedia AS 10
Ainemudel: perspektiiv Mis juhtub kui mingi pikem periood saab läbi? Näiteks õppeaasta vahetub? Mis juhtub kui hierarhilisse struktuuri tekib 1000 kirjet? Mis te nende andmetega peale hakkate? 23.03.2007 Karel Kravik, Webmedia AS 11
Prototüüp Ainult kujundus ei rahulda, aga on oluline Peaks olema vastavuses ainemudeliga. N: kui ainemudelis on 1:n seos siis saagu ka prototüübist n kirjet lisada Kas kõigile olemitele ainemudelis vastab vorm? Võiks saada navigeerida Võiks olla legend Väga hea: Hugo (hinnetelehed) 23.03.2007 Karel Kravik, Webmedia AS 12
Getting real http://gettingreal.37signals.com/ Peatükid: Build less What s the big idea? Half, not half assed Interface first 23.03.2007 Karel Kravik, Webmedia AS 13
Protestidest Kulutage see aeg parem koodi kirjutamisele Võib juhtuda, et me võtame hoopis punkte maha Mitmekordne karistamine 23.03.2007 Karel Kravik, Webmedia AS 14
Testimistulemid ja nende hindamine
Kvaliteedikontrolli tulemid Info rakenduse kvaliteedi kohta, sh Vead ja nende olulisus Positiivsed testimistulemid Vahendid selleks: Testimine Vigade haldus Testjuhtumid Testilogi 23.03.2007 Karel Kravik, Webmedia AS 16
Milleks seda infot vaja on? Projekti staatus Reliisi staatus Analüüsi, arhitektuuri, jms kvaliteedi hindamine Inimeste kvaliteedi hindamine Probleemide vältimine tulevikus 23.03.2007 Karel Kravik, Webmedia AS 17
Mida peaks teadma vigadest? Mittetriviaalne tarkvara sisaldab vigu. Alati. Sa ei tea midagi vigade kohta. Tarkvara läheb toodangusse vigadega. Parem on teada millised need vead on. 23.03.2007 Karel Kravik, Webmedia AS 18
Vearaport Halb: Miski ei tööta!!??! See mis siin toimub on täielik haltuura! Klientide nimekirjas on viga. Parem Nullpointer klientide nimekirjas + attachitud stacktrace Sisestades filtrisse tekib klientide nimekirjas nullpointer + attachitud stacktrace 23.03.2007 Karel Kravik, Webmedia AS 19
Mida peaks sisaldama raport? Kuidas veani jõuda Sammud vea reprodutseerimiseks Praegune käitumine Soovitud käitumine 23.03.2007 Karel Kravik, Webmedia AS 20
Nii konkreetne kui võimalik Nii üldine kui võimalik 23.03.2007 Karel Kravik, Webmedia AS 21
Näide: Viga kliendi detailvormil Üldistame: Kas ükski kliendi detailvorm ei tööta? Kas ükski detailvorm ei tööta? Kas terve rakendus ei tööta? Konkretiseerime: Osad kliendi detailvormid ei tööta. Mis on vahe töötaval ja mittetöötaval? Hmm täpitähed! Üldistame: Kas ükski täpitähti sisaldav vorm ei tööta? Konkretiseerime: õ -tähte sisaldavate nimedega klientide detailvormil tekib viga teatega 23.03.2007 Karel Kravik, Webmedia AS 22
Vea lahendamine Kus selline viga veel võib esineda? Kas õ-tähega asutuse detailvormid on korras? Mis on selle vea tegelik põhjus? Andmebaas kasutab sellist charset i mis ei saa hakkama õ-tähega? Kuidas välistada terve vigade klass? Konverteerida andmebaas? 23.03.2007 Karel Kravik, Webmedia AS 23
Tulem: vearaportid Peavad olema Changelogic us Kuuluvad hindamisele ja risthindamisele Info kuidas näha teisi projekte ilmub listi 23.03.2007 Karel Kravik, Webmedia AS 24
Testjuhtumid ja testilogi Kui leitakse mittetriviaalne viga, siis tuleb kirjeldada kuidas seda korrata Kui leidub mittetriviaalset funktsionaalsust, siis tuleb kirjeldada, kuidas seda testida Lihtsaim viis: Nõue XXX test OK 23.03.2007 Karel Kravik, Webmedia AS 25
Miks see oluline on? Kui on vead, siis me teame, et süsteem on katki Mis siis kui vigu pole? Rakendus töötab Rakendust ei testitud Rakendus ei ole valmis testimiseks 23.03.2007 Karel Kravik, Webmedia AS 26
Tulem: nõuetele vastavus Kes tahab, kirjutab testjuhtumid Peab tegema dokumendi, kus on: Nõue (kõik nõuded nõuete dokumendist) või viide kirjutatud testjuhtumile Kes testis? Millal testis (iteratsioon)? Kuidas seda testiti (mittetriviaalsed juhud)? Kas süsteem vastas nõudele? Kui ei siis vea ID(-d) Changelogic ust 23.03.2007 Karel Kravik, Webmedia AS 27