I\'m trying to refactor a big tightly coupled application and trying to make it more maintainable and flexible.
I\'ve got many unit tests, so I\'m hoping to refactor ste
This is a big question, and one could write an entire book in answer to it. Fortunately, someone already has. Grab yourself a copy of Working Effectively with Legacy Code by Michael Feathers. It's pretty much an entire book devoted to answering your question.
It's a really good book, too. I'd definitely put it up there with Code Complete, Design Patterns, and Pragmatic Programmer on a list of books that should be in every developer's library.