Use case modellering i analysefasen - PowerPoint PPT Presentation

1 / 36
About This Presentation
Title:

Use case modellering i analysefasen

Description:

Use case modellering i analysefasen Metode for identifisere og beskrive de funksjonelle kravene til et system Kapittel 9 i UML Distilled Kirsten Ribu – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 37
Provided by: krib1
Category:

less

Transcript and Presenter's Notes

Title: Use case modellering i analysefasen


1
Use case modelleringi analysefasen
  • Metode for Ã¥ identifisere og beskrive de
    funksjonelle kravene til et system
  • Kapittel 9 i UML Distilled
  • Kirsten Ribu

2
Use case modellen
  • beskriver kravene til systemet (hva skal det
    gjøre og hvem som skal bruke det)
  • beskriver systemet sett fra brukerens perspektiv,
  • beskriver hva som skjer, ikke hvordan det
    skjer
  • beskriver interaksjonen mellom brukeren og
    systemet (på en måte som brukeren kan forstå)
  • dokumenterer omfanget til systemet (slik at man
    kan beregne størrelsen og hvor lang tid det tar å
    lage systemet)

3
Use Case modellen
  • har blitt en de facto standard for hÃ¥ndtering
    av
  • krav i systemutviklingsprosjekter.
  • Kostnader ved feilhÃ¥ndtering av krav er høye
  • Det er viktig med en god metode for utforming av
    krav
  • er starten pÃ¥ analysefasen.
  • Use case modellen benyttes videre i
    prosjektplanlegging, objekt-orientert analyse og
    design og i testing.

4
Use case modellen
  • Use case modell Use case diagram Use case
    beskrivelser
  • Use case diagram gir en enkel
  • oversikt over systemet, men er ikke komplett.
  • Use case beskrivelser strukturerte
  • tekstlige beskrivelser, ingen standard.

5
Eksempel Use case diagram
Timebestillingssystem
Aktør
Use case
Grensesnitt
6
Use case beskrivelse bestill time
  • Systemet viser et skjema med dato og klokkeslett
  • Bruker velger tidspunkt
  • Systemet ber om bekreftelse pÃ¥ at dataene er
    korrekte
  • Brukeren bekrefter
  • Systemet spør om brukeren vil ha kvittering pÃ¥
    sms eller e-mail
  • (Brukeren foretar et valg)
  • Systemet lagrer opplysninger og sender kvittering

7
Use case modell
  • Systemet viser et skjema med dato og klokkeslett
  • Bruker velger tidspunkt
  • Systemet ber om bekreftelse pÃ¥ at dataene er
    korrekte
  • Brukeren bekrefter
  • Systemet spør om brukeren vil ha kvittering pÃ¥
    sms eller e-mail
  • (Brukeren foretar et valg)
  • Systemet lagrer opplysninger og sender kvittering

Timebestillingssystem
8
Hva er et Use case?
  • Opprinnelse Ivar Jacobsen i Objectory senere
    Rational nå IBM
  • Traffic cases -gtuse cases
  • Definisjon Et use case er en oppgave (task) som
    brukeren vil utføre ved hjelp av systemet
    (eksempel bestill time, vis cder)
  • Et use case beskriver hendelser i systemet
  • Et use case kan være enkelt eller komplekst

9
Finn systemets omgivelser og omfang - Viktige
spørsmål
  • Hvilken funksjonalitet mÃ¥ systemet inkludere og
    hvilken kan ekskluderes?
  • Hvem skal bruke dette systemet?
  • Hvilke produkter og/eller resultater skal
    systemet tilby?
  • Hvorfor trenger brukerne den funksjonaliteten
  • som dette systemet tilbyr?
  • (SpørsmÃ¥l som skal besvares i prosjektrapporten)

10
Aktører
Aktører har MÅL med bruken av systemet. De vil
oppnå noe.
11
Aktører
  • tegnes som fyrstikkmennesker med et navn
  • er rollene som mennesker og andre systemer har
    når de kommuniserer med ett eller flere use case
  • Er ikke det samme som titler eller personer,
  • mennesker med en jobbtittel kan spille rollen til
  • mange ulike aktører
  • en aktør kan representere flere jobbtitler
  • En aktør kan delta i mer enn et use case

12
Hva er en Aktør?
  • En bruker av systemet i en bestemt rolle
  • Kan ogsÃ¥ være et eksternt system
  • Aktøren er ekstern i forhold til systemet
  • Aktøren interagerer med systemet
  • Aktøren har krav til systemet

13
oppgave
  • Finn aktører for dette systemet
  • Et brannvarslingssystem overvÃ¥ker en serie
    brannsensorer for å oppdage tegn på brann. Når
    tegn på brann oppdages, ringer en alarm,
    overrislingsanlegget settes i gang, og
    brannvesenet varsles.

14
Use case modellering
  • Use case modellen bestÃ¥r av diagram og tekstlige
    beskrivelser som viser stegene i use caset
  • Hvert use case steg beskriver en enkelthandling
    (transaksjon) mellom bruker og systemet
  • Et komplett use case bestÃ¥r av flere ulike
    hendelsesforløp (flyt, scenarier)

15
Stegene i use case modellering
  1. Identifiser aktører
  2. Identifiser use case ut fra aktørenes mål.
  3. Identifiser sekundære aktører, dvs. aktører som
    ikke har
  4. Tegn use case diagram. Dette gir et overblikk
    over aktører og use cases og dermed over
    funksjonaliteten til systemet.
  5. Lag tekstlige beskrivelser av use casene. Disse
    viser hvordan aktører når mål ved bruk av
    systemet.

16
Identifiser Personen
17
Eksempel Spørreskjemagenerator
  • Problemdefinisjon (Kravspesifikasjon)
  • Et meningsmÃ¥lingsinstitutt ønsker Ã¥ fÃ¥ laget et
    system der spørreskjema er på Internett/Web.
    Systemet skal være slik at det skal være enkelt å
    legge et spørreskjema ut på Web, enkelt for andre
    å fylle ut skjemaene på Web og at svarene lagres
    på et format som kan eksporteres til andre
    verktøy (f eks "strukturert tekst" som kan
    importeres til et regneark). Deltakerne skal
    kunne lagre svarene underveis og fortsette
    utfyllingen av skjemaet senere. Til noen av
    spørsmålene er det nødvendig å lese en del tekst.
    Meningsmålingsinstituttet ønsker å ha en enkel
    oversikt over svarene som er kommet inn, f eks
    hvor mange som har svart på de ulike spørsmålene.
    Det som skal lages er altså ikke et enkelt
    spørreskjema på Web, men en spørreskjema-generato
    r" for Web.

18
Hvordan skrive use case
  • Beskriv hva som gjøres, ikke hvordan det gjøres
  • Skriv hendelsesflyten som en nummerert liste pÃ¥
    formen
  • 1. ltAnsattgt ltber omgt at ltspørreskjemagtlt blir
    lagretgt
  • 2.ltSystemetgtltlagrergtltskjemaetgt
  • Finn riktig detaljeringsnivÃ¥
  • Beskriv bare 1 hendelse per steg
  • Ikke beskriv detaljer om brukergrensesnitt.
  • Eksempel Ikke Aktør trykker pÃ¥ Send-knappen

19
Identifiser Personen
20
Verb handlinger gtUse cases
  • Et meningsmÃ¥lingsinstitutt ønsker Ã¥ fÃ¥ laget et
    system der spørreskjema er på Internett/Web.
  • Systemet skal være slik at det skal være enkelt
    å legge et spørreskjema ut på Web,
  • enkelt for andre Ã¥ fylle ut skjemaene pÃ¥ Web og
    at svarene lagres på et format som kan
    eksporteres til andre verktøy (f eks "strukturert
    tekst" som kan importeres til et regneark).

21
Forts
  • Deltakerne skal kunne lagre svarene underveis og
    fortsette utfyllingen av skjemaet senere.
  • Til noen av spørsmÃ¥lene er det nødvendig Ã¥ lese
    en del tekst.
  • MeningsmÃ¥lingsinstituttet ønsker Ã¥ ha en enkel
    oversikt over svarene som er kommet inn, f eks
    hvor mange som har svart på de ulike spørsmålene.
  • Det som skal lages er altsÃ¥ ikke et enkelt
    spørreskjema på Web, men en spørreskjema-generato
    r" for Web.

22
Aktører og målbeskrivelse
Aktør Mål 1 Mål 2 Mål 3
Ansatt Generer spørreskjema Publiser spørreskjema Vis statistikk
Deltager Velg spørreskjema Svar på spørreskjema
Web-browser Lagre spørreskjema
23
Overordnet use case modell
24
Main success scenario for Generer Spørreskjema
  • Systemet ber om overskrift, innledning og antall
    spørsmål
  • Ansatt skriver inn nødvendig informasjon
  • Systemet sjekker at alle felt er utfylt
  • Systemet viser et spørreskjema der tekst til
    spørsmål skal fylles inn
  • Ansatt skriver inn tekst og svaralternativ
  • Systemet sjekker at riktig antall spørsmÃ¥l har
    fått tekst
  • Ansatt ber om at spørreskjemaet blir lagret
  • Systemet lagrer spørreskjemaet

25
Pre- og postbetingelser, triggere
  • Prebetingelse MÃ¥ være sant før use caset starter
    (testbart).
  • F.eks Bruker er logget inn, bruker er registrert
    i systemet
  • Postbetingelse Testbar tilstand nÃ¥r use caset er
    ferdig.
  • F.eks Bruker har mottatt en e-post, eller
    Skjema er opprettet.
  • Trigger En hendelse som setter i gang use caset.
  • F.eks Kunde ønsker Ã¥ bestille time

26
Use case Svar på spørreskjema
  • Aktør Deltaker
  • Trigger Deltaker velger Ã¥ svare pÃ¥ undersøkelsen
  • Systemet viser spørreskjemaet
  • Deltaker svarer pÃ¥ spørsmÃ¥lene
  • Systemet sjekker om alle spørsmÃ¥lene er besvart
  • Deltaker bekrefter svarene
  • Systemet sender skjemaet og genererer en
    kvittering
  • Variasjoner
  • 3a. Alle spørsmÃ¥l er ikke besvart
  • 1. Systemet ber deltaker fylle ut resten av
    spørsmålene
  • 2. Extend use case Fortsett senere

27
Use case Fortsett senere
  • Aktør Deltaker
  • Trigger Alle spørsmÃ¥l er ikke besvart
  • Systemet gir beskjed om at ikke alle spørsmÃ¥l er
    besvart
  • Deltakeren velger Ã¥ fortsette senere
  • Systemet lagrer svarene

28
Komplett use case beskrivelse av Generer
spørreskjema
Extension point
29
Use case modell med include og extend use cases
30
Hvorfor use case modellering?
  • De funksjonelle kravene, dvs. hva systemet skal
    gjøre, må beskrives
  • Metoden oppmuntrer til Ã¥ stille riktige spørsmÃ¥l
  • Metoden er systematisk
  • Utviklere og kunder kan sjekke at use case
    modellen inneholder det som er nødvendig
  • Det er enkelt Ã¥ navigere i modellen
  • Man fÃ¥r raskt overblikk over funksjonaliteten
  • Man kan studere detaljer nÃ¥r det er nødvendig

31
Utfordringer
  • Kravene blir til mens de beskrives
  • Kravene til systemet endres underveis
  • Use case modellen mÃ¥ oppdateres
  • Kravene kan bli beskrevet med ujevn
  • detaljeringsgrad
  • Dette motvirkes ved Ã¥ detaljere ut i iterasjoner.

32
Ikke-funksjonelle krav
  • Eksempler pÃ¥ ikke-funksjonelle krav er krav til
  • sikkerhet, ytelse, responstid, kostnader
  • detaljer rundt hvilke hardware eller software
    komponenter som skal brukes
  • Ikke-funksjonelle krav som gjelder et spesielt
    use case kan skrives i det use caset
  • Ikke-funksjonelle krav som gjelder flere use case
    eller hele systemet beskrives i et eget dokument.

33
Oppsummering
  • Use casene beskriver kravene tilsystemet
  • En aktør er en bruker av systemet kan ogsÃ¥ være
    et annet system
  • Use cases beskriver oppgaver som utføres av
    aktøren
  • Use case uttrykkes gjennom diagrammer og tekst
    (scenarier)

34
Scenario
  • Et scenario er en hendelsesflyt en sekvens av
    hendelser
  • En komplett use case beskrivelse inneholder
  • Trigger, Prebetingelser Postbetingelser Main
    success scenario Variasjoner, Feilsituasjoner

35
Prosjektet
  • Gruppene mÃ¥ nÃ¥ finne en bedrift eller
    organisasjon å gjøre prosjektet i
  • Prosjektet gÃ¥r ut pÃ¥
  • Ã¥ studere bruken av et datasystem i
    organisasjonen
  • Beskrive organisasjonen og lage organisasjonskart
  • Intervjue brukere om hvordan de bruker systemet,
    og om hvordan de opplever det
  • Modellere systemet og beskrive det

36
Neste gang
  • Use case drevet analyse og design
  • Kapittel 3 og 4 i UML Distilled
  • Klassediagrammet
  • Sekvensdiagrammer
Write a Comment
User Comments (0)
About PowerShow.com