Oct 27 2016
Freedom under the Law and the Functional Database Model
Despite how obvious the benefits of the functional database seemed to me when I invented TM1 over 30 years ago, I have learned that these benefits are not immediately obvious to most people. What has become clear over the years, and now underscored during my time with Cubewise, is that most people don’t really understand the value of TM1 until they […]
Despite how obvious the benefits of the functional database seemed to me when I invented TM1 over 30 years ago, I have learned that these benefits are not immediately obvious to most people. What has become clear over the years, and now underscored during my time with Cubewise, is that most people don’t really understand the value of TM1 until they actually use it – as an end-user or as a developer.
A few years ago, I shared the “Freedom under the law” idea with Cubewise as a way to explain the unique value of TM1 to the market and it definitely produced some lightbulb moments. Cubewise has in turn been sharing it with anyone who will listen and it seems to “work” – in other words, it has helped now hundreds (maybe thousands) of people understand and appreciate the unique value of TM1 and the functional model without having to experience it first-hand as a user or developer.
I thought it would be good to share these crucial ideas further in this article – I hope it helps generate many more lightbulb moments of understanding for TM1 out there!
Spreadsheets and the road to Hell
Prior to the arrival of VisiCalc (the first electronic spreadsheet) in 1979, most planning and analysis was done on paper spreadsheets. Visicalc’s immediate popularity was one of the main drivers of the personal computer revolution of the early 1980’s. Electronic spreadsheets gave users a way to store data in an organized, tabular way and to set up calculations that were performed automatically whenever data changed. This made it possible to construct fairly complex analytics models in which users could at a whim change assumptions and see the results, and it also provided the flexibility to change the models themselves as business requirements changed.
Naturally, as time went on, users built larger and more complex models that involved multiple spreadsheets which were often developed by others. Pretty soon they ran into scalability limitations of the spreadsheet model, like its limited ability to deal with multiple business dimensions. But the most crucial was the limitation users had of keeping track in their own minds of the complexity they had created in their spreadsheets. Countless hours and sleepless nights were spent checking the validity and consistency of data and models. By the time Excel became the dominant electronic spreadsheet, this phenomenon became known as Excel hell.
To a large extent, this problem can be ascribed to an excess of freedom without enough structure and discipline.
Balance Freedom and the Law
A central if not the central issue of political science is the design of societies that balance freedom and governance. Both extremes are undesirable. At one end are totalitarian societies, especially those that control all aspects of the economy in the interest of equality. They provide physical security and “free” services but make it difficult or impossible for individuals to engage in business. This, in addition to creating hopelessness by frustrating people’s desire to better their own situation, results in the sharp reduction in goods produced so that the equality sought becomes one shared poverty.
At the other extreme, a totally lawless or anarchic society also produces poverty and human misery. In such failed states, people live in a constant state of insecurity that is not only stressful but which prevents them from investing and contributing to the economy.
The main benefit of laws is security. This removes worries and concerns about willful or unwitting harm and interference from others, and allows individuals to focus on investing and building a better future. Yet laws and regulations should not impede the ability of individual actors to act in their own benefit so long as they do not harm or unduly interfere with the freedom of others. The right balance has historically been achieved by an open political system where the forces of freedom and order can peacefully fight and balance each other.
An analogous struggle occurs within the enterprise. On one side of control and order typically is the IT organization. At the other are user organizations that are more concerned about meeting their business needs.
In analytics, the structure of the problems and the models used to address them tend to be in a constant state of flux. Spreadsheets provide the needed flexibility, which drives their popularity in user organizations. However, the IT organization sees spreadsheets as a source of chaos and anarchy and do everything possible to do away with them, but in most cases they cannot offer an alternative to fulfilling the needs of analytics, so spreadsheet proliferation ensues, followed by Excel Hell.
This is different from transaction based applications, perhaps because they were the first to be automated and have the benefit of maturity, for which an adequate level of safety and control have been achieved through the use of a centrally controlled relational database. It is in part due to this success of the relational database that has encouraged IT organizations to often reach back to relational solutions and principles and apply them to non-transactional business problems, despite the technology not being fit for purpose.
The Functional Model bridges freedom and control
Although the functional database model was conceived shortly after the electronic spreadsheet, its adoption has been rather slow (due to the phenomenon that the benefits only become obvious once you actually use a functional database). Its core idea is to provide the modeling flexibility of the spreadsheet, but maintain control through the use of a central database. This database has a fundamentally different structure from that of the relational database in that it supports models that, as in a spreadsheet, calculate individual cells as a function of other cells. Models are centrally located in the database rather than being distributed in multiple spreadsheets.
As with relational databases, access to the data both for reading and updating is controlled by security rules. The database also provides an audit trail for backup as well as forensic needs. And in addition to control and security, the functional database provides much more scalability than spreadsheets, both in terms of the volumes of data as well as the complexity of the models.
The net result is planning and analysis applications that fully model various aspects of the enterprise and incorporate the knowledge and expertise of the user organizations. Both the raw input data and data derived by the application’s models are accessible to all authorized users, but the models can be controlled centrally, i.e. the models can be tested and certified for correctness before they are made available to general use.
In conclusion, the functional model established for the first time the principle of Freedom Under the Law in analytics. The next logical questions are on whether the balance between the two is right. Are there too many constraints; is there the possibility of abusing the freedoms provided; and does it provide the necessary tools to enforce those abuses? These will be addressed in a subsequent article.