While it is true, that the standard enterprise architecture is pretty close to the three-layer model, truth to be said, it actually means harder maintenance.
If you grab an SVN/CVS/git/... log of an enterprise application with considerable history, you'll find out, that the rate of change is as follows:
- views change all the time
- models change about as much (or half the rate) as views
- BL rarely changes
That's because corporate processes (formalized or informalized) are dependent on corporate culture, which changes on a much slower rate than data fields.
When 3-layer was popularized, it was said that BL changes most of the time, but I couldn't find support for this in SVN logs of the systems I analyzed this way, it was rather mostly UI change, and model change.
Also, UI changes can also be explained simply that this is where requests are made: it is the user interface,this is what users see, this is where they ask for changes - "can I have another field?" "could I have a new button here?" This is what their vocabulary is based on.
And of course, most of these will affect the underlying persistent model, as it's really rare that a business functionality change doesn't involve database change.
And, to top all of this, usually medium-sized changes echo through all the system, involving all three layers,meaning you edit three files: the UI, the model, and the business logic files of the same module...
It can be that right underneath this post, a swarm of comments will follow with developers who claim that I'm mistaken. Please, in order to have open data (I'm not part of any of these projects now sadly), grab your logfiles, and give us a list of changes:
- how many times did the template / view files change? (% of all, or % of all three)
- how many times did the domain logic (either in controller, or business operation layer) change? (again, % of all or all three)
- how many times did the data model change? (XMLs or model files, dependent on architecture) (again, % of...)
- how old is your 3-layered system in years?