1. Trang chủ
  2. » Công Nghệ Thông Tin

PATTERNS OF DATA MODELING- P32 pps

5 202 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 145,16 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Figure 10.31 Archetype Position: UML model.. Figure 10.33 Archetype Product: UML model.. * Product marketingData * Figure 10.34 Archetype Product: IDEF1X model.. productID Product produc

Trang 1

tended) In reality, at most one Person can hold a Position at a time and application code must

enforce this constraint

The model does not require that the position structure be a hierarchy, although that is the

usual case The model instead supports matrix management (a Position may report to multi-ple parent Positions).

10.17 Product

A Product is the packaging of a physical item for a particular marketplace (Figure 10.33, Figure 10.34) For example, a bank can have a checking account service and tailor the service into products for various markets One product might be an interest-bearing checking ac-count Another might couple a checking account with discounts for various businesses A third product might have low fees for students A product can consist of multiple items

Figure 10.31 Archetype Position: UML model A Position is a job held

by someone in an organization

effectiveDate

expirationDate

MgmtHierarchy

PositionLink

effectiveDate expirationDate

Position

expirationDate

Assignment

effectiveDate

*

0 1

Organization

Person

*

*

1 1

expirationDate

1

*

1 root

{At most one Person can hold a Position at a time.}

Figure 10.32 Archetype Position: IDEF1X model

positionID

Position

title effectiveDate expirationDate

personID

Person

assignmentID

Assignment

effectiveDate expirationDate positionID (FK) personID (FK)

positionLinkID

PositionLink

effectiveDate expirationDate parentPositionID (FK) childPositionID (FK)

mgmtHierarchyID

MgmtHierarchy

effectiveDate

expirationDate

rootPositionID (FK) (AK1.1)

organizationID (FK)

organizationID

Organization

.

Trang 2

140 Chapter 10 / Archetypes

10.18 Role

A Role is a function played by someone or something (Figure 10.35, Figure 10.36) Each

Role corresponds to one Entity and can also have a Relationship Similarly, each RoleType corresponds to one EntityType and can also have a RelationshipType.

This archetype is an excerpt from a metamodel but the notion of a role often arises for

application models Sometimes it is helpful to have explicit role tables as the Actor and Ad-dress archetypes illustrate.

Note that the role archetype has two homomorphisms

• EntityType to Entity corresponds to RoleType to Role.

• RelationshipType to Relationship corresponds to RoleType to Role.

Figure 10.33 Archetype Product: UML model A Product is the packaging

of a physical item for a particular marketplace

*

Product

marketingData

*

Figure 10.34 Archetype Product: IDEF1X model

physicalItemID

PhysicalItem

.

vendorID

Vendor

productID

Product

productName marketingData vendorID (FK)

PhysItem_Product

physicalItemID (FK) productID (FK)

Figure 10.35 Archetype Role: UML model A Role is a function played

by someone or something

RoleType

name

Role

1 1

*

*

*

1

0 1

*

*

1

EntityType

name

RelationshipType

name

Trang 3

10.19 Transaction

A Transaction is an exchange that must be completed in its entirety or not at all (Figure 10.37, Figure 10.38) There are two major usages — in finance and in computing

Figure 10.36 Archetype Role: IDEF1X model

entityTypeID

EntityType

entityTypeName (AK1.1)

roleTypeID

RoleType

roleTypeName entityTypeID (FK) relationshipTypeID (FK)

relationshipTypeID

RelationshipType

relationshipTypeName

entityID

Entity

entityTypeID (FK)

roleID

Role

roleTypeID (FK) entityID (FK) relationshipID (FK)

relationshipID

Relationship

relationshipTypeID (FK)

*

1

Figure 10.37 Archetype Transaction: UML model A Transaction is an

exchange that must be completed in its entirety or not at all

Transaction

datetime priority

TransactionType

name {unique}

TransactionElement

name

outcome

*

1

Figure 10.38 Archetype Transaction: IDEF1X model

transactionID

Transaction

datetime priority outcome transactionTypeID (FK)

transactionTypeID

TransactionType

transactionTypeName (AK1.1)

transactionElementID

TransactionElement

transactionElementName transactionID (FK)

Trang 4

142 Chapter 10 / Archetypes

A financial transaction is an exchange of assets (information, goods, services, money) between two parties For example, a stock holding might be sold on a stock exchange A company may split its stock awarding additional shares to the owner as well as money in lieu

of partial shares

A computing transaction (often involving a database) is a group of commands that is treated as a unit of work All commands must be completed before the transaction is success-ful Partial work is not permitted; if the transaction cannot be completed all work is undone

Each Transaction has a TransactionType that determines the precise processing A trans-action outcome is committed or rolled back The Transtrans-actionElements are either the details

of a financial transaction or the constituent commands for a computing transaction

10.20 Vendor

A Vendor is someone involved in the sale of products (Figure 10.39, Figure 10.40). Vendor reifies the vendor role for a TangibleActor (usually an organization, see Section 10.2)

Ven-dors often have special data to collect, such as supply data, credit information, and order lead time You could use softcoding (see Chapter 13) to capture vendor data, but an alternative is

to define a distinct entity type as shown here

10.21 Chapter Summary

Archetypes are abstractions that often occur and transcend individual applications You should keep them in mind as you construct models Table 10.1 summarizes the archetypes

0 1 Vendor

supplyData 1

creditInformation orderLeadTime

Figure 10.39 Archetype Vendor: UML model A Vendor is someone

involved in the sale of products

TangibleActor

Figure 10.40 Archetype Vendor: IDEF1X model

vendorID

Vendor

supplyData creditInformation orderLeadTime tangibleActorID (FK) (AK1.1)

tangibleActorID

TangibleActor

.

Trang 5

Archetype Definition Sample applications Related terms

Account

a label for recording,

reporting, and

manag-ing a quantity of

some-thing

• accounting

• business

• computing

• financial

• travel

• account payable

• account receivable

• credit card account

• email account

• expense account

• frequent flyer account

• general ledger account

Actor

someone or something

that is notable in terms

of data or relationships

widespread use across applications

• customer

• organization

• party

• person

• vendor

Address a means for

communi-cating with an actor

• financial

• security

Contract

an agreement for the

supply of products

• business

• financial

• agreement

• purchase order

• sales order

Course a series of lessons

about a subject

• education

Customer

someone involved in

the purchase of

prod-ucts

CRM (customer rela-tionship management)

Document

a physical or

elec-tronic representation of

a body of information

Event an occurrence at some

point in time

Flight

the travel by an

air-plane between airports

• aviation

• shipping

• trucking

• route

Item

a part or a service • commerce

• manufacturing

• part

• product

• service

Table 10.1 Summary of Archetypes

Note: Keep them in mind as you construct models The use of an archetype

can lead to a breakthrough

Ngày đăng: 05/07/2014, 06:20