Pattern players (what I know)
Str#52. "Establish Actor and Participant Attributes"
Strategy
- For actor, consider: name, address, phone.
- For participants, include: number, date and time (perhaps
an ending date and time), password, authorization level.
Related patterns:
Str#53. "Establish Place Attributes" Strategy
- For location, include: number, name, address (perhaps
latitude, longitude, altitude).
- Related pattern:
Patt#4._4_Place_Transaction_Pattern_transaction_patterns
"Place-Transaction"
Str#54. "Establish Transaction Attributes" Strategy
- For transactions, include: number, date, time,
status.
- For line items, include: quantity (if it knows an item,
rather than a specific item), status.
Related patterns:
- Patt#3.
"Participant-Transaction"
- Patt#4.
"Place-Transaction"
- Patt#5. "Specific Item
- Transaction"
- Patt#6. "Transaction -
Transaction Line Item"
- Patt#7. "Transaction -
Subsequent Transaction"
- Patt#8. "Transaction
Line Item - Subsequent Transaction Line Item"
Str#54a. "Transaction Times" Strategy
- A transaction object corresponds to a moment in time
(e.g., sale) or an interval of time (e.g., rental).
- A moment in time (dateTime, dateTimeOfBirth,
dateTimeOfManufacture, effectiveDateTime, plannedDateTime,
actualDateTime)
- An interval of time (interval, effectiveInterval,
dateTime + duration)
- An interval of time, expressed as a start/stop
combination (dateTimeStart, dateTimeEnd; dateTimeIn,
dateTimeOut; dateTimeOut, dateTimeBack; effectiveDateTime,
expirationDateTime). Fine detail: the second attribute in
these pairs belongs in a transaction line item, when
different values may apply to each line item.
Str#54b. "An Attribute? Or Something More?" Strategy
- Is a person's hobby (or hobbies) just an attribute? Or
something more?
- Value. Just need a current value, based
upon an enumeration of values? Add an attribute. Describe the
enumeration of values in text. Example: Hobbyist, with a
"hobbies" attribute
- Standard Catalog Description. Need
standard catalog descriptions you can choose from? Add a
"standard catalog description" class with whatever
descriptive attributes you need. Each "standard catalog
description" object captures attribute values which may apply
again and again. Example: Hobbyist -- Hobby (attributes:
type, name, description)
- History. Need history? Add a transaction
object, to remember intervals of activity. Example: Hobbyist
– Hobby Activity – Hobby
Str#55. "Establish Item and Specific Item Attributes"
Strategy
- For items, include: name, description, dimensions, size,
universal product code (UPC), weight.
- For specific items, include: serial number, purchase
date. (It might know a custom value, while an item might know
a default value.)
Related patterns:
Str#56. "Establish Interacting System and Device
Attributes" Strategy
- For another system or device, include: number, name,
operational state.
- For its companion object, in the system interaction
component, include: logon name, password, phone numbers,
address.
Establishing responsibilities
/ what I know
Strategies for building object
models