Position Paper for T. J. Hadfield

TJ_Hadfield@compuserve.com

Characteristics of Business Transaction Processing Systems

Business transaction processing systems are often implemented to facilitate various accounting processes. Accounting processes include general ledger accounting, accounts receivable, accounts payable and payroll, among others.

These systems are usually characterized by transactions which either explicitly or implicitly emphasize the accounting "duality principle." This principle, originally espoused by Paciolo in the 1300's, maintained that every transaction had two facets--one facet which was increased and another facet which was decreased. The increase and the decrease became known as the debit and the credit. The facets were acknowledged by accounts. The journal, utilizing accounts, debits and credits, was considered both necessary and sufficient to describe the effects of an economic transaction. The ledger, which was a mechanism to provide for information storage and retrieval, was a later addition.

Computerized accounting systems generally embrace the duality principle. General ledger systems usually deal with duality explicitly. Systems such as accounts payable and accounts receivable generally deal with duality implicitly by assuming the characteristics of one side of the dual transaction.

The duality principal is the basis for all modern accounting practices with their notion of accounts or classifications and two-sided transactions. This principle suggests that the goal of any accounting system is to describe the volume of "stores" (positive stores being assets, negative stores being liabilities) and the quantity of "flows" (positive flows being income and negative flows being expense). Furthermore, these stores and flows are categorized by their "nature" (accounts, in some accounting circles also known as "natural divisions").

The duality principle further holds that this system of flows, stores and natural divisions is a cohesive whole for any one (and only one) classification scheme and point of view. For example, there can be sets of accounts for financial accounting (the equity classifications), and cost accounting (the management classifications). In financial domains, other classification schemes can and do exist: funds-flow classifications, activity-based costing classifications, tax accounting classifications. Other points of view exist as well: owners' view, customer view, government view, employee view.

Paciolo's system of balanced accounts was a 14th century attempt at developing a rigorous model which could also be used at "run-time." The limitation of the model was the execution medium of paper and quills. This execution medium limited the number of dimensions which could be handled in run time. The system has, however, turned out to be quite extensible. Adding unlimited sub-ledgers extends the dimensionality of the system. This extension usually extends classification schemes; not points of view. However, each sub-ledger is constrained to one view and classification scheme and must be kept consistent ("balanced") with all over views and classifications.

Within each sub-ledger view, "accounts" take on a dual role as a scheme of classification and as a mechanism for providing answers regarding activity-to-date. It is these same accounts which must be balanced to ensure consistency between the duplicate activities required by separate entries across multiple views.

Despite these limitations and difficulties, we see new object-based system which (often at best) create a model of an accounting system-replete with all its short comings. In short we are creating a model of a 14th century model. We include in these models a dualistic nature, duplicate entries, limitations of classifications within a view, and an account as a 14th century design construct to permit optimization of queries by storing intermediate summations.

The Problem to be Solved

Object technology with its model-based approach should allow us to devise new ways to think about recording economic transactions in a more multi-dimensional way in which a single entity can have multiple aspects of flows, stores, classifications and points of view.

This model would permit a single entry "transaction" to record its impact from the point of view of various management disciplines, stockholders, customers and taxing authorities.

It would seem apparent that a generalized pattern could be constructed which models stores, flows, classifications and points of view. Utilizing such a model, a payroll hour worked could simultaneously be represented in the following classification schemes: Work In Process Inventory, Total Payroll Earnings, Activity Cost Tracking, Payroll Liability. Each of these schemes would normally be reported in separate subledgers, multiple times. Additionally, multiple points of view should be possible: Enterprise Point of View, Federal Government Point of View (taxable wages), Employee Point of View.

Furthermore, an appropriately considered model should be sufficiently flexible to embrace non-monetary domains such as stock control and human resources. Utilizing this model should allow domain-specific transactions to be mapped to the generalized model.

Yet, to my knowledge, no generalized economic transaction model which can address the concerns of multiple aspects for a single transaction. Is the duality model of current accounting practices so compelling? Or is a more generalized (and presumably more flexible and reusable) model too difficult or too costly to divise? I am interested in learning who has attempted to solve this problem in a more general way.