user interface patterns and its applications

31
101 User Interface Patterns and its applications Tonya Groover Department of Computer Science

Upload: norah

Post on 05-Feb-2016

31 views

Category:

Documents


0 download

DESCRIPTION

101. User Interface Patterns and its applications. Tonya Groover Department of Computer Science. Format of Seminar. what is a pattern? historical context good UI patterns elements of a UI pattern pattern languages applications. Designing User Interfaces (UI). Should I use icons? - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: User Interface Patterns and its applications

101User Interface Patternsand its applications

Tonya GrooverDepartment of Computer Science

Page 2: User Interface Patterns and its applications

Format of Seminar

» what is a pattern?

» historical context

» good UI patterns

» elements of a UI pattern

» pattern languages

» applications

Page 3: User Interface Patterns and its applications

Designing User Interfaces (UI)

» Should I use icons?» Where should the header data and detail be

positioned?» How do users search for objects or data?» How should new rows be inserted into a

table?» Which working areas make up a new view?

[Arend, 2004]

Page 4: User Interface Patterns and its applications

Patterns help to answer these [and other]

questions.

Page 5: User Interface Patterns and its applications

Patterns are reusable components.

design principles.

relationships

insight into design problems.

.

.

.

Page 6: User Interface Patterns and its applications

The most useful patterns are generative.

These patterns in our minds are, more or less, mental images of the patterns in the world: they are abstract representations of the very morphological rules which define the patterns in the world. However, in one respect they are very different. The patterns in the world merely exist. But the same patterns in our minds are

dynamic.

They have force. They are generative. They tell us what to do;

they tell us how we shall, or may, generate them; and they tell us too, that

under certain circumstances, we must create them. Each pattern is a rule which describes what you have to do to generate the entity which it defines. (pp. 181-182)

[Alexander, 1979]

Page 7: User Interface Patterns and its applications

Historical Context

» Christopher Alexander

» Emerged in SE mid-late 1990’s

» Gang of Four (GoF)QuickTime™ and a

decompressorare needed to see this picture.

Page 8: User Interface Patterns and its applications

Why Patterns?

» Solve "real world" problems» Capture domain expertise» Document design decisions and rationale» Reuse wisdom and experience of master

practitioners» Convey expert insight to novices» Form a shared vocabulary for problem-

solving discussion» Show more than just the solution

http://www.cmcrossroads.com/bradapp/docs/patterns-nutshell.html

Page 9: User Interface Patterns and its applications

Good Patterns

» Solve a problem

» Is a proven concept

» The solution isn’t obvious

» Describes a relationship

» Significant human component

[ http://hillside.net/patterns/definition.html]

Page 10: User Interface Patterns and its applications

Defining A Pattern

» Name» Problem» Context» Forces» Solution

» Examples» Resulting Context» Rationale» Related Patterns» Known Uses

http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html

Page 11: User Interface Patterns and its applications

A Pattern Language …

defines a collection of patterns and the rules to combine them into an architectural style. Pattern languages describe software frameworks or families of related systems.

[ http://hillside.net/patterns/definition.html]

“It not only tells us the rules of arrangement, but shows us how to construct arrangements -- as many as we want -- which satisfy the rules." (p. 186)

[Alexander, 1979]

Page 12: User Interface Patterns and its applications

Application of Patterns

Business Application

[Arend, 2004]

Page 13: User Interface Patterns and its applications

SAP Design Guild

» Users working practices is the starting point. » Usability» Designers configure the interface using

predefined components.» Use one component for a large number of

applications.» “A user interface pattern fulfills one or more

generic tasks, such as searching for and selecting a business object.”

Page 14: User Interface Patterns and its applications

Pattern Approach

QuickTime™ and a decompressor

are needed to see this picture.

Page 15: User Interface Patterns and its applications

This approach only works if there are a small

number of “generic” tasks, which can describe very

different business activities.

Page 16: User Interface Patterns and its applications

Design MethodQuickTime™ and a

decompressorare needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

Page 17: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

Page 18: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

Page 19: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

Page 20: User Interface Patterns and its applications

Results

» powerful and general components.

» generic functions.

» simple.

» easy.

Page 21: User Interface Patterns and its applications

Advantages of UI Patterns

» Highly consistent user interfaces

» Usability can be optimized

» High production gains

Page 22: User Interface Patterns and its applications

Application of Patterns

Web Interfaces

http://www.welie.com/patterns/

Page 23: User Interface Patterns and its applications

User Needs

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

Page 24: User Interface Patterns and its applications

Application Needs

QuickTime™ and a decompressor

are needed to see this picture.QuickTime™ and a

decompressorare needed to see this picture.

Page 25: User Interface Patterns and its applications

Context of the Design

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.QuickTime™ and a decompressor

are needed to see this picture.

Page 26: User Interface Patterns and its applications

Finally …

there are pattern library resources.

Page 27: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

http://developer.yahoo.com/ypatterns/

Page 28: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

Microsoft's recommendations for how to design, develop, deploy, and operate architecturally sound applications for the Microsoft application platform.

http://msdn2.microsoft.com/en-us/practices/default.aspx

Page 29: User Interface Patterns and its applications

QuickTime™ and a decompressor

are needed to see this picture.

http://norvig.com/design-patterns/ppframe.htm

Page 30: User Interface Patterns and its applications

Thank you, for your attention!

Page 31: User Interface Patterns and its applications

References» Von Udo Arend (2004). User Interface Patterns

http://www.sapdesignguild.org/editions/edition8/print_patterns.asp

» Brad Appleton (2000). Patterns and Software: Essential Concepts and Terminology http://www.cmcrossroads.com/bradapp/docs/patterns-intro.html

» Brad Appleton. Patterns in a Nutshell http://www.cmcrossroads.com/bradapp/docs/patterns-nutshell.html

» James O. Coplien (2007). Software Patterns http://hillside.net/patterns/definition.html

» Bill Venners (2005). How to Use Design Patterns: A conversation with Erich Gamma. http://www.artima.com/lejava/articles/gammadp.html

» Christopher Alexander (1979). The Timeless Way of Binding