Comment Craftsmanship & Maintaining Legacy Code (Score 1) 312
As others have pointed out, your question's premise is inherently flawed because you are begging the question. Any proposed answer could be considered a self-fulfilling prophecy. Here's a more logical way to think about how to get to a cost-effective test suite.
Creating an automated test suite after-the-fact is difficult for a number of reasons, primarily because a well tuned and effective test suite requires constant feedback to determine what works and what doesn't. You can't get that unless you have adopted a "pay as you go" model where your test feedback influences your codebase and vice versa.
By Michael Feathers' definition, a legacy codebase is one without a test suite. I highly recommend you take a look at his book on the topic. http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052/
If you're interested in the most effective way to maintain your legacy code base, you'll build in the appropriate level of testing (including supporting code, infrastructure, etc.) and force yourself to refactor the parts of it that need to be refactored to support testablity. It will drive out the tests for you that do provide value, and steer you away from lines of thought that do not help you catch regressions or drive refactoring. It gets you to "pay as you go." Not only will this provide you the best argument for management to give you time to write tests, it is the most professionally responsible one as well.
Speaking of professionalism, have a look at Bob Martin's arguments for software craftsmanship and the ethical responsibility software developers have to produce quality work. This might help form your opinion on when and why software quality is important to professional responsibility. There are more to ethics than just the bottom line.