Ingen bildrubrik - Welcome to the Knowledge Management

Download Report

Transcript Ingen bildrubrik - Welcome to the Knowledge Management

Begreppsmodellering i UML
En kort-kort introduktion
av Ambjörn Naeve
http://kmr.nada.kth.se
Begreppsbildning
Syfte:
Begreppsbildning syftar till att hjälpa oss
att bortse från oväsentligheter genom att
bygga upp idealiserade strukturer
som fokuserar på det väsentliga.
Exempel:
Punkt, Linje, Plan, ….. inom geometrin.
Effektivitet:
Effektiva begrepp bortser från det mesta
så att det märks så lite som möjligt.
“Styrkan i tänkandet ligger i att
veta vad man inte ska tänka på.”
Begreppsmodellering
Def:
En beskrivning av de viktigaste begreppen
och deras inbördes relationer inom ett visst område
kallas en begreppsmodell över området.
För att begreppsmodellera ett område på ett effektivt sätt
måste man kunna reducera dess komplexitet.
Fyra viktiga vapen vid komplexitetsreducering är:
• Abstraktion
bortseende
• Hierarki
upplösning
• Inkapsling
gränssnitt
• Modularitet
uppdelning
Två olika begreppsmodeller av ett område
P
Adam
Bertil
kalibreringsprocess
Adams bild av P
Bertils bild av P
Begreppet begrepp
Def:
Ett begrepp är en representation av något
som vi har upplevt eller kan föreställa oss,
och som vi kan tillämpa på objekten
i vårt medvetande.
Def:
Mängden av objekt som tillhör ett begrepp
kallas för begreppets extension
= exemplifieringar = instanser.
Def:
Att identifiera ett begrepp genom att
iaktta likheter och särskiljande egenskaper
hos en grupp av objekt kallas för att
klassificera objekten.
Begreppet begrepp (forts.)
Def: Ett begrepps definition anger dess intention,
dvs vilka egenskaper det vill uttrycka
respektive avgränsa
i förhållande till omgivningen.
Def: Vi säger att ett begrepp kan tillämpas
på ett visst föremål (= objekt = instans)
om föremålet uppfyller begreppets intention,
dvs villkoren i dess definition.
Egenskaper hos begreppet begrepp
• Ett begrepp måste alltid definieras
med hjälp av andra begrepp.
• Ett begrepp kan betecknas
av ett eller flera olika namn (= symboler).
• Ett begrepp är alltid idealiserat,
dvs det innehåller förenklingar
som lyfter fram vissa saker och utelämnar andra.
• Definitionen av ett begrepp är alltid beroende av
i vilket sammanhang begreppet ska användas.
• Det gäller hela tiden
att bortse från det som är oväsentligt
och fokusera på det väsentliga.
Att symbolisera begrepp
Def:
Två symboler kallas synonyma
om de betecknar samma begrepp.
Exempel: Kund och klient kan beteckna samma begrepp
i en modell av ett affärssystem.
Def:
Två begrepp kallas homonyma
om de kan betecknas av samma symbol.
Exempel:
Negation och subtraktion betecknas inom
matematiken båda av symbolen minus (-).
Att symbolisera relationer mellan begrepp
Unified
Language
Modeling
det där
det där
Specialisering av
det där
Helhet för
det här
Exempel på
Del av
Typ för
det där
Generalisering av
det där
det där
Unified Language Modeling
är en sorts
Fordon
en sorts
är en
:Bil
har ett
Bil
en
är en del av en
:Hjul
speciellt
sorts
del av
har
är ett
ett
Hjul
UML - ett världsspråk för modellering
• UML (= Unified Modeling Language) är ett bildspråk
för att specificera, visualisera och dokumentera
begreppsmodeller inom olika områden.
• UML utvecklades under åren 1993 -1997
inom den objektorienterade mjukvaruindustrin
som ett försök att förena
de c:a 250 olika begreppsmodelleringsspråk
som var i bruk vid mitten av 1990-talet.
• UML representerar en samling
av praktiskt utprovade modelleringstekniker
som har visat sig framgångsrika
vid beskrivning av stora och komplexa system.
UML- ett bildspråk för begreppsrelationer-1
• UML-diagram är ett bildspråk
där man kan rita upp begreppen
och deras relationer i olika typer av diagram.
• Avsikten är att synliggöra hur man tänker
inom ett visst begreppsområde.
• Orden förgår - bilderna består!
UML - ett bildspråk för begreppsrelationer-2
• Diagram skapar överblick och ger en helhetsbild.
• Man får en synlig bakgrund
mot vilken man kan diskutera
där det klart framgår hur man hittills har tänkt.
• Detta:
• underlättar vidareutveckling av begreppsmodellen.
• ökar möjligheterna att “kalibrera begreppen”
och uppnå konsensus (= samsyn) på
vilka aspekter som är viktiga i sammanhanget.
Typ och klass - två synonymer för begrepp
Def: Det begrepp vars extension
är en mängd av instanser
och vars intention
beskriver deras gemensamma struktur
betecknas inom datalogin
med instansernas typ eller klass.
Klassificering av bilar uttryckt i UML:
enBil
Instans
<<ärEn>>
Namngiven
Klassifikationspil
Bil
Typ (eller klass)
Egenskaper och operationer för ett begrepp
Def: De statiska kännetecken som hör till ett begrepp
kallas dess egenskaper (= attribut).
UML-exempel:
Pe nna
färg
enPenna
färg = röd
Def: De dynamiska kännetecken som hör till ett begrepp
kallas dess operationer.
UML-exempel:
Pe n na
färg
s kriv
enPenna.skriv( )
Gen/Spec - en typ av begreppsrelation
Olika begrepp kan ha gemensamma egenskaper
och operationer.
Exempel:
Bil
förare
ägare
hjul
navigera
åk
Båt
förare
ägare
köl
navigera
åk
Flygplan
förare
ägare
vingar
navigera
åk
Dessa begrepp kan då betraktas som specialiseringar
av ett generaliserat begrepp.
Gen/Spec (forts.)
Generaliserat
begrepp:
Fordon
förare
ägare
navigera
Specialiserade
begrepp:
Bil
Båt
Flygplan
hjul
åk
köl
åk
vingar
åk
Gen/Spec (forts.)
enBil ärEnSorts Fordon
Fordon
<<ärEnSorts>>
<<Sorts>>
enBil
<<ärEn>>
Bil
Aggregation - en typ av begreppsrelation
enBil
Bil
1
4
1
enMotor
Motor
Hjul
aHjul
bHjul
cHjul
dHjul
En aggregation är en typ av assocation som uttrycker
en helhet-del relation mellan motsvarande instanser.
Association - en typ av begreppsrelation
Exempel:
association
Fordon
<<ärEnSorts>>
0..1
egendom
ägarskap
äger
ägs av
<<ärEnSorts>>
enBåt
enBil
1
ägare
Person
<<ärEn>>
länk
länk
<<ärEn>>
pelle
anna
En länk är en instans av en association.
En association mellan två begrepp beskriver begränsningar
i länkstrukturen mellan instanser av motsvarande begrepp.
Länk-begränsningar uttrycks genom multiplicitet
Fordon
<<ärEnSorts>>
0..2
egendom
<<ärEnSorts>>
enBåt
enBil
Tolkning:
ägarskap
1
ägare
Person
<<ärEn>>
<<ärEn>>
pelle
anna
Varje instans av typ Fordon
är länkat till exakt 1 instans av typ Person.
Varje instans av typ Person
är länkat till 0, 1, eller 2 instanser av typ Fordon.
IT Sverige ur ett tillgänglighetsperspektiv
Organ
Utbildnings
Riksdag
Granskande
Kravställande
Regering
eEurope
Surf
Verkställande
Sanktionerande
EU
Sverige
Myndighet View
Info
Tillsyns
Ansvarig
Intressent
Forsknings
Kommersiell
Ideell
Myndigheter och intressenter
Standardarbete
Myndighet
CID
Surf
View
Intressent
Forsknings
Tillsyns
Info
Ansvarig
Kommersiell
SIH
Kommun
TPB
HI
Skolverket
AMS
Kommunförbundet
Språka loss
Ideell
HandikappOrganisation
Handikapp.se
FMLS
Folkrörelse
Internationellt standardiseringsarbete
Konsortium
Standard
...
Språk
Teknisk
UML
SMIL-1
Internationellt
DAISY
Open E-book
Microsoft Reader
W3C
WAI
Strukturen hos en matematisk teori
*
Matematisk Teori
uppfyller
gäller för
*
Modell
2..*
*
Definition
Påstående
{härlett påstående}
Teorem
1
1..*
{logiskt resonemang som
grundar sig på axiomen}
Bevis
{grundläggande påstående}
Axiom
<<synonym>>
Postulat
Dynamisk modellering - Aktivitetsdiagram
Bakgrund
en modell av
hur vi använder
mentala modeller
Förgrund
ja
minska
uppmärksamheten
kontrollera
modellförväntningarna
registrera
sinnesintrycken
nej
förändra
modellen
diff
ja
nej
registrera
sinnesintrycken
öka
uppmärksamheten
diff
kontrollera
modellförväntningarna
Object model and dynamic model
Extracting the skeleton of an object model
Elimination criteria
Analysis - Design - Implementation
Constructing a state diagram - 1
Constructing a state diagram - 2
Implementing a dynamic model