A note about the use of UML for geodatabase design
A note about the use of UML for geodatabase design
Release 9.3
Note:This topic was updated for 9.3.1.ArcGIS supports the use of CASE tools to import Unified Modeling Language (UML) models for geodatabase designs. However, support for all geographic data types, relationships, and behaviors is not complete in UML data modeling.
While UML is a useful tool for documenting the relational aspects of a geodatabase schema (such as table layouts and relationships), generally, it is not recommended to solely use UML for geodatabase design.
UML can be useful for relational database design (for example, for schemas that primarily contain feature classes, attribute tables, and a few other geodatabase properties). However, UML has generally not been useful for designing richer geographic behavior—topologies, networks, terrains, raster catalogs, map layers, map symbols, metadata, cartographic representations, semantic classifications, address locators, cadastral fabrics, linear referencing, and geoprocessing models. These data elements are used to define geographic behavior and associations.
Much of the richness of the geodatabase cannot be universally expressed in a UML design. More important, no special GIS insight is achieved through UML design. Graphing a hierarchy of object-oriented classes, subclasses, and inheritance in UML does not provide insight on how to model the spatial relationships in your geographic data; for example:
How the parcel boundary lines connect to form closed parcel polygons
How parcel corners, boundaries, and areas share coincident geometry with one another
What integrity rules you expect to be maintained as part of their geographic representation in the system
Often, UML distracts designers from defining use cases that help you more clearly articulate critical geographic behaviors and spatial relationships.
Certainly, user communities can find some ways to express their geographic data elements as UML. In other words, you can document many (but not all) design aspects of your geodatabase using UML.
Additionally, many relational modelers depend heavily on UML and want their GIS designs to interoperate with their other DBMS designs. In these cases, you can share parts of your geodatabase schemas using UML.
In addition, many people primarily want to use UML as a means to share their schema and rules. ArcGIS has other mechanisms that can support schema documentation and sharing, such as via geodatabase XML.
Bottom line: UML is one of a number of methodologies (such as entity-relationship modeling) that can be used effectively for relational and tabular modeling. However, the use of UML alone is not sufficient. UML is not a replacement for the necessary work of geographic data modeling required in GIS—defining spatial behaviors and use cases of the spatial relationships you want your geodatabase to convey. The design steps described earlier in this Design section of the help (See Geodatabase design steps) will provide guidance on these other aspects of geodatabase design.
A useful tool for documenting your schema using graphic representations that ESRI uses is described in Using the geodatabase diagrammer tool.