Since the publication of Gamma et als’ “Design Patterns” I have been convinced that the patterns approach is not only applicable to user interface design, but should form the basis of the next advance in industrial practice. My own views are:
a) User interface patterns will be most effective for the ‘structural’ aspects of a design, rather than ‘look and feel’. Ie they can capture best practice for display organisation, distribution of objects across windows, navigation etc. (cf Jenny Tidwell’s Common Ground)
b) User interface ‘problems’ can, I suggest, be stated in two parts: patterns in the data (both static relationships a la entity relationship models and dynamic properties), and patterns in the tasks (eg construction tasks vs monitoring tasks).
c) The ‘solution’ to a given problem will rarely be a complete design but is more likely to be a ‘solution space’ with accompanying options and guidelines.
d) To be effective in industry, pattern solutions will need to come with costs (both human and system) and benefits. I’d like to see every pattern state heuristics for (approximate) costs: time / space trade offs, learning time / time on task, implementation costs.
e) I doubt that design patterns are appropriate for teaching novice designers (eg 1st year undergraduates). I think we still need to start with the basics (users and tasks) to provide the foundations for understanding the patterns at all.