The Essence of OO

The essence of OO can be summarised in two statements: Active/passive rule Demand-chain cooperation This article introduces these two important and undervalued patterns. The Active/Passive rule This rule can be summarised as follows: “Objects that are active in the real world are modelled as passive, and vice-versa.” This is only a trick. Many modellers have stated that the object-oriented model is a representation of the real world. This is true, but not entirely. And the model...

Continue reading

The Executive Director and the Carpenter

In a small village in the rural part of the Netherlands lived a simple carpenter. In his life he had only enjoyed the most basic education, having learned the job from his father who in turn had learned it from his father. This carpenter had a most peculiar way of organising his work. Early in the morning he would go to his workshop on the other side of the street from where he lived. He did not like to work following some plan, so he entered the workshop and started the day by looking around....

Continue reading

What is wrong with UML?

We find it so hard to cope with complexity in IT, that every time an evolving standard, like UML, is becoming too complex, we tend to drop it in favour of something new. The new being, because it is new, simple and understandable. While it lasts … We see this with the rising popularity of Ruby. Developers are flocking to this new thing as if mesmerized, disillusioned by the complexity of delivering value with the Java frameworks. Now there are two reasons something can be complex. In fact I...

Continue reading

Through the Looking Glass

Through the Looking Glass Lewis Carroll’s Alice in Wonderland has been a source of inspiration for me and many others concerning a specific aspect of complex systems. This aspect is one that in my view is essential if we want to realise the quantum leap in complexity that we need: reflection. Reflection is that property of systems that enable them to speak about themselves. An excellent introduction to reflection is the famous book by Douglas Hofstaedter: Gödel Escher Bach. The living brain...

Continue reading

Scalable Systems

I know of only two infinitely scalable systems ever built. One we know, and many people will correctly guess this when asked. It is the internet. The internet started up October 29, 1969 when the first two systems, located in Stanford University and the University of California, connected. Since then, this network has been growing continually: October 1969: 2 December 1969: 4 December 1971: 23 October 1972: ARPANET went public with a demo linking computers in 40 different locations. currently:...

Continue reading

Scalability

In his keynote speech on Oopsla 1997 (see link below) Alan Kay talked about the primary need for software development to deal with scalability. We develop tools for making models (and software) that are very suitable to build dog houses. The misconception is that building larger structures (scaling up) entails nothing more than scaling up the dog house 100 times. Et voilá: we have created a cathedral! Engineers know that scaling up a physical structure 100 times, means a mass that is 300,000,000...

Continue reading

The Importance of Metaphors

Metaphors have a profound impact on the effectiveness (or lack of it…) of your solutions. Especially for business modelling the choice of the right metaphor can have benefits you would not have expected. This is because modelling in general and business modelling especially suffers from symptoms caused by an endemic use of the wrong metaphors. The unconscious use of metaphors is detrimental, and handicaps us in exploiting the possibilities a specific technology or invention offers, to be...

Continue reading

Lossless Modeling

Or: why models don’t need to be simpler than the thing they model. Should they be simpler? This is what almost every definition or treatise on models and the art of modelling argues: models should be simpler than the thing they model. Otherwise, what’s the use? The darned thing is too complex, right? So we create a model, we factor out the parts we don’t need, we are left with the model containing those aspects of the real thing we need and nothing more, and the world seems manageable...

Continue reading

Why use UML for Business Modeling

What we generally see when we look at tools for business modelling is an attempt to visualise the flow of activities in an organisation. I once heard a consultant from a workflow tool vendor proudly say that: “Now finally the managing director understood what was really happening in his organisation!” We don’t want to argue that this consultant was entirely wrong. In fact, workflow modelling has helped many organisations to finally get a grip on their processes, and took important...

Continue reading

The Rise and Fall of OMT

(This article has originally been published in the Spring ’96 ING Component Architecture newsletter – ICA) Back ten years or so, when I started dabbling in object technology, I could afford to be some kind of a “software hippie”. I’m sure you know the kind. They pop up every now and then, even in respected software companies (I didn’t name one, did I?). They radiated the unrelenting optimistic attitude that melted the software crisis, budget restrictions and management dedicated to...

Continue reading


Copyright © 2019, reflektis & Rob Vens