PATTERNS OF DATA MODELING- P18: Models provide the means for building quality software in a predictable manner. Models let developers think deeply about software and cope with large size and complexity. Developers can think abstractly before becoming enmeshed in the details of writing code. Although models are beneficial, they can be difficult to construct. That is where patterns come in. Patterns provide building blocks that help developers construct models faster and better. | 66 Chapter 4 Undirected Graph Template Node table node ID node Name udg ID 1 A 1 2 B 1 3 C 1 4 D 1 5 E 1 6 F 1 node ID edge ID 1 51 3 51 1 52 4 52 1 53 5 53 2 54 node ID edge ID 5 54 3 55 6 55 4 56 6 56 5 57 6 57 Edge table edge ID edge Name udg ID 51 c 1 52 d 1 53 e 1 54 f 1 55 g 1 56 h 1 57 i 1 Figure Node and edge undirected graph Populated tables. Figure shows a model for the LinkedIn network using the node and edge undirected graph template. The LinkedIn Web site manages extensive data about members that Figure does not show as the emphasis is on the template. Member 2 Link name emailAddress password Figure Node and edge undirected graph Personal networking model. Connection Undirected Graph Template UML Template Figure elaborates the node and edge template promoting the connection between nodes and edges to an entity type. Figure as stated does not permit unconnected Nodes. You could add a relationship between UDG and Node if unconnected Nodes were important. A UDG undirected graph is a set of nodes and a set of edges that connect nodes. You need not show UDG in a use of the template. A Node is an entity type whose records are Connection Undirected Graph Template 67 Figure Connection undirected graph UML template. Use when there is data for the connection itself or edges connect to the same node. organized as an undirected graph. An Edge is a coupling between Nodes. A Connection is the linking between a Node and an Edge. With this template the names of nodes and edges are globally unique. There is no context to provide an alternative approach to naming. Figure lacks the constraint that related nodes and edges must all belong to the same undirected graph. IDEF1X Template Figure restates Figure with the IDEF1X notation. The following are foreign keys udgID references UDG nodelD references Node and edgelD references Edge. The combination of nodelD edgelD need not be unique for a Connection as a Node and