[ACCEPTED]-What is meant by open and closed layered architectures?-modeling

Accepted answer
Score: 12

A closed layered architecture means that 7 any given layer (or tier) can only use the 6 services of the next immediate layer, whereas 5 in an open layer architecture a given layer 4 can make use of any of the layers (or tiers) below 3 it. Closed layer architecture promotes 2 independence between layers by reducing 1 dependencies.


Score: 1

Here's one of the earliest definitions of 15 open and closed architectures from Bob Martin:


Open 14 architectures, by definition, are changing. They're 13 hard to maintain because it's difficult 12 to see into the future when designing the 11 API and anticipate every possible need. But 10 if the API remains constant, and you've 9 designed effective mechanisms for modifying 8 by addition rather than rewriting (e.g. declarative 7 configuration, data-driven applicatons), open 6 architectures can be very effective.

There's 5 nothing wrong with a closed architecture 4 for those problems that are well known and 3 relatively static. Open isn't always necessary. The 2 choice has to do with the nature and rate 1 of change.

More Related questions