Showing posts with label accounting. Show all posts
Showing posts with label accounting. Show all posts

Tuesday, January 13, 2009

Financial Information as a Pattern


Art is the imposing of a pattern on experience, and our aesthetic enjoyment in recognition of the pattern.
Alfred North Whitehead
Much of today’s well-crafted software is designed with what are called “design patterns.” Inspired by the architectural writings of Christopher Alexander, software design patterns make computer programs more flexible and adaptable to change. As opposed to programs composed of thousands of interdependent lines of code, where a small modification to a single code may force changes throughout the rest of the program, software designed with patterns allows chunks of code, or modules, to be modified or even replaced without requiring changes to the remainder of the program. Modules become interchangeable parts representing, perhaps, solutions that can be replaced by other solutions as the program evolves and meets new challenges.

A number of common software design patterns have been cataloged into a ”language of patterns” that are shared by developers around the world, the same patterns solving similar problems in applications as varied as defense systems and retail sales. While the primary advantage of these design patterns is that their use makes software modules independent of each other, there are many different patterns that serve to solve different problems that arise throughout the software industry.

Occasionally, a particular design pattern fits a certain problem space so well that it has the potential to dominate that problem space. An example of this kind of pattern is application of the so-called “Composite Pattern” in the area of financial information. The Composite Pattern, in its very simple manifestation, generates from the primitive data of recorded bookkeeping records all of the information that is produced by a fully-staffed corporate financial department. It simplifies the whole process of accounting to the point where, once it is implemented in the corporate software, any layman would be able to generate the high-level information produced by the aforementioned accounting department.

How this done is detailed in my book, The Tao of Financial Information, however, a brief introduction can be presented here. First, let’s take a look at what the Composite Pattern is. According to Wikipedia:
The intent of composite is to compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions uniformly.
(see http://en.wikipedia.org/wiki/Composite_pattern)
Briefly stated, the Composite Pattern is a hierarchical tree of objects where higher objects in the hierarchy are “composed” of parts that are represented below them in the hierarchy. For example, as shown in the diagram above, the concept of Income that is so important to the business world is a composite of its parts, Revenue and Expenses.

What is so valuable about this rather obvious observation is that, as we can see, the weight of the higher object, Income, is a sum of the weight of its parts, the Revenue and Expenses parts. The parts are summed because Revenue and Expenses have opposing balances (Revenue is typically a credit balance and the Expenses typically have a debit balance, as reflected by the numeric signs).

In the same manner, we can place all of the major concepts in the financial solution space into an expanded form of this hierarchical tree, with each higher level concept having a balance that is the sum of its parts. This simplifies financial information into a single pattern or data structure of computer science, allowing a simple program to generate all the financial numbers automatically as the objects in the tree are updated on a real-time basis.

Thursday, November 6, 2008

Drucker on Integrating Decision Support Data

“…most businesses have two information systems. One is organized around the data stream; the other, far older one, around the accounting system. The accounting system, though, is a five-hundred-year-old information system that is in terrible shape. The changes we will see in information technologies over the next twenty years are nothing compared to the changes we will see in accounting.”

Peter Drucker, Management in the Next Society

The heart of Business Intelligence is the data warehouse, with its historical record of the business events. It typically includes data about customers, products, business units, and other classes of objects that are critical to the company’s decision-making. Unfortunately, it has not included the most critical dimension of the business event—the movement of financial resources that occur during that business event.

This data, historically the most important of all business information, has been sequestered from the world of Business Intelligence by accountants. The accountants use this data to produce reports that satisfy government regulations while providing almost no strategic assistance to the company’s management. According to Peter Drucker, decision support will have to include the transactional data that is produced by the accounting department.

“At present, these two systems [data stream and accounting] are separate. They will not be separate for our grandchildren’s generation. Today’s CEOs still depend on the accounting model. I don’t know of a single business that bases its decisions on the data processing stream. Everyone bases their decisions on the accounting model, even though most of us have learned how easy this model is to manipulate.”

Peter Drucker, Management in the Next Society

Drucker is right; what we call Business Intelligence will have to be integrated with accounting data. It simply has to; the competitive advantages of doing it are too great. More importantly, the competitive disadvantages of not doing it will make it essential.