POSITION PAPER FOR GUIDO L. GEERTS AND WILLIAM E. MCCARTHY -- MICHIGAN STATE UNIVERSITY

Business transactions v as normally signaled by source documents such as invoices, requisition slips, remittance advices, checks, clock cards, time cards, transfer slips, production orders, and receiving reports v are material representations of economic events. Events are the inflows or outflows of economic resources. Some of these events are instantaneous (such as a sale, a purchase, or a cash disbursement) while others are periodic in duration (such as the acquisition of employee service, the consumption of a capital asset, or the acquisition of a finished good). Events affect the stock of resources or assets controlled by an enterprise.

Business transaction processing systems all deal with the flow of resources between and within value-adding processes arranged in a purposeful enterprise value chain. There is a single object pattern v which we call the resource-event-agent (REA) template v that can be used to represent business transactions. Building an O-O transaction processing system involves utilizing these predictably-arranged patterns to stereotype object behavior. Such analysis and design allows object coding to be become routinized and highly reusable.

Two REA patterns for business transaction processing that we are working on are these:

At the OOPSLA workshop, we will first discuss the difficulties we have encountered with the coding of these patterns in a Smalltalk implementation environment. We will then move to a discussion of the general lessons we have learned and to an evaluation of REA patterns in general for O-O business system design. We also have other REA pattern plans for which we will be soliciting advice from other workshop members. For instance, we need in the future to address task level patterns for REA such as the coding of the workflow steps needed to effect a Economic Event. For example for a SALE, these would be accept order, pick goods, ship goods, and bill customer)

Guido L. Geerts (geerts@pilot.msu.edu) and William E. McCarthy (mccarth4@pilot.msu.edu) are professors of information systems in the Department of Accounting at Michigan State University. They have been involved with the development of multiple prototype REA systems during the last few years in a variety of database, knowledge-base, and O-O environments. Professor McCarthy formerly worked with Arthur Andersen as an AI consultant, while Professor Geerts did the same for IBM-Belgium.