--- In [email protected], "Steve Jones" 
<[EMAIL PROTECTED]> wrote:
> 
> The problem with using "live" data, by which I mean data which is
> currently in an intermediate state under the management of a service
> (or a process within a service), is that the raw data represents 
> only 50% of the story the other 50% is in the code that processes 
> the data and which knows that if the field that says "customerType" 
> is currently set to "Narnia" while the "notificationReceived" field 
> is set to "true" but the "verified" is false then it means that the
> customer has been sent a notification but is sitting on it.  This
> might make perfect sense in the context of the code but makes no 
> sense whatsoever to anyone external to that code.  The point is 
> that the data at this stage has a very high cohesion with the
> service/process/application that is processing it.  Exposing this
> information via a data service for all to access is very dangerous 
> as it means either also exposing the processing logic or letting 
> people make assumptions like "hell we've got a lot of new customers 
> in Narnia".
> 
> That is a real example, the reason for Narnia was that it was added 
> as a holding country with only verified customers having the 
> country set, and only verified customers should have been exposed 
> to the world.
> 
> Now if _within_ a service you want to use a DAL to help you access
> your inflight data then that is fine but the DAL shouldn't be 
> exposed wider.

+1

-Rob

Reply via email to