An esteemed associate of mine asked me recently if I believe that a conceptual information model, created and delivered independently from a process model, can be considered useful when attempting to improve a business.  In other words, if you have an conceptual information model, can you use it directly, or do you need to produce a process model as well?

The answer, as is typical of EA answers, is buried in the question.  If the goal is to improve a business measurable (like customer satisfaction, or average dollars per order, or customer acquisition cost), then the information model is not useful by itself.  A process model that illustrates how the information is generated and managed must also exist.

So we will often need to develop both a conceptual model of a business and a process model for the business… but which comes first?  Must they be done in parallel?  Or should an architect create one before the other?

Personally, I know of cases where a process model existed long before a conceptual model did, and vice versa, so clearly the efforts are not contingent upon the other.  In fact, in the situation I am in right now, the business has defined a rich process model that has grown out of date.  I have separately developed a conceptual information model that includes concepts considered important by the stakeholders.

Now comes an interesting question: how do we take an updated conceptual information model and use it to improve an existing (but dated) process model?

I have my ideas, but I’m wondering if you, gentle reader, have specific ideas to share as well?  I’ll outline my thinking, but I invite a discussion: is there a better way?

Situation: a project team finds that they have a conceptual information model, and/or business vocabulary, that is not in sync with the processes that the business says they want to standardize upon.  How do we use one to improve the other?

Nick’s method:

  • Step 1: insure the conceptual model reflects the complete breadth of the process model.  This requires going through the process model and identifying all elements referenced, and insuring that they are correctly represented in the information model.  Capturing nouns, verbs, and relationships is key to this step, as are the negotiation skills needed to get everyone to agree on the resulting diagram.
     
  • Step 2: identify entities on the information model that are key entities.  Indicators of key entity:  (a) many different stakeholders define the entity as important to their work, (b) the entity is necessary to model the primary relationship between two other key entities, or (c) the entity is part of a key business measure.  An example of the third indicator: if the business scorecard includes a measure of “number of open incidents” then the term ‘incident’ is a key entity.
     
  • Step 3: establish dependency relationships for key entities.  It is common for one data entity to depend upon another.  The ‘order’ entity depends upon the ‘product’ entity, for example (in most businesses, it is difficult to order a product that the business does not have in their catalog). 
     
  • Step 4: define a loose process model that describes each of the lifecycle events of the key entities on a timeline: when is the entity data created?  When is it used?  When is it updated?  When is it archived? When is it deleted?  Drill down on the steps to identify where specific information must enter the process in order to manage the information.
     
  • Step 5: compare the newly generated “loose” process model to the out of date process model in existence.  Use the new one as a guide to making incremental changes to the existing process model. 

OK… that’s a swag.  Does anyone have a reference to a well documented and sound methodology for taking a conceptual information model and using it to improve an existing, and potentially out of date, process model?