+ All Categories
Home > Documents > 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and...

7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and...

Date post: 03-Jan-2016
Category:
Upload: sabina-benson
View: 215 times
Download: 1 times
Share this document with a friend
Popular Tags:
38
7-1 © Prentice Hall, 2004 Chapter 7: Chapter 7: Conceptual Data Conceptual Data Modeling Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Transcript
Page 1: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-1 © Prentice Hall, 2004

Chapter 7:Chapter 7:Conceptual Data ModelingConceptual Data Modeling

Object-Oriented Systems Analysis and Design

Joey F. George, Dinesh Batra,

Joseph S. Valacich, Jeffrey A. Hoffer

Page 2: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-2Chapter 7 © Prentice Hall, 2004

Chapter ObjectivesChapter Objectives

After studying this chapter you should be able to:– Determine how to develop conceptual

data models from use cases.– Understand UML notations for

conceptual data modeling.– Explain relationship characteristics such

as degree and multiplicity.

Page 3: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-3Chapter 7 © Prentice Hall, 2004

Chapter Objectives Chapter Objectives (Continued)(Continued)

After studying this chapter you should be able to:– Describe data relationships such as

association, aggregation, and generalization.

– Describe different kinds of attributes such as identifier, multivalued, and derived.

Page 4: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-4Chapter 7 © Prentice Hall, 2004

Page 5: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-5Chapter 7 © Prentice Hall, 2004

What Is a Conceptual Data What Is a Conceptual Data Model?Model?

A detailed model that shows the overall structure of organizational data; it is independent of any database management system or other implementation considerations.

Represented by UML class diagrams

Page 6: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-6Chapter 7 © Prentice Hall, 2004

Use cases are key inputs to conceptual data modeling.

Page 7: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-7Chapter 7 © Prentice Hall, 2004

Page 8: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-8Chapter 7 © Prentice Hall, 2004

Page 9: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-9Chapter 7 © Prentice Hall, 2004

Conceptual Data Model ElementsConceptual Data Model ElementsClassesAttributesIdentifiersAssociations, aggregations, compositionsGeneralizationsTime dimensionsIntegrity rulesSecurity controls

Page 10: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-10Chapter 7 © Prentice Hall, 2004

What Is an Object?What Is an Object?

An entity that encapsulates data and behavior

Examples: 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)

Page 11: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-11Chapter 7 © Prentice Hall, 2004

Class

Instances

Page 12: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-12Chapter 7 © Prentice Hall, 2004

UML Class symbol has three parts:

1) Name2) List of attributes3) List of operations

Page 13: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-13Chapter 7 © Prentice Hall, 2004

Types of AttributesTypes of AttributesSimple attributes – contain single data item

Identifiers – connect unique key value

Multivalued attributes – contain multiple values simultaneously

Composite attributes – group of related attributes

Page 14: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-14Chapter 7 © Prentice Hall, 2004

Stereotypes in Class DiagramsStereotypes in Class Diagrams

• Stereotype – a construct that extends the UML vocabulary

• Identifier stereotype <<PK>> for primary key

• Multivalued stereotype <<multivalued>>

Page 15: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-15Chapter 7 © Prentice Hall, 2004

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

Page 16: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-16Chapter 7 © Prentice Hall, 2004

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

Page 17: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-17Chapter 7 © Prentice Hall, 2004

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

Page 18: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-18Chapter 7 © Prentice Hall, 2004

What Is a Relationship?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)

Page 19: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-19Chapter 7 © Prentice Hall, 2004

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

Page 20: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-20Chapter 7 © Prentice Hall, 2004

Roles identify the purpose of each class in the relationship.

Page 21: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-21Chapter 7 © Prentice Hall, 2004

What Is Relationship Degree?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

Page 22: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-22Chapter 7 © Prentice Hall, 2004

Page 23: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-23Chapter 7 © Prentice Hall, 2004

Page 24: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-24Chapter 7 © Prentice Hall, 2004

What Is Relationship Multiplicity?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

Page 25: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-25Chapter 7 © Prentice Hall, 2004

Relationship MultiplyRelationship Multiply

Relationships can be:

– One – to – one

– One – to – many

– Many – to – many

Page 26: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-26Chapter 7 © Prentice Hall, 2004

Multiplicity notation is: min..max

Page 27: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-27Chapter 7 © Prentice Hall, 2004

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

Page 28: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-28Chapter 7 © Prentice Hall, 2004

Page 29: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-29Chapter 7 © Prentice Hall, 2004

What Is an Associative Class?What Is an Associative Class?

A special purpose class that represents an association (relationship) between classes and contains attributes and/or relationships in its own right

Represented as a class connected to an association with a dotted line

Page 30: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-30Chapter 7 © Prentice Hall, 2004

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

Page 31: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-31Chapter 7 © Prentice Hall, 2004

Sometimes associative classes have their own relationships with other classes.

Page 32: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-32Chapter 7 © Prentice Hall, 2004

Types of AssociationsTypes of Associations

• Association – no object is subordinate to any other.

• Aggregation – one class represents the whole, and the other represents the part, but it is a loose coupling.

• Composition – an aggregation with a tight coupling. The whole and the part cannot exist without each other.

Page 33: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-33Chapter 7 © Prentice Hall, 2004

Page 34: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-34Chapter 7 © Prentice Hall, 2004

What Is Generalization?What Is Generalization?

A superclass – subclass relationship in which one class forms a broader category in which the other class is a sub-category

Inheritance – A subclass will inherit 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.

Page 35: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-35Chapter 7 © Prentice Hall, 2004

Page 36: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-36Chapter 7 © Prentice Hall, 2004

Page 37: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-37Chapter 7 © Prentice Hall, 2004

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

Page 38: 7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,

7-38Chapter 7 © Prentice Hall, 2004

RecapRecap

After studying this chapter we learned to:– Develop data models from use cases.– Use UML notation for conceptual modeling.– Understand relationship multiplicity and

degree.– Work with aggregation, composition, and

generalization.– Work with identifier, multivalued, and derived

attributes.


Recommended