aspose file tools*
The moose likes OO, Patterns, UML and Refactoring and the fly likes Reasons for refactoring ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Reasons for refactoring ?" Watch "Reasons for refactoring ?" New topic
Author

Reasons for refactoring ?

Ram Gokul
Ranch Hand

Joined: Oct 07, 2005
Posts: 85
As a developer , what are main reasons for refactoring ? Have you encountered such situations wherein management has asked for justification.
( we have a tough budget process and hence the question...)

Does the refactoring help in improved performance and hence improved customer satisfaction. We have several tables with huge data . Is there a design pattern that would help us with maintaing this / improve query performance.

Thanks
Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8919

http://www.refactoring.com/


Groovy
Scott Ambler
author
Ranch Hand

Joined: Dec 12, 2003
Posts: 608
From a database refactoring point of view, you might find Why Database Refactoring? to be of interest.

- Scott


<a href="http://www-306.ibm.com/software/rational/bios/ambler.html" target="_blank" rel="nofollow">Scott W. Ambler</a><br />Practice Leader Agile Development, IBM Rational<br /> <br />Now available: <a href="http://www.ambysoft.com/books/refactoringDatabases.html" target="_blank" rel="nofollow">Refactoring Databases: Evolutionary Database Design</a>
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
Originally posted by Ram Gokul:
As a developer , what are main reasons for refactoring ? Have you encountered such situations wherein management has asked for justification.
( we have a tough budget process and hence the question...)


One of the most important reasons for refactoring is that design degenerates over time. Even if you have a perfect design today, with tomorows new requirements it won't be perfect any more.

So, the longer a project takes, the more inapropriate the design becomes, if you don't do something against it. New features will take longer and longer, the risk of introducing bugs increases etc. Finally, the project becomes unmaintainable.

Refactoring is one of the most effective techniques to work against a decaying design, and thereby to extend the lifetime of a project and save the investment of the company and its customers.

"Design Debt" is a powerful metaphor that also non-technical people should have no problem to connect to: http://www.jamesshore.com/Articles/Business/Software%20Profitability%20Newsletter/Design%20Debt.html


The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Mushkan Desai
Greenhorn

Joined: Mar 03, 2006
Posts: 9
Can anyone explain me what is refactoring? I do work with databases and know abt normalization but wht actually refactoring mean?

Thanks for taking time
Lasse Koskela
author
Sheriff

Joined: Jan 23, 2002
Posts: 11962
    
    5
Originally posted by Mushkan Desai:
Can anyone explain me what is refactoring? I do work with databases and know abt normalization but wht actually refactoring mean?

Thanks for taking time

Did you already read the link Scott posted earlier in this thread? After reading the article, what aspects of it remain unclear?


Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
Adeel Ansari
Ranch Hand

Joined: Aug 15, 2004
Posts: 2874
Originally posted by Mushkan Desai:
Can anyone explain me what is refactoring? I do work with databases and know abt normalization but wht actually refactoring mean?


Its about refactoring or database refactoring? If you dont know about the term refactoring. You had better read about refactoring and grab the general concept then come to DB refactoring.
[ July 25, 2006: Message edited by: Adeel Ansari ]
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Reasons for refactoring ?