Begreppsmodellering i UML

Relevanta dokument
Begreppsmodellering i UML

Begreppsmodellering och Matematik

Objektorientering. Grunderna i OO

Inkapsling (encapsulation)

UML 1(5) Introduktion till Unified Modeling Language. 1 Bakgrund och historik

Introduktion. Byggstenar TDBA

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Begreppsmodellering och Matematik

UML: Exempel. Ett modelleringsspråk. UML: Ansvar. UML: tre huvudanvändningar. Exempel: En klass position storlek. UML Unified Modelling Language

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur

TDP005. Föreläsning 3 - UML. Filip Strömbäck

Nationell informationsstruktur 2015:1 Bilaga 1: Läsanvisning till modellerna

Objektorientering Användning

Objektorienterad analys och design

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Översikt. Introduktion. Objektorienterad programutveckling UML UML. Analys Design. Klassdiagram Aktivitetsdiagram

Objektorienterad programmering. Grundläggande begrepp

Konceptuell modellering. Formalisering, automatisering och effektivisering

Översikt. Introduktion. Objektorienterad programutveckling UML UML. Analys Design. Klassdiagram Aktivitetsdiagram

Objektorientering Klasser

Objektorienterad metodik. Programutvecklingsmetodik. Objektmodellen. Varje objekt har en unik identitet

Programutvecklingsmetodik

Nationell informationsstruktur 2015:2. Bilaga 1: Läsanvisning till modellerna

Objektorienterad analys och design

Likhetstecknets innebörd

Likhetstecknets innebörd

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Företagsmodellering i UML

Objekt-orienterad programmering. Klassbegreppet och C++ UML. UMLs fördelar

Objektorienterad programmering, allmänt

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?

729G75: Programmering och algoritmiskt tänkande. Tema 3, föreläsning 2

Arbetsområde: Från pinnar till tal

Objektorienterad Systemutveckling 1 (7,5 hp)

Så här använder du begreppsdiagram i termbanken

Programmering i C++ EDA623 Objektorienterad programutveckling. EDA623 (Föreläsning 5) HT / 33

TDP005 Projekt: objektorienterade system

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur

Taluppfattning och allsidiga räknefärdigheter

Lokal pedagogisk planering

1. Skriv = eller i den tomma rutan, så att det stämmer. Motivera ditt val av tecken.

Imperativ programmering. Föreläsning 4

Föreläsning 2. Objektorienterad analys och design. Analys: att modellera världen. Design: att strukturera program.

En parallellogram har delats i två delar P och Q som figuren visar. Vilket av följande påståenden är säkert sant?

Kunskapsmångfalder ULM Metadata Edutella och den Semantiska Webben

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Lärarhandledning Sortering

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Kursplan för Matematik

Objektorienterad analys och design

UML. Klassdiagr. Abstraktion. Relationer. Överskugg. Överlagr. Aktivitetsdiagram Typomv. Typomv. Klassdiagr. Abstraktion. Relationer.

Objektorienterad konstruktion

Fördjupningsseminarie om den nationella informationsstrukturen NI 2015:1

Den skolan som jag arbetar vid framhåller inkludering som ledord.

Addition och subtraktion generalisering

Digitala verktyg i matematik- och fysikundervisningen ett medel för lärande möten

UML. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Utformning av resultatdiskussion

K L Ä M. Klassificeringsmodell för inlärningssvårigheter i matematik

7, Diskreta strukturer

Välkomna till Jämföra, sortera tillsammans reflektera!

UML. Tomas Czarnecki Institutionen för Informationsbehandling Åbo Akademi,FIN Åbo, Finland url:

Mer OOP. Variation i typ. Medlen repetition. Generiska klasser. Gränssnitt - Interface. Mer om klasser Några exempel UML

formulera och lösa problem med hjälp av matematik samt värdera valda strategier och metoder,

Jag tror att alla lärare introducerar bråk

Här är två korta exempel på situationer då vi tillämpar den distributiva lagen:

Undervisningen i ämnet matematik ska ge eleverna förutsättningar att utveckla följande:

Introduktion till UMLs klassdiagram

Unified Modeling Language UML

Nationell Informationsstruktur 2015:1. Bilaga 7: Arkitektur och metodbeskrivning

Skolverkets förslag till kursplan i matematik i grundskolan. Matematik

Mona Røsseland Författare till Pixel. Vad innebär den nya läroplanen? Hur möter ni den nya utmaningen med Pixel

Enhet / skola: Lindens skola i Lanna Åk: 1

Dokumentera och följa upp

Objektorienterad programmering Föreläsning 4

Arkitektur och metodbeskrivning. Nationell informationsstruktur

Tränarguide del 2. Mattelek.

Ny version av den nationella informationsstrukturen, NI. Vitalis 23/ Ingela Strandh Informationsstruktur och e-hälsa, avdelningen Kunskapsstöd

Föreläsning 5. Deduktion

Kommentarmaterial, Skolverket 1997

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Objektorienterad Programmering DAT043. Föreläsning 10 13/2-18 Moa Johansson (delvis baserat på Fredrik Lindblads material)

Realism och anti-realism och andra problem

Databasdesign. E-R-modellen

de var svåra att implementera och var väldigt ineffektiva.

Välkommen till. matematikens fem förmågor: Problemlösning Begreppsförståelse Beräkningsstrategier Resonemang Kommunikation LIBER

UML och processmodellering i hälso- och sjukvård

Övningshäfte 6: 2. Alla formler är inte oberoende av varandra. Försök att härleda ett par av de formler du fann ur några av de övriga.

Föreläsning 1. Introduktion. Vad är en algoritm?

Föreläsning 15: Repetition DVGA02

Nationell informationsstruktur 2016:1. Bilaga 1: Beskrivning av modellerna

Föreläsning 1: Tal, mängder och slutledningar

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

MATEMATIK. Ämnets syfte

(Data)Modellering. nikos dimitrakas rum 2423

Vad kan vi i Sverige lära av Singapores matematikundervisning?

Examen i 2D1359 & 2D1360 Objektorienterad modellering programmering och analys Tisdagen, 23 Oktober 2001, 14:00-19:00

Analys och design. Objekt. Klass. med hjälp av CRC. Klassdiagram

Transkript:

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

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.

Aggregation (forts.) enbil enmotor <<ären>> <<en>> <<ärendelaven>> <<ären>> Bil 1 1 Motor <<delav>> Helhets-typ Del-typ enmotor ärendelav enbil

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.

Unified Language Modeling är en sorts :Bil en sorts är en en Fordon sorts abstraktion av Bil har ett är en del av en :Hjul är ett ett del av Hjul har

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