Title: Use case realisering Designmodellering
1Use case realisering Designmodellering
- Kirsten Ribu
- Kapittel 4 UML Distilled
2UML-Unified Modeling Language
- Sist Use Case diagram
- I dag Sekvensdiagram
- Neste gang Klassediagram
3Use case realisering med Sekvensdiagram
- Beskriver hvordan scenariene i et use case
realiseres gjennom objekter som samarbeider - Illustreres med sekvensdiagrammer
4Objektorientert analyse og design (OOAD)
- Analyse
- Use case modellering
- Design
- Sekvensdiagram
- Klassediagram
5Oppsummering av metoden
- Analyse
- 1 Identifiser aktører og deres mål
- 2 Lag et høynivå use case diagram
- 3 Spesifiser hvert use case tekstlig med normal
hendelsesflyt og variasjoner - Design (ansvarsfordeling)
- 5 Identifiser objekter og fordel ansvar mellom
dem - 6 Lag sekvensdiagram for viktige use case
- 7 Lag klassediagram
6Sekvensdiagrammet
- modellerer hva som skjer i en prosess med hensyn
på hvilke objekter som snakker sammen - og i hvilken sekvens (rekkefølge) dette skjer
- Objektene utveksler meldinger.
7Sekvensdiagrammet
- Hvert objekt har en tidslinje tilknyttet seg (en
loddrett linje). - På tidslinjen ligger handlinger
- Tiden går nedover
- Her er to objekter
8Supermann ringer
9Forslag til pantemaskin
Returner artikkel
Operatør
Kunde
Endre artikkelgodkjenning
10Begynn enkelt med input (Black box diagram)
Panteautomat
Kunde
settInnArtikkel()
sjekkOmGyldig()
Loop
beregnSum()
hentKvittering()
skrivUtKvittering()
11Pantemaskinen use case Returner artikler med
objekter
Kunde-panel
Mottaker
Artikkel
Printer
Artikkel
TotalSum
start()
create()
settInnArtikkel()
sjekkomGydig()
Kunde
loop
OK
Display()
timeOut()
beregnSum()
lagkvittering()
returnerKvittering()
12Notasjon
- Create() betyr at det opprettes et nytt objekt
- Tilsvarer new()
- i java
-
TotalSum
create()
13Et UML sekvensdiagram
- viser hendelsesflyten i et use case
- viser interaksjoner (samarbeid) mellom objekter i
systemet - viser rekkefølgen på beskjedene (abstrakt) som
sendes mellom objektene - kan brukes til å identifisere metodene og
objektene i systemet
14Sammenheng mellomuse case og sekvensdiagram
- For hvert use case lages et sekvensdiagram for
normal hendelsesflyt (main success scenario). - For hver variasjon kan man velge å lage et nytt
sekvensdiagram.
15Klassediagrammet
- Utformes parallellt med sekvensdiagrammet
- Finn klasser og metoder under utformingen av
sekvensdiagrammene - For eksempel Kundepanel Artikkel Printer
- Husk KONSISTENS mellom sekvensdiagram og
klassediagram!
16Arv (generalisering)
Optiker er en spesialisering av Ansatt
17Utarbeidelse av designmodell (klassediagram)
Pantemaskin
Kunde-panel
Mottaker
TotalSum
Printer
Artikkel
Flaske
Boks
Designmodell - systemklasser
18Finn metoder
- Legg til metodenavn ved å analysere
sekvensdiagrammene - Eks Meldingen settInArtikkel() sendes til
Mottaker- objektet. - Objektet må derfor inneholde en settInArtikkel()-
metode
19Ukeoppgave
- Se på kravspesifikasjonen og use case modellen
til Spørreskjemageneratoren. - Lag et sekvensdiagram for use caset Generer
spørreskjema - Ikke ta med variasjoner.
20Spørreskjemagenerator - krav
- Et meningsmålingsinstitutt ønsker å få laget et
system der spørreskjema er på Internett/Web. - Det skal være enkelt å legge et spørreskjema ut
på Web, og enkelt å fylle ut skjemaene på Web - 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. - Det som skal lages er en spørreskjema-generator"
for Web.
21Komplett use case beskrivelse av Generer
spørreskjema
Extension point