Unless you are careful, a software application quickly becomes difficult to change. We all have had the experience of inheriting an application that someone else has written and being asked to modify it. Think of the fear that strikes your heart just before you make your first change.

In the game of Pick-Up Sticks, you must remove stick after stick from a pile of sticks without disturbing the other sticks. The slightest mistake and the whole pile of sticks might scatter.

Modifying an existing software application is similar to the game of Pick-Up Sticks. You bump the wrong piece of code and you introduce a bug.

Bad software is software that is difficult to change. Robert and Micah Martin describe the markers of bad software as code smells. The following code smells indicate that software is badly written:

• Rigidity—Rigid software is software that requires a cascade of changes when you make a change in one place.

• Fragility—Fragile software is software that breaks in multiple places when you make a change.

• Needless complexity—Needlessly complex software is software that is overdesigned to handle any possible change.

• Needless repetition—Needlessly repetitious software contains duplicate code.

• Opacity—Opaque software is difficult to understand.

Notice that these code smells are all related to change. Each of these code smells is a barrier to change.

Source of Information : Sams ASP .NET MVC Framework Unleashed


Subscribe to Developer Techno ?
Enter your email address:

Delivered by FeedBurner