4 Layer Model Question

4 Layer Model Question

We are in the process of breaking up a large module to better match the 4 layer model. One question, for those that have more experience with this, breaking items into modules is obvious within the model however what drives breaking items into different applications? Lets say we have two end role types of items that would definitely be considered for different applications. However, they have shared web blocks and actions in between them. Would you make the level 3-4 for each of these modules within separate applications and then have a 3rd application for the shared modules in between them? Or go with 1 application where the levels 2, 3 and 4 for each are modules within that one application?

In my experience, I would keep the levels 2-4 in the application that is more specific to the action/web block, as long as this doesn't cause any circular references. I've also seen where there is a separate 'shared' for elements shared between applications, and a separate espace (2-3) with the logic/entities/web block only used by that application.

I think it really depends on if you see certain things being referenced elsewhere in the future or if they will only always be used in that application.