note 5: software posture -...

22
Computer Science and Software Engineering University of Wisconsin - Platteville Note 5: Software Posture Yan Shi Lecture Notes for SE 3330 UW-Platteville Based on About Face 3: Chapter 9

Upload: lediep

Post on 02-May-2018

223 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Computer Science and Software Engineering

University of Wisconsin - Platteville

Note 5: Software

Posture

Yan ShiLecture Notes for SE 3330

UW-Platteville

Based on About Face 3: Chapter 9

Page 2: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Posture

A product’s behavioral stance.

The way a product presents itself to users.

The look and behavior of a product should

— reflect how it is used

— result from a specific, goal-directed reason

Page 3: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

What are the predominant features of these applications’ behavior stances?

What are the differences?

Page 4: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Posture

Monopolize users’ attention for long periods of time.

— Offer a large set of related functions

— Occupying the full screen

— Run continuously

Example: Word, PowerPoint, Visual Studio

Page 5: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications: Users

Optimize sovereign interfaces for intermediate users.

Learning time is relatively short compared to eventual using time

Don’t sacrifice speed and power for ease of learning!

Occasional Users cannot be ignored.

Page 6: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications: Screen Size

Be generous with screen real estate.

Optimize sovereign applications for full-screen use.— Default to maximized presentation

— Need to be fully resizable

— Toolbars and their controls can be smaller than normal.

— Screen-splitters, rulers and scrollbars can be smaller and more closely spaced.

— Do not assume high resolutions

— Multiple toolbars/ribbons are fine

Page 7: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications: Color

Sovereign interfaces use a conservative visual style.

Users will stare at it for a long time, so

— Keep the colors few and conservative.

Page 8: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications: Input

Sovereign applications should use rich inputs.

Direct manipulation, dialogs, shortcuts

Assume fine controls:

— users can be precise

Put most frequently used items in the center.

Use “dusty corners” for less-frequently used or dislocating items

Page 9: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications: Feedback

Sovereign applications should use rich visual modeless feedback.

Status bar, title bar, status of data, etc.

First time users won’t even notice them. But later they will be curious.

Be careful: do not create a hopelessly cluttered interface.

Page 10: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Sovereign Applications:

Document-Centric

Maximize document views within sovereign applications.

Texts, Slides, Spreadsheets, Code

How about scanner?

https://windowsreport.com/windows-10-scanner-software/

Page 11: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Transient Posture

A product with a transient posture comes and goes:— Present a single function

— With limited controls

— Often to support some sovereign applications

Usage model:— Invoked when needed

— Performs its job

— Then quickly leaves

Example: calculator, math input panel, snipping tool

Page 12: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Transient Applications Should Be

Simple!

Clear!

To the point!

Page 13: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Keep it Simple

Transient applications should be limited to a single window and view.

No tiny scrollbars and fussy mouse interactions.

All important functions should be visible on the interface.

Keyboard shortcuts are necessary, but should be simple.

A title bar for dragging: movable

Page 14: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Bright and Clear

Colorful and Larger control

— Bolder graphics help users to orient themselves more quickly.

— Less likely to bother users because of the short appearance.

Built-in instructions

— A button “Set up Margins” is better than “Setup”.

— Never use abbreviations.

Page 15: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Remember user choices

A transient application should launch to its previous position and configuration.

Previous configuration is almost always more apt than any default setting.

Page 16: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Daemonic Posture

Programs that do not normally interact with users.

— Serve quietly and invisibly in the background

— Perform possibly vital tasks

— Without the need of human intervention

— Usually manage processes.

Example: printer driver, network connection.

Page 17: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Interaction with Daemonic Applications

They must be adjusted occasionally.

The interaction is transient in nature.

Windows: represent daemons with onscreen application icon in the system tray.

— Only for daemons with continuous, useful status information!

Mac OS and Windows: control panels

— Efficient approach to configure daemons.

Page 18: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Different Postures

Same applications may have different postures, depending on users’ goal

Example: calculator, PDF viewer

First Step of Design: What posture is appropriate?

Page 19: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Web Postures

Information oriented sites: wiki— must balance information density and ease of use for infrequent

users— cannot assume screen resolution or size (browser size changes)— between sovereign and transient (depend on primary persona)

Transactional sites: amazon — online stores and financial services websites.— heavy informational aspect plus functionalities

shopping cart, check out, user profile, …

— requires navigational clarity— Between sovereign and transient

Web Applications: Jira— similar as desktop applications

What is Google’s posture?

Page 20: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Mobile Device Postures

Smart Phone— One hand manipulation— Most apps have a transient posture

Tablet— Two hands manipulation— Occupy full screen— Can be transient or sovereign

In general— more sparse and simplified in execution compared to

desktop apps (finger instead of mouse)— Use gestures more— Integrate UI design with hardware design more tightly

Page 21: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Other Postures

Big Display Posture— Mostly satellite posture— Need a “current-focus” item

Automotive Interface Posture— Between transient and daemonic

Smart Appliance Posture— Transient: simple and straightforward

Kiosk Posture— Optimized for first time users— Can be transactional, educational or entertainment

Page 22: Note 5: Software Posture - people.uwplatt.edupeople.uwplatt.edu/.../notes/Note5-SoftwarePosture.pdf · Note 5: Software Posture Yan Shi ... —Integrate UI design with hardware design

Summary

Software posture:

— sovereign: run for long periods

— transient: pop-ups

— daemonic: background

Web posture

Mobile apps’ posture