In computer programming, code smell is any symptom in the source code of a computer program that indicates something may be wrong. It generally indicates that the code should be refactored or the overall design should be reexamined. The term appears to have been ... after it was featured in Refactoring. Improving the Design of Existing Code. what code smells there are and how to correct them?