This is a presentation that I gave on how to design the JEE applications structure. This is a topic that is often overlooked and misused.
The lecture discussed JEE modules and JEE class loaders briefly.
We then discuss how to structure a JEE application consisting of Web modules EJB modules utility Java projects and 3rd party jars.
Where should we put the 3rd party jars ?
How should we package the Java Modules ?
Module visibility between the modules.
The last topic in the talk is about managing the module dependencies in JEE applications.
Often dependencies are not designed well or designed based on organizational structure constraints rather then architectural constraints.
We discuss the various options we have to deal with dependencies and some tips on how to design dependencies well.
Here is the link to my presentation in slide share: