The project is outsourced offshore and found to be of poor quality or not delivered on time.
The software development company or developer you work with has gone out of business mid-way through a project.
You want to make changes to the project but do not have access to the source code.
Disputes with a current software developer have led to an impasse that cannot be resolved, freezing the project.
Unacceptable project slippage.