Work In Progress means there are indications in
the code that the programmer had intended (or
is intending) to perform some work, but that
this work has not been completed.

At the very least, a work in progress indicator
causes confusion for maintenance programmers,
wasting their time. At worst, it may
indicate missing functionality, which could later
lead to software failure.

There are three forms of Work In Progress that are easy to detect:

WIP-1: Vague "To Do" A programmer has left a note to himself or his colleague indicating that a piece of work needs to be done. However it is clear that the work has not been carried out, and there is no indication as to when the work needs to be done.

WIP-2: Disabled Code Code has been written and the programmer has disabled it, or switched it off, without making it clear why it has been disabled, or when or whether it will be reenabled.

WIP-3: Empty Statement Block The programmer has left a statement block or placeholder empty. When a programmer designs a program top-down he will often first outline the structure of the program in the form of statement blocks and fill in the content of each block in the course of his work. An empty statement block therefore indicates that there may be missing logic and that some extra code may be required.