You are on page 1of 4

Transaction Sets from Transaction Pattern

Syed Irfan Hyder* and Usman Waheed**


College of Computing and Information Sciences
Pakistan Air Force - Karachi Institute of Economics and Technology, Korangi Creek
Karachi-75190 (Pakistan)
Received on October 3, 2007; Revised on November 2, 2007; Accepted on December 4, 2007

Abstract business applications, specially in designing different business


While analyzing business situations at analysis level, it is a chal- processes. Different transaction sets are useful in validating trans-
lenging activity to identify appropriate objects and their relation- action objects of specific business situation and validating their
ships. For such purpose different patterns and data models are relationships.
used, but most of them deal in few specific situations. Thesis of
this research is to identify such pattern that covers most of the 2. TRANSACTION SETS
business transactions. Hence transaction pattern is identified. Transaction pattern is an analysis pattern that specifies a trans-
This research further identifies different transaction types by action with the help of players. Players are objects with special
grouping different objects of the pattern, where each group rep- roles and associations in a transaction. Players include actor,
resents different transaction type that fulfils. participant, place, transaction line item, item, specific item, sub-
Key words: Transaction types, Transaction Pattern, Players sequent transaction, and subsequent transaction line item 0.A
workflow consists of a sequence of transactions in which a
1. INTRODUCTION transaction is followed by a subsequent transaction. In figure-1,
A transaction is a recording or logging of any event of signifi- transaction pattern, with its players and relationship is
cance; hence, transaction is “a significant event remembered” 0. presented.
In business scenarios, events that involve currency, count, or
date time are classified as transactions. Analysis of business applications indicates that not all transac-
Examples: tions contain all players. It is also observed that simplest trans-
action is based on only two players namely participant and
• Deposit, order, payment, purchase, refund, rental, reserva-
transaction. The set of players varies from transaction to trans-
tion, sale and withdrawal are examples of currency-based
action.
transactions.
• Courses enrollment, attendance register, books issued or Place
Specific Item
returned and marks obtained are examples of count-based 1
transactions. 0..* 0..*
• Time in/time out, birth certificate, appointment, schedule, Actor 1 0..** Participant Transaction Subsequent Transaction
1 0..*
session logs are examples of date/time-based transactions. ↑
0..*
1

While defining transactions multiple objects are used. These ◊ ◊
Item 1 0..* Transaction Line Item Subsequent Transaction Line Item
objects vary from transaction to transaction. To meet this objec- 0..*
1
0..* 0..*
tives, a generalized business model is required that captures a
Fig. 1. Transaction pattern.
wide range of business transactions and their objects.

Existing business models such as Transactions and Accounts 0 0 The research defines transaction set by grouping of players
0, Banking Patterns 0 and Business Models of data model re- relating to different type of transactions. In some transaction
source book 0 are domain specific, and lacked sufficient general- few players are involved such as an appointment transaction
ity. However, Peter Coad’s transaction pattern 0 is a higher- requires three players (participant, transaction and place), where
level description of a generic business process (or a template) participant is patient, transaction is appointment and place is
that has helps in the analysis and design of a wide range of clinic. There are some transactions that involve more players
business domains. such as order transaction which requires five players (partici-
pant, transaction, transaction line item, item, and place), where
Research selects transaction pattern, which supports large vari-
participant is customer, transaction is order, transaction line
ety of business transaction situations. By arranging different
item is order detail and place is factory. By varying the selection
transaction objects, different types of transactions are identified
of players, different transaction sets are generated.
and named transaction sets. Research is helpful for analyzing
* Author for correspondence, E. mail: <hyder@pafkiet.edu.pk> The phenomenon of grouping different players and defining
* * Bahria University Campus, National Stadium Road, Karachi. E. their transaction set is shown in figure-2. Different transaction
mail: <uwaheed@bimcs.edu.pk> sets represent different analysis and design situation. By vary-

TECHNOLOGY FORCES (Technol. forces): PAF-KIET Journal of Engineering and Sciences


Volume 01, Number 02, July-December 2007 39
• Buyer – rental- specific vehicle 4. TRANSACTION BASED ON S U B S E Q U E N T
• Member – subscribe – specific credit card TRANSACTION

3.3. Specific Item Transaction with Line Item These transactions are based on two transactions, one existing
These transactions support multiple specific items. These trans- and the other subsequent transaction. There are three possible
actions use transaction line item to store list of specific items. combinations.
Players of these transactions are participant, transaction, trans-
action line item and specific item where place is optional. 4.1. Transaction and Subsequent Transaction Both
without Line Item
P l ac e
These types of transactions involve simple transaction and sub-
1
sequent transaction. Players are participant, transaction and
0.. * subsequent transaction. The relationship between these players
PParticipant
a r t ic i p a n t T r annss a cc t iio
Tra o nn is many to many. In relational data model there must exist asso-
1 0. .* ciation table.
1

Participant 1 Transaction Subsequent Transaction

SSpecific
p e c if ic Item
It e m 1 TTransaction
ra n s a c t i o nLine
in e ItItem
em 0..* 1 0..*
0 .. *
Fig. 8
Fig. 6 Examples:
Examples:
• Patient – appointment – treatment /admission
• Student – issue –issue line item –specific book • Student – attendance – examination
• Customer–purchase–purchase line item–electric goods • Visitor – gate pass – entry
• Account holder – deposit –deposit line item – cash bonds - • Driver – driving license- renewal
bank branch
• Buyer–purchase–purchase line item – computer accessories 4.2. Transaction with Line Item and Subsequent
3.4. General and Specific Item Transaction Transaction without Line Item
These transactions are based on both kinds of items, general These types of transactions involve transaction with line item
items and specific items. These transactions use line items to and subsequent transaction without line item. Players are trans-
store list of specific items and general items. Players of these action, transaction line item and subsequent transaction. The
transactions are participant, transaction, transaction line item, relationship between transaction and subsequent transaction
specific item, item and place. player is many to many.

P l ace
Tra n s a c ti o n 0 .. * S uSubsequent Transaction
b s e q u e n tTr an s a c t io n
1
0 ..*
0.. * 1
P ar tici pa nt Tra ns ac tio n
1 0..*
1
Tra n s a c ti o nLine
Transaction in e Item
It e m

S pe cific Ite m 1 Transaction


Tran sa cti onLine
in eItItem
em Fig. 9
0..*
Examples:
0.. *

1
• Order – order line item – payment
Item • Purchase – purchase line item – packing

Fig. 7 4.3. Transaction and Subsequent Transaction Both with


Examples: Line Item
• Customer –purchase –purchase line item – electric goods - These types of transactions involve transaction and subsequent
goods transaction both with line item. Players are transaction, transac-
• Buyer – purchase –purchase line item – computer accesso- tion line item, subsequent transaction and subsequent transac-
ries – printer pages -department tion line item. The relationship among transaction, subsequent
• Customer – order – order line item – product – specific transaction and their line items is many to many. In relational
product data model there must exist association tables.

TECHNOLOGY FORCES (Technol. forces): PAF-KIET Journal of Engineering and Sciences


Volume 01, Number 02, July-December 2007 41
Transaction
Tran sa cti on 0 ..* S uSubsequent
bs eq ue ntTran sa cti on
Transaction In single record calculation there are two behaviours CalcForMe,
0..* RateMe; these are defined in each player. These are used to
1
perform calculation on single record or among fields of tables.
CalcForMe is used to perform different arithematic, datatype
Tra ns ac tio ni
Transaction ne Item
Line Item 0.. * S uSubsequent
bs eq ue ntTran sa cti on
Transaction Lin eItem
Line Item
specific or business operation. RateMe is used to sort data
0 ..*
ascending or descending order based on user defined criteria or
Fig. 10 SQL (WHERE clause).
Examples:
In calculation over collection there are four behaviors howMuch,
• Order –order line item –payment – payment line item
howMany, Rank<AssociatedPlayer>, calOver <Associated
• Payment –payment line item –shipment-shipment line item
Player>. These behaviours are performed on set of records of
• Purchase- purchase line item – packing –packing line item
single table or multiple tables. These operations are usually
based on user defined condition or in SQL (GROUP BY, HAV-
5. ATTRIBUTES
ING, and use of aggregate operations (SUM, COUNT, MIN,
Each player contains attributes. Essential attributes of each player MAX, etc.). How much and how many are defined for each
are given in Table-1. player and are used for single table. Rank<Associated Player>
and calOver<Associated Player> are also defined in each player
Table 1. Attributes of players.
and are used for associated player such as transaction is associ-
Players Attributes ated with participant therefore; call over transaction is defined
in participant. Whereas Associated Player can be actor, partici-
Actor Name, address, phone pant, transaction, transaction line item, subsequent transaction,
Participant Number, start date, end date, authorization subsequent transaction line item, item, specific item, place, as-
level, password sociate, and other associate
Transaction Number, date, time, status
7. CONCLUSION
Transaction Number, quantity, status
With the help of identified transaction sets, searching and
line item
identifying different business transactions becomes easy. The
Item Number, name , description, price, default relationship, attributes and behaviors can be used directly as
value defined in transaction pattern. The research is also helpful in
Specific item Serial number, purchase date, custom value validating and completing the missing objects and their possible
attributes.
Place Number, name, address

Transaction pattern define only essential attributes that signifi- 8. REFERENCES


cantly defines the role of player. An attribute about me is avail- [1] Peter Coad, “Object Models strategies, Patterns, and
able in every player that indicates that other user-defined fields applications,” Prentice Hall, 1995, ISBN: 0138401179.
can be added to further describe the player. [2] Paul Dustin Keefer, “An object oriented framework for
accounting systems”, MS thesis, University of Illinois at
6. BEHAVIOURS
Urbana-Campaign, 1994.
Each player contains behaviours. Transaction pattern defines [3] M. Fowler, Analysis Patterns: Reusable Object Models,
set of behaviours specialized for data retrieval or to perform Reading, MA: Addison Wesley, 1997.
calculation. They are classified in three broad categories 1-value [4] M. Fowler, “Accounting Patterns”, http://www.
check, 2-single record calculation, 3-calculation over collection. martinfowler.com/apsupp/accounting.pdf (PDF), 2007
For value check transaction pattern provides behaviours such as [5] Banking patterns, http://www.joeyoder.com/marsura/
isActive, isAuthorized, isStatusValue, CheckStatus, banking/banking.html
getCustomElseDefault. In general there are two main behaviours [6] Len Silverstone, W. A. Inmon, Kent Graziano “The Data
is <value> and check<value> where as value can be Boolean, Model Resource Book”, John Wiley& sons, 1997,
other datatype or some user defined value. ISBN:0471153672.

TECHNOLOGY FORCES (Technol. forces): PAF-KIET Journal of Engineering and Sciences


Volume 01, Number 02, July-December 2007 42

You might also like