A pattern-based approach to user interface development is presented that is explicitly based on artifacts contained in a task and a domain models. Exploiting a task model or a domain model in isolation may lead to patterns that are not user-centered. By combining the exploitation of both models at the same time with priority lead to identifying interaction patterns in a systematic way. Types of relationships in these models help in structuring interaction patterns, that are in turn transformed into design patterns for information systems.