41

Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 2: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 3: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Begreppsmodellering i UML

En kort-kort introduktionav Ambjörn Naeve

http://kmr.nada.kth.se

Page 4: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Begreppsbildning syftar till att hjälpa oss

Exempel:

Begreppsbildning

“Styrkan i tänkandet ligger i att veta vad man inte ska tänka på.”

Effektiva begrepp bortser från det mesta

Punkt, Linje, Plan, ….. inom geometrin.

Syfte:att bortse från oväsentligheter genom att bygga upp idealiserade strukturersom fokuserar på det väsentliga.

så att det märks så lite som möjligt.Effektivitet:

Page 5: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

BegreppsmodelleringEn beskrivning av de viktigaste begreppen Def:

För att begreppsmodellera ett område på ett effektivt sätt

Fyra viktiga vapen vid komplexitetsreducering är:•!Abstraktion•!Hierarki•!Inkapsling•!Modularitet

bortseendeupplösninggränssnittuppdelning

och deras inbördes relationer inom ett visst område kallas en begreppsmodell över området.

måste man kunna reducera dess komplexitet.

Page 6: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

kalibrerings-process

P

Adams bild av P Bertils bild av P

Två olika begreppsmodeller av ett område

Adam Bertil

Page 7: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Begreppet begrepp

Def: Ett begrepp är en representation av något

Def: Mängden av objekt som tillhör ett begrepp

Def: Att identifiera ett begrepp genom att

som vi har upplevt eller kan föreställa oss,och som vi kan tillämpa på objekten i vårt medvetande.

kallas för begreppets extension

iaktta likheter och särskiljande egenskaper hos en grupp av objekt kallas för att klassificera objekten.

= exemplifieringar = instanser.

Page 8: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 9: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 10: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Begreppet begrepp (forts.)

Def: Vi säger att ett begrepp kan tillämpas

Ett begrepps definition anger dess intention, Def:dvs vilka egenskaper det vill uttrycka respektive avgränsa

på ett visst föremål (= objekt = instans)om föremålet uppfyller begreppets intention,dvs villkoren i dess definition.

i förhållande till omgivningen.

Page 11: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 12: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 13: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 14: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

med hjälp av andra begrepp.

• Ett begrepp är alltid idealiserat,

• Definitionen av ett begrepp är alltid beroende av

Egenskaper hos begreppet begrepp

• Det gäller hela tiden

• Ett begrepp måste alltid definieras

dvs det innehåller förenklingar som lyfter fram vissa saker och utelämnar andra.

i vilket sammanhang begreppet ska användas.

att bortse från det som är oväsentligt och fokusera på det väsentliga.

• Ett begrepp kan betecknas av ett eller flera olika namn (= symboler).

Page 15: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Att symbolisera begrepp

Två symboler kallas synonyma Def:

Def: Två begrepp kallas homonyma

om de betecknar samma begrepp.

om de kan betecknas av samma symbol.

Kund och klient kan beteckna samma begrepp

Exempel: Negation och subtraktion betecknas inom

Exempel:i en modell av ett affärssystem.

matematiken båda av symbolen minus (-).

Page 16: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

det här

Generalisering av

det där

Helhet fördet där

Specialisering av

det där

Del av det där

Exempel på

det där

det där

Typ för

Att symbolisera relationer mellan begreppUnifiedLanguageModeling

Page 17: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Bil

Fordon

är en:Bil

sorts

är en sorts

en

Unified Language Modeling

:Hjul Hjul

speciellt

del av harär ett

ett

är en del av enhar ett

en sorts

Page 18: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

UML - ett världsspråk för modellering• UML (= Unified Modeling Language) är ett bildspråk

• UML utvecklades under åren 1993 -1997

• UML representerar en samling

för att specificera, visualisera och dokumentera begreppsmodeller inom olika områden.

inom den objektorienterade mjukvaruindustrin som ett försök att förenade c:a 250 olika begreppsmodelleringsspråk som var i bruk vid mitten av 1990-talet.

av praktiskt utprovade modelleringstekniker som har visat sig framgångsrika vid beskrivning av stora och komplexa system.

Page 19: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

UML- ett bildspråk för begreppsrelationer-1

•!UML-diagram är ett bildspråk

•!Avsikten är att synliggöra hur man tänker

• Orden förgår - bilderna består!

och deras relationer i olika typer av diagram.

inom ett visst begreppsområde.

där man kan rita upp begreppen

Page 20: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

UML - ett bildspråk för begreppsrelationer-2

• Man får en synlig bakgrund

• Diagram skapar överblick och ger en helhetsbild.

• Detta:

• ökar möjligheterna att “kalibrera begreppen”

där det klart framgår hur man hittills har tänkt.

och uppnå konsensus (= samsyn) påvilka aspekter som är viktiga i sammanhanget.

• underlättar vidareutveckling av begreppsmodellen.

mot vilken man kan diskutera

Page 21: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Typ och klass - två synonymer för begreppDet begrepp vars extension Def:är en mängd av instanseroch vars intention beskriver deras gemensamma strukturbetecknas inom dataloginmed instansernas typ eller klass.

Bil <<ärEn>>

enBil

Instans Typ (eller klass)

Klassificering av bilar uttryckt i UML:

KlassifikationspilNamngiven

Page 22: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

De statiska kännetecken som hör till ett begrepp

Egenskaper och operationer för ett begrepp

De dynamiska kännetecken som hör till ett begrepp

Def:

Def:

Pennafärg

UML-exempel:

Pennafärgskriv enPenna.skriv( )

UML-exempel:

kallas dess egenskaper (= attribut).

kallas dess operationer.

enPennafärg = röd

Page 23: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Gen/Spec - en typ av begreppsrelation

Bil förare ägare hjul

åk navigera

Båt förare ägare köl

åk navigera

Flygplan förare ägare vingar

åk navigera

Olika begrepp kan ha gemensamma egenskaperoch operationer.

Dessa begrepp kan då betraktas som specialiseringar

Exempel:

av ett generaliserat begrepp.

Page 24: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Bil

åk hjul

Båt

åk köl

Flygplan

åk vingar

Fordon förare ägare

navigera

Gen/Spec (forts.)

Generaliserat begrepp:

Specialiserade begrepp:

Page 25: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Bil

Fordon

<<ärEn>>enBil

<<Sorts>>

<<ärEnSorts>>

Gen/Spec (forts.)

enBil ärEnSorts Fordon

Page 26: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Bil enBil

Hjul Motor 4

1

1

aHjul

bHjul

cHjul

dHjul

enMotor

Aggregation - en typ av begreppsrelation

En aggregation är en typ av assocation som uttryckeren helhet-del relation mellan motsvarande instanser.

Page 27: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller
Page 28: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Fordon

enBåt

<<ärEnSorts>>

Person

enBil

pelle

anna

<<ärEnSorts>>

ägareegendom

<<ärEn>> <<ärEn>>

0..1 1äger

ägs av

Association - en typ av begreppsrelation

En association mellan två begrepp beskriver begränsningar

ägarskapassociation

länk

länk

En länk är en instans av en association.

Exempel:

i länkstrukturen mellan instanser av motsvarande begrepp.

Page 29: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Fordon

enBåt

<<ärEnSorts>>

Person

enBil

pelle

anna

<<ärEnSorts>>

ägarskapägareegendom

<<ärEn>> <<ärEn>>

0..2 1

Länk-begränsningar uttrycks genom multiplicitet

Tolkning: Varje instans av typ Fordon

Varje instans av typ Personär länkat till exakt 1 instans av typ Person.

är länkat till 0, 1, eller 2 instanser av typ Fordon.

Page 30: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Sverige

Riksdag Regering

EU

eEurope

Organ

Verkställande

Granskande

Utbildnings

Sanktionerande

Kravställande

Intressent

Ideell

Kommersiell

Forsknings

Myndighet

AnsvarigTillsyns

IT Sverige ur ett tillgänglighetsperspektiv

SurfViewInfo

Page 31: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Myndighet

AnsvarigTillsyns

SIH

HI

TPB Skolverket

AMSKommun

Kommunförbundet

Intressent

Ideell

Kommersiell

Forsknings

Folkrörelse

HandikappOrganisation

Handikapp.se

FMLSSpråka loss

CIDStandardarbete

Myndigheter och intressenter

SurfViewInfo

Page 32: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Standard

Språk Teknisk

...

UML SMIL-1

Konsortium

Internationellt

DAISY W3C

WAIOpen E-book

Microsoft Reader

Internationellt standardiseringsarbete

Page 33: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Påstående

Teorem

Matematisk Teori

{grundläggande påstående}

Definition

Axiom

Bevis

Modell

1..*

1

{härlett påstående}

{logiskt resonemang somgrundar sig på axiomen}

<<synonym>>

Postulat

uppfyllergäller för

2..**

Strukturen hos en matematisk teori**

Page 34: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

diff

förändramodellen

ökauppmärksamheten

nej ja

ja

nejminskauppmärksamheten

diff

registrerasinnesintrycken

kontrolleramodell-

förväntningarnaregistrera

sinnesintryckenkontrollera

modell-förväntningarna

Bakgrund Förgrund

Dynamisk modellering - Aktivitetsdiagramen modell av hur vi använder mentala modeller

Page 35: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Object model and dynamic model

Page 36: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Extracting the skeleton of an object model

Page 37: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Elimination criteria

Page 38: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Analysis - Design - Implementation

Page 39: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Constructing a state diagram - 1

Page 40: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Constructing a state diagram - 2

Page 41: Begreppsmodellering i UML - KTHkmr.nada.kth.se/papers/ConceptualModeling/... · 2010-09-21 · beskriver deras gemensamma struktur betecknas inom datalogin med instansernas typ eller

Implementing a dynamic model