I’ve done partitioned programming (using various layers for different kinds of functionality) for ages. The first time I can remember of official terms for it, I already used patterns like that for a couple of years. Back then the parts were from Object-Oriented Design: Peter Coad, Edward ...
More...