Object Oriented Software Engineering   View all facts   Glossary   Help
subject > pattern > architectural pattern > multi-layer
Next architectural patternpipe and filter    Uparchitectural pattern    Previous architectural patternbroker   

multi-layer
subjectfact 
multi-layerallows replacement of a layer by an improved version, or by one with a different set of capabilities2001-08-30 14:56:38.0
anticipates obsolescence: databases and UI systems tend to change; by isolating these in separate layers, the system becomes more resistant to obsolescence2001-08-30 14:56:38.0
can be used to produce a complex system can be built by superposing layers at increasing levels of abstraction2001-08-30 14:56:38.0
has definition An architectural pattern in which a system is divided into layers2001-08-30 14:56:38.0
facilitates designing for portability because all the facilities that are dependent on a particular platform can be isolated in one of the lower layers2001-08-30 14:56:38.0
facilitates designing for testability because individual layers, particularly the UI layer, database layer and communications layer, can be tested independently2001-08-30 14:56:38.0
facilitates divide and conquer since the separate layers can be independently designed2001-08-30 14:56:38.0
increases abstraction because when you design the higher layers, you do not need to know the details of how the lower layers are implemented2001-08-30 14:56:38.0
increases cohesion by facilitating independent designing of layers2001-08-30 14:56:38.0
increases reusability because the lower layers can often be designed generically so that they can be used to provide the same services for different systems2001-08-30 14:56:38.0
is a subtopic of 9.5 - Architectural Patterns2001-08-30 14:56:38.0
is used to build a multi-layer system2001-08-30 14:56:38.0
is a kind of architectural pattern2001-08-30 14:56:38.0
reduces coupling since well-designed lower layers do not know about the higher layers2001-08-30 14:56:38.0
patternshould be as general as possible2001-08-30 14:56:56.0
should be described in an easy-to-understand form so that people can determine when and how to use it2001-08-30 14:56:56.0
should contain a solution that has been proven to effectively solve the problem in the indicated context2001-08-30 14:56:56.0

Next architectural patternpipe and filter    Uparchitectural pattern    Previous architectural patternbroker