Both component and application steps often override or a failure / process error causes them not to return.
Once discovered, the only method is to cancel the process. A timeout would ensure a failure is captured and appropriate rollback or likewise process can be put in place to handle it.