This paper argues for a model-driven framework for integrating human interface engineering with software engineering. The usage-centered design process, a robust and proven process grounded in software engineering, is briefly described and contrasted with traditional user-centered approaches. The connections between the core models of usage-centered design and their software engineering counter...