Скачать презентацию Conceptual Data Modeling Unit 3 Key Concepts Скачать презентацию Conceptual Data Modeling Unit 3 Key Concepts

8f88936de9528958147eb5ec905cc45d.ppt

  • Количество слайдов: 40

Conceptual Data Modeling Unit 3 Conceptual Data Modeling Unit 3

Key Concepts Conceptual data modeling process Classes and objects Attributes Identifiers, candidate keys, and Key Concepts Conceptual data modeling process Classes and objects Attributes Identifiers, candidate keys, and primary keys Multivalued attributes Composite attributes Relationships Unary, binary, and ternary relationships Cardinality and multiplicity Associations Aggregation and composition Composite structure diagrams Generalization

What Is a Conceptual Data Model? A detailed model that shows the overall structure What Is a Conceptual Data Model? A detailed model that shows the overall structure of organizational data Independent of any database management system or other implementation considerations. Represented by UML class diagrams

Use cases are key inputs to conceptual data modeling. Use cases are key inputs to conceptual data modeling.

Conceptual model sets the stage for more detailed model, and ultimately system design Conceptual model sets the stage for more detailed model, and ultimately system design

Conceptual Data Model Elements Classes Attributes Identifiers Associations, aggregations, compositions Generalizations Time dimensions Integrity Conceptual Data Model Elements Classes Attributes Identifiers Associations, aggregations, compositions Generalizations Time dimensions Integrity rules Security controls

What Is an Object? An entity that encapsulates data and behavior Product Employee Order What Is an Object? An entity that encapsulates data and behavior Product Employee Order Line item Class – a set of objects that share the same attributes, operations, relationships, and semantics (abstract) Instance – a single object (concrete)

Class Instance s Class Instance s

What is an Attribute? A named property of a class that describes a range What is an Attribute? A named property of a class that describes a range of values that instances of the attribute may hold

UML Class symbol has three parts: 1) 2) 3) Name List of attributes List UML Class symbol has three parts: 1) 2) 3) Name List of attributes List of operations

Types of Attributes Simple attributes • contain single data item • Salary • Age Types of Attributes Simple attributes • contain single data item • Salary • Age Identifiers Multivalued attributes • connect unique key value • Social security number • Student. ID • contain multiple values simultaneously • Phone numbers • Dependents Composite attributes • group of related attributes • Address

Stereotypes in Class Diagrams Stereotype – a construct that extends the UML vocabulary Examples: Stereotypes in Class Diagrams Stereotype – a construct that extends the UML vocabulary Examples: Identifier stereotype <> for primary key Multivalued stereotype <> Derived stereotype <> for values calculated based on other attributes

Primary key is a unique identifier; no two Student instances will have the same Primary key is a unique identifier; no two Student instances will have the same student. Id value.

Identifiers and Keys Identifier – an attribute or combination of attributes that is selected Identifiers and Keys Identifier – an attribute or combination of attributes that is selected as the unique characteristic for a class Candidate key – an attribute or combination of attributes that uniquely identifies each object of a class Primary key – a candidate key that is selected as the unique identifier of the class

Choosing a Primary Key Identifiers Candidate keys Extension SSN Name Employee. ID SSN Employee. Choosing a Primary Key Identifiers Candidate keys Extension SSN Name Employee. ID SSN Employee. ID Primary key Employee. ID

Multivalued attribute can contain multiple values; a student may have several phone numbers Multivalued attribute can contain multiple values; a student may have several phone numbers

Composite attributes have multiple sections (subattributes). They are treated as separate classes in conceptual Composite attributes have multiple sections (subattributes). They are treated as separate classes in conceptual data models.

What Is a Relationship? A semantic connection between objects of one or more classes What Is a Relationship? A semantic connection between objects of one or more classes In UML, represented as a line connecting two or more class boxes (or connecting one class to itself)

Roles identify the purpose of each class in the relationship. Roles identify the purpose of each class in the relationship.

What Is Relationship Degree? The number of classes that participate in a relationship Main What Is Relationship Degree? The number of classes that participate in a relationship Main degrees: Unary – a relationship between objects of the same class Binary – a relationship between objects of two different classes Ternary – a relationship between objects of three different classes

Unary relationships exist between instances of the same class Unary relationships exist between instances of the same class

This is a binary relationship, which indicates that an employee works in a department. This is a binary relationship, which indicates that an employee works in a department.

Note: a ternary relationship is not the same as three binary relationships. It is Note: a ternary relationship is not the same as three binary relationships. It is a relationship that links three separate classes simultaneously.

What Is Relationship Multiplicity? The range of the number of objects in Class A What Is Relationship Multiplicity? The range of the number of objects in Class A that can or must be associated with each object of Class B. A multiplicity is made up of: A minimum cardinality – the minimum number of Class A objects possible A maximum cardinality – the maximum number of Class A objects possible

Relationship Multiplicity Relationships can be: One – to – one One – to – Relationship Multiplicity Relationships can be: One – to – one One – to – many Many – to – many

Multiplicity notation is: min. . max This shows that one movie can be stocked Multiplicity notation is: min. . max This shows that one movie can be stocked as any number of videotapes, or none at all

Fixed cardinality involves an actual number instead of the generic n This indicates that Fixed cardinality involves an actual number instead of the generic n This indicates that the maximum number of sections an instructor can teach is 6

Roles make it clearer to see which should be on the one side and Roles make it clearer to see which should be on the one side and which should be on the many side of the relationship.

What Is an Associative Class? A many-to-many association that the data modeler chooses to What Is an Associative Class? A many-to-many association that the data modeler chooses to model as a class Particularly useful if the association contains attributes of its own Represented as a class connected to an association with a dotted line

A Certificate represents a relationship between an employee and a course, and has an A Certificate represents a relationship between an employee and a course, and has an attribute pertaining to that relationship

Sometimes associative classes have their own relationships with other classes. Sometimes associative classes have their own relationships with other classes.

Types of Associations Association No object is subordinate to any other. Aggregation One class Types of Associations Association No object is subordinate to any other. Aggregation One class represents the whole The other represents the part It is a loose coupling Composition An aggregation with a tight coupling. The whole and the part cannot exist without each other.

Closed diamond indicates composition (course line item cannot exist without course registration) Open diamond Closed diamond indicates composition (course line item cannot exist without course registration) Open diamond indicates aggregation (A player is part of a team, but could also exist without being part of a team)

What Is a Composite Structure Diagram? A diagram that shows how a whole is What Is a Composite Structure Diagram? A diagram that shows how a whole is made up of its parts, especially in cases where the whole has a large number of interrelated parts Useful to reduce clutter in diagrams with many associations Introduced in UML 2

Generalization and Inheritance Generalization A superclass – subclass relationship in which one class forms Generalization and Inheritance Generalization A superclass – subclass relationship in which one class forms a broader category in which the other class is a subcategory Inheritance A subclass inherits all the attributes and operations of its superclass An instance of the subclass contains all the same information (plus more) as an instance of the superclass. Inheritance is an “is-a” relationship

Multiple inheritance is complicated and not supported by all object-oriented programming languages. Multiple inheritance is complicated and not supported by all object-oriented programming languages.