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: Effektivitet: Punkt, Linje, Plan,.. inom geometrin. 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: Def: 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. Mängden av objekt som tillhör ett begrepp kallas för begreppets extension = exemplifieringar = instanser. 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: Exempel: Två symboler kallas synonyma om de betecknar samma begrepp. Kund och klient kan beteckna samma begrepp i en modell av ett affärssystem. Def: Exempel: Två begrepp kallas homonyma om de kan betecknas av samma symbol. 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 Exempel på det där Helhet för det här Del av det där det där Typ för Generalisering av det där
Unified Language Modeling är en sorts :Bil en sorts är en en Fordon sorts speciellt Bil har ett är en del av en :Hjul är ett ett del av Hjul har
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: Penna färg enpenna färg = röd Def: De dynamiska kännetecken som hör till ett begrepp kallas dess operationer. UML-exempel: Penna färg skriv 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 hjul Båt köl Flygplan vingar åk åk åk
Gen/Spec (forts.) enbil ärensorts Fordon Fordon <<ärensorts>> enbil <<ären>> Bil <<Sorts>>
Aggregation - en typ av begreppsrelation enbil Bil 1 enmotor 1 Motor 4 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: Fordon association 0..1 ägarskap 1 egendom äger ägare ägs av Person <<ärensorts>> <<ärensorts>> <<ären>> <<ären>> enbåt länk pelle enbil länk 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 0..2 ägarskap 1 egendom ägare Person <<ärensorts>> <<ärensorts>> <<ären>> <<ären>> enbåt pelle enbil anna 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.
IT Sverige ur ett tillgänglighetsperspektiv Organ Sverige EU Utbildnings Riksdag Regering eeurope Verkställande Sanktionerande Myndighet Surf View Info Intressent Granskande Tillsyns Ansvarig Forsknings Kravställande Kommersiell Ideell
Myndigheter och intressenter Standardarbete Surf Myndighet CID Intressent View Info Tillsyns Ansvarig Forsknings Kommersiell SIH TPB Skolverket Ideell Kommun HI AMS HandikappOrganisation Kommunförbundet Handikapp.se Folkrörelse Språka loss FMLS
Internationellt standardiseringsarbete Standard Konsortium... Språk Teknisk Internationellt UML SMIL-1 DAISY W3C Open E-book WAI Microsoft Reader
Strukturen hos en matematisk teori Matematisk Teori * uppfyller gäller för * Modell * Definition 2..* Påstående {härlett påstående} Teorem {grundläggande påstående} Axiom {logiskt resonemang som grundar sig på axiomen} 1 1..* Bevis Postulat <<synonym>>
Dynamisk modellering - Aktivitetsdiagram en modell av hur vi använder mentala modeller Bakgrund Förgrund minska uppmärksamheten nej förändra modellen ja diff registrera sinnesintrycken kontrollera modellförväntningarna registrera sinnesintrycken kontrollera modellförväntningarna nej diff ja öka uppmärksamheten
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