Kravspesifisering (2): Validering av kravspek er

Like dokumenter
DRIFTSANALYSER 2012/2013 FORELØBIGE RESULTATER

Bolk om Kravspesifisering

Målet med dette notatet er å dokumentere at det er funnet løsmasser ved grunnen og å dokumentere miljøgiftkonsentrasjonen i sedimentene.

STRATEGOS B. Målskjema. Serie nr.: Bruker Navn: Adresse: Kontaktpersoner. E-post: E-post: Levering Avd. Bruker Annet: Adresse:

Handi-Lift EA7 Målskjema

Godkjenning av møteinnkalling

Testobservator for kjikvadrattester

Målskjema. Serie nr.: Bruker Navn: Adresse: Kontaktpersoner. E-post: E-post: Levering Adresse:

Handi-Lift EA7 Målskjema

Tegn og tekst. Et representert tegn kan vises på flere måter. Noen definisjoner. Enda noen definisjoner. \yvind og ]se N{rb}? a a a.

Perceived semantic. quality. Semantic quality. Syntactic. quality. guttens alder er grønn: gutt.alder = grønn

Netlife Sans er vår egen skrifttype. Den inneholder alle de visuelle elementene til identiteten vår. Den er tegnet i fire vekter, med en egen vekt

Godkjenning av møteinnkalling

Offentlig utvalg for punktskrift, OUP Norsk standard for 8-punktskrift punktskrift 24. oktober 2004 sist endret

'f( '?jfj(f{) Pa vegne av styret i Lenningen L(Ilypelag. Til Andelseiere og sponsorer i Lenningen L0ypelag!

Handi-Lift ML7 Målskjema

L ; D = B M B N I < G H = D = F C M E N < D ; <? ; < = H M = < F E < M B = B C O P E < E F D < Q K

PDF created with pdffactory Pro trial version

Kravspesifisering (4): Use Cases. Hvorfor passer use cases til krav? Tema / læremål. Gjettekonkurranse: Hva er det mest fundamentale.

Dagens tema: INF2100. Utvidelser av Minila array-er. tegn og tekster. Flass- og Flokkode. prosedyrer. Prosjektet struktur. feilhåndtering.

Godkjenning av møteinnkalling

GJENNOMGANG UKESOPPGAVER 9 TESTING

PDF created with pdffactory Pro trial version

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

Tegn og tekst. Om tegn og glyfer. Tegnkoder og kodetabeller Kode Noe som representerer noe annet. Et representert tegn kan vises på flere måter

PDF created with pdffactory Pro trial version

Innkalling er sendt til: Namn Funksjon Representerer

Innkalling er sendt til: Namn Funksjon Representerer

Validering og verifisering. Kirsten Ribu

ﺪ ﻩ ﻋﺍ ﻮﹶ ﻭ ﻗ ﻪ ﹾﻘ ﹾﻟ ﻔ ﺍ ﹺﻝ ﻮ ﹸﺃ ﺻ ﹸ ﻣ ﺔ ﻮﹸ ﻈ ﻣ ﻨ $ ﺡﺮﺷ! " ' (# $% & )*! +,!* -

Oversikt over forelesningen. DFD sentrale konsepter. Intro til Dataflytdiagrammer (DFD) Marakas, kap. 5

Efficiency, Integrity, Reliability, Surviveability, Usability. Correctness, Maintainability, Verifiability

! " # $ % & ^Pv`!$ x âîv7ç È'Ç È b j k Æ' z{3 b jkæ b ÇÈÉÊ&( )! c q r É. xy+ - Êlm l D E ` &! D E â î #" ' #$ '#! v( D/Ev A B x y&?

Business modelling is not process modelling Gordijn/Akkermans/van Vliet. : Den fysiske ytring med kontekst og referanse

Î Ö ØØ Ò Ú Ö

Tom Heine Nätt og Christian F. Heide. Datasikkerhet

USER GUIDE. RRD Silencioso

Prototyping og kommunikasjon med brukere

Læringsmål og pensum. Utvikling av informasjonssystemer. Oversikt. Systemutvikling Systemutvikling i seks faser Femstegs prosedyre for programmering

Uttrykkskraft for konseptuelle modelleringsspråk Metamodellering, ontologi

Unicode. Unikt vakkert eller unisont håpløst? En vandring gjennom tegnkodingens historie. Dag Lamgmyhr, Ifi/UiO Ark 1 av 23

Dagens tema INF1070. Vektorer (array er) Tekster (string er) Adresser og pekere. Dynamisk allokering

P ² Ö³, ƒ. ƒ μ² 1,. ƒô Ï,. Ô² Ô ³ 2. ƒ ŒŒ - Š ˆ ˆ ƒ ˆ Ÿ. ˆ Š œš ˆ ƒ. ƒ Š. ² μ Ê ² μ ± Ö ² μ Éμ Ö

Notater: INF1510. Veronika Heimsbakk 20. mai 2015

Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp

ST0202 Statistikk for samfunnsvitere

I# w ,F3<#""" wxy2t {r u v$ 0 Y 4 } ~ Â ` - é$8 UX#' ] d Ñ \ ] J. I \ ] O,+R:,!" {%O DM%M5#' ] J*CO!

Alle har en kreativ muskel

Kravspesifikasjon med UML use case modellering. Erik Arisholm

Kravspek: Mål-orientering

Kirsten Ribu

Kravhåndtering. INF1050: Gjennomgang, uke 03

Systemutvikling (Software Engineering) TDT 4110 IT Grunnkurs Professor Guttorm Sindre

C C H. Forklar trippelbindingen ved betraktning av hybridisering av karbonatomene og atom- og molekylorbitaler.

Vektorer. Dagens tema. Deklarasjon. Bruk

Digitale ferdigheter og digital dømmekraft Voksenopplæring Buskerud 16. august 2016

Tom Røise 9. Februar 2010

Lage større programmer (Python, relatert til teoridelen om Software Engineering ) TDT 4110 IT Grunnkurs Professor Guttorm Sindre

LED arbeidslys. Katalog Kontakt: Rakkestad Stavanger Side 1 12/02/17

Presentasjon 1, Requirement engineering process

Design, protoyping og konstruksjon. INF 1500; introduksjon 9l design, bruk og interaksjon 4 oktober 2010

Tegn og tekst. Posisjonssystemer. Logaritmer en kort repetisjon. Bitposisjoner og bitmønstre. Kapittel August 2008

VEDLEGG 1 KRAVSPESIFIKASJON

Prototyping. TDT4180, vår Yngve Dahl IDI, NTNU NTNU

Forord. Det er i kostnadsberegningen ikke tatt med kostnader til grunnerverv, VA og elektro. Antatt kostnad fra fv. 155 Osloveien er 1,6 mill.

"!$#&%(' )*+%,"-. / 0&1,1,2&3,34 1,576 PORQRSTPU OV W STRX 8:9;9=< E,F G H I J&K,K,F&E,EC K,L7M. Y Z[RY \;]^R_a` b \cdy e;fgzy hre;f

GJENNOMGANG UKESOPPGAVER 7 REPETISJON

Kravspesifisering (5): Use Cases, forts. 1.1 identifiser/oppsummer hver u.c. Tema / læremål. 1. Del opp i detaljerte use cases

Modellering av krav. INF1050: Systemutvikling 11. februar Universitetslektor Yngve Lindsjørn

Modellering av krav. INF1050: Systemutvikling 07. februar Førstelektor Yngve Lindsjørn

Dagens tema. C-programmering. Nøkkelen til å forstå C-programmering ligger i å forstå hvordan minnet brukes.

Livsløpstesting av IT-systemer

Kvalitetskrav til løsninger

Innkalling er sendt til: Namn Funksjon Representerer Arvid Ole Refvik

SAKSLISTE SIGDAL KOMMUNE

ÒÒÓÙÒ Ö Ñ Û Ø Ö Ù Ò ÝÐ ØØ Ò ÝÒ ÖÓÒ Þ ÌÖ Ò Ø ÓÒ ØÓÛ Ö Ø ÙÒ Ð Ø Ö Ð Ô Ö ÒØ Ö Þ Ö ÒØ º Ö Þ Ò ºÞ ÒØ Ö ÓÖ ÓÒÓÑ Ê Ö Ò Ö Ù Ø Ù Ø ÓÒ Ó ÖÐ ÍÒ Ú Ö ØÝ Þ Æ Ø ÓÒ Ð

IN 147 Program og maskinvare

Ã Ô ½ Ë Ð Ô Ø Ô Ø Ð ØÖÙ ØÙÖ

Datamaskinen LC-2. Dagens tema. Tall i datamaskiner Hvorfor kan LC-2 lagre tall i intervallet ? Hvorfor er det akkurat celler i lageret?

Dagens tema. Datamaskinen LC-2 En kort repetisjon. Binære tall Litt om tallsystemer generelt. Binære tall. Heksadesimale og oktale tall

GJENNOMGANG OBLIGATORISK OPPGAVE 1

DRI2001 h04 - Forelesning Systemutvikling og nettsteder

Ì ÊÁË ÈÖÓ Ö Ñ ÜÔÐÓÖ Ö Ë ÓÒ ËØ ØÙ Ê ÔÓÖØ ÏÓÐ Ò Ë Ö Ò Ö ÏÓÐ Ò ºË Ö Ò ÖÖ º Ùº Ø Ê Ö ÁÒ Ø ØÙØ ÓÖ ËÝÑ ÓÐ ÓÑÔÙØ Ø ÓÒ ÊÁË µ ÂÓ ÒÒ Ã ÔÐ Ö ÍÒ Ú Ö ØÝ Ä ÒÞ Ù ØÖ

Grunnleggende testteori

Jernbaneverkets erfaringer med implementering av RAMS

Miljøtekniske Grunnundersøkelser og Tiltaksplan Forurenset Grunn

Dagens tema INF1070. Vektorer (array-er) Tekster (string-er) Adresser og pekere. Dynamisk allokering

Funksjonskravene er delt opp i to deler, krav til spillsekvens og generelle funksjonskrav.

Kravspesifisering (3): Forhold til OO Analyse og Design

Notat for oblig 2, INF3/4130 h07

Navn pa plan: R46 Hanestad fjelltak

P ²Êϱ 1,..Šμ ² ±μ 1,.. μ Î 1,2 ˆ ˆŸ. ² μ Ê ² μ Ì μ ÉÓ. É μ ±, Ì μé μ Ò É μ Ò ² μ Ö. ÍÒ Œμ ±μ ±μ μ μ Ê É μ μ Ê É É ³. Œ..

Ó³ Ÿ , º 6Ä7(176Ä177).. 823Ä Œ. Œ ²±μ,,.. É ²,.. μ ²Ó,.. Íμ,.. ŠÊÉÊ μ,.. μ ±μ,.. ÒÏ

(a 1, a 2, a 3, a 4 ) ³Æ s 10. a 1 a 2 a 3 a 4 a 1 a 2 a 3 a 4. ( a 1 a 2 a 3 a 4 a 1 a 2 a 3 a 4) (a 1 a 2 a 3 a 4 a 1 a 2 a 3 a 4)

Grunnleggende testteori. Etter Hans Schaefer

Velkommen til INF2100. Bakgrunnen for INF2100. Hva gjør en kompilator? Prosjektet. Jeg er Dag Langmyhr

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

Innkalling er sendt til: Namn Funksjon Representerer Arvid Ole Refvik

Test og kvalitet To gode naboer. Børge Brynlund

"!$#&% '()#* +, -.$/*/*0$1*12 /*354 NMPOPQRNS MT U QRPV 68797;: < C*D E F G H$I*I*D$C*CA I*J5K. W XYPW Z9[\P]_^ ` ZabW c9dexw fpc9d

Transkript:

Ø Ø SIF 8035 - Informasjonssystemer Grunnkurs, 2002 Læremål Kravspesifisering (2): Validering av kravspek er Guttorm Sindre, IDI Forstå Kvalitetskriterier for kravspesifikasjoner Viktige steg i prosessen for å validere kravspesifikasjoner Praktiske ferdigheter i å Validere kravspesifikasjoner i samarbeid med andre Men selvsagt ikke perfekt etter dette kurset! Oversikt over forelesningen 1. Hva menes med validering i denne teksten? 2. Kravspek-gjennomganger (reviews) Prosess, deltagere, sjekklister 3. Prototyping + utvikling av brukermanualer 4. Modellvalidering 5. Kravtesting 1. Hva menes med validering i denne teksten? Skiller mellom analyse og validering Beskrevet de riktige kravene? ihht kundens behov! "! # $ #! % & ')( 2 3 * 2 + 4 5, - 6 ( 7.( 682 3/ 9 : ; < = >? @ >? = : 0 1 z{ }8~ { ƒ ˆ Š Œ Ž Š ˆ š œ ž Ÿ š ª «± ² ³ ± ³ µ Beskrevet kravene riktig? ihht standarder / retningslinjer A)B C D E F B GB H I J K L M N OQP R S T S U L R h)i j k l m i ni o p q r s t u vw x y Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ñ Ð Ó Ô Ñ Õ Ö VW X Y Z [ W \W ] ^ _ ` a b c d a e c f g ¹Qº» ¼ ¼ ½ ¾ À Á  ¾ Ã Ä Å Æ Feil, løsninger, hovedproblem Input og output til aktiviteten (fig 4.1) Feil som kan oppdages i kravspek Manglende samsvar med kvalitetsstandarder Dårlig formulerte / tvetydige krav Feil i analysemodeller / problembeskrivelser Kravkonflikter / feil som ikke ble oppdaget tidligere Løsning: fikse problemene før dokumentet vedtas Rene dokumentproblemer: enkelt Rette feilen i dokumentet Manglende forståelse: verre Nødvendig med ny problemanalyse / kravinnhenting? Hovedproblem mhp validering av kravspek øúùîû ü ý þ ùîÿ ù!" # $% & ' $( & ) % $* +, -./ 01 2 0 354687:9 ;=<>?<@:A B C D E F G8D H F I J ÚÜÛ Ý Þß àâá ã ßQä å æçèý éëê ì íîíîïñðîòîó ô õ ö Ikke noe å sammenligne med (kun kundens behov ) 1

L N M Validering krever tid! 2. Kravspek-gjennomganger (reviews) Har et kravdokument Ser ferdig ut Dessuten langt, tidkrevende å lese, mange ulike personer må involveres Fristende å storme videre til design aldri tid til å gjøre noe skikkelig, alltid tid til å gjøre det om igjen Dette kan føre til Merarbeid på senere stadier: Omgjøring av krav omgjøring av design Heller: finne mest mulig feil før kravspek vedtas Spare arbeid Redusere irritasjon (i prosjektet, eller hos kunden) Lese igjennom dokumentet for å finne feil Også aktuelt for design, kode etc. Ofte mer effektivt enn testing! Hvorfor?? Krav kan ikke testes, review et vanlig valg Review-prosessen (jfr fig 4.2) Selve møtet 1. Planlegg review Velg deltagere, finn tid og sted 2. Distribuer dokumenter Kravspek ++ distribueres til deltagere 3. Forbered review Deltagere ser igjennom materialet hver for seg Konflikter? Utelatelser? Avvik fra standarder?... 4. Hold review-møte Diskusjon av individuelle kommentarer Beslutninger om tiltak 5. Oppfølging av tiltak 6. Revider kravspek-dokumentet Ordstyrer bør ikke ha vært involvert i å lage kravspek-dokumentet Sekretær: notere problemer og vedtak Underveis: Kravansvarlig presenterer ett og ett krav Spør om kommentarer / problemer Problemer samles opp, diskuteres Enighet om aksjoner Anslått tidsforbruk 20-40 krav per time, samme for forberedelse Dvs: 400 krav validert av 4 persons team: 50 timeverk O Mulige aksjoner som kan vedtas Forhåndssjekking (4.1.1) 1. Oppklaring Kravet er dårlig formulert, eller detaljer er utelatt. Forbedre formuleringen. 2. Manglende informasjon Innhent mer info fra interessenter / andre kilder 3. Konflikt Noen krav er i konflikt med hverandre. Interessenter må forhandle seg frem til en løsning. 4. Urealistisk krav Kravet kan ikke implementeres med gitt teknologi / innen gitte rammer. Må spørre interessenter om kravet skal slettes eller forenkles. Formål: redusere arbeidet til reviewere Fjerne banale feil før review, så denne kan konsentrere seg om mer alvorlige feil Rask sjekk, 1 person Skrivefeil, dokumentformat š p qkr ls mt n o œ ž Ÿ š u v w x y z { } ~} } ƒ Œ Œ Ž ˆ ƒ Š ³ µ ³ ª «µ ±² P Q R S TUQ V Q W XY Z [ \ ] ^ _ ` a Mulige resultat Returnere dokumentet til kravspek-teamet Videresende til review med feil markert b c d e fg h cg i d cj 2 K

Å velge deltagere til review (4.1.2) Sjekklister for review Bør ideelt ha Representant(er) for brukere og kunde Ekspert(er) på problemområdet Designer(e) Kravutvikler(e) Fordeler med personer med ulik bakgrunn Ulik kunnskap, ulike evner Kan i fellesskap oppdage flere problemer Ulike grupper kan få forståelse for hverandres behov, redusert krangel ved kravkonflikter Anbefalt gruppestørrelse: 3-10 Evt også møtes på nettet? (ikke nevnt i boka) Mer generelle enn for kode Bør være forståelige for brukere / kunder Gjerne organisasjonsspesifikke basert på prosjekttype og erfaringer Ikke for lang! (< 10 punkter) Eksempel Overordnede kvalitetsmål (fig 4.4) Konkrete spørsmål som kan stilles (fig 4.5) Overordnede kvalitetsmål (1) Overordnede kvalitetsmål (2) Forståelighet Kan leserne forstå hva kravet betyr? Redundans Unødig gjentak av info? Kompletthet Krav som mangler? Info som mangler ihht dok.format? Tvetydighet Begreper / fraser som kan tolkes på flere måter? Vær særlig obs på terminologi avhengig av fagfelt Konsistens Motsigelser mellom krav? Organisering Fornuftig struktur på dokumentet? Annen struktur bedre for forståelse? Samsvar med standarder Er dok. i samsvar med standarder? Evt avvik rettferdiggjort? Sporbarhet Lenker mellom relaterte krav? Lenker til bakgrunnsinfo for avgjørelser? Konkrete spørsmål (fig 4.5) 3. Prototyping (4.2) Unik id (sporbarhet, samsv. Std) Terminologi definert (forståelighet) Krav selv-inneholdt (forståelighet, kompletthet) Begrep brukt ulikt (tvetydighet) Samme tjeneste etterspurt (konsistens, redundans) flere steder? Ulike krav? Referanser til stede? (kompletthet) Relaterte krav gruppert? Eller ref. til hverandre? (organisering, sporbarhet) Vanskelig å forstå krav bare ved å lese dem Prototyper: viser eksempler på kjøring Eliminere misforståelser Ideer til nye krav Valideringsprototype Mål: gi forsmak på realistisk praktisk systembruk Lurt hvis man alt har en innhentingsprototype Ellers neppe verdt kostnad Må være mer komplett enn innhentingsprototype Dvs. videreutvikling nødvendig L M 3 ¹

Aktiviteter i prototypebasert validering 1. Velg testere Sluttbrukere med ulike jobber Ikke teknologi-entusiaster 2. Lag test-scenarier Tilfeldig lek med prototypen lite effektivt Må dekke div. vanlige arbeidsoppgaver Sekvenser av handlingssteg som skal utføres 3. Utfør scenarier La bruker jobbe uten hjelp, men observer! 4. Dokumentér problemer / endringsbehov rapportskjema N Annen bruk av prototyper Basis for utvikling av systemtester Handlingssteg her ~ scenarier for prototypebruk (eksekverbar) Back-to-back testing mot ferdig system (eksekverbar) nødleveranse Hvis system ikke blir ferdig innen fastsatt tid Men farlig fristelse! altfor mange prosjekter ender opp med å levere noe som egentlig skulle være en bruk-ogkast prototype... Metoder for prototyping (kap 3) Papir-prototype Magisk ( Wizard of Oz ) prototype Eksekverbar prototype O Utvikling av brukermanualer (4.2.1) 4. Modellvalidering Kan gjøres allerede for prototype Bør inneholde flg info: Hvilken funksjonalitet som er implementert Hvordan denne kan nås gjennom UI Hvilke deler som ikke er implementert Hvordan man skal komme opp etter kræsj Om nødvendig: installasjonsinstrukser Tidlig skriving av brukermanual Nyttig også uten prototype Framtvinger reformulering av krav Forklaringsproblemer: symptom på kravproblemer Systemmodeller inngår gjerne som del av kravspek-dok. F.eks. Prosess-, info-, use case-, objektmodeller Disse bør også valideres Er hver modell internt konsistent? Er ulike modeller konsistente med hverandre? Stemmer modellene med problemområdet / kundens behov? Teknikker for modellvalidering Review, omformuleringer Manuelt... Semi-automatisert... Automatisk Omformulering: DFD tekst 5. Kravtesting (4.4) Navn på prosess Inputs, kilder Navn på hver inn-flyt, og hvor denne kommer fra Selve transformasjonen Hva som gjøres for å konvertere inputs til outputs Outputs Navn på hver ut-flyt, og hvor denne går Kontrollflyt Evt unntaks- eller kontrollinformasjon som er inkludert i modellen Konkret eksempel: fig 4.9-10 Betydning: Ikke å teste kravet (først mulig etter implementasjon) Men å vurdere om det er testbart......ved å foreslå mulige tester (test cases) Spørsmål Hvilket bruksscenario kan teste kravet? Inneholder kravet nok info til å definere test? En test nok, eller trengs flere? Kan kravet omformuleres så det blir klarere hva slags tester som er nødvendig? Problemer med å formulere test er symptom på problem med selve kravet 4 º

¼ Rapportskjema for kravtesting Oppsummering Bør inneholde flg info: 1. Kravets ID 2. Relaterte krav (ref.) 3. Testbeskrivelse 4. Kravproblemer 5. Kommentarer, anbefalinger Noen krav er vanskelige å foreslå tester for 1. Systemkrav (dvs systemet som helhet) 2. Eksklusive krav (som sier hva som ikke skal skje) 3. Noen ikke-funksjonelle krav ½ F.eks. Pålitelighet, sikkerhet,... Har gått igjennom Hva krav-validering er Noen retningslinjer for god kravspek Noen teknikker for krav-validering Neste gang OO og krav 5»