1.When we start the automation even before the application comes for automation and only some document related to the application available.
2.when object repository size exceeds its maximum size .
3.when there are dynamic objects in the application.
4.execution is faster with descriptive programming .
5.when object repository is read only and we can't add any more objects..
We can write the desc pgmg script on a particular object without adding it to the object repository file by giving the physical description of the object directly in place of the logical name.