OOA & D. Analyse av problemområde klasser, klassediagram struktur atferd. 14 mars Tone Bratteteig

Like dokumenter
Analyse av problemområdet

OOA & D. Rike bilder. Systemdefinisjon FACTOR. Analyse av problemområde klasser, klassediagram struktur atferd. Tone Bratteteig

Uppsummering

Del II Analyse av problemområdet Kapittel 5

Universitetet i Oslo Institutt for informatikk. Eskild Busch. UML hefte

UKE 11 UML modellering og use case. Gruppetime INF1055

Modellering av data. Magnus Karge, Kartverket

GJENNOMGANG UKESOPPGAVER 4 USE CASE MODELLERING HELGA NYRUD & KRISTIN BRÆNDEN

Obligatorisk oppgave INF3221/4221

Fra krav til objekter. INF1050: Gjennomgang, uke 05

Fra krav til objektdesign

Use Case-modellering. INF1050: Gjennomgang, uke 04

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell (ny versjon) Dagens forelesning. Fra krav til objektdesign

Tom Røise IMT2243 : Systemutvikling 1. IMT2243 Systemutvikling 26. februar Klassediagrammet. Klasse

Spesifikasjon av Lag emne

Objektorientering og UML. INF1050: Gjennomgang, uke 06

Ansvarsdrevet OO: CRC og UML Sekvensdiagrammer

UML 1. Use case drevet analyse og design Kirsten Ribu

Spesifikasjon av Lag emne. Kursregistrering bruksmønstermodell. Dagens forelesning. Fra krav til objekter

Automatiserte avgjørelser og profilering

Kap3: Klassemodellering

GJENNOMGANG UKESOPPGAVER 6 MER OM OBJEKTORIENTERING OG UML

Invarianter, +lstander og li1 mer seman+kk

UML-Unified Modeling Language

I dag UML. Domenemodell visualisering av konsepter. Eksempel. Hvordan finne domeneklasser?

OptimalJ-kurs UIO Oppsummering av kurset. De ulike modellene egenskaper og formål

OOA&D starter med systemvalg

Lykke til! Eksamen i fag TDT4140 Systemutvikling NTNU Norges teknisk-naturvitenskapelige universitet

UNIVERSITETET I OSLO

Use case drevet design med UML

API: Application programming interface, eller programmeringsgrensesnitt

UML-Unified Modeling Language. Prosess-oversikt. Use case realisering

Hva betyr tjenesteorientert arkitektur for sikkerhet?

Data design p.1/17. Data design. Lage ER modell av kravspesifikasjoner.

Spesifikasjon av Lag emne. Kursregistrering g bruksmønstermodell. Dagens forelesning. Fra krav til objekter

Sensur-veiledning INF1000 h 2013 (fasit) am - 6. des. 2013

INF1400. Tilstandsmaskin

INFO TAXI REMOTE. Taxi Management CONTROL SYSTEM (TMCS)

Tilstandsmaskiner (FSM) Kapittel 5

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

INF2810: Funksjonell Programmering. Mer om strømmer

IT-forum våren ITIL et rammeverk for god IT-drift

INF2810: Funksjonell Programmering. Mer om strømmer

AMS-case forts. Eksemplifisering av modellbasert. tilnærming til design av brukergrensesnitt

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

MINE BESTE RÅD TIL OFFENTLIG SEKTOR

Web Accessibility Toolbar. Struktur. Funksjonene. Headinger. Mer om tilgjengelighet og Flash.

Fellestrekk og forskjeller i de ulike akkrediteringsstandardene

Gol Statlige Mottak. Modul 7. Ekteskapsloven

Arkitektur. 4 april Mål for forelesningen: Se på kriterier for design, arkitektur av komponent og prosess. Kriterier. Komponenter.

Dybdelæring i læreplanfornyelsen

The regulation requires that everyone at NTNU shall have fire drills and fire prevention courses.

Pensum: fra boken (H-03)+ forelesninger

Innstilling fra valgkomiteen til ekstraordinær generalforsamling 12. februar 2008

case forts. Alternativ 1 Alternativer Sammensetning Objekt-interaktor med valg

Eksamen IN1010/INF1010 våren 2018

UNIVERSITETET I OSLO

SELinux kort intro. Lars Strand 18. oktober 2007 R Å D G I V N I N G U T V I K L I N G D R I F T K U R S S U P P O R T P R O D U K T E R

Databaser: Relasjonsmodellen, del I

Typer. 1 Type: boolean. 2 Verdimengde: {true, false} 3 Operatorer: NOT, AND, OR... 1/19. Forelesning Forelesning

INF3110 Programmeringsspråk. Dagens tema. Typer (Kapittel 3 frem til ) Innføring i ML (Kapittel & ML-kompendiet.) 1/19

Innholdsfortegnelse INNHOLDSFORTEGNELSE... 2 REVISJONSOVERSIKT...4 INTRODUKSJON MED FORUTSETNINGER... 5

Object interaction. Innhold. Abstraksjon Grunnleggende programmering i Java Monica Strand 3. september 2007.

Pensum: fra boken (H-03)+ forelesninger

Institutt for biovitenskap

INF2810: Funksjonell Programmering. Lokale variabler. Og trær.

Oppsummering. Thomas Lohne Aanes Thomas Amble

Systematisk abstraksjon som verktøy i ICE-prosesser. Harald Selvær Fagskolen Oslo Akershus

INF2120 Prosjektoppgave i modellering. Del 1

Mer$om$objektorientering$og$UML

Dagens forelesning. Java 13. Rollefordeling (variant 1) Rollefordeling (variant 2) Design av større programmer : fordeling av roller.

Significance et verktøy for å vurdere våre museumssamlinger

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

Referansearkitektur use cases. Kjell Sand SINTEF Energi AS NTNU Institutt for elkraftteknikk

6105 Windows Server og datanett

UNIVERSITETET I OSLO

MAT1030 Plenumsregning 3

KONKURRANSEGRUNNLAG FOR ANSKAFFELSE AV

Kapittel 5: Objektkommunikasjon

5 E Lesson: Solving Monohybrid Punnett Squares with Coding

Produktrapport Gruppe 9

M A M M estre A mbisiøs M atematikkundervisning. Novemberkonferansen 2015

Fra: Arne Hågensen. Sendt: 30. november :59 Åse Saltkjelsvik VS: 15/ Gateadresse TusenFryd T.O. Hei,

21. Objektorientert Analyse (OOA) Kap. 21 Objektorientert Analyse (OOA)

Sam ser bort fra faste kostnader, men har en liten kostnad c per kunde. (a) Hvorfor er det rimelig å tro at Sam er risikonøytral?

Forelesning 7. Tilstandsmaskin

Løsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 2002, ordinær eksamen

DISTRIBUERT UTVIKLING AV NETTTJENESTER ( BARE UTDRAG)

Harmonisering og kommunikasjon bygg/kart v/erling Onstein, Statens kartverk STEDSDATA - TIL NYTTE FOR SAMFUNNET

Tittel Objektorientert systemutvikling 2

UNIVERSITETET I OSLO

INF2810: Funksjonell Programmering. Mengder og lokal tilstand

INF2810: Funksjonell Programmering. Lokale variabler. Og trær.

INF1300 Introduksjon til databaser

Forelesning IMT mars 2011

Inga Bostad, direktør, Norsk senter for menneskerettigheter. Fri og avhengig! Spennet mellom hverdag og vedtatte rettigheter

Øystein Haugen, Professor, Computer Science MASTER THESES Professor Øystein Haugen, room D

Vårt system kan kjøres ved å skrive. STUD1 konto fredo 37 (holdeplass)

Kodegenerering, del 2: Resten av Kap. 8 pluss tilleggsnotat (fra kap. 9 i ASU ) INF5110 V2007

Transkript:

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