uml ( cont. )

26
UML ( cont. ) Diagrammatic notation = “visual language”... For constructing a data model Drawings, relationships constructed in Visio Tools to input a drawing to ArcGIS – input data to the data model

Upload: aiden

Post on 25-Feb-2016

48 views

Category:

Documents


0 download

DESCRIPTION

UML ( cont. ). Diagrammatic notation = “visual language”... For constructing a data model Drawings, relationships constructed in Visio Tools to input a drawing to ArcGIS input data to the data model . UML Notation Zeiler pp. 97-99. a class is shown as a box - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: UML  ( cont. )

UML ( cont. )• Diagrammatic notation = “visual

language”...• For constructing a data model• Drawings, relationships constructed in

Visio• Tools to input a drawing to ArcGIS

– input data to the data model

Page 2: UML  ( cont. )

UML NotationZeiler pp. 97-99

• a class is shown as a box

• top part contains the name of the class

• lower part contains the attributes

• lines connect boxes and indicate relationships

• methods/rules associated with the class

Page 3: UML  ( cont. )

Graphic courtesy of Maidment et al., ArcHydro team

Page 4: UML  ( cont. )

Objects and Features• Object (abstract class, real world)

– in ArcGIS an object is non-spatial – it is NOT a point, line, or area – it has no geographic location– it has no shape attribute in its table– Drainage network, ship, vehicle, … customer,

lake, house, etc.• Feature (feature class, spatial context)

– an object that has geographic location– a point, line, area, TIN, raster

Page 5: UML  ( cont. )

UML Notation ( cont. )• Abstract class

– specify subclasses underneath

– Mammals w/human or dog feature classes

– Numbers w/integer or float feature classes

– Extremely generic • Feature Class

– Specify subtypes underneath

Page 6: UML  ( cont. )

Graphic courtesy of Maidment et al., ArcHydro team

Page 7: UML  ( cont. )

-PointID : esriFieldTypeInteger-ColumnJ : esriFieldTypeInteger-ColumnK : esriFieldTypeInteger-ColumnZ : esriFieldTypeInteger-Depth : esriFieldTypeDouble

Model Objects::GridLocation

11

• GridPoints has GridLocation

Marine Data Model• Model Mesh Points

-MarineID : DomainIDField-MarineCode : esriFieldTypeString-CruiseID : esriFieldTypeInteger

MarineFeatures::MarineFeature

«SubtypeField» -PointType

MeshPoint{GeometryType = esriGeometryPoint}

-PointType : esriFieldTypeInteger = 1

GridPoint

-PointType : esriFieldTypeInteger = 2

NodePoint

*

*

*

*

SubType

-Node1ID : esriFieldTypeInteger-Node2ID : esriFieldTypeInteger-Node3ID : esriFieldTypeInteger-Node4ID : esriFieldTypeInteger

MeshElements{GeometryType = esriGeometryLine}

Page 8: UML  ( cont. )

Relationships• Links between

classes, shown as lines

• One to one• One to many• Many to many

Page 9: UML  ( cont. )

Relationships (cont.)

• 1:1 - solid line– one record in Class A linked to one record in

Class B• “is married to”• the class of state capitals linked to the class of

states

• 1:n - solid line with * at one end– one record in Class A linked to any number of

records in Class B• "owns" • the class of states linked to the class of area codes

Page 10: UML  ( cont. )

Relationships (cont.)

• m:n - solid line with * at both ends– any number of records in Class A linked to any

number of records in Class B• "has visited”• "was never married to" • the class of mountain lions linked to the class of

wilderness areas

Page 11: UML  ( cont. )
Page 12: UML  ( cont. )

Graphic courtesy of Maidment et al., ArcHydro team

Page 13: UML  ( cont. )

Type Inheritance• White triangle• Class B inherits the

properties (attributes, methods) of Class A

• the class street inherits from the class transportation network

• Solid diamond• the parts and the whole

depend on each other

Page 14: UML  ( cont. )

Graphic courtesy of Maidment et al., ArcHydro team

Page 15: UML  ( cont. )

MDeviceIDEastNorthSpeedDirection112.110.88.6121111.312.57.922019.3-3.57.5130114.015.13.923417.312.09.1115MeasuredData

InstantaneousPoint (ex: CTD)InstantaneousPoint (ex: CTD)

Measurement

XX

YY

TimeStampTimeStamp

MeasuringDevice

MDeviceIDNameTypeMeasurementID1Bob12Poncho13Juanita14Mia25Anita2 MeasuringDevice

MTypeIDVarNameVarDescVarUnitsMDeviceID1Oranges12Bananas13Cubic cm24Rocks25Limes3MeasuredType

ZZ

MarineIDMarineCodeSeriesIDIPointTypeRecordedTime1AAA1105/04/58 12:00 002BBB1105/04/58 12:30 003CCC1105/04/58 13:00 00InstantaneousPoints

MeasurementMeasureIDMarineIDZLocXlocYlocServiceTripSeviceDesc11-0.821-1.531-3.542-0.852-1.5

Michael Blongewicz

Page 16: UML  ( cont. )

Marine Data Model GdbGeodatabase

Feature Class

FeatureDatasetTable

RelationshipClass

Page 17: UML  ( cont. )
Page 18: UML  ( cont. )

Steps in Data Modeling(1) Conceptualize the user's view of data

– what are the basic features needed to solve the problem?

(2) Select the geographic representation – points, lines, areas, rasters, TINs

(3) Define objects and relationships – draw a UML diagram, specify relationships,

“behaviors”(4) Match to geodatabase elements

– Refine relationships, “behaviors”(5) Organize geodatabase structure, add data

Page 19: UML  ( cont. )
Page 20: UML  ( cont. )
Page 21: UML  ( cont. )

Data Model Levels

IncreasingAbstraction

Reality

Conceptual Model

Logical Model

Physical Model

Human-oriented

Computer-oriented

Page 22: UML  ( cont. )

Real World Objects and relationships

DatabaseSchema

(Object state)

Physical Model

Modeling ProcessConceptual Model

Lists, flow diagrams, etc

Logical ModelDiagram in CASE

Tool

Graphic courtesy of ESRI

Page 23: UML  ( cont. )

Steps in Data Modeling(1) Conceptualize the user's view of data

– what are the basic features needed to solve the problem?

(2) Select the geographic representation – points, lines, areas, rasters, TINs

(3) Define objects and relationships – draw a UML diagram, specify relationships,

“behaviors”(4) Match to geodatabase elements

– Refine relationships, “behaviors”(5) Organize geodatabase structure, add data

– e.g., Alyssa Aaby’s talk yesterday, and subsequent marine GAP analysis

Page 24: UML  ( cont. )

Resulting Analysis - ArcHydro

From Arctur and Zeiler, Case Studies in GIS Data Modeling, ESRI Press, in prep.

Page 25: UML  ( cont. )

Data Model Exercise• Part 1 - Required - due Apr. 28, 6:00 p.m.• Part 2 - Extra credit - turn in before end of

term• Exercise and data on web and on server

Page 26: UML  ( cont. )

Marine Data Model

-MeasureID : esriFieldTypeInteger-FeatureID : esriFieldTypeInteger-ZLocation : esriFieldTypeDouble-XLocation : esriFieldTypeDouble-YLocation : esriFieldTypeDouble-ServiceTrip : esriFieldTypeDate-ServiceDesc : esriFieldTypeString

Measurements:: Measurement

-RecordedTime : esriFieldTypeDate-SeriesID : esriFieldTypeInteger

MarineFeatures:: LocationSeriesPoint

1

*

-RecordedTime : esriFieldTypeDate

MarineFeatures:: InstantaneousPoint

1

*

MarineFeatures:: TimeSeriesPoint

1

*