Resources, events, agents (accounting model)
||This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. (October 2011)|
Resources, events, agents (REA) is a model of how an accounting system can be re-engineered for the computer age. REA was originally proposed in 1982 by William E. McCarthy as a generalized accounting model, and contained the concepts of resources, events and agents (McCarthy 1982).
REA is a popular model in teaching accounting information systems (AIS). But it is rare in business practice—companies cannot easily dismantle their legacy systems to meet REA's radical demands. REA has never actually been implemented, it is a data model primarily, the processing model is still vague (see Huang Wei-Peng 2005). Dr. Kimberly Church argues that this statement is generally untrue and misinformative, as REA is a specific subtype of ER diagram, which are certainly implemented by many businesses.
The REA model gets rid of many accounting objects that are not necessary in the computer age. Most visible of these are debits and credits—double-entry bookkeeping disappears in an REA system. Many general ledger accounts also disappear, at least as persistent objects; e.g., accounts receivable or accounts payable. The computer can generate these accounts in real time using source document records.
REA treats the accounting system as a virtual representation of the actual business. In other words, it creates computer objects that directly represent real-world-business objects. In computer science terms, REA is an ontology. The real objects included in the REA model are:
- goods, services or money, i.e., resources
- business transactions or agreements that affect resources, i.e., events
- people or other human agencies (other companies, etc.), i.e., agents
These objects contrast with conventional accounting terms such as asset or liability, which are less directly tied to real-world objects. For example, a conventional accounting asset such as goodwill is not an REA resource.
There is a separate REA model for each business process in the company. A business process roughly corresponds to a functional department, or a function in Michael Porter's value chain. Examples of business processes would be sales, purchases, conversion or manufacturing, human resources, and financing.
At the heart of each REA model there is usually a pair of events, linked by an exchange relationship, typically referred to as the "duality" relation. One of these events usually represents a resource being given away or lost, while the other represents a resource being received or gained. For example, in the sales process, one event would be "sales"—where goods are given up—and the other would be "cash receipt", where cash is received. These two events are linked; a cash receipt occurs in exchange for a sale, and vice versa. The duality relationship can be more complex, e.g., in the manufacturing process, it would often involve more than two events (see Dunn et al.  for examples).
REA systems are usually modeled as relational databases, though this is not compulsory. The design typically uses entity-relationship diagrams. The philosophy of REA draws on the idea of reusable Design Patterns, though REA patterns are used to describe databases rather than object oriented programs, and are quite different from the 23 canonical patterns in the original designs pattern book by Gamma et al. Research in REA emphasizes patterns (e.g., Hruby et al. 2006). Here is an example of the basic REA pattern:
The pattern is extended to encompass commitments (promises to engage in transactions, e.g., a sales order), policies, and other constructs. Dunn et al. (2004) provide a good overview at an undergraduate level (for accounting majors), while Hruby et al. (2006) is an advanced reference for computer scientists.
REA is a continuing influence on the electronic commerce standard ebXML, with W. McCarthy actively involved in the standards committee. The competing XBRL GL standard however is at odds with the REA concept, as it closely mimics double-entry book-keeping.
- Hruby, P., Kiehn, J., Scheller, C. V. (2006). Model-Driven Design Using Business Patterns. Springer. ISBN 3-540-30154-2
- Dunn, C., Cherrington, J. O., Hollander, A. S. (2004) Enterprise Information Systems: A Pattern-Based Approach. McGraw-Hill/Irwin. ISBN 0-07-240429-9
- Hollander, A. S., Denna, E., Cherrington, J. O. (1999) Accounting, Information Technology, and Business Solutions. McGraw-Hill/Irwin. ISBN 0-256-21789-0
- Geerts, L. G., McCarthy, E. W. (2002, Vol.3) An Ontological Analysis of the Primitives of the Extended-REA Enterprise Information Architecture. The International Journal of Accounting Information Systems, pp. 1–16
- Geerts, L. G., McCarthy, E. W. (2000) The Ontological Foundation of REA Enterprise Information Systems. Working paper, Michigan State University
- McCarthy, E. W. (July 1982) The REA Accounting Model: A Generalized Framework for Accounting Systems in a Shared Data Environment. The Accounting Review, pp. 554–78