Planlegging og dokumentasjon Edgar Bostrøm. - leilighetsnotat, etterutdanningskonferansen, 17.02.2010, noe revidert. Generelle kommentarer: Begrunnelse for hovedområdet Planlegging og dokumentasjon : o en del av de 5 grunnleggende ferdigheter (lese, skrive, muntlig, regne, bruke digitale verktøy), spesielt skrive -delen. o viktig del av IT-faget generelt. Begreper o modell o metode o teknikk o verktøy V-modellen ligger på modell-, delvis på metodenivå. Antagelig behov for litt mer formalisering av hvordan planlegging og dokumentasjon kan gjøres, uten at det skal bli for omfattende, og uten at det skal bli en tvangstrøye. o UML er blitt en industristandard. o Kan ikke bruke hele pakka derfra, men kanskje vil noen deler kunne være aktuelle o De mest aktuelle kandidatene (på teknikknivå) Klassediagram Bruksmønstre (use-case) Sekvensdiagrammer Aktivitetsdiagrammer o For de eksamensoppgavene som har blitt gitt, er antagelig bruksmønstre det som er mest aktuelt. o Andre teknikker bør også vurderes, både innenfor og utenfor UML. Tilsvarende vurderinger bør gjøres for andre deler enn planlegging av funksjonelle deler av systemet. Under følger en mulig måte å planlegge deler av de to siste vår-eksamenene (vår 2008, vår 2009) i IT-2 på via bruksmønstre. De er temmelig trivielle når det gjelder funksjonalitet. De er ikke fullstendig fylt ut, men nok til å gi et inntrykk. 1
Variant av 20-spørsmål-oppgaven (vår 2009), men med rene spørsmål (ikke ulike bilder/lyd/video): 20 spørsmål Skjermbilder??? Registrer svar Bruker Skriv ut svar Registrer svar. Formål:. Ikke-funksjonelle krav:. Navn på bruksmønsteret (jf. diagrammet) Hva starter ( trigger ) og avslutter bruksmønsteret? 1. Bruksmønsteret starter ved at brukeren trykker på Start Quizz -knappen. 2. Systemet viser et skjermbilde med første (neste) spørsmål og svarfelt. 3. Brukeren taster inn svarforslag. 4. Brukeren trykker på Neste-knappen 5. Systemet henter neste skjermbilde 6. Skritt 2, 3 og 4 gjentas for de følgende spørsmål 5. Bruksmønsteret avslutter når alle spørsmålene er besvart. Hvem gjør hva? (her: systemet eller brukeren) 3a: Bruker har ikke tastet inn svar. Systemet venter, uten tidsfrist. 4a: Brukeren har ikke tastet inn svar. Systemet skal da gi en feilmelding, og det hentes ikke opp nytt skjermbilde. Skriv ut svar. Formål:. Ikke-funksjonelle krav:. 1. Bruksmønsteret starter når systemet har registrert alle spørsmålene. 2. Systemet viser et skjermbilde med alle svarene på, og med angivelse av riktig eller feil. 3. Hvis alle svarene er korrekte, skrives det ut en hyggelig melding. 4. Bruksmønsteret avsluttes ved at brukeren trykker på Avslutt -knappen.. (ingen) 2
ettbutikk (vår 2008) Varebestilling Skjermbilder??? Bestill varer Kunde Skriv ut ordrebekreftelse Bestill varer Formål: Bruksmønsteret skal brukes for å kunne registrere et vilkårlig antall varer. Skjermbildet er organisert som varelinjer med varenr, varenavn, pris og antall. (vel, egentlig ikke formål..) Ikke-funksjonelle krav: 1. Bruksmønsteret starter når nettsiden er lastet. 2. Bruker taster inn varenr. 3. Systemet henter opp varenavn og pris, samt viser et bilde av varen. 4. Bruker taster inn antall 5. Systemet skriver ut hvor mye det er bestilt for til nå 6. 2, 3, 4 og 5 gjentas. 7. Bruksmønsteret avsluttes ved at brukeren trykker på Skriv ordrebekreftelse 3a: Varenr som er tastet inn finnes ikke. Skriv ut ordrebekreftelse Formål:. Ikke-funksjonelle krav: 1. Bruksmønsteret starter når kunden har trykket på Skriv ordrebekreftelse 2. For hver linje skriver systemet varenr, varenavn, 3. Systemet skriver ut varesum. 4. Hvis brukeren trykker på Bekreft ordre, går bestillingen videre til. 5. Bruksmønsteret avsluttes. 2a: Det finnes ingen varelinjer. Systemet skriver ut en feilmelding og bruksmønsteret avsluttes. STOPP - vi bør tenke igjennom: Kunne noe gjøres smartere???? Er det noe som mangler???? 3
Smartere? Mangler som bør rettes på? Smartere: Varenr hentes fra en komboboks, dermed vil valgt nr. alltid være lovlig. Unntaket trengs dermed ikke. Sjekk på tom ordre bør vel gjøres i bruksmønsteret Bestill varer? (i motsetning til hva som står i oppgaven). Mangler: Henting av kundedata? Evt.: registrering av kunde eget bruksmønster?? (presisering om dette skal gjøres, og i tilfelle hvordan det skal håndteres mangler i oppgaven). Hva hvis varenr. finnes, men det ikke finnes noen med dette varenr. på lager?? (Vil det oppdages tidlig nok, eller kommer det etter ordrebekreftelse? Hva skal vil gjøre med det det? Presisering mangler i oppgaven.) Hva med opplysningen i oppgaven om gratis vare dersom varesum var over 1000 kr. Skal denne informasjonen komme med en gang summen er over 1000, og slik at kunden kan velge med en gang? I så tilfelle: hva hvis kunden dropper noen varer, slik at summen bli under 1000? Eller skal dette først kunne skje når bestillingen ellers er ferdig?. Jeg oppdaget slike ting først når jeg begynte å skrive bruksmønstre. Bra at det ble oppdaget før jeg evt. begynte å kode. Ofte tenker man på bruksmønstre som først og fremst den grafiske illustrasjonen. Den tekstlige beskrivelsen er imidlertid vel så viktig. ote: Bruksmønstre er mye mer omfattende det som er vist her, og flere deler kunne vært gjort annerledes enn forslaget over. Det gir likevel litt inntrykk. 4
Et litt større eksempel på et bruksmønsterdiagram Et litt større eksempel 1, hentet fra legebransjen, og illustrerer et system der det er flere aktører. Systemet består altså av 4 bruksmønstre, til sammen markert som et bruksmønsterdiagram (rektangelet, som er lagt til av EB). 1 http://edn.embarcadero.com/article/31863#use-case-diagram 5