Tunnelling through application mountains is a noodlet on the fact that software is in fact a mutant strain of hardware - sort of.
No matter how flexible an application' model of the universe is, business needs will find a need to break it - to need something that cannot be done. Users will respond to such limitations in software systems by creating semantic "tunnels" to get around limitations in the model.
The result is a system in which less of the logic is computerised than perhaps you initially thought would be computerised. Lots of interesting stuff becomes tacit knowledge in the brains of users. The truly flexible "soft" stuff is people - not software.
 Excluding Emacs of course :-)