Saturday, May 01, 2010

CQRS and User Interface Design

I am beginning to have a shift in thinking about user interface design as I study the CQRS architectural pattern. The pattern really forces you to think about design UI’s around tasks.

You have to ask yourself, “Why would a user want to change the state of the system?”

Why would the user want to change the address of a customer?  Was it a mistake?  Did they move?  These might be important to know.  If they made a mistake and they have pending orders about to ship it might imply very different business rules.

It also forces you to think about the experience from the user’s perspective.

Udi Dahan said it perfectly during one of his talks: "User Interface design is as much a part of architecture as anything else that you do"