O'Reilly logo
  • Francesco DeSensi thinks this is interesting:

In fact, if I really do have a layered system, then I shouldn’t have to change anything other than my build script to break the layers into separate JAR files. If I do have to change more than a build script, then I didn’t have a layered system to begin with, and I should perform some architectural refactoring to clean things up.

From

Cover of Java Application Architecture: Modularity Patterns with Examples Using OSGi

Note

How to know if you have a layered system.