Why is Delivering Software Hard?