Here's one of the earliest definitions of open and closed architectures from Bob Martin:
http://www.objectmentor.com/resources/articles/ocp.pdf
Open architectures, by definition, are changing. They're hard to maintain because it's difficult to see into the future when designing the API and anticipate every possible need. But if the API remains constant, and you've designed effective mechanisms for modifying by addition rather than rewriting (e.g. declarative configuration, data-driven applicatons), open architectures can be very effective.
There's nothing wrong with a closed architecture for those problems that are well known and relatively static. Open isn't always necessary. The choice has to do with the nature and rate of change.