Process philosophy is based on the premise that being is dynamic and that the dynamic nature of being should be the primary focus of our philosophical account of reality and our place within it. Alfred North Whitehead is an important 20th century philosopher who did an important contribution to process metaphysics.
If we admit that the basic entities of our world are processes, we can generate better philosophical descriptions of all the kinds of entities and relationships we are committed to when we reason about our world in common sense and in science: from quantum entanglement to consciousness, from computation to feelings, from things to institutions.
And also of companies and how to use data to follow up where they are going. In software this translates in the way you handle data in your applications. In other words, do you use a predefined relational model, or flexible data storage like event sourcing?
· In the first case you model the objects in your software according to the standard interpretation of predicate logic in terms of static individuals with properties in a persistent storage application.
· In the second you store everything that happens in the order that it happens and figure out later what the relevant ways of aggregating and reporting are - then you write a projector to gather and display the relevant data accordingly.
· In the first case, if it turns out you didn't model your objects with the enough detail to gather the insight you need, you're basically screwed. There is no way to go back in time.
· In the second if the projector doesn't provide enough detail, you can rewrite it, because you stored all information about the events and it's simply a matter of rewriting the projector with other parameters.
NB: we are talking here about data modelling in the business applications (OLTP). In the analytical applications (OLAP) we are dependent on the way the data is stored in the databases of the business applications.
How do you model reality in your applications?