Why Most Software Systems Become Hard to Maintain