Set the RIM free!

Mar 11, 2014

Last week I met some enterprise architects who are doing a major project around enterprise modeling in a healthcare project. Without ever having learnt anything about the RIM, they had reproduced the Entity -> Role -> Participation -> Act -> Act Relationship cascade, though their pattern was not so solid, and they had slightly different names for these things. But the really interesting bit was what they had along side this pattern: work flows, conditions, privileges, policies, and organizational goals. Their perspective on the problem was far wider than the RIM, because they are not focused on the informational content of a healthcare exchange, but on understanding the enterprise, the whole business of developing healthcare, and the patterns that they had that overlapped the RIM were just a part of their overall ontology.

For a long time, I’ve believed that the RIM is really misapplied - that the core strengths of the RIM are as a grammar, an ontology pattern for making structured sense out of the healthcare world. Limiting it’s scope to information exchange - what we tried to use it for - meant that there were certain things it could not address properly. For a start, it was compromised by certain patterns around exchange that aren’t sensible ways to handle processes (like trying to describe a building as a set of conversations between architect and builder…). Making it a class model, rather than a more pure ontology - that limits what it can be too - it forces all the patterns to be pre-coordinated into a single structure. Something can be only one thing in that pattern. But there are other patterns to pick from, other patterns to add to the picture. Some of the underlying ontology arguments around the RIM are driven by this limitation - it isn’t a good ontology  for everything because it wasn’t trying to be, it was only trying to cover what you might exchange about everything.

Still, seeing that approach used in a wider concept was quite a revelation for me - there’s a lot of possibilities for something like the RIM once you free it from it’s constraints. We don’t need it to be a class model. We don’t need it to only cover information exchange. So let’s change that - let’s open it up and have the o-RIM - the Ontological RIM, and let it aspire to be the underlying model of the healthcare enterprise, and see how that goes.

Where the RIM is really succeeding (and I don’t count CDA - that succeeds in spite of being hooked up to the RIM) is in application architecture usage - and I can only think that these would be empowered by having a wider focus.

Se let’s free the RIM