A frequent question is why we as developers prefer to make quality code and why we hate to hack together a system in order to meet a business objective, typically a unreasonable deadline or an unreasonable amount of time allocated to a project.
The answers is pretty simple, us developers spend apr. 3/4 of our working life maintaining systems – not defining them.
This is the reason why quality in application design becomes desirable at the cost of immediate productivity.
I will address this issue in a series of blogposts where I try to define what I consider to be the constitution of a well implemented system design and what defines an easily mantainable system…