35
Analysis Pattern Analysis Pattern Dr. Zhen Jiang West Chester University E-mail: [email protected] url: www.cs.wcupa.edu/~zjiang

Analysis Pattern Dr. Zhen Jiang West Chester University E-mail: [email protected] url: zjiang

Embed Size (px)

Citation preview

Analysis PatternAnalysis Pattern

Dr. Zhen JiangWest Chester University

E-mail: [email protected]: www.cs.wcupa.edu/~zjiang

OutlineOutline

IntroductionAccountabilityObservations and MeasurementsInventory and AccountingPlanningTrading

IntroductionIntroduction

A Pattern is an idea that has been useful in one practical context and will probably be useful in others

Analysis patterns are group of concepts that represent a common construction in business modeling. It may be relevant to only one domain, or it may span many domains.

AccountabilityAccountability

PartyOrganization AccountabilityOperating scopes

PartyParty

Person

E-mail Address

Address

TelephoneNumber

Company0..1

0..1

0..1

0..1

0..1

0..1

Address Book

0..*

0..*0..*

0..*

0..*

0..*

PartyParty

Party

E-mail Address

Address

TelephoneNumber

0..1

0..1

0..1

0..*

Person

Organization 0..*

0..*

OrganizationOrganization

Region Sales Office

Division0..*

OperatingUnit

0..* 0..*

OrganizationOrganization

Region Sales Office

DivisionOperatingUnit

Organization

parent

sub

no parent OU is parent R is parent D is parent

OrganizationOrganization

Region Sales Office

DivisionOperatingUnit

Organization

parent

sub

StructureTime Period Type

Rule

0..* 0..*0..*

Principle 1Principle 1

Design a model so that the most frequent modification of the model causes changes to the least number of types

AccountabilityAccountability

Person Organization

Party

commissioner

responsible

AccountabilityTime Period Type

0..* 0..*

AccountabilityAccountability

Using a party allows accountability to cover a wide range of inter-party responsibilities, including management, employment, and contracts.

Principle 2Principle 2

Whenever defining features for a type that has a super-type, consider whether placing the features on the super-type makes sense.

Operating ScopesOperating Scopes

Clinical CareScope

Operating ScopeAccountability Location0..* 1..*

ProtocolScope

ResourceScope

Sales Territory

ProductType

ObservationConcept

ProtocolResource

Type

Measurements allow us to record quantitative information. Observation extends this pattern to deal with qualitative information. It is also often essential to record the protocol for an observation.

Observations and Observations and MeasurementsMeasurements

This model is useful if a large number of possible measurements would make person too complex.

MeasurementMeasurement

Measurement

Type

Person Quantity

John Smith is 6 feet tall, which can be represented by a measurement whose person is John Smith, type is height, and quantity is 6 feet

1 1

1

This model supports qualitative measurements. For example, ( tall, average, short) and (A,B, AB, O)

ObservationObservation

Observation

Type

Person

Quantity

1

1

Measurement CategoryObservation

1Category

1

This model represents the context used to identify an object

ExtensionsExtensions

Identifier

Scheme

Object String1 1

1

ExtensionsExtensions

Measurement

Type

Person Quantity

ExtensionsExtensions

Observation Type

Person

Quantity

Measurement

Category

1..* 1

Inventory and AccountingInventory and Accounting

EntryAmount: Quantity

Transaction0..*

Account21 1

Sum(entries.amount=0)

Transactions

Inventory and AccountingInventory and Accounting

TransactionTimepoint

0..*

Account1

1

Quantity

0..*

1 1

amount0..*0..*

1 0..*

withdrawals

deposit

from

to

balance

Inventory and AccountingInventory and Accounting

Entry Transaction

0..*

Account

balance:Quantity

1

12

entriesSummaryAccount

Detailed

1

0..*

A summary account can be composed of both summary and detailed account. The entries of a summary account are derived from the components’ entries in a recursive manner.components

Inventory and AccountingInventory and Accounting

Entry Transaction

0..*

Account

balance:Quantity

1

12

entriesSummaryAccount

Detailed

Inventory and AccountingInventory and Accounting

Entry

amount: Quantity

TransactionAccount

balance:Quantity

12

HoldingInventory

Entry

1Location

0..*

0..*

Item Type

0..*0..*

1 1

1

Transfer

Sum (entries.amount)=0

Inventory and AccountingInventory and Accounting

Inventory Entry

amount: Quantity Transaction

1from

1Location

0..*

Item Type

Transfer

Sum (entries.amount)=0

Account

balance:Quantity

SummaryAccount

DetailedHolding

to 1

Properties of actions

PlanningPlanning

Action

Location

Time Party1

1

Separate objects record the proposal and the implementation so that differences can be tracked.

PlanningPlanning

ProposedAction

ActionStatus

Implemented Action11

0..*

Completed and abandoned Actions

PlanningPlanning

ProposedAction

ActionAbandonedAction

Implemented Action11

Status

Suspension

PlanningPlanning

ProposedAction

ActionAbandonedAction

Implemented Action11

Status

Status

Suspension0..*

Time

0..*

1

1

0..*

PlanningPlanning

Plan Dependency

ActionReference

Plan Proposed Action

0..*1

The combination of plan and proposed action is unique

dependent consequent1 1

10..*

0..* 0..*

dependent and consequent are in the same plan

PlanningPlanning

Plan Dependency

PlanProposed

Action

0..*1

dependent

consequent

PlanningPlanning

Plan Dependency

ProtocolReference

SoftwareProtocol

Protocol

dependentconsequent

1 1

1 0..*

0..* 0..*

Protocolreferred protocol

1 0..*

0..*0..*

components

step

PlanningPlanning

ProtocolReference

SoftwareProtocol

Protocol

dependentconsequent

1 1

referred protocol

1 0..*

CompoundProtocol

Step

ContractContract

PartyLong Contract

amount: Numberprice: Money

1

1counterparty

0..*Short

Instrument

1

primaryparty

0..*

0..*