OOA & D Analyse av problemområde klasser, klassediagram struktur atferd 14 mars 2006 1 (
Modellering i analysen Utgangspunkt: Problemområdet slik det framkommer i systemdefinisjonen Problemområdet beskrives slik kommende brukere vil se det Objekter er byggeklosser Fokusér på struktur og dynamikk Prioritér overblikk framfor detaljer 2
Application domain The organisation that administrates, monitors, or controls a problem domain Problem domain That part of a context that is adminstrated, monitored or controlled by a system 3
Problem domain The system should be able to register persons (elderly and disabled) that has be provided security alarms, administrate alarms, create a two way connection when an alarm is activated and administrate and monitor a variety of offered social care services. 4
Modellen av problemområdet Anvendelsesområde : Modell 5 Problemområde Modellen er en oppdatert representasjon av situasjonen i problemområdet. Brukere får gjennom modellen informasjon om problemområdet Mathiassen, Munk-Madsen, Nielsen & Stage, 2001
Objekter Et objekt er en abstraksjon over et konkret fenomen i det problemområdet som IT-systemet skal brukes til å administrere, styre eller overvåke Identitet Må kunne finnes / gjenfinnes Tilstand Statiske egenskaper og verdier Atferd Hendelser som påføres eller utføres av objektet, bl.a. felles hendelser 6 Objekter klassifiseres primært etter sine hendelser
Klasser Klasse: En beskrivelse av en mengde objekter med samme struktur, atferdsdmønster og attributter Fenomener Fysiske ting Personer og roller Organisasjoner Steder Begreper Ressurser Systemer Abstrakter Klasser bil, vare, emballasje, materiale ansatte, forelder, kunde, medlem virksomheter, avdelning, gruppe, prosjekt hylle, parkeringsplass, tomt, by firkant, valuta, kvalitetsparameter, gebyr penger, tid, energi, informasjon gateregister, kassaterminal, alarmsystem avtale, spesifikasjon, forestilling, ekteskap 7
Hendelser 8 Hendelse: En øyeblikkelig begivenhet Involverer ett eller flere objekter Atomistisk (udelelig) Observerbare Identifiserbare Eksempler Skrotet, forflyttet, fusjonert, besatt, forstørret, betaling, gate innført, forlenget Valg av hendelser Ut fra hva som er relevant i forhold til systemdefinisjonen Hendelser som bare skjer i datasystemet beskrives ikke Kontoutskrift foretatt er ingen hendelse
Identifisering av hendelser Byråkratier registrerer hendelser det ankommer dokumenter Flyttemelding til folkeregisteret, eksamensresultat til studieadministrasjonen, faktura til regnskapskontoret egen observasjon kontroll genererer hendelser Fjerner medlemmer som ikke har betalt, sender forespørsel til likningsvesenet Maskinell observasjon trykknapper, mus, lysstråler som brytes, strekkodeleser, magnetstripeleser, temperaturføler, radioavlesning 9
10 Klassifisering Bakgrunn Systemdefinisjon Hverdagslige begreper Spesielle begreper for problemområdet Objekter i problemområdet Hendelsesgruppering Liten frihet i valg av hendelser Hva initierer hendelsen? Objekt? Hva blir berørt av hendelsen? Objekter? Daglig aktivitet, ofte ubevisst Ulike oppfatninger av hva et begrep betyr Ulike problemområder Ulike anvendelsesområder Ulike erfaringer Eks tog
Hendelsetabell Klasser Privat kunde Bedrifts kunde Leie kontrakt Reservasjon Utleie Bil Pris gruppe Stasjon Hendelser Reservert X X X X X Avlyst X X X X X Leiet med dep. X X X X X Leiet X X X X X Levert X X X X X X Returnert X Bedrift.opprettet X X Bedrift nedlagt X X 11
En struktur hvor en generell klasse beskriver egenskaper og atferdsmønstre som er felles for et antall spesielle klasser Egenskapene og atferdsmønstrene nedarves til de spesielle klassene Er-en (is-a) Avdeling Produksjons avdeling Service avdeling 12
Klynger En samling klasser som er innbyrdes forbundne «klynger» Personer Person «klynger» Organisasjonsenhet Avdelning Kunde Ansatt Maskin Produkt 13
Relasjoner mellom objekter Tegnes også på klassediagram Fastlegger kardinalitet (dansk: mangfoldighet) Aggregering Associering 14
Aggregering En struktur hvor et overordnet objekt (helheten) består av et antall underordnede objekter (delene) Uttrykker at et objekt er en del av et annet, inneholdt i et annet, medlem i et annet Har-en, inngår-i, (has-a, part-of) Helhet-del, sammensetning Genser 1 1 1 2 1 0.. 1 Erme Bol Hals 15
Associering En struktur hvor et antall sideordnede objekter knyttes til hverandre En bil har null eller flere eiere, en eier har én eller flere biler Bil 0.. 1.. Eier knows associated with 16
Klassediagram Kunde Stasjon 1 1 1 0.. Bedriftskunde Privatkunde Leiekontrakt 0.. Prisgruppe 1 1 0.. 1 1 0.. 0.. 1 0.. 1 Bil Reservasjon Utleie 1 0.. 0.. 17
Hendelsesforløp (event trace) en konkret sekvens av hendelser som et objekt er involvert i gjennom et bestemt tidsrom Atferdsmønster (behavioural pattern) et abstrakt mønster av hendelser som fastlegger de mulige hendelsesforløpene for alle objekter av en klasse struktureres som en algoritme eller et tilstandsdiagram 18
Privatkunde navn adresse reservert (dato) avlyst (dato). Aktiv levert (dato) Bedriftskunde navn bedrift bedriftsskunde opprettet (dato, kreditbeløp) reservert (dato) Aktiv avlyst (dato) bedriftsskunde nedlagt (dato) leiet (dato) levert (dato) 19
Regulære uttrykk Sekvens i atferdsmønstre Hendelse 1 + Hendelse 2 + Hendelse 3 +... + Hendelse n Tilstandsdiagrammer Hendelse 1 Tilstand 1 Hendelse 2 Tilstand 2 Fødsel + Dødsfall Fødsel Levende Dødsfall Død Tilstand 1 Hendelse n 20
Seleksjon valg, if Regulære uttrykk Hendelse 1 Hendelse 2 Hendelse 3... Hendelse n Tilstandsdiagrammer Landet Styrtet 21
Regulære uttrykk Hendelse 1* (Hendelse 1 + Hendelse 2)* Tilstandsdiagrammer Iterasjon løkke, gjentagelse, while Passasjer gått ombord* (Lettet + Landet)* 22
Tilstandsdiagram - fly 23
24