Re: Data Layer architecture



Alfredo Novoa wrote:

> On Sun, 24 Jul 2005 11:53:09 +0200, "Wessel Troost"
> <nothing@xxxxxxxxxxxx> wrote:
> > On a next project, I used only two layers and dropped the message
> > queues. Development speed was amazing. We were responsive to the
> > customer's requests, and able to deliver on time.
> >
> > A good learning experience though.
>
> But it is a very expensive learning way. Everyone with a clue on data
> management theory knows that the business logic must be ensured by the
> DBMS and not by the applications (this is taught in the first week of
> any serious database course).

Hmm, then my serious db courses at the uni weren't very 'serious'
then!

NO law states that BL has to be IN the DBMS.

BL is a data-consuming tier, not part of the relational model. If you
pick up a book by Nijssen or Halpin, or Yourdon for that matter, you'll
learn that relational theory, e.g. the schema setup in your DBMS, is
not a theory which states anything about business rules. It only gives
context to the data its format it defines, no logic whatsoever.

> Applications must be the presentation layer of an Information System
> (something known since the 60's), and we should keep away from all the
> business objects trade media garbage.

One researcher once made a list of how many client-server
architectures there were, he came to 7 if I'm not mistaken. Your
proposed setup is one of them, but far from the only one.

What you suggest is typically a big-iron box in the basement, and thin
clients connecting to it, where all the software is written by DBA's.

I hope I don't have to drop the word 'scalability' on you.

FB

--
------------------------------------------------------------------------
Get LLBLGen Pro, productive O/R mapping for .NET: http://www.llblgen.com
My .NET blog: http://weblogs.asp.net/fbouma
Microsoft MVP (C#)
------------------------------------------------------------------------
.



Relevant Pages

  • Re: Classes concepts
    ... > from the database to the gui via DA and BL layers. ... > must go through actual large numbers of business logic validations. ... over 40% of all business objects are provided ... Your app is yours, and you've already ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Data Layer architecture
    ... >The design was all by the books (Microsoft's "Designing Component-Based ... >Applications" by Mary Kirtland.) ... The trade media publications lack almost any content quality control ... I used only two layers and dropped the message queues. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: DAL or BLL? How to implement objects
    ... In my opinion Business Entities should live only in the business layer. ... Pushing those entities between layers has some major disadvantages. ... Such as a ClassRoom object with GetStudents method. ... How would you implement this in a lazy load manner if you have no ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: [Info-Ingres] String Manipulations
    ... The database contain the business logic pertaining to the data (when ... I've even seen the same logic covered in both layers. ... should be using Jasmine. ...
    (comp.databases.ingres)
  • Re: N-Tier Application - Question about Static Methods
    ... these will give you excellent information on how to build business ... layers and data layers ... In the business and data access layers, should I use static methods? ... What I do, and I think that's what is described in those documents, is creating two assemblies: one assembly contains the class Customer with only properties. ...
    (microsoft.public.dotnet.languages.csharp)

Loading