An ITP is a bug against the wnpp package that is filed to indicate that someone is working on creating a package of a particular bit of software.
They are not compulsory, but it is a good idea to file them to prevent duplication of work, and check them before you start work on a package. Many ?Sponsors will ask for ITPs to be filed for your new packages.
You should file an ITP for each source package, not binary package, and there is no need to do it if you have clear ownership of the package in question, for instance splitting out non-free docs from a package and putting them in ?non-free.
ITPs should be copied to ?debian-devel using the
header, which ?reportbug will do automatically for you. This
allows other people to see what is being packaged and raise any
concerns, or provide useful information.
ITPs can also be created from an ?RFP by retitling the bug to begin with ITP: and setting yourself as the owner.
See http://www.us.debian.org/devel/wnpp/being_packaged for the list of packages currently being created, and http://www.us.debian.org/devel/wnpp/ for more information on handling these bugs.