Colin, > I presume you mean n-tier where n >= 3 Yes this is true. > "logical functional units" is a very overloaded term. No two people seem to use it the same way. What do you mean by that? By "logical functional units" I refer to debtors, creditors, stock, general ledger, system, etc. > Will you really have only one UI to allow the user to interface with the enterprise application No this will be accessible from a variety of platforms > Don't force them into starting one UI for half their task and then switch to another UI in order for them to complete it No intention of it. As you can probably see from the above points you have raised my thoughts aren't altogether clear on the topic, so I think it best to elaborate on some of the finer points of the "current design". · Main application (EXE). Minimal code and almost a "stub" making reference to various UI assemblies. · A common UI assembly to be used as a control library as well as base forms · A common interface assembly handling some of the typical/common CRUD operations · A common BO assembly for common validation code, error checking, "business base" objects, etc. · A dedicated DAL assembly which all DC assemblies can hook to. The chosen DAL model I have used previously on a smaller project with much success. This has plenty of support for ALL sql db operations. · A business rules assembly to be used for custom attributes. Again have used something very similar before with much success. · Debtors - DC, I, BO, UI · Creditors - DC, I, BO, UI · Stock - etc, etc. I hope this paints a clearer picture for you and I do appreciate your input. Thanks
Edward Steward edwardsteward@optusnet.com.au