Enterprise Application Development

Fast Modeling, Responsive Design, One-Button Deploy

BOOK a Demo

Economic theory-based business modeling

Resources, Events, Agents

BOOK a Demo

Why developers need OMNIA in their toolkit
Posted January 31st, 2023

Why developers need OMNIA in their toolkit
Posted January 31st, 2023

One of the most bespoke aspects of our development platform is the theory behind it. Without going into too complex detailing, we would like to clarify what that theory is and what it stands for, as well as the modeling design decisions that have led us to the development platform we have today.

As a productivity tool, the OMNIA Platform was built to fulfill the software needs of all types of businesses. At the core of our development platform lie principles of an economic modeling system called REA (Resources, Events, Agents), which serves as the foundation for all concepts and features you’ll find during your development experience.

The REA framework is directed at accounting systems, with a focus on the recording of the several economic, mostly recurring, events that happen within an organization. It assumes that there are a limited number of concepts within all accounting software and that it is possible to easily design adaptable applications without jeopardizing business logic.

Here’s a list and description of those modeling elements:

OMNIA Modeler Elements

System entities that represent goods with comercial value and definable quantities. These goods are posessed by Economic Agents and are exchanged in financial transactions between two different ones. Examples of Economic resources include Products, Money and Services;
System entities that represent individuals, or groups of individuals (i.e. a Company). These entities possess Economic Resources and exchange them via financial trasactions. Examples of Economic Agents include Clients, Companies or Employees.
It represents a commitment between two Economic Agents to exchange Economic Resources. The concept of a Commitment is needed for one key reason: most trasactions are registered in advance but need to happen in the future, not at the time of their registration.
Represents the actual transaction of Economic Resources between two Economic Agents, one as the receiver and one as the supplier. This way, this trasaction represents an increment for the receiver agent and a decrement for the supplier agent. 
Being set of Commitments and rules, a document represents everthing that can happen during the transaction of Economic Resources. (Business) Rules specify what can happen in case certain conditons aren’t met during a transaction, allowing for the generation of additional commitments. Example: in the context of a Sale, a document is composed of a set of commitments that represent the exchange of goods for money and that may contain (business) rules that will only apply when/if a payment deadline is missed. This may translate into a new commitment that will represent a debt to the company, automatically.
In addition to the REA thought framework, OMNIA also provides the broader terminology of traditional Entity-Relationship models, which we’ve named Generic Entities. You can build entire applications using these, altough we would recommend prioritizing the usage of the REA elements when they fit your needs as they should, and are built to, accelerate your developments.

Now here’s a simple diagram of a “Purchase Invoice Document” example that shows how those elements fit together:

All this information was simplified and squeezed together in a simple “cheat sheet” for you to visit in case any doubts occur during your app developments:

APP ELEMENTS

Economic Agents:

Economic Resources:

Commitments:

Economic Events:

Documents:

Generic Entities:

USE CASES

The agents of a transaction (ex: Company, Person, Groups)

The resources that are traded in a transaction (ex: Currency, Work Hours, Raw Materials)

A digital commitment between two agents to trade resources

The transaction itself.

The element in which all transactional elements interact.

The generic element for any business entity that does not fit in any previous elements.

APP ELEMENTS

Economic Agents

The agents of a transaction (ex: Company, Person, Groups)

Economic Resources:

The resources that are traded in a transaction (ex: Currency, Work Hours, Raw Materials)

Commitments:

A digital commitment between two agents to trade resources

Economic Events:

The transaction itself.

Documents:

The element in which all transactional elements interact.

Generic Entities:

The generic element for any business entity that does not fit in any previous elements.

We hope this post cleared any doubts regarding why we designed our development platform as we did. OMNIA is not just a productivity tool, it’s a line-of-business web application development platform, design driven by accounting theory.

Do you want to try our development platform? Click the button below and ask for your 30-day free trial today.