Author
shannon-townsend
View
215
Download
2
Tags:
Embed Size (px)
Domain ModelsA line manager asks, These consultants and their models. I thought they were toys at first and then one of the consultants told me that they were semantic representations of business problems. I said, it sounds like Greek to me. He said, exactly the giving of signs. Im sure the guys a closet mason.
Domain ModelsDefine modelingBuild table modelsDefine binary and n-ary relationsTypes of binary relationsBuild model of tablesDefine history of modelingDefine 5 modeling techniques
Define modelingSection #1Define modelsDefine semanticsDefine data modelsPros and cons of data models
Define modelsModels are:Physical representations of things, like scale models of houses, cars, airplanes, boats, et cetera.Abstract representations of ideas, like programming models or data models.Concrete models are:Built to provide visualization of something before building it.Built to test concepts, like aerodynamics or hydrodynamics. Abstract models are:Built as theoretical constructs that represent processes.Built by defining logical variables and quantitative relationships between the variables.Built sometimes to simulate behavior, like a flight simulator.
Define semanticsSemantics is:The representation of ideas in words, symbols, or signs.The communication of ideas through sensory devices, like sight, sound, or touch.The representation of ideas by using pragmatics, which is the explanatory gap between a representation and understanding. It is like the glue that lets you understand the context of what somebody says or writes.Semantics models are:Built to provide visualization of something before building a model of it.Built to test concepts, like whether you want an object to fly or float. Abstract semantic models are:Built as theoretical constructs to represent processes.Built by using logical pragmatics to define a problem context.Built sometimes to define a concept, like a conceptual behavior that cannot be readily represented in a real or concrete model.
Define data modelsSubsection #1-3Generic requirementsPrototype model definitionEntity Relational Diagram (ERD)UML prototype model.Build prototypes using an IDE.
Generic requirementsModels require semantics:A common vocabulary, or set of primitives.A common language, or set of vocabulary.A common grammar, or means of organizing vocabulary in a language.A common denotation, or the ability to read and assign meaning.A common connotation, or the ability to interpret usage.A common pragmatics, or the ability to assert context to interpreted meaning.Models should read like a story:They should use some colloquialisms.They should use some precise symbols. They should balance the use of colloquialisms and precise symbols to communicate ideas.
Prototype model definitionDefine a table by:Describing the column names.Describing the column data types.Describing the column constraints.Name the constraints.Define as in-line or out-of-line constraints.Define a tables primary and foreign keys:Identify natural keys.Identify candidate keys.Pick a candidate key as a primary key. Identify foreign keys and the column in the same or another table that holds the list of valid primary keys.
Entity Relationship Diagram (ERD)Does describes the table name at the top of the diagram.Does describes the primary key column as an underlined column name separately from non-key column names.Does not describe data types.
Table
UML prototype modelDoes describes the table name at the top of the diagram.Does not describes the primary key column differently from non-key column names.Does describe data types.
#INDIVIDUAL_ID : NUMBER#FIRST_NAME : VARCHAR2#MIDDLE_NAME : VARCHAR2#LAST_NAME : VARCHAR2#CREATED_BY : NUMBER#CREATION_DATE : DATE#LAST_UPDATED_BY : NUMBER#LAST_UPDATE_DATE : DATE
INDIVIDUAL
Build prototypes using IDE
Define data modelsReview Subsection #1-3Generic requirementsPrototype model definitionEntity Relational Diagram (ERD)UML prototype model.Build prototypes using an IDE.
Pros and cons of data modelsPros:The table domains are well defined.The primary, superkeys, foreign keys are known.The tables can now support model relationships.The design is less expensive than writing the solution.Cons:Defining the table domains takes time.The design becomes progressively complex. Communicating the model takes longer than coding it.
Define modelingReview Section #1Define modelsDefine semanticsDefine data modelsPros and cons of data models
Build table modelsTables are:2 dimensional structures that contain raw data.The 1st dimension is the row, which lets you select records.The 2nd dimension, or nested dimension, is defined by the column names, which lets you project across or filter record selection.Table names are:Singular nouns or a set of singular nouns separated by underscores.Limited by the maximum implementation size of various database management system products.Column names are:Singular nouns or a set of singular nouns separated by underscores.Limited by the maximum implementation size of various database management system products.Columns require:Defined data types that include physical size allocation.
Define binary and n-ary relationsBinary relations:Exist between two things.Are described by two sentences because there are two perspectives.The subject is the starting point and the direct object is the ending point for each sentence.Each object is a subject in one sentence and a direct object in the other.
N-ary relations (n is the number of objects in the relation):Exist between three or more things.Each object in an n-ary relation has a binary relation with n 1 other objects.Are described by 2n sentences because there are 2n perspectives.The subject is the starting point and the direct object is the ending point for each sentence.Each object is a subject in one n sentences and a direct object in n other sentences.
Types of binary relationsOne-to-one:One row in the subject relates to one row in the direct object.One-to-many:One row in the subject relates to one or more rows in the direct object.Many-to-many:One or more rows in the subject relates to one or more rows in the direct object and vice versa.
Build model of tablesTables are:2 dimensional structures that contain raw data.The 1st dimension is the row, which lets you select records.The 2nd dimension, or nested dimension, is defined by the column names, which lets you project across or filter record selection.Relations are:Connections between two objects.Are described by two sentences because there are two perspectives.The subject is the starting point and the direct object is the ending point for each sentence.Each object is a subject in one sentence and a direct object in the other.Relations are annotated:A verb describes the relations between one object and another.Adverbs qualify the relations.Cardinality describes:The minimum number of rows affected minimum cardinality (old word ordinality).The maximum number of rows affected maximum cardinality (old word cardinality).
Define history of modelingSection 6BeginningImprovementRegulationPrivate sector regains control
Define history of modelingBeginning:The history of modeling techniques began with a method proposed by Peter Chen in 1976, which became the E-R model.The first model uses diamonds to hold a relationship map between conceptual entities.Charles Bachman and James Martin proposed some changes, which were incorporated into the Extended ER model, which was established in 1986 by academe papers.
Define history of modelingImprovement:Bachman and Martin innovation includes the use of perpendicular lines.Martin furthered the method, which became known as a component of Information Engineering (IE). IE was a Software Development Life-cycle methodology popularized in the late 1980s and early 1990s.It was replaced by the NIST/ECMA Unified Process, which uses UML.The symbols of Bachman and Martin adopted into the Extended ER model are the perpendicular zeros and lines denoting respectively minimum and maximum cardinality.
Define history of modelingRegulation:The Department of Defense (DoD) pushed for the standardization of modeling for information system contracts in the 1980s.This led to the definition of a competing standard to Information Engineering, which is known as IDEF1X. The National Institute of Standards and Technology introduced IDEF1X in 1993.IDEF1X has principally been used by DoD contractors and the ERWin Computer-aided Software Engineering (CASE) tool.
Define history of modelingPrivate sector regains control:Concurrently with the development of IDEF1X, National Institute of Standards and Technology (NIST) and ECMA were developing a framework for Software Engineering Environments, which became the Unified Process.The Unified Process (UP) is the common framework set by both American and European standards committees.UP adopted UML as the standard representation semantic for all facets of modeling.UP became formally adopted in 1996 and is widely used in Rapid Application Development (RAD) and eXtreme Programming (XP) development activities.
Define history of modelingReview Section 6BeginningImprovementRegulationPrivate sector regains control
Define 5 modeling techniquesSection 7Original E-RExtended E-RInformation Engineering (IE)IDEF1XUnified Modeling Language (UML)
Define 5 modeling techniquesSection 7Original E-REntities are drawn as rectangles and relationships are qualified in diamonds connected by lines to the entities.Rectangles have square corners when they represent strong entities and rounded corners when they represent weak entities.There is no formal way to:Represent minimum cardinality, orRepresent limited or specialized context for maximum cardinality. You manage these as notes. E-R model does not support categories or subtypes.
Define 5 modeling techniquesSection 7Extended E-REntities are drawn as rectangles and relationships, where the relationships are qualified by a combination of diamonds and perpendicular lines or circles.Extended E-R uses:Perpendicular zero to represent a minimum cardinality of zero, known as a may have relationship.Pperpendicular lines to represent minimum cardinality of one, known as a must have relationshipExtended E-R uses a diamond to display generalized binary relationships.
Define 5 modeling techniquesSection 7Extended E-R (continued)Rectangles have square corners when they represent strong entities and rounded corners when they represent weak entities.While rectangles should use this approach, it is violated because some inexpensive diagramming tools because they chose not to support it.When maximum cardinality is different than a generalized many, then it is noted next to the entity rectangle in a UML-like format.An ID-dependent relationship is represented by two perpendicular lines, drawn next to the parent of the relationship.Extended E-R model does support categories or subtypes and labels them as categories.Categories inherit from their parent.
Define 5 modeling techniquesSection 7Information Engineering (IE)Entities are drawn as rectangles and relationships are qualified without diamonds in Information Engineering (IE) models.Extended E-R uses:Perpendicular zero to represent a may have relationship.Perpendicular lines to represent a must have relationship.A less than symbol pointed toward the entity to represent a many row relationship.
Define 5 modeling techniquesSection 7IE (continue)Rectangles have square corners when they represent strong entities and rounded corners when they represent weak entities.When maximum cardinality is different than a generalized many, then it is noted next to the entity rectangle in a UML-like format.An ID-dependent relationship is represented by two perpendicular lines.IE model does support categories or subtypes and labels them as subtypes.Subtypes inherit from their parent.
Define 5 modeling techniquesSection 7IDEF1XEntities are drawn as rectangles and relationships may be qualified by alphanumeric codes, like 1, P and Z.1 means that a child must exist in only one row or an n means that a child must exist in n and only n rows.P represents a positive number and means a child must have one-parent-to-many-children relationship.Z represents a zero and means a child may have zero-to-one rows related to a parent, which means a parent may or may not have a child or children.
Define 5 modeling techniquesSection 7IDEF1X (continue)IDEF1X uses a dashed line to represent non-identifying relations.IDEF1X uses a solid line to represent an identifying relations.IDEF1X model does support categories or subtypes and labels them as categories.Categories inherit from their parent.
Define 5 modeling techniquesSection 7Unified Modeling Language (UML)Entities are drawn as rectangular class diagrams with three internal rectangles whether they contain methods or not.The top-most rectangle contains the name of the object of interest or entity, the middle rectangle contains the list of attributes that describe the entity and the attributes data types.
Define 5 modeling techniquesSection 7UML (continue)All relationships are shown by lines, with minimum and maximum cardinality next to the entities. Exceptions to the rule of depicting cardinality are inheritance and aggregation relationships because there is always a has-a relationship in aggregation or composition and is-a relationship in inheritance.The has-a relationship descends from the parent to the child and there is only one parent.The is_a relationship is treated in the context of a single inheritance model, like the Java programming language.UML does support categories or subtypes and labels them as subclasses, which means the modeling technique for categories is inheritance.
Define 5 modeling techniquesReview Section 7Original E-RExtended E-RInformation Engineering (IE)IDEF1XUnified Modeling Language (UML)
SummaryDefine modelingBuild table modelsDefine binary and n-ary relationsTypes of binary relationsBuild model of tablesDefine history of modelingDefine 5 modeling techniques