Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

UML Modellering Grunnregler og retningslinjer UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet.

Liknende presentasjoner


Presentasjon om: "UML Modellering Grunnregler og retningslinjer UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet."— Utskrift av presentasjonen:

1 UML Modellering Grunnregler og retningslinjer UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

2 Vi går litt dypere inn i materien! oVi har sett på hvordan vi strukturer objektkatalogen i UML oPakker oObjekttyper oEgenskaper oDatatyper oKodelister oHvordan modellerer vi videre oInformasjonsmodellen (Application Schema) oIdentifisere objekttyper oSe på forholdene objekttypene imellom oGrunnleggende mekaniser og løsninger UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

3 Informasjonsmodellen! (application schema) oBeskrive fagområdet oGi en korrekt beskrivelse av objekter, egenskaper og forhold innenfor hvert fagområde (vegnett,bane++) oMennesklig forståelse oGrunnlag for implementasjon, dataforvaltning og utveksling oDatamaskinen må kunne lese modellen og dermed bruke rutiner for å oversette modellen til andre formater oKonseptuelle språk (igjen) outvetydig og konsistent representasjon av modeller ogir grunnlag for applikasjoner (FKB,AREALIS, ++) UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

4 Informasjonsmodellen er implementasjonsuavhengig! oUML beskriver en modell uavhengig av system oModellene kan oversettes til ulike systemer oVi beskriver retningslinjer for å lage en slik modell oVi følger samtidig internasjonale føringer oved bruke en akseptert objektmodell (UML) oer konforme med ISO19100 serien oFølger systemleverandørerer standarden kan alle snakke sammen UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

5 Hvordan lager vi informasjonsmodellen Hvordan lager vi informasjonsmodellen? oIdentifiser objekttypene som tilhører den ønskede verden oObjekttypene modelleres som UML klasser oIdentifiser egenskapene som tilhører objekttypen oegenskapene modelleres som UML attributter oBestem hva slags datatype egenskapene skal ha oKan være basal, brukerdefinert eller kodeliste oEgenskapsnavn skrives med liten forbokstav oIdentifiser forhold mellom objekttypene! oHvordan identifisere og beskrive forhold? UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

6 Identifisere forhold oFinnes det en objekttype som har klar sammenheng med en annen? oTypisk eksempel er en flate og dens avgrensning oFinnes det en stor ting som består av flere mindre ting? oFor eksempel et flateområde som består av flere delområder oFinnes det objekttyper som kan klassifiseres som en art av en annen? oEr en objekttype en spesialisering av en annen? UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

7 Forhold mellom objekttyper oFor å modellere forhold mellom objekttyper bruker vi to mekanismer  Assosiasjon (Association)  Sammenheng mellom objekttyper  Generalisering (Generalization)  Forelder og barn klassifisering oUML definere også andre typer forhold oAvhengigheter oBrukes mest for pakker (har vi sett på tidligere) oRealisering oProgrammeringsspesifikt (en klasse realiserer et interface) UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

8 Assosiasjon oDet mest generelle forholdet vi bruker oEn assosiasjon angir semantisk sammenheng mellom to objekttyper. oJeg liker å tenke på assosisjoner som veier/lenker til andre objekttyper jeg kan se, snakke med og hente informasjon fra :) oEn assosiasjon betegnes med heltrukken linje mellom objekttypene oAssosiasjonen tilegges også rollenavn og multiplisitet UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

9 Roller og multiplisitet oMultiplisitet beskriver hvor mange instanser som er lovlige En GangSykkelveg har 1 eller to avgrensninger En GangSykkelvegAvgrensning avgrenser bare en GangSykkelveg oRollenavn beskriver en objekttypes forhold til en annen GangSykkelvegAvgrensning spiller rollen som avgrensning for GangSykkelVeg GangSykkelveg spiller rollen som veg for GangSykkelVegAvgrensning UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

10 Rollenavn oRollenavn skrives med liten forbokstav og store bokstaver på etterfølgende delord oRollenavnet skal helst være substantiv oSkal angi rollen en objekttype spiller for en annen oMange er litt slepphendte med å angi rollenavn på begge ender av assosiasjonen oRegelen er at man i hvert fall skal ha rollenavn på den ”viktigste” enden oOfte vil den andre være invers oDermed også vanskelig å finne et fornuftig rollenavn UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

11 Kardinalitet/multiplisitet * * 1,3,7 0 eller flere 1 og kun 1 instans Hvor mange instanser kan lovlig assosieres med en annen? ? ForklaringEksempel 0 eller 1 1 eller flere Ett spesifisert antall instanser Husk! En objekttype angir ett sett instanser. UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

12 Pil eller ikke pil på assosiasjoner oHva betyr disse pilene på assosiasjonene mellom objekttyper. oI UML snakker man om navigering mellom objekter oNoen ganger ønsker man kun å navigere en vei! oGitt en bruker, må systemet kunne finne brukerens passord oFinner man et passord bør systemet sørge for at man ikke kan finne passordets eier oVi bruker ikke piler på assosiasjonene såfremt det ikke er noe spesielt, jamfør eksempelet over UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

13 Typer assosiasjoner oEn assosiasjon mellom objekttyper kan tillegges ytterligere semantikk oVi har to typer: oAggregering oåpen diamant på den ene enden av assosiasjonen obeskriver en ting og dens deler (beskrivende) oKomposison eller sterk aggregering ofylt diamant på den ene enden av assosiasjonen odelene er strengt assosiert med helheten (utøvende) UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

14 Aggregering Eksempelet viser at en gang og sykkelveg har en eller to avgrensningslinjer, veien er helheten og avgrensningen er delen. oEn aggregering er kun et konseptuelt begrep. oAssosiasjonen beskriver forholder mellom det hele og deler av helheten. oSkiller hvem av objektypene som organisasjonsmessig er overordnet. oEn aggregering beskrives ved en åpen diamant på assosiasjonsenden som er helheten. UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

15 Komposisjon - sterk aggregering oEn komposisjon angir at objekter av objekttypen på "diamant-siden" har, eller eier objekter av objekttypen på "strek-siden" som komponenter oDe eide objektenes oppretting og eksistens følger eier-objektets eksistens oKomposisjon i eksemplet betyr at KpSamferdsel- Linje ikke kan eksistere uten et KpOmråde UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

16 Eksempel på aggregeringer Eksempel fra SOSI-Plan -KpOmråde har et restriksjonsområde -KpRestriksjonsområde kan ikke eksistere uten KpOmråde -KpRestriksjonOmråde består også av en avgrensning Denne kan være en avgrensning til en annen objekttype! Hva fins på andre siden av avgrensningen? UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

17 Generalisering oGeneralisering beskriver et forhold mellom det generelle (supertype) og det spesielle(subtype) oEn objekttype (den generelle) kan finnes i en mer spesifikk versjon (spesialiseringen) oGeneralisering representeres ved en rettet linje med en stor åpen pil rettet mot supertypen oIngen multiplisitet eller rollenavn! Et kjøretøy er enten en bil eller et tog. UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

18 Mer om Generalisering oEn spesialisert objekttype arver egenskaper, operasjoner og assosiasjoner av den generelle oEn supertype kan være abstrakt, dvs. at den aldri instansieres som seg selv, men som en av subtypene oAbstrakte supertyper skal angis med klassenavn i kursiv. Kjøretøy er abstrakt (kursiv). Vil aldri finnes et kjøretøy objekt, bare en bil eller et tog! UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

19 Modellelementer i informasjonsmodellen! UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

20 Deler av UML vi bruker oObjekttyper oEgenskaper omultiplisitet på egenskaper oenumeration (møtedag) okodeliste (produsent) odatatype (adresse) obasal datatyper (real,heltall) oForhold oassosiasjon (rollenavn,multiplisitet) oaggregering okomposisjon ogeneralisering oOppførsel oNote UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

21 Gjenbruk av modell-elementer TekniskeAnleggSomDelAvKystkonturen KaiKant MoloKant Bølgebryter PirKant SlippKant SpuntveggKant Strømbryter Sluse oSamme objekt dukker ofte opp i flere datasett oUnødvendig å modellere objektet en gang til oObjekttypene modelleres ett sted og benyttes på tvers av fagområder UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

22 Gjenbruk av andre elementer oSamme gruppeelement kan brukes av flere fagområder oUnødvendig å modellere elementet igjen oHer er datatypen Høyde modellert i pakken SOSIDel1-2 og brukes av NavigasjonsLys i SOSI KystogSjø UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet Høyde + høyde : String + enhet : string + Referansenivå : Referansenivå (from SOSIDel1-2) >

23 Andre former for gjenbruk Modelleres inn som verdien for en egenskap til en objekttype Eiendomsgrense kan følge en verdi definert i kodelisten. Dvs. at eiendoms- grense kan følge havkontur,innsjøkant, bygning, vegkant osv. Metoden er i overens- stemmelse med dagens forvaltningsløsning UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

24 Generelle ting oVi har sett på oHvordan bygge opp informasjonsmodellen oMekanismene og notasjonene i UML vi trenger oHerfra ser vi på diverse emner oGenerelle problemstillinger oDetaljer og avanserte ting oLitt opptil dere hvordan vi går videre oTemaer vi skal/kan ta opp oGeometrimodellen i SOSI oStereotyper oOperasjoner oSynbarhet okodelister og verdidomener oUtvidelsesmekanismer i UML omodellere avgrensninger UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

25 UML dekker ikke alt! Eksempler på ting som må beskrives andre steder oVerbal beskrivelse av fagområdene oDefinisjon av begreper oEvt. link til autoritativ beskrivelse oNoter, eksempler, bruksområder oGrafiske beskrivelser og eksempler oFigurer som viser virkelige objekter oIllustrasjoner oMapping av begrepene oOversettelse til annet språk oGML oSOSI oDette er implementasjonsspesifikt UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

26 Veien videre++ oUML er et omfattende språk oDet fins mange måter å gjøre ting på oDet vi har gått igjennom er å regne for retningslinjer oerfaringer vi har gjort oss oløsninger vi har kommet opp med oFortsatt noen saker som ikke er avgjort oHensiktsmessig at vi modellerer mest mulig ensartet oSikrer felles forståelse!! UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet

27 Referanser oRetningslinjer for datamodellering i UML oEr et foreløpig arbeidsdokument oVil bli lagt ut på SOSI siden oUtkastet er tilgjengelig ved forespørsel oFoilene oNoe har allerede blitt delt ut oFoiler kan utleveres ved forespørsel oBlir lagt ut på SOSI siden etterhvert UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet


Laste ned ppt "UML Modellering Grunnregler og retningslinjer UML-seminar 12. og 13. mars 2003 SOSI-sekretariatet."

Liknende presentasjoner


Annonser fra Google