Jeroen van den Bos started a very interesting series of articles about software maintenance and software maintainability, what it does with your architecture, how to evolve implemented systems to contain new functionality etc. etc. Below the links to the articles which are currently online, more will follow soon. Highly recommended.
Disclaimer: I'm offered a free license for NDepend 2.0