[EMAIL PROTECTED] wrote:
> I recommend the book Working Effectively with Legacy Code, by Michael
> Feathers.  And the book Refactoring, by Martin Fowler.  These two will
> sharpen your tools for working on this system.  They'll also help you
> concentrate on what you need to clean up for the work you're doing, and
> leave aside cleaning up other parts until it's necessary.
>   
My question is really targeted at the politics, ethics, and finances of
the switch: being a refactor-early, refactor-often kind of guy I'm
already quite adept at the mechanics.

The problem is that there are probably 50 apps with essentially
identical (but not exactly; base code was copied into an app then
modified to handle specifics rather than using a sub-class, interface,
or other reasonable mechanisms. We're talking hundreds of thousands of
lines.

"You are in a maze of twisty passages..."
> Ward Cunningham calls this situation "Design Debt."  By not keeping the
> code clean as you go along, you build up a balance of design debt.
>   
Ah, good phrase: I like that.

We have entered design bankruptcy.
> Personally, I think it's irresponsible to hand the client a system
> that's wallowing in design debt.
YES!

Thank you!!!

May I quote you, anonymously if you prefer?
> Who bears that cost depends on how it's presented to the client.  If the
> estimator didn't take this situation into account when they negotiated
> the job with the client, it can be very difficult to convince them
> later.  And since they've probably already dealt with a development team
> that delivered less than was purchased (i.e. the messy system), they'll
> already be predisposed to distrusting development teams.  Gaining that
> trust is the key, but it's not easy.
>   
Yeah... plus my estimates for fixing the broken system aren't exactly low.

*sigh*

Dave



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to