When someone is using your product, and the product fails to deliver an expected outcome—cancelled flights, late delivery of a package or a restaurant cancelling your order—then that's an issue can turn that user’s life upside down.
When something like that happens, the user will want to know about it (and want to know what to do about it) fast.
It's also incumbent upon you, the UX writer delivering this bad news, to soften the blow a bit while still conveying a clear message. There's very little tolerance for ambiguity here.
The problem? More often than not, the features in an app that let you take care of something like this are limited at best and downright useless at worst.
Here's a few hypothetical ways to approach a scenario where a user expects an outcome of "having a reservation on a flight" but in reality, the flight has been cancelled:
An ideal message where the app does everything:
A probable message where the app doesn’t do much:
A likely message where the app doesn’t do a damn thing:
As you’re writing this solution, try and think of different ways you can mitigate the user’s (understandable) disappointment and maintain goodwill between the user and the product.
Now, you give it a try.