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 Adam Bertil kalibr erings- pr ocess 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 Specialisering av det där Exempel på det där Helhet för det där det här Del av det där det där T yp för Gener alisering av det där
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 <<ärEn>> Bil Namngiven Instans Klassifikationspil 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: enPenna färg = röd Def: De dynamiska kännetecken som hör till ett begrepp kallas dess operationer. UML-exempel: enPenna.skriv( )
Gen/Spec - en typ av begreppsrelation Olika begrepp kan ha gemensamma egenskaper och operationer. Exempel: Bil förar e ägar hjul åk na vigera Båt förar e ägar köl åk na vigera Flygplan förar e ägar vingar åk na vigera Dessa begrepp kan då betraktas som specialiseringar av ett generaliserat begrepp.
Gen/Spec (forts.) Generaliserat begrepp: F ordon förar e ägar na vigera Specialiserade begrepp: Bil åk hjul Båt åk köl Flygplan åk vingar
Gen/Spec (forts.) Fordon enBil Bil enBil ärEnSorts Fordon
Aggregation - en typ av begreppsrelation enBil Bil 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.
Aggregation (forts.) enBil Bil enMotor Motor Helhets-typ Del-typ <<ärEn>> enBil Bil Helhets-typ <<en>> 1 <<ärEnDelA vEn>> <<delA v>> <<ärEn>> enMotor Motor Del-typ enMotor ärEnDelAv enBil
Association - en typ av begreppsrelation Exempel: association ägarskap Fordon 0..1 1 Person egendom äger ägar e ägs a v <<ärEnSorts>> <<ärEnSorts>> <<ärEn>> <<ärEn>> länk enBåt pelle länk enBil 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 enBåt <<ärEnSorts>> Person enBil pelle anna ägarskap ägar e egendom <<ärEn>> 0..2 1 Tolkning: 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.
Unified Language Modeling är en sorts Fordon en sorts sorts abstraktion av är en :Bil Bil en har ett är en del av en del av har är ett :Hjul Hjul ett
IT Sverige ur ett tillgänglighetsperspektiv Organ Sverige EU Utbildnings Riksdag Regering eEurope Surf View Info Verkställande Myndighet Sanktionerande Intressent Granskande Tillsyns Ansvarig Forsknings Kommersiell Kravställande Ideell
Myndigheter och intressenter Standardarbete Myndighet Intressent CID Surf View Info Forsknings Tillsyns Ansvarig Kommersiell SIH TPB Skolverket Ideell Kommun HI AMS HandikappOrganisation Kommunförbundet Folkrörelse Handikapp.se Språka loss FMLS
Internationellt standardiseringsarbete Konsortium ... Internationellt Språk Teknisk UML SMIL-1 DAISY W3C Open E-book WAI Microsoft Reader
Strukturen hos en matematisk teori uppfyller Modell * gäller för * 2..* Def inition Påstående {härlett påstående} {grundlägg ande påstående} T eor em Axiom 1..* 1 <<synon ym>> {logiskt resonemang som grundar sig på axiomen} Be vis P ostulat
Dynamisk modellering - Aktivitetsdiagram en modell av hur vi använder mentala modeller förändra modellen Bakgrund För grund ja minska uppmärksamheten dif f nej re gistrera sinnesintryck en k ontrollera modell- förväntning arna re gistrera sinnesintryck en k ontrollera modell- förväntning arna dif f öka uppmärksamheten nej ja