SlideShare una empresa de Scribd logo
1 de 72
UsersandUsability Principles
UDSAUnit4
PartOne
UDSAUnit4
QUALITY ATTRIBUTE
• LEARN ABILITY: How easy is it for users to start using the system?
• EFFICIENCY: How quickly can they perform tasks?
• MEMORABILITY: How easily ca returning users re-establishproficiency?
• ERRORS: How many errors do users make, how severe are these errors and how
easilycan they recover from the errors? How much does the system help prevent
errors?
• SATISFACTION: How pleasant is it use the system?
What is Usability?
• If a website is difficult to use, people leave.
• If the users can’t tell what the site offers, they leave.
• If users get lost on a website, they leave.
• If a website’s informationis hard to read or doesn’t answer users questions, they
leave.
• Users wont read a website; they scan the site. When users encounter a difficulty, they
have.
Why Usability is Important
How to break down theessential characteristics of usable software from an analyticalviewpoint
Engineeringprinciplesfor designing and buildingsoftware interface that are
• Fast to learn
• Speedy to use
• Avoid user errors
• Increase retention
• Improve user’s subject satisfaction
How to recognize and articulate the difference between “this program sucks” and “I can improve this
program by changing X, Y and Z”
Life-long habits for engineering usable products. Usabilityis not just for software
What does this course cover?
 Understand the users
 Designfor the user
 Match the users mental model
 Follow the 7 2 rule
 Have a point, make your point
 Prevent errors
 Reduce excise tasks
 Nine golden rules of UI design
 Shneiderman’s five criteria: Learn, Speed, Errors, Skills, SS
Usability Principles of the Day
It is important to know who the user is
• Work experience
• Computer experience
• Age
• Education
• Readingskills
• Language skills
• Work environment
• Task frequency
• Many more possibilities
Understand the Users
“User profile”
• Engineerstend to focus on functionality
• But if users cannot always understandhow to use all the exciting features.. They won’t
• My watch has five buttons
• I normally use one (button #5)
• 36-fine-printed-pagesmanual!!
• Can I set time without looking at the manual?
• How about a stopwatch feature?
Designing for the User
Designing for the User
• Inside-out design
-Developa system
-Then add the interface
• Outside-indesign
-Designthe interface
-Then build the system to support it
Design of UIs
Mental Models
Information in the head
• What we memorize
• Knowledge for using a UI
Information in the world
• What we see
Declarative knowledge (“of”)
• Facts and rules
• Easy to write down and tech
• Usually requires memorization
• Procedural knowledge (“how”)
• To accomplish a task
• Hard to teach and learn
• Taught by demonstrationand learned
through practice
• Requires deeper understanding
Example: Driving a Car
When we push the gas pedal,,the car goes faster
• Mental: pushingmakes it go faster
• Implementation:more gas to the engine, more pressure,pistons go faster, tires go faster…
When we turn the wheel, the car turns
• Mental: turning the wheel turns the tires
• Implementation:turning the wheel turns something else (with help of a motor for power steering),
which causes somethingelse to turn, which puts the tiers into a different angle
Another example:
https://www.youtube.com/watch?v=pAOyWFOFhsg
UIs and Mental Models
Telephones: I want to call mom, not 1 – 434 – xxx – xxx
Compile: I want to run my program,not compile, run
File manager: dragginga file from window to window
• Move on the same disk
• Copy from USB thumb drive to disk
Calendars: paper calendars require paging, online calendars can scroll
Fundamental Software Design Principle: The 7 2 Rule
Human’s short term memorycan only hold about seven things at a time (plus or minus 2)
When we get more than about 7 items, we
get confused
Have a Point, Make Your Point!
You have less than two minutes to convince first time visitors to stay on your web site
Every page must justifyWHY the user should stay
Preventing Errors
People often make mistakes
Faster computers canincrease errors
Preventionstrategies:
• Flow: Users make fewer mistakes when the flow through the UI make sense
• Education: Better error messagescan reduce errors
The software can prevent the user from making dangerouschoices
Software seatbelts:If the dangerous choice must be available,allow it with a hesitation(“are you sure?”)
“Stuff” happens
If an error is possible,someone will make it
Good UI designersmust assume all possible mistakes will happen
• Designto minimize the chances of mistakes
• Designto minimize the consequences of mistakes
• Designto maximize recovery from mistakes
Do not assume users are perfect
Helping Users Choose Action
Visibility
• The user can see the state of the system and how to use it
Good conceptual model
• The system works the way the users expect
Good mappings
• Users can see relationshipsbetween actions and results, controls and effects and state and
appearance
Feedback
• The system tells the user what happened at every step
Excise Tasks
Overhead relates to solving problems:
Revenue Tasks: Sub tasks that work to solve the problem directly
-Studying
-Doing homework
-Listening to lectures
Excise Tasks: Sub-tasks that must be done but that are not really part of the problem
-Drivingto school
-Parking!
-Doing homework that does not reinforce concepts
Excise tasks satisfy the needs of the tools or process, not the users
Example: GUI Excise
Competentcommand lines users see a lot of excise in GUI – primarily the navigation
• Using the mouse
• Having to go through multiple screens
• Generally – GUIs require more navigation
Example: Changing background in all class slides
• PPT: More than 30 minutes; load each file separately,1 or 2 minutes to change each file
• VIM: Less than five minutes; one process, repeat searchingand commands (assumingtext files)
Convert 20 files to PDF
• Word: about an hour, print dialog for each file
• Latex: 3 minutes with a simple shell script, 10 by hand
Example: Command Line Excise
Users must learn all the syntax – a significant tax!
• Equivalentto learning programminglanguages
• CLs are primarily preferred by programmers
Command line users will often make extensive use ofshortcuts and customizationin GUIs
Reduce Excise Tasks
Don’t make me think also means
Don’t make me di work that’s not related to my goal
Techniques to Avoid Excise
• Put the mouse focus in the first input box
• Don’t interrupt flow unless necessary
• Try not to show error messages
• Don’t ask users to “correct” what they don’t understand
• Don’t separate input from output
• Don’t require passwords for everything
-Authentication is almost always excise!
• Don’t make users rememberwhere files are
-MUST le users define file organization
-MS Word no does,eclipse dos not
Techniques to Avoid Excise (cont.)
• Don’t make users move or resizewindows
• Don’t make users rememberor re-enter personalsettings
• Don’t make users enter unnecessarydata
-Telephone number as a DB key – use the name or invert a number!
• Don’t make users confirm actions – unless undo is impossible
-https://www.youtube.com/watch?v=3Sk7cOqB9Dk
• Avoid or correct error
Memory – Auto - Customization
• Rememberwhat the user did the last time
• Avoid unnecessaryquestions
• Imagine a boyfriend or girlfriend that asked you every time whether you wanted cream with your
coffee!
• Dialog boxes ask questions, buttons offer choices
Nine Golden Rules of UI design
• Build a UI that is consistent
• Designusable and discoverable shortcuts
• Provide appropriate feedback
• Yield closure
• Provide appropriate error handling
• Allow users to undo all actions
-Use hesitation for the operation that cannot be undone
• Put the user in charge
• Reduce the load
• Design for the user
Shneiderman’s 5 Criteria for Measuring Usability
• Time to learn: The time it takes to learn some basic level of skills
• Speed of UI performance: Number of UI "Interactions" It takes to accomplish tasks
• Avoiding user errors: How often users make mistakes
• Retention of skills: How well users remember how to use the UI after not using for a time
• Subjective satisfaction: The lack of annoying features
Time to Learn
• How long it takes to learn to use an interface.
• With complicated Uls, learning happensin "plateaus“.
• Well designed interfaces make
-The first plateau easy to get to
-Subsequentplateaus clearly available
Speed of UI Performance
• This is about navigating through the interface, not how fast the software or network runs
• Interaction points are places where the users interactwith the software (e.g.,buttons, text boxes, or
commands)
• Speed of UI performance is roughlythe number of interactionsneeded to accomplish a task
• Good UI designersneed to reduce the number of keyboard to-mouse switches
Rate of User Errors
• Users will always make mistakes
• Uls can encourage or discourage mistakes
-Consistency, instructions, navigation,…
• Consider:
-Entering letter grades in a dropdown instead of radio buttons
Retention of Skills
• "Once you learn to ride a bicycle, you never forget".
• Some interfaces are easy to remember,some are hard
• If they flow logically (that is, match the user's mental model or expectations), they are very easy to
remember
• If an interface is very easy to learn, then the retention is not important users – can just learnagain
• Retention is typically more important with UIs that are hard to learn
Subjective Satisfaction
• Subjective satisfaction is defined to be how much the users "like" the UI
• How comfortable the users are with the software
• This depends on the user (thus the word "subjective")
• Think of it in reverse: Users are unhappy when there is something annoyingin the interface.
-Ugly colours
-Blinking
-Spelling errors in massages
• Most important in competitive software systems
-Like... everythingon the Web!
-I'm moving
Tradeoffs Among Criteria
• We always have tradeoffs among the criteria
• Most people today equate "user friendly" with "time to learn”
-this is a narrow view
• Making a UI easier to learn often slows it down!
-Example: Many GUIs are easy to learn, but slow
-Many command languages are fast, but hard to learn
• To be an effective UI designer,we must consider each criterion carefully and prioritize before
designing
• Decide what is acceptable for each of the five criteria
How to Improve Usability
• Usability testing
-Get representative users
-Ask the users to perform representativetasks
• Observe how the users use or interact with the UI
-What the users do
-Where they succeed
-Where they have difficulties with the UI
Tips When Working on Usability
• Test the old design before staring a new design
• Test your competitors' designs
• Study how users use the system
• Make paper prototypes and test them
• Transform paper prototypes to executable prototypes, iterativelyrefine the design idea
• Inspect the design relative to establishedusability guidelines
• Implement the final design, test it again
• Don't wait until you have a fully implemented design.It will be impossibleto fix the critical usability
problems, especially problems related to architectures
• Start user testing early in the design process and keep testing every step
Summary
• Good UIs take time to design
• Designinga good UI requires thinking like the user instead of an engineer
-Engineersoften think they are users
• Different users want different things
PartTwo
UDSAUnit4
Navigation Within The Information For UX Design
https://www.justinmind.com/blog/navigation-design-almost-everything-y ou-need-to-
know/#:~:text=Navigation%20design%20is%20about%20creating,about%20UX%20being%20'invisible'.
Navigationdesignis about creating a system that empowers your users to interact with and use your
product. This is everythingyou need to know
What is navigation design?
• Navigationdesignis the discipline of creating, analyzing,and implementingways for users to
navigate through a website or app.
• Navigationplays an integral role in how users interact with and use your products. It is how your user
can get from point A to point B and even point C in the least frustratingway possible.
• To make these delightful interactions, designers employ a combination of UI patterns including links,
labels, and other UI elements. These patterns provide relevantinformation and make interacting with
products easier.
• Good navigationdesign can:
-Enhance a user’s understanding
-Give them confidence in using your product
-Provide credibilityto a product
Why navigation design is so important
• Collectively, Apple and Android’s app stores are home to over 5.5 million apps. Every single one of
those apps will have its navigationdesign built right into it.
• Whether it’s in the form of a breadcrumbmenu, a dropdown, or tabs, every product needs to have a
user flow that a person can navigate to achieve their goals.
• Without well-thought-out navigation,your user may have trouble using your product and abandon
you altogether.The reason that navigationdesign is so important is that it is a method by which your
user can explore and enjoy your product.
What Is a Navigation Menu?
Navigationmenus are lists of content categories or features, which are typically presented as a set of
links or icons grouped with clear visual styling distinct from the rest of the website or page design.These
mainly consist of navigationbars and hamburgermenus typically but often not limited to them.
Menu
Click the menu icon to access the main menu. The menu containsFigma's search feature and various
other functions organizedin the menu. Search by name, or browse by general section (e.g. File, Edit,
View, etc). If there is a keyboard shortcut for the function you're trying to perform, Figma will list it next to
the setting.
• Back to Files: Open the file Browser in the current location..
• File: Perform file-level permissions,including importing andexporting.
• Edit: Access undo/redo, copy/paste,and advanced selection functions.
• View: Control view settings for layout grids and rulers, perform zoom functions, and navigatewithin a
file.
• Object: Apply object-level functions like grouping,framing, rotating, and more.
• Text: Format text with bolds or italics, and set size, height, and spacing.
• Arrange: Tidy up objects with alignment and distributionfunctions.
• Plugins: View, manage, and run any plugins you have installed.
• Integrations:View, manage, and use any applications you have connected.
• Preferences: Adjust your preferences.
• Libraries: Open the Library modal.
▹ Types of Navigation
▹
▹ Navigation through software occurs at multiple levels. The following list
▹ enumerates the most common types of navigation:
 Navigation between multiple windows or screens
 Navigation between panes within a window (or frames in a page)
 Navigation between tools or menus in a pane
 Navigation within information displayed in a pane
or frame (for example: scrolling, panning, zooming, following links)
▹ Improving Navigation
▹
There are many ways to begin improving (eliminating, reducing, or speeding)navigatio
n in your applications, Web sites, and devices. Here are the most effective:
1. Reduce the number of places to go
2. Provide signposts (to enhance the user's ability to find his way around is
by providing better points of reference -- Signposts)
3. Provide overviews
4.Provide appropriate mapping of controls to functions
5. Inflect your interface to match user needs
6. Avoid hierarchies
Tools
Move and Scale tools:
When you open files in the Editor, Figma will select the Move Tool V by default. The Move tool allows you
to select and reorder layers in the Layers Panel, or move objects around on the canvas.Click the arrow
to the right of the Move Tool to access the Scale tool K. This allows you to resize entire objects or layers.
Frame and Slice tools:
If you've used design tools before, you'll be familiar with Artboards. Like Artboards, frames allow you to
choose an area of the canvas to create your designs.Use the keyboard shortcuts A or F to select the
frame tool. Create a frame with your dimensions in the canvas, or select a frame size fromFigma's
presets in the right-hand panel. Click the arrow next to the frame tool to access the Slice tool. The Slice
tool allows you to specify a region of the screen you want to export. Use the keyboard shortcut S to select
the Slice tool.
Tools (cont.)
Shape tools:
In addition to drawing your shapes using the Pen Tool, there are several default shapes you can use in Figma. Click
the drop-downmenu to choose from:
● Rectangle R
● Line L
● Arrow Shift L
● Ellipse O
● Polygon
● Star
● Place Image ⌥ Option ⌘ Command K
Pen and Pencil tools:
The Pen tool P allows you to create custom shapes and icons. Build complex Vector Networks using vector paths,
anchor points, and bezier curves. The Pencil tool allows you to add freehand drawings or annotations to your design
files. Figma will apply some basic smoothing to any paths you create with the Pencil tool. Press the Enter / Return
key to edit the path and any anchor points in Vector Edit mode.
macOS: ⌥ Option P
Windows: Shift P
Tools (cont.)
Text tool:
Text is one of the crucial components of interface design.Everythingfrom the placementand
arrangementof text, to the choice of font, has a part to play.Select the Text tool from the Toolbar, or
press the T key to add text layers to your file.● Click once in the canvas to add a text layer that grows
horizontally● Click and drag to create a text layer that is fixed in size Learn more about creating text
layers.
Hand tool:
The Hand Tool allows you to click around within a file without accidentallyactivating hover outlines,
making selections,or moving objects. If you're usingFigma on a device with a touch screen, the Hand
Tool allows you to pan around a file using your fingers. Tip! Press and hold the Space bar to activate the
Hand Tool.
Tools (cont.)
Comment tool:
The Comment tool allows you to quickly exchange ideas with collaborators.Use comments to respond to
feedback, tweak your designs and iterate faster- all from the originaldesign file. Comments are
accessible to anyone with a view or edit permissions to the file.
Contextual tools:
When you have a layer or object selected, you will see the Contextual tools in the center of the toolbar.
Which tools you see here will depend on your specific selection.
Navigation among Panes
Figma design files have four distinct interactive areas: a toolbar, two sidebars,and a scrollable canvas.
These areas allow you to access, create and adjust elements of your design.In this article, we're going to
cover the left sidebar which gives you access to layers and pages in your file. You can also use the left
sidebarto view local components and access components from other libraries.
Navigation among Panes (cont.)
Open the left sidebar:
There are three headingsin the left sidebar:Layers,Assets, and Pages. Use these headingsto switch
between each panel in the sidebar. You can also use keyboard shortcuts:
Mac:
• Layers panel and Pages: ⌥ Option 1
• Assets panel: ⌥ Option 2
Windows:
• Layers panel and Pages: Alt 1
• Assets panel: Alt 2
Navigation among Panes (cont.)
Toggle layerspanel:
Toggle visibilityof the left sidebarusing the keyboardshortcut:
• Mac: ⌘ Command Shift 
• Windows:Ctrl Shift 
You can also toggle the visibility of the entire Figma UI by using the Show/Hide UI keyboard shortcut:
• Mac: ⌘ Command 
• Windows:Ctrl 
This allows you to view your designs on the canvas, without the Figma UI
Navigation among Panes (cont.)
Tip! You can adjust the width of the left sidebar.
This allows you to better see layer or asset
names.
• Hover your cursor over the right edge of
the sidebar.A bidirectionalarrow will
appear.
• Click and drag to adjust the width of the
panel.
• Release to set the sidebar width.
View Layers
Any Frames, Groups,or Objects you add to the canvas will be visible in the Layers panel. You can
determine if a Layer is a Frame, Group, or a specific type of Object by the icon next to it:
● Frame ● Group ● Component ● Instance ● Text ● Shape ● Image ● Animated GIF
Figma nests any child objects within their parent group or frame. This allows you to collapse and expand
layers within a group or Frame.
New layerswill be added to the top of the list, or the top of the group or frame it is contained within. Or,
just above the layer you currently have selected.
There are lots of interactions you can have ● Select layers,groups, and frames ● Adjust the z-index with
layer order ● Rename layers individuallyor in bulk ● Toggle layer visibility● Lock and unlock layers
Tip! You can enable or disable the Highlight layers on the hover setting. Search for Highlight in the menu.
Or head to Menu > Preferences > Highlight layers on hover
View components in the assets panel
Componentsare aspects of your designs that you can reuse. These could be buttons or icons, or more
complex UI elements like navigationmenus or status bars.
The Assets panel is where you can find all of your Components.You can drag any Component from the
Assets panel into the canvas to create an Instance.
To open the Assets panel, click on the Assets heading in the Layers panel.
Or, use the keyboard shortcut: ● Mac: ⌥ Option 2 ● Windows: Alt 2
Once you've opened the Assets panel, you can: 1)Use the Search field to find a specific component. Figma
looks for components in the current file, as well as any libraries you can access.2)Switch between a Grid
and List view of Components3)Open the Library modal 4)View Local components that were created in
the current file 5)View components that are Private to this file 6)View components that are used in the
file 7)Explore any enabled libraries
Evolution Of Undoing
Undo is a function performed to reverse the action of earlier action. For example, the undo function can
undo deleted text in a word processor.Some software programs may also have the capability of
performing multiple undo actions.
Undo overview
The image above shows how the to undo function is similar to an eraser in the real world. Like an eraser,
if you were to write or draw something and made a mistake, you could erase (undo) the mistake.
What is the keyboard shortcut for undo?
Below is a listing of keyboard shortcuts for how you can undo different operatingsystems:
• PC desktop and laptop = Ctrl+Z
• Apple desktop and laptop = Command+Z
• Google Chromebook = Ctrl+Z
Practice undoing an undo
Practice an undo by highlighting some or all of the below text and pressingCtrl+X to cut the text. Once the
text is cut, pressCtrl+Z to undo. Apple computer users should substitute "Ctrl" for "Cmd" (Command).
Undoing in FIGMA
Cmd/Ctrl + Z Shift + Ctrl/Cmd + Z
Single vs multiple undo:
https://flylib.com/books/en/2.153.1.57/1/#:~:text=Multiple%20undo%
20can%20be%20performed,applicable%2C%20cache%20any%20ch anged%20data.
Single and multiple undo:
The two most-familiartypes of undoing in common use today are single undo and multiple undo. Single
undo is the most basic variant, reversing the effects of the most recent user action, whether procedural
or incremental.Performing a single undo twice usually undoes the undo, and brings the system back to
the state it was in before the first undo was activated. This facility is very effective because it is so simple
to operate. The user interface is simple and clear, easy to describe and remember.The user gets
preciselyone free lunch. This is by far the most frequently implemented undo, and it is certainly
adequate,if not optimal, for many programs. For some users, the absence of this simple undo is
sufficient grounds to abandon a product entirely.
Undoing in FIGMA (cont.)
The user generally notices most of his command mistakes right away: Something about what he did
doesn'tfeel or look right, so he pauses to evaluate the situation.If the representationis clear, he sees his
mistake and selects the undo function to set things back to the previouslycorrect state; then he
proceeds.
Multiple undo can be performed repeatedly in succession — it can revert more than one previous
operation,in the reverse temporal order. Any program with simple undo must rememberthe user's last
operationand, if applicable, cache any changed data. If the program implements multiple undoes,it must
maintain a stack of operations,the depth of which may be settable by the user as an advanced
preference.Each time undo is invoked, it performs an incremental undo; it reverses the most recent
operation, replacing or removing data as necessary and discardingthe restored operation from the
stack.
Limitations of single undo
The biggestlimitation of single-level,functional undo when the user accidentally short-circuits the
capabilityof the undo facility to rescue him. This problem crops up when the user doesn'tnotice his
mistake immediately.For example, assume he deletes six paragraphsof text, then deletes one word,
and then decides that the six paragraphs were erroneouslydeleted and should be replaced.
Unfortunately, performing undo now merely brings back the one word, and the six paragraphsare lost
forever. The undo function has failed him by behaving rather than practically.Anybody can see that the
six paragraphsare more important than the single word, yet the program freely discardedthose
paragraphsin favor of the one word. The program's blindness caused it to keep a quarter and throw
away a fifty-dollar bill, simply because the quarter was offered last.
In some programs any click of the mouse, however innocent of function it might be, causes the single
undo function to forget the last meaningfulthing the user did. Although multiple undo solves these
problems,it introduces some significant problems of its own.
Limitations of multiple undo
The response to the weaknesses of single-levelundo has been to create a multiple-level
implementationof the same, incremental undo. The program saves each action the user takes. By
selecting undo repeatedly,each action can be undone in the reverse order of its original invocation.In
the above scenario, the user can restore the deleted word with the first invocationof undo and restore
the precious six paragraphs with a second invocation.
Having to redundantlyre-delete a single word is a small price to pay for being able to recover those six
valuable paragraphs.The excise of the one-word re-deletion tends to not be noticed, just as we don't see
the cost of ambulance trips: Don't quibble over the little stuff when lives are at stake. But this doesn't
change the fact that the undo mechanism is built on a faulty model, and in other circumstances,undoing
functions in a strict LIFO (Last In, First Out) order can make the cure as painful as the disease.
Limitations of multiple undo (cont.)
Imagine again our user deleting six paragraphs of text, then calling up another document and
performinga global find-and-replace function. To retrieve the missing six paragraphs,the user must
first unnecessarilyundo the rather complex global find-and-replace operation.This time, the
interveningoperationwas not the insignificant single-worddeletion of the earlier example. The
interveningoperationwas complex and difficult and having to undo it is an unpleasant,excise effort. It
would sure be nice to be able to choose which operationin the queue to undo and to be able to leave
intervening— but valid — operations untouched.
Data entry selection :
https://docs.animaapp.com/v3/figma/prototype/forms.html
Forms & Text Input
Forms & Text Input allows visitors of the website or prototype to enter and submit information to a
contact form or newsletter subscriptionbox.
Text Inputs allow visitors of the website or testers of a prototype to type real text. Text Input fields that
include input validationfor Email, Password,Numbers, and Required fields.
https://youtu.be/4eotUsoV7TA
First, create Text Fields where users will type their information:
• Create a text layer as a placeholder where you want users to type their information
• Select it and click Form & Text Input under the Smart Layers section
• Select the Text Input type from the drop-down:Text, Email, Password,Number, and Required
Forms & Text Input (cont.)
Then create a Submit Button:
• Select the button component
• Click Form & Text Input under the Smart Layers section
• Select “Submit Button“ from the drop-downoptions
• (Optional) Enter your Email address to send notifications when visitors submit information
• (Optional) Name for a Spreadsheet that you can view and download as a CSV of all the entries
• (Optional) Select a Success Page where to redirect visitors once their submission has been successful
• (Optional) Select a Failure Page where to redirect visitors in case their submission failed
Data Integrity
Data integrity is a process or a set of practices that ensure the security,accuracy, and overall quality of
data. It is a broad concept that includes cybersecurity,physical safety, and database management.
The following diagram summarizes the main components of data integrity:
Physical Safety
Physical safety ensures that the devices on which the data is stored are safe from weather, fire, theft,
and similar events. It also includes ensuring the quality of devices that store the data. Faulty devices can
lead to an unexpected loss of data.
To mitigate such a risk, sometimes the same data is stored in multiple locations and data centers. The
redundancy helps the continuity of operations in the event of unexpected data loss.
Another aspect of physicalsafety is creating copies and backups of the data to other locations without
errors or gaps. It is accomplished by using specializedalgorithms known as hash functions. Simply put,
if two pieces of data are the same, they provide the same output when processed using a hash function.
Such a comparisonhelps ensure that the data is transferred properly.
Cyber Security
Cyber security mostly revolves around who can access the data. Only authorized personneland
programs should be allowed to view or modify the data. Otherwise,the data will be corrupted either by
malicious behavior or in error.
Cyber security uses credentialslike usernames and passwords to restrict access to data. In some
cases, the data may even be encrypted, so even if it is leaked or stolen, it will not be used without a
decryptionkey.
Database Integrity
Databasesusually come with a defined structure that helps define the relationshipbetween different
types of data. They are implemented via entity relationships (foreignkeys) and constraints encoded into
the tables at the time of creation.
There are several different constraints available in SQL that can be used to perform data validationat the
time of data entry. Some of the constraints include:
• Not Null: Enforces that a certain field may not be left empty.
• Check: Performs a custom check on any data that is entered into a database. The check constraint
includes code checks or range checks.
• Unique: Makes sure that all values entered in a column are unique. It can be used for storing e-mail
addressesas each user must have a unique one.
• Foreign Key: A foreign key links data from one table to another. This ensures that data in one table is
not accidentallydeleted without corresponding changes in related tables.
The checks above are all used to maintainthe consistency,accuracy, and logical integrity of the data.
6 Tips for Designing an Effective Data Entry GUI
There is a subtle art to creating an appealing, well-structured data
entry graphical user interface (GUI). Due to the repetitive interaction
users have with data entry GUIs, small things like choice of colors and
the size of margins can have actual consequences towards how the
application is perceived and the productivity of users
1. Be Consistent
2. Make It Aesthetically Pleasing
 Provide contrast between screen elements, allowing the user to easily
scan the page and recognize important items.
 Create groupings of related fields. Visually grouping related fields
will add a sense of logical structure to your GUI. It also supports the
previous point by further creating contrast between elements.
 Ensure screen elements are aligned and have consistently spaced
apart
 Use colors and graphics effectively and simply.
3. Avoid Scrolling
4. Validate As You Go
5. Summarize Results
6. Keyboard Shortcuts Are Mandatory
GENERAL GUDIELINES FOR DATA ENTRY IN GUI
▹ Data Entered Only Once
▹ Entry via Primary Display
▹ Feedback During Data Entry
▹ Fast Response
▹ Single Method for Entering Data
▹ Defined Display Areas for Data Entry
▹ Consistent Method for Data Change
▹ User-Paced Data Entry
▹ Explicit ENTER Action
▹ ENTER Key Labeling
▹ Explicit CANCEL Action
▹ Feedback for Completion of Data Entry
▹ Feedback for Repetitive Data Entries
▹ Feedback when Changing Data
▹ Keeping Data Items Short
▹ Partitioning Long Data Items
▹ Optional Abbreviation
▹ Distinctive Abbreviation
▹ Simple Abbreviation Rule
▹ Minimal Exceptions/Deviations to Abbreviation Rule

Más contenido relacionado

Similar a UsersandUsability Principles Guide

User Experience Design for Software Engineers, ICS & The Qt Company
User Experience Design for Software Engineers, ICS & The Qt CompanyUser Experience Design for Software Engineers, ICS & The Qt Company
User Experience Design for Software Engineers, ICS & The Qt CompanyQt
 
Implementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryImplementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryFresche Solutions
 
UX Principles and Practice
UX Principles and PracticeUX Principles and Practice
UX Principles and PracticeIBM
 
Software engineering 18 user interface design
Software engineering 18 user interface designSoftware engineering 18 user interface design
Software engineering 18 user interface designVaibhav Khanna
 
User Experience Basics for Product Management
User Experience Basics for Product ManagementUser Experience Basics for Product Management
User Experience Basics for Product ManagementRoger Hart
 
UI Design - Lessons Learned, Principles, and Best Practices
UI Design - Lessons Learned, Principles, and Best PracticesUI Design - Lessons Learned, Principles, and Best Practices
UI Design - Lessons Learned, Principles, and Best PracticesSamuel Chow
 
Interface Design for Elearning - Tips and Tricks
Interface Design for Elearning - Tips and TricksInterface Design for Elearning - Tips and Tricks
Interface Design for Elearning - Tips and TricksJulie Dirksen
 
Lecture (User Interface Design).ppt
Lecture (User Interface Design).pptLecture (User Interface Design).ppt
Lecture (User Interface Design).pptskknowledge
 
User experience for drupal
User experience for drupalUser experience for drupal
User experience for drupalAnne Stefanyk
 
Usability Testing by Rajdeep Gupta, Misys
Usability Testing by Rajdeep Gupta, MisysUsability Testing by Rajdeep Gupta, Misys
Usability Testing by Rajdeep Gupta, MisysSTC India UX SIG
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slidesSameer Al-Sakran
 
Design Simple but Powerful application
Design Simple but Powerful applicationDesign Simple but Powerful application
Design Simple but Powerful applicationJim Liang
 
Usability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt AcademyUsability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt AcademyDániel Góré
 

Similar a UsersandUsability Principles Guide (20)

Lesson 2 HCI 2.pdf
Lesson 2 HCI 2.pdfLesson 2 HCI 2.pdf
Lesson 2 HCI 2.pdf
 
User Experience Design for Software Engineers, ICS & The Qt Company
User Experience Design for Software Engineers, ICS & The Qt CompanyUser Experience Design for Software Engineers, ICS & The Qt Company
User Experience Design for Software Engineers, ICS & The Qt Company
 
Implementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryImplementing Modernization by Trevor Perry
Implementing Modernization by Trevor Perry
 
UX Principles and Practice
UX Principles and PracticeUX Principles and Practice
UX Principles and Practice
 
User Interface.ppt
User Interface.pptUser Interface.ppt
User Interface.ppt
 
Software engineering 18 user interface design
Software engineering 18 user interface designSoftware engineering 18 user interface design
Software engineering 18 user interface design
 
HCI
HCIHCI
HCI
 
User Experience Basics for Product Management
User Experience Basics for Product ManagementUser Experience Basics for Product Management
User Experience Basics for Product Management
 
UI Design - Lessons Learned, Principles, and Best Practices
UI Design - Lessons Learned, Principles, and Best PracticesUI Design - Lessons Learned, Principles, and Best Practices
UI Design - Lessons Learned, Principles, and Best Practices
 
Chapter3
Chapter3 Chapter3
Chapter3
 
Interface Design for Elearning - Tips and Tricks
Interface Design for Elearning - Tips and TricksInterface Design for Elearning - Tips and Tricks
Interface Design for Elearning - Tips and Tricks
 
Heuristic evaluation principles
Heuristic evaluation principlesHeuristic evaluation principles
Heuristic evaluation principles
 
Lecture (User Interface Design).ppt
Lecture (User Interface Design).pptLecture (User Interface Design).ppt
Lecture (User Interface Design).ppt
 
User experience for drupal
User experience for drupalUser experience for drupal
User experience for drupal
 
Usability Testing by Rajdeep Gupta, Misys
Usability Testing by Rajdeep Gupta, MisysUsability Testing by Rajdeep Gupta, Misys
Usability Testing by Rajdeep Gupta, Misys
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slides
 
Design Simple but Powerful application
Design Simple but Powerful applicationDesign Simple but Powerful application
Design Simple but Powerful application
 
Chapter 12 user interface design
Chapter 12 user interface designChapter 12 user interface design
Chapter 12 user interface design
 
What is Interaction Design?
What is Interaction Design?What is Interaction Design?
What is Interaction Design?
 
Usability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt AcademyUsability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt Academy
 

Último

Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdfKamal Acharya
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdfKamal Acharya
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 

Último (20)

Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 

UsersandUsability Principles Guide

  • 3. QUALITY ATTRIBUTE • LEARN ABILITY: How easy is it for users to start using the system? • EFFICIENCY: How quickly can they perform tasks? • MEMORABILITY: How easily ca returning users re-establishproficiency? • ERRORS: How many errors do users make, how severe are these errors and how easilycan they recover from the errors? How much does the system help prevent errors? • SATISFACTION: How pleasant is it use the system? What is Usability?
  • 4. • If a website is difficult to use, people leave. • If the users can’t tell what the site offers, they leave. • If users get lost on a website, they leave. • If a website’s informationis hard to read or doesn’t answer users questions, they leave. • Users wont read a website; they scan the site. When users encounter a difficulty, they have. Why Usability is Important
  • 5. How to break down theessential characteristics of usable software from an analyticalviewpoint Engineeringprinciplesfor designing and buildingsoftware interface that are • Fast to learn • Speedy to use • Avoid user errors • Increase retention • Improve user’s subject satisfaction How to recognize and articulate the difference between “this program sucks” and “I can improve this program by changing X, Y and Z” Life-long habits for engineering usable products. Usabilityis not just for software What does this course cover?
  • 6.  Understand the users  Designfor the user  Match the users mental model  Follow the 7 2 rule  Have a point, make your point  Prevent errors  Reduce excise tasks  Nine golden rules of UI design  Shneiderman’s five criteria: Learn, Speed, Errors, Skills, SS Usability Principles of the Day
  • 7. It is important to know who the user is • Work experience • Computer experience • Age • Education • Readingskills • Language skills • Work environment • Task frequency • Many more possibilities Understand the Users “User profile”
  • 8. • Engineerstend to focus on functionality • But if users cannot always understandhow to use all the exciting features.. They won’t • My watch has five buttons • I normally use one (button #5) • 36-fine-printed-pagesmanual!! • Can I set time without looking at the manual? • How about a stopwatch feature? Designing for the User
  • 10. • Inside-out design -Developa system -Then add the interface • Outside-indesign -Designthe interface -Then build the system to support it Design of UIs
  • 11. Mental Models Information in the head • What we memorize • Knowledge for using a UI Information in the world • What we see Declarative knowledge (“of”) • Facts and rules • Easy to write down and tech • Usually requires memorization • Procedural knowledge (“how”) • To accomplish a task • Hard to teach and learn • Taught by demonstrationand learned through practice • Requires deeper understanding
  • 12. Example: Driving a Car When we push the gas pedal,,the car goes faster • Mental: pushingmakes it go faster • Implementation:more gas to the engine, more pressure,pistons go faster, tires go faster… When we turn the wheel, the car turns • Mental: turning the wheel turns the tires • Implementation:turning the wheel turns something else (with help of a motor for power steering), which causes somethingelse to turn, which puts the tiers into a different angle Another example: https://www.youtube.com/watch?v=pAOyWFOFhsg
  • 13. UIs and Mental Models Telephones: I want to call mom, not 1 – 434 – xxx – xxx Compile: I want to run my program,not compile, run File manager: dragginga file from window to window • Move on the same disk • Copy from USB thumb drive to disk Calendars: paper calendars require paging, online calendars can scroll
  • 14. Fundamental Software Design Principle: The 7 2 Rule Human’s short term memorycan only hold about seven things at a time (plus or minus 2) When we get more than about 7 items, we get confused
  • 15. Have a Point, Make Your Point! You have less than two minutes to convince first time visitors to stay on your web site Every page must justifyWHY the user should stay
  • 16. Preventing Errors People often make mistakes Faster computers canincrease errors Preventionstrategies: • Flow: Users make fewer mistakes when the flow through the UI make sense • Education: Better error messagescan reduce errors The software can prevent the user from making dangerouschoices Software seatbelts:If the dangerous choice must be available,allow it with a hesitation(“are you sure?”)
  • 17. “Stuff” happens If an error is possible,someone will make it Good UI designersmust assume all possible mistakes will happen • Designto minimize the chances of mistakes • Designto minimize the consequences of mistakes • Designto maximize recovery from mistakes Do not assume users are perfect
  • 18. Helping Users Choose Action Visibility • The user can see the state of the system and how to use it Good conceptual model • The system works the way the users expect Good mappings • Users can see relationshipsbetween actions and results, controls and effects and state and appearance Feedback • The system tells the user what happened at every step
  • 19. Excise Tasks Overhead relates to solving problems: Revenue Tasks: Sub tasks that work to solve the problem directly -Studying -Doing homework -Listening to lectures Excise Tasks: Sub-tasks that must be done but that are not really part of the problem -Drivingto school -Parking! -Doing homework that does not reinforce concepts Excise tasks satisfy the needs of the tools or process, not the users
  • 20. Example: GUI Excise Competentcommand lines users see a lot of excise in GUI – primarily the navigation • Using the mouse • Having to go through multiple screens • Generally – GUIs require more navigation Example: Changing background in all class slides • PPT: More than 30 minutes; load each file separately,1 or 2 minutes to change each file • VIM: Less than five minutes; one process, repeat searchingand commands (assumingtext files) Convert 20 files to PDF • Word: about an hour, print dialog for each file • Latex: 3 minutes with a simple shell script, 10 by hand
  • 21. Example: Command Line Excise Users must learn all the syntax – a significant tax! • Equivalentto learning programminglanguages • CLs are primarily preferred by programmers Command line users will often make extensive use ofshortcuts and customizationin GUIs
  • 22. Reduce Excise Tasks Don’t make me think also means Don’t make me di work that’s not related to my goal
  • 23. Techniques to Avoid Excise • Put the mouse focus in the first input box • Don’t interrupt flow unless necessary • Try not to show error messages • Don’t ask users to “correct” what they don’t understand • Don’t separate input from output • Don’t require passwords for everything -Authentication is almost always excise! • Don’t make users rememberwhere files are -MUST le users define file organization -MS Word no does,eclipse dos not
  • 24. Techniques to Avoid Excise (cont.) • Don’t make users move or resizewindows • Don’t make users rememberor re-enter personalsettings • Don’t make users enter unnecessarydata -Telephone number as a DB key – use the name or invert a number! • Don’t make users confirm actions – unless undo is impossible -https://www.youtube.com/watch?v=3Sk7cOqB9Dk • Avoid or correct error
  • 25. Memory – Auto - Customization • Rememberwhat the user did the last time • Avoid unnecessaryquestions • Imagine a boyfriend or girlfriend that asked you every time whether you wanted cream with your coffee! • Dialog boxes ask questions, buttons offer choices
  • 26. Nine Golden Rules of UI design • Build a UI that is consistent • Designusable and discoverable shortcuts • Provide appropriate feedback • Yield closure • Provide appropriate error handling • Allow users to undo all actions -Use hesitation for the operation that cannot be undone • Put the user in charge • Reduce the load • Design for the user
  • 27. Shneiderman’s 5 Criteria for Measuring Usability • Time to learn: The time it takes to learn some basic level of skills • Speed of UI performance: Number of UI "Interactions" It takes to accomplish tasks • Avoiding user errors: How often users make mistakes • Retention of skills: How well users remember how to use the UI after not using for a time • Subjective satisfaction: The lack of annoying features
  • 28. Time to Learn • How long it takes to learn to use an interface. • With complicated Uls, learning happensin "plateaus“. • Well designed interfaces make -The first plateau easy to get to -Subsequentplateaus clearly available
  • 29. Speed of UI Performance • This is about navigating through the interface, not how fast the software or network runs • Interaction points are places where the users interactwith the software (e.g.,buttons, text boxes, or commands) • Speed of UI performance is roughlythe number of interactionsneeded to accomplish a task • Good UI designersneed to reduce the number of keyboard to-mouse switches
  • 30. Rate of User Errors • Users will always make mistakes • Uls can encourage or discourage mistakes -Consistency, instructions, navigation,… • Consider: -Entering letter grades in a dropdown instead of radio buttons
  • 31. Retention of Skills • "Once you learn to ride a bicycle, you never forget". • Some interfaces are easy to remember,some are hard • If they flow logically (that is, match the user's mental model or expectations), they are very easy to remember • If an interface is very easy to learn, then the retention is not important users – can just learnagain • Retention is typically more important with UIs that are hard to learn
  • 32. Subjective Satisfaction • Subjective satisfaction is defined to be how much the users "like" the UI • How comfortable the users are with the software • This depends on the user (thus the word "subjective") • Think of it in reverse: Users are unhappy when there is something annoyingin the interface. -Ugly colours -Blinking -Spelling errors in massages • Most important in competitive software systems -Like... everythingon the Web! -I'm moving
  • 33. Tradeoffs Among Criteria • We always have tradeoffs among the criteria • Most people today equate "user friendly" with "time to learn” -this is a narrow view • Making a UI easier to learn often slows it down! -Example: Many GUIs are easy to learn, but slow -Many command languages are fast, but hard to learn • To be an effective UI designer,we must consider each criterion carefully and prioritize before designing • Decide what is acceptable for each of the five criteria
  • 34. How to Improve Usability • Usability testing -Get representative users -Ask the users to perform representativetasks • Observe how the users use or interact with the UI -What the users do -Where they succeed -Where they have difficulties with the UI
  • 35. Tips When Working on Usability • Test the old design before staring a new design • Test your competitors' designs • Study how users use the system • Make paper prototypes and test them • Transform paper prototypes to executable prototypes, iterativelyrefine the design idea • Inspect the design relative to establishedusability guidelines • Implement the final design, test it again • Don't wait until you have a fully implemented design.It will be impossibleto fix the critical usability problems, especially problems related to architectures • Start user testing early in the design process and keep testing every step
  • 36. Summary • Good UIs take time to design • Designinga good UI requires thinking like the user instead of an engineer -Engineersoften think they are users • Different users want different things
  • 38. Navigation Within The Information For UX Design https://www.justinmind.com/blog/navigation-design-almost-everything-y ou-need-to- know/#:~:text=Navigation%20design%20is%20about%20creating,about%20UX%20being%20'invisible'. Navigationdesignis about creating a system that empowers your users to interact with and use your product. This is everythingyou need to know
  • 39. What is navigation design? • Navigationdesignis the discipline of creating, analyzing,and implementingways for users to navigate through a website or app. • Navigationplays an integral role in how users interact with and use your products. It is how your user can get from point A to point B and even point C in the least frustratingway possible. • To make these delightful interactions, designers employ a combination of UI patterns including links, labels, and other UI elements. These patterns provide relevantinformation and make interacting with products easier. • Good navigationdesign can: -Enhance a user’s understanding -Give them confidence in using your product -Provide credibilityto a product
  • 40. Why navigation design is so important • Collectively, Apple and Android’s app stores are home to over 5.5 million apps. Every single one of those apps will have its navigationdesign built right into it. • Whether it’s in the form of a breadcrumbmenu, a dropdown, or tabs, every product needs to have a user flow that a person can navigate to achieve their goals. • Without well-thought-out navigation,your user may have trouble using your product and abandon you altogether.The reason that navigationdesign is so important is that it is a method by which your user can explore and enjoy your product.
  • 41. What Is a Navigation Menu? Navigationmenus are lists of content categories or features, which are typically presented as a set of links or icons grouped with clear visual styling distinct from the rest of the website or page design.These mainly consist of navigationbars and hamburgermenus typically but often not limited to them.
  • 42. Menu Click the menu icon to access the main menu. The menu containsFigma's search feature and various other functions organizedin the menu. Search by name, or browse by general section (e.g. File, Edit, View, etc). If there is a keyboard shortcut for the function you're trying to perform, Figma will list it next to the setting. • Back to Files: Open the file Browser in the current location.. • File: Perform file-level permissions,including importing andexporting. • Edit: Access undo/redo, copy/paste,and advanced selection functions. • View: Control view settings for layout grids and rulers, perform zoom functions, and navigatewithin a file. • Object: Apply object-level functions like grouping,framing, rotating, and more. • Text: Format text with bolds or italics, and set size, height, and spacing. • Arrange: Tidy up objects with alignment and distributionfunctions. • Plugins: View, manage, and run any plugins you have installed. • Integrations:View, manage, and use any applications you have connected. • Preferences: Adjust your preferences. • Libraries: Open the Library modal.
  • 43. ▹ Types of Navigation ▹ ▹ Navigation through software occurs at multiple levels. The following list ▹ enumerates the most common types of navigation:  Navigation between multiple windows or screens  Navigation between panes within a window (or frames in a page)  Navigation between tools or menus in a pane  Navigation within information displayed in a pane or frame (for example: scrolling, panning, zooming, following links)
  • 44. ▹ Improving Navigation ▹ There are many ways to begin improving (eliminating, reducing, or speeding)navigatio n in your applications, Web sites, and devices. Here are the most effective: 1. Reduce the number of places to go 2. Provide signposts (to enhance the user's ability to find his way around is by providing better points of reference -- Signposts) 3. Provide overviews 4.Provide appropriate mapping of controls to functions 5. Inflect your interface to match user needs 6. Avoid hierarchies
  • 45. Tools Move and Scale tools: When you open files in the Editor, Figma will select the Move Tool V by default. The Move tool allows you to select and reorder layers in the Layers Panel, or move objects around on the canvas.Click the arrow to the right of the Move Tool to access the Scale tool K. This allows you to resize entire objects or layers. Frame and Slice tools: If you've used design tools before, you'll be familiar with Artboards. Like Artboards, frames allow you to choose an area of the canvas to create your designs.Use the keyboard shortcuts A or F to select the frame tool. Create a frame with your dimensions in the canvas, or select a frame size fromFigma's presets in the right-hand panel. Click the arrow next to the frame tool to access the Slice tool. The Slice tool allows you to specify a region of the screen you want to export. Use the keyboard shortcut S to select the Slice tool.
  • 46. Tools (cont.) Shape tools: In addition to drawing your shapes using the Pen Tool, there are several default shapes you can use in Figma. Click the drop-downmenu to choose from: ● Rectangle R ● Line L ● Arrow Shift L ● Ellipse O ● Polygon ● Star ● Place Image ⌥ Option ⌘ Command K Pen and Pencil tools: The Pen tool P allows you to create custom shapes and icons. Build complex Vector Networks using vector paths, anchor points, and bezier curves. The Pencil tool allows you to add freehand drawings or annotations to your design files. Figma will apply some basic smoothing to any paths you create with the Pencil tool. Press the Enter / Return key to edit the path and any anchor points in Vector Edit mode. macOS: ⌥ Option P Windows: Shift P
  • 47. Tools (cont.) Text tool: Text is one of the crucial components of interface design.Everythingfrom the placementand arrangementof text, to the choice of font, has a part to play.Select the Text tool from the Toolbar, or press the T key to add text layers to your file.● Click once in the canvas to add a text layer that grows horizontally● Click and drag to create a text layer that is fixed in size Learn more about creating text layers. Hand tool: The Hand Tool allows you to click around within a file without accidentallyactivating hover outlines, making selections,or moving objects. If you're usingFigma on a device with a touch screen, the Hand Tool allows you to pan around a file using your fingers. Tip! Press and hold the Space bar to activate the Hand Tool.
  • 48. Tools (cont.) Comment tool: The Comment tool allows you to quickly exchange ideas with collaborators.Use comments to respond to feedback, tweak your designs and iterate faster- all from the originaldesign file. Comments are accessible to anyone with a view or edit permissions to the file. Contextual tools: When you have a layer or object selected, you will see the Contextual tools in the center of the toolbar. Which tools you see here will depend on your specific selection.
  • 49. Navigation among Panes Figma design files have four distinct interactive areas: a toolbar, two sidebars,and a scrollable canvas. These areas allow you to access, create and adjust elements of your design.In this article, we're going to cover the left sidebar which gives you access to layers and pages in your file. You can also use the left sidebarto view local components and access components from other libraries.
  • 50. Navigation among Panes (cont.) Open the left sidebar: There are three headingsin the left sidebar:Layers,Assets, and Pages. Use these headingsto switch between each panel in the sidebar. You can also use keyboard shortcuts: Mac: • Layers panel and Pages: ⌥ Option 1 • Assets panel: ⌥ Option 2 Windows: • Layers panel and Pages: Alt 1 • Assets panel: Alt 2
  • 51. Navigation among Panes (cont.) Toggle layerspanel: Toggle visibilityof the left sidebarusing the keyboardshortcut: • Mac: ⌘ Command Shift • Windows:Ctrl Shift You can also toggle the visibility of the entire Figma UI by using the Show/Hide UI keyboard shortcut: • Mac: ⌘ Command • Windows:Ctrl This allows you to view your designs on the canvas, without the Figma UI
  • 52. Navigation among Panes (cont.) Tip! You can adjust the width of the left sidebar. This allows you to better see layer or asset names. • Hover your cursor over the right edge of the sidebar.A bidirectionalarrow will appear. • Click and drag to adjust the width of the panel. • Release to set the sidebar width.
  • 53. View Layers Any Frames, Groups,or Objects you add to the canvas will be visible in the Layers panel. You can determine if a Layer is a Frame, Group, or a specific type of Object by the icon next to it: ● Frame ● Group ● Component ● Instance ● Text ● Shape ● Image ● Animated GIF Figma nests any child objects within their parent group or frame. This allows you to collapse and expand layers within a group or Frame. New layerswill be added to the top of the list, or the top of the group or frame it is contained within. Or, just above the layer you currently have selected. There are lots of interactions you can have ● Select layers,groups, and frames ● Adjust the z-index with layer order ● Rename layers individuallyor in bulk ● Toggle layer visibility● Lock and unlock layers Tip! You can enable or disable the Highlight layers on the hover setting. Search for Highlight in the menu. Or head to Menu > Preferences > Highlight layers on hover
  • 54. View components in the assets panel Componentsare aspects of your designs that you can reuse. These could be buttons or icons, or more complex UI elements like navigationmenus or status bars. The Assets panel is where you can find all of your Components.You can drag any Component from the Assets panel into the canvas to create an Instance. To open the Assets panel, click on the Assets heading in the Layers panel. Or, use the keyboard shortcut: ● Mac: ⌥ Option 2 ● Windows: Alt 2 Once you've opened the Assets panel, you can: 1)Use the Search field to find a specific component. Figma looks for components in the current file, as well as any libraries you can access.2)Switch between a Grid and List view of Components3)Open the Library modal 4)View Local components that were created in the current file 5)View components that are Private to this file 6)View components that are used in the file 7)Explore any enabled libraries
  • 55. Evolution Of Undoing Undo is a function performed to reverse the action of earlier action. For example, the undo function can undo deleted text in a word processor.Some software programs may also have the capability of performing multiple undo actions.
  • 56. Undo overview The image above shows how the to undo function is similar to an eraser in the real world. Like an eraser, if you were to write or draw something and made a mistake, you could erase (undo) the mistake.
  • 57. What is the keyboard shortcut for undo? Below is a listing of keyboard shortcuts for how you can undo different operatingsystems: • PC desktop and laptop = Ctrl+Z • Apple desktop and laptop = Command+Z • Google Chromebook = Ctrl+Z
  • 58. Practice undoing an undo Practice an undo by highlighting some or all of the below text and pressingCtrl+X to cut the text. Once the text is cut, pressCtrl+Z to undo. Apple computer users should substitute "Ctrl" for "Cmd" (Command).
  • 59. Undoing in FIGMA Cmd/Ctrl + Z Shift + Ctrl/Cmd + Z Single vs multiple undo: https://flylib.com/books/en/2.153.1.57/1/#:~:text=Multiple%20undo% 20can%20be%20performed,applicable%2C%20cache%20any%20ch anged%20data. Single and multiple undo: The two most-familiartypes of undoing in common use today are single undo and multiple undo. Single undo is the most basic variant, reversing the effects of the most recent user action, whether procedural or incremental.Performing a single undo twice usually undoes the undo, and brings the system back to the state it was in before the first undo was activated. This facility is very effective because it is so simple to operate. The user interface is simple and clear, easy to describe and remember.The user gets preciselyone free lunch. This is by far the most frequently implemented undo, and it is certainly adequate,if not optimal, for many programs. For some users, the absence of this simple undo is sufficient grounds to abandon a product entirely.
  • 60. Undoing in FIGMA (cont.) The user generally notices most of his command mistakes right away: Something about what he did doesn'tfeel or look right, so he pauses to evaluate the situation.If the representationis clear, he sees his mistake and selects the undo function to set things back to the previouslycorrect state; then he proceeds. Multiple undo can be performed repeatedly in succession — it can revert more than one previous operation,in the reverse temporal order. Any program with simple undo must rememberthe user's last operationand, if applicable, cache any changed data. If the program implements multiple undoes,it must maintain a stack of operations,the depth of which may be settable by the user as an advanced preference.Each time undo is invoked, it performs an incremental undo; it reverses the most recent operation, replacing or removing data as necessary and discardingthe restored operation from the stack.
  • 61. Limitations of single undo The biggestlimitation of single-level,functional undo when the user accidentally short-circuits the capabilityof the undo facility to rescue him. This problem crops up when the user doesn'tnotice his mistake immediately.For example, assume he deletes six paragraphsof text, then deletes one word, and then decides that the six paragraphs were erroneouslydeleted and should be replaced. Unfortunately, performing undo now merely brings back the one word, and the six paragraphsare lost forever. The undo function has failed him by behaving rather than practically.Anybody can see that the six paragraphsare more important than the single word, yet the program freely discardedthose paragraphsin favor of the one word. The program's blindness caused it to keep a quarter and throw away a fifty-dollar bill, simply because the quarter was offered last. In some programs any click of the mouse, however innocent of function it might be, causes the single undo function to forget the last meaningfulthing the user did. Although multiple undo solves these problems,it introduces some significant problems of its own.
  • 62. Limitations of multiple undo The response to the weaknesses of single-levelundo has been to create a multiple-level implementationof the same, incremental undo. The program saves each action the user takes. By selecting undo repeatedly,each action can be undone in the reverse order of its original invocation.In the above scenario, the user can restore the deleted word with the first invocationof undo and restore the precious six paragraphs with a second invocation. Having to redundantlyre-delete a single word is a small price to pay for being able to recover those six valuable paragraphs.The excise of the one-word re-deletion tends to not be noticed, just as we don't see the cost of ambulance trips: Don't quibble over the little stuff when lives are at stake. But this doesn't change the fact that the undo mechanism is built on a faulty model, and in other circumstances,undoing functions in a strict LIFO (Last In, First Out) order can make the cure as painful as the disease.
  • 63. Limitations of multiple undo (cont.) Imagine again our user deleting six paragraphs of text, then calling up another document and performinga global find-and-replace function. To retrieve the missing six paragraphs,the user must first unnecessarilyundo the rather complex global find-and-replace operation.This time, the interveningoperationwas not the insignificant single-worddeletion of the earlier example. The interveningoperationwas complex and difficult and having to undo it is an unpleasant,excise effort. It would sure be nice to be able to choose which operationin the queue to undo and to be able to leave intervening— but valid — operations untouched. Data entry selection : https://docs.animaapp.com/v3/figma/prototype/forms.html
  • 64. Forms & Text Input Forms & Text Input allows visitors of the website or prototype to enter and submit information to a contact form or newsletter subscriptionbox. Text Inputs allow visitors of the website or testers of a prototype to type real text. Text Input fields that include input validationfor Email, Password,Numbers, and Required fields. https://youtu.be/4eotUsoV7TA First, create Text Fields where users will type their information: • Create a text layer as a placeholder where you want users to type their information • Select it and click Form & Text Input under the Smart Layers section • Select the Text Input type from the drop-down:Text, Email, Password,Number, and Required
  • 65. Forms & Text Input (cont.) Then create a Submit Button: • Select the button component • Click Form & Text Input under the Smart Layers section • Select “Submit Button“ from the drop-downoptions • (Optional) Enter your Email address to send notifications when visitors submit information • (Optional) Name for a Spreadsheet that you can view and download as a CSV of all the entries • (Optional) Select a Success Page where to redirect visitors once their submission has been successful • (Optional) Select a Failure Page where to redirect visitors in case their submission failed
  • 66. Data Integrity Data integrity is a process or a set of practices that ensure the security,accuracy, and overall quality of data. It is a broad concept that includes cybersecurity,physical safety, and database management. The following diagram summarizes the main components of data integrity:
  • 67. Physical Safety Physical safety ensures that the devices on which the data is stored are safe from weather, fire, theft, and similar events. It also includes ensuring the quality of devices that store the data. Faulty devices can lead to an unexpected loss of data. To mitigate such a risk, sometimes the same data is stored in multiple locations and data centers. The redundancy helps the continuity of operations in the event of unexpected data loss. Another aspect of physicalsafety is creating copies and backups of the data to other locations without errors or gaps. It is accomplished by using specializedalgorithms known as hash functions. Simply put, if two pieces of data are the same, they provide the same output when processed using a hash function. Such a comparisonhelps ensure that the data is transferred properly.
  • 68. Cyber Security Cyber security mostly revolves around who can access the data. Only authorized personneland programs should be allowed to view or modify the data. Otherwise,the data will be corrupted either by malicious behavior or in error. Cyber security uses credentialslike usernames and passwords to restrict access to data. In some cases, the data may even be encrypted, so even if it is leaked or stolen, it will not be used without a decryptionkey.
  • 69. Database Integrity Databasesusually come with a defined structure that helps define the relationshipbetween different types of data. They are implemented via entity relationships (foreignkeys) and constraints encoded into the tables at the time of creation. There are several different constraints available in SQL that can be used to perform data validationat the time of data entry. Some of the constraints include: • Not Null: Enforces that a certain field may not be left empty. • Check: Performs a custom check on any data that is entered into a database. The check constraint includes code checks or range checks. • Unique: Makes sure that all values entered in a column are unique. It can be used for storing e-mail addressesas each user must have a unique one. • Foreign Key: A foreign key links data from one table to another. This ensures that data in one table is not accidentallydeleted without corresponding changes in related tables. The checks above are all used to maintainthe consistency,accuracy, and logical integrity of the data.
  • 70. 6 Tips for Designing an Effective Data Entry GUI There is a subtle art to creating an appealing, well-structured data entry graphical user interface (GUI). Due to the repetitive interaction users have with data entry GUIs, small things like choice of colors and the size of margins can have actual consequences towards how the application is perceived and the productivity of users
  • 71. 1. Be Consistent 2. Make It Aesthetically Pleasing  Provide contrast between screen elements, allowing the user to easily scan the page and recognize important items.  Create groupings of related fields. Visually grouping related fields will add a sense of logical structure to your GUI. It also supports the previous point by further creating contrast between elements.  Ensure screen elements are aligned and have consistently spaced apart  Use colors and graphics effectively and simply. 3. Avoid Scrolling 4. Validate As You Go 5. Summarize Results 6. Keyboard Shortcuts Are Mandatory
  • 72. GENERAL GUDIELINES FOR DATA ENTRY IN GUI ▹ Data Entered Only Once ▹ Entry via Primary Display ▹ Feedback During Data Entry ▹ Fast Response ▹ Single Method for Entering Data ▹ Defined Display Areas for Data Entry ▹ Consistent Method for Data Change ▹ User-Paced Data Entry ▹ Explicit ENTER Action ▹ ENTER Key Labeling ▹ Explicit CANCEL Action ▹ Feedback for Completion of Data Entry ▹ Feedback for Repetitive Data Entries ▹ Feedback when Changing Data ▹ Keeping Data Items Short ▹ Partitioning Long Data Items ▹ Optional Abbreviation ▹ Distinctive Abbreviation ▹ Simple Abbreviation Rule ▹ Minimal Exceptions/Deviations to Abbreviation Rule