It analyzes users in terms of the roles they play in relation to systems and employs abstract (essential) use cases[1] for task analysis.
It derives visual and interaction design from abstract prototypes based on the understanding of user roles and task cases.
Usage-centered design was introduced by Larry Constantine and Lucy Lockwood.
The techniques have been applied with particular success in complex software projects, some of which have been reported in case studies.
Constantine (2006) presents an integrated framework where the models of Usage-centered design are enriched with concepts from the Activity theory.