Designing before the data model is known
Screens get signed off that assume relationships, roles or states the system does not have. The redesign then happens in code, at the most expensive moment.
What it costs
Weeks of rework at the end of the build, and a product that ships with the compromise instead of the design.
How we decide
We put the data model and the permission rules on the table in the first design week, and we design the states, not just the happy path.