Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for...
-
Upload
erick-harvey -
Category
Documents
-
view
212 -
download
0
Transcript of Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for...
![Page 1: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/1.jpg)
Geospatial Systems Design and UML
Or
Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications”
by
Karla A.V. Borges, Clodoveu A. Davis and Alberto H.F. Laender
![Page 2: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/2.jpg)
Object-Oriented Design (Software)
Object-oriented design (OOD) – an approach used to specify the software solution in terms of collaborating objects, their attributes, and their methods.– Continuation of object-oriented
analysis
18-2
![Page 3: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/3.jpg)
Types of Design Classes (Software)
Entity Class - contains business related information and implements analysis classes.
Interface Class - provides the means by which an actor interacts with the system.
– A window, dialogue box, or screen.– For nonhuman actors, an application program interface
(API).
Control Class - contains application logic.
Persistence Class - provides functionality to read and write to a database.
System Class - handles operating system-specific functionality.
18-3
![Page 4: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/4.jpg)
Design Relationships (Software)
• A dependency relationship is used to model the association between two classes:– To indicate that when a change occurs in
one class, it may affect the other class.– To indicate the association between a
persistent class and a transient class. • Interface classes typically are transient
– Illustrated with a dashed arrow
18-4
![Page 5: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/5.jpg)
Design Relationships (Software)
• Classes with associations can navigate (send messages) to each other.
• By default the associations are bidirectional.
• Sometimes you want to limit the message sending to only one direction.
• Illustrated with an arrow pointing in the direction a message can be sent.
18-5
![Page 6: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/6.jpg)
Attribute and Method (Software)
Visibility – the level of access an external object has to an attribute or method.– Public attributes/methods can be
accessed/invoked by any other method in any other object or class. Denoted by the + symbol
– Protected attributes/methods can be accessed/ invoked by any method in the same class or in subclasses of that class. Denoted by the # symbol
– Private attributes/methods can be accessed/invoked by any method in the same class. Denoted by the – symbol
Method – the software logic that is executed in response to a message.
18-6
![Page 7: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/7.jpg)
Object Responsibilities (Software)
Object responsibility – the obligation that an object has to provide a service when requested and thus collaborate with other objects to satisfy the request if required.
– An object responsibility is implemented by the creation of methods that may have to collaborate with other objects and methods.
18-7
![Page 8: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/8.jpg)
The Process of Object-Oriented Design
• Refining the use case model to reflect the implementation environment.
• Modeling class interactions, behaviors, and states that support the use case scenario.
• Updating the class diagram to reflect the implementation environment.
18-8
![Page 9: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/9.jpg)
Refining The Use Case Model
• Step 1: Transform the “Analysis” Use Cases to “Design” Use Cases– Implementation details– Controls
• Step 2: Update the Use Case Model Diagram and Other Documentation to Reflect any New Use Cases
18-9
![Page 10: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/10.jpg)
Modeling Class
• Step 1: Identify and Classify Use-Case Design Classes
• Step 2: Identify Class Attributes
• Step 3: Identify Class Behaviors and Responsibilities
• Step 4: Model Object States
• Step 5: Model Detailed Object Interactions
18-10
![Page 11: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/11.jpg)
What’s Unique About Spatial?
• Topology rules – e.g., political boundaries
• Semantic integrity – e.g., roads do not run through structures
• User defined business rules – e.g., one way streets
![Page 12: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/12.jpg)
Levels of Abstraction
• Conceptual – e.g., rivers, roads
• Presentation – e.g., visual respresentation
• Implementation – e.g., vector
![Page 13: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/13.jpg)
Geospatial Classes Symbols
![Page 14: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/14.jpg)
Geospatial Field Classes
![Page 15: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/15.jpg)
Geo-Object w/ Geometry
![Page 16: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/16.jpg)
Geo-Objects w/ geometry & topology
![Page 17: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/17.jpg)
Relationships
![Page 18: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/18.jpg)
Relationships (Cont)
![Page 19: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/19.jpg)
Cardinality
![Page 20: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/20.jpg)
Generalization (not spatial)
![Page 21: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/21.jpg)
Generalization (spatial)
![Page 22: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/22.jpg)
Aggregation (not spatial)
![Page 23: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/23.jpg)
Aggregation (spatial)
![Page 24: Geospatial Systems Design and UML Or Looking at “OMT-G: An Object-Oriented Data Model for Geographic Applications” by Karla A.V. Borges, Clodoveu A. Davis.](https://reader036.fdocuments.us/reader036/viewer/2022081603/56649f2c5503460f94c478b1/html5/thumbnails/24.jpg)
Cartographic Generalization