Title: C
1Công ngh? ph?n m?m
- Thi?t k? giao di?n ngu?i dùng
2(No Transcript)
3(No Transcript)
4(No Transcript)
5(No Transcript)
6M?c tiêu
- G?i ý m?t s? nguyên lý thi?t k? t?ng quát cho
vi?c thi?t k? giao di?n ngu?i dùng - Gi?i thích các ki?u tuong tác khác nhau và ?ng
d?ng c?a chúng - Gi?i thích khi nào dùng bi?u di?n thông tin d?ng
d? h?a và d?ng text - Gi?i thích các ho?t d?ng chính trong quy trình
thi?t k? giao di?n ngu?i dùng - Gi?i thi?u các thu?c tính dùng du?c (usability)
và các cách dánh giá h? th?ng
7Các ch? d?
- Các v?n d? khi thi?t k?
- Quy trình thi?t k? UI
- Phân tích ngu?i dùng
- User interface prototyping
- Ðánh giá giao di?n
8Giao di?n ngu?i dùng
- Nên du?c thi?t k? cho phù h?p v?i ki nang, kinh
nghi?m và s? trông d?i c?a ngu?i dùng tuong lai
c?a h? th?ng. - Ngu?i dùng h? th?ng thu?ng dánh giá m?t h? th?ng
theo giao di?n thay vì ch?c nang. - M?t giao di?n thi?t k? t?i
- có th? d?n d?n vi?c m?t ngu?i dùng ph?m nh?ng l?i
nghiêm tr?ng. - là lí do vì sao nhi?u h? th?ng ph?n m?m không bao
gi? du?c dem ra s? d?ng.
9Nhân t? con ngu?i trong thi?t k? giao di?n
7
- Trí nh? ng?n h?n có h?n
- Ngu?i ta có th? nh? nhanh kho?ng 7 thông tin.
- N?u b?n dua ra nhi?u hon nhu v?y, ngu?i ta s? d?
nh?m l?n. - Nh?m l?n là chuy?n thu?ng
- Khi ngu?i dùng nh?m l?n và h? th?ng ch?y sai,
nh?ng c?nh báo và thông báo không dúng m?c có th?
làm ngu?i dùng cang th?ng hon và càng d? nh?m l?n
hon. - M?i ngu?i có nang l?c cao th?p khác nhau
- Ngu?i thi?t k? không nên ch? thi?t k? cho nang
l?c c?a chính mình. - M?i ngu?i h?p v?i nh?ng ki?u tuong tác khác nhau
- Ngu?i này thích hình ?nh, ngu?i khác thích ch?.
10Các nguyên t?c thi?t k? UI
- Thi?t k? UI ph?i xét d?n nhu c?u, kinh nghi?m và
nang l?c c?a ngu?i dùng h? th?ng. - Ngu?i thi?t k? c?n
- nh?n th?c du?c các h?n ch? v? v?t lý và tâm lý
c?a con ngu?i - Ví d? gi?i h?n c?a trí nh? ng?n h?n
- nh?n th?c r?ng con ngu?i ai cung có th? nh?m l?n.
- Các nguyên t?c thi?t k? UI dóng vai trò n?n t?ng
cho các thi?t k? giao di?n - Tuy r?ng không ph?i t?t c? các nguyên t?c d?u áp
d?ng du?c cho t?t c? các thi?t k?.
11Các nguyên t?c thi?t k? UI
Nguyên t?c Mô t?
Quen thu?c v?i ngu?i dùng Giao di?n nên dùng các thu?t ng? và khái ni?m rút ra t? kinh nghi?m c?a nh?ng ngu?i s? dùng h? th?ng nhi?u nh?t.
Nh?t quán giao di?n c?n nh?t quán sao cho các thao tác g?n gi?ng nhau có th? du?c kích ho?t theo cùng ki?u.
ng?c nhiên t?i thi?u Ngu?i dùng không bao gi? b? b?t ng? v? hành vi c?a h? th?ng.
khôi ph?c du?c Giao di?n nên có các co ch? cho phép ngu?i dùng khôi ph?c l?i tình tr?ng ho?t d?ng bình thu?ng sau khi g?p l?i.
hu?ng d?n ngu?i dùng Giao di?n nên có ph?n h?i có nghia khi x?y ra l?i và cung c?p các ti?n ích tr? giúp theo ng? c?nh.
ngu?i dùng da d?ng Giao di?n nên cung c?p các ti?n ích tuong tác thích h?p cho các lo?i ngu?i dùng h? th?ng khác nhau.
12Design principles
- User familiarity
- The interface should be based on user-oriented
terms and concepts rather than computer concepts.
- Eg., an office system should use concepts such as
letters, documents, folders etc. rather than
directories, file identifiers, etc. - Consistency
- The system should display an appropriate level of
consistency. - Commands and menus should have the same format,
command punctuation should be similar, etc. - Minimal surprise
- If a command operates in a known way, the user
should be able to predict the operation of
comparable commands
13Design principles
- Recoverability
- The system should provide some resilience to user
errors and allow the user to recover from errors.
- Undo, confirmation of destructive actions, 'soft'
deletes, etc. - User guidance
- Some user guidance such as help systems, on-line
manuals, etc. should be supplied - User diversity
- Interaction facilities for different types of
user should be supported. - For example, some users have seeing difficulties
and so larger text should be available
14Các v?n d? khi thi?t k? UI
- Hai v?n d? c?n xem xét
- Ngu?i dùng cung c?p thông tin cho h? th?ng b?ng
cách nào? - H? th?ng nên trình bày thông tin (output) cho
ngu?i dùng nhu th? nào?
15Các ki?u tuong tác
- Thao tác tr?c ti?p Direct manipulation
- Ch?n l?a b?ng menu Menu selection
- Ði?n form Form fill-in
- Dòng l?nh Command language
- Ngôn ng? t? nhiên a Natural language
16Các ki?u tuong tác
Ki?u tuong tác Uu di?m chính Nhu?c di?m chính Ví d? ?ng d?ng
Direct manipulation Tuong tác nhanh và tr?c quan D? h?c Có th? khó cài d?t. Ch? thích h?p khi có ?n d? hình ?n cho các tác v? và d?i tu?ng. Trò choi di?n t? Các h? th?ng dùng drag-n-drop
Menu selection Tránh l?i ngu?i dùng Không ph?i gõ nhi?u Ch?m ch?p d?i v?i ngu?i dùng nhi?u kinh nghi?m. Có th? ph?c t?p n?u có nhi?u l?a ch?n menu. Ða s? các h? th?ng thông d?ng
Form fill-in Nh?p d? li?u don gi?n D? h?c Ki?m tra du?c T?n không gian màn hình. Gây r?c r?i khi các l?a ch?n c?a ngu?i dùng không kh?p v?i các tru?ng c?a form. Khai thu?, x? lý n? cá nhân
Command language m?nh và linh d?ng Khó h?c x? lý l?i kém h? di?u hành
Natural language Ðáp ?ng du?c ngu?i dùng không chuyên Ð? m? r?ng C?n gõ nhi?u. Các h? th?ng hi?u ngôn ng? t? nhiên không dáng tin c?y. Information retrieval systems
17Multiple user interfaces
Graphical UI (Gnome/KDE)
Unix shell interface (ksh/csh)
X-windows GUI manager
Command language interpreter
Linux operating systems
18LIBSYS interaction
- Tìm ki?m tài li?u
- Ngu?i dùng c?n có kh? nang dùng các ti?n ích tìm
ki?m d? tìm tài li?u mà h? c?n. - Yêu c?u tài li?u Document request
- Ngu?i dùng yêu c?u m?t tài li?u du?c chuy?n t?i
máy tính c?a h? ho?c t?i m?t server d? in.
19Các giao di?n d?ng web
- Nhi?u h? th?ng web có các giao di?n d?a trên các
web form. - Các tru?ng c?a form có th? là menu, text input,
radio button, v.v.. - Trong ví d? LIBSYS, ngu?i dùng dùng menu d?
ch?n noi tìm ki?m và gõ chu?i t? khóa vào trong
m?t tru?ng text.
20Bi?u di?n thông tin
- Trình bày thông tin h? th?ng nhu th? nào cho
ngu?i dùng. - Thông tin có th? du?c trình bày tr?c ti?p (ví d?
text trong m?t trình so?n th?o) ho?c du?c bi?n
d?i thành m?t d?ng bi?u di?n khác (ví d? d?ng d?
h?a)
21Model-view-controller
- Model-View-Controller là cách ti?p c?n h? tr?
nhi?u ki?u bi?u di?n d? li?u
22Bi?u di?n thông tin
- Thông tin tinh
- Kh?i t?o ? d?u session. Không thay d?i trong su?t
session. - Có th? là s? ho?c van b?n text.
- Thông tin d?ng
- Thay d?i trong session và ph?i du?c thông báo v?i
ngu?i dùng. - Có th? là s? ho?c van b?n text.
23Các nhân t? khi hi?n th? thông tin
- Ngu?i dùng quan tâm d?n con s? chính xác hay m?i
tuong quan gi?a các s? li?u? - Các giá tr? c?a thông tin thay d?i nhanh ch?m ra
sao? Có ph?i l?p t?c thông báo khi có thay d?i? - Ngu?i dùng có ph?i hành d?ng d? ph?n ?ng v?i m?t
thay d?i? - Có giao di?n thao tác tr?c ti?p (direct
manipulation) không? - Thông tin d?ng s? hay text? Các giá tr? tuong d?i
có quan trong không?
24Bi?u di?n s? hay bi?u di?n tuong t?
- Bi?u di?n s? - Digital presentation
- Ng?n g?n chi?m ít không gian màn hình
- Cho bi?t giá tr? chính xác.
- Bi?u di?n tuong t? - Analogue presentation
- Nhanh chóng l?y du?c ?n tu?ng v? m?t giá tr?
- Có th? bi?u di?n các giá tr? tuong d?i
- D? th?y các giá tr? d? li?u d?c bi?t.
25Các phuong pháp trình bày
26Hi?n th? các giá tr? tuong d?i
27Data visualisation
- Các ki thu?t hi?n th? lu?ng l?n thông tin.
- Hình ?nh có th? cho th?y quan h? gi?a các th?c
th? và các xu hu?ng c?a d? li?u. - Các ví d?
- Thông tin th?i ti?t thu th?p t? nhi?u ngu?n
- Tr?ng thái c?a m?t m?ng di?n tho?i du?i d?ng m?t
t?p các nút du?c k?t n?i v?i nhau - M?t mô hình phân t? hi?n th? d?ng ba chi?u
- Các trang web hi?n th? d?ng m?t cây hyperbol.
28Hi?n th? màu
- Màu s?c b? sung thêm m?t chi?u cho m?t giao di?n
và giúp ngu?i dùng hi?u các c?u trúc thông tin
ph?c t?p. - Có th? dùng màu d? highlight các thông tin d?c
bi?t. - Các l?i thu?ng g?p trong vi?c dùng màu s?c trong
thi?t k? UI - Dùng màu s?c d? di?n d?t ý nghia
- L?m d?ng màu s?c trong trình bày.
29Hu?ng d?n v? dùng màu
- H?n ch? s? màu và m?c d? s?c s?.
- Dùng s? thay d?i màu d? báo hi?u thay d?i tr?ng
thái h? th?ng. - Dùng kí hi?u màu (color coding) d? h? tr? công
vi?c ngu?i dùng dang c? làm. - Highlight nh?ng di?m ngu?i dùng c?n chú ý
- Dùng kí hi?u màu m?t cách c?n tr?ng và nh?t quán.
- N?u màu d? du?c dùng cho các thông báo l?i không
nên dùng màu d? cho các thông báo d?ng khác d?
tránh ngu?i dùng nh?m l?n các thông báo màu d? là
thông báo l?i. - C?n th?n v? hi?u ?ng c?p dôi c?a màu s?c.
- M?t s? t? h?p màu gây khó d?c. Ví d? ngu?i ta
không th? cùng lúc chú ý c? màu d? và màu xanh
lam.
30Các thông báo l?i
- Thi?t k? thông báo l?i là vi?c r?t quan tr?ng
- Các thông báo l?i kém có th? d?n d?n vi?c ngu?i
dùng không ch?p nh?n s? d?ng m?t h? th?ng. - Các thông báo nên l?ch s?, ng?n g?n, nh?t quán và
mang tính xây d?ng. - Nên xét d?n background và kinh nghi?m c?a ngu?i
dùng nhu là nhân t? quy?t d?nh khi thi?t k? các
thông báo l?i.
31Các nhân t? khi thi?t k? n?i dung các thông di?p
Nhân t? Miêu t?
Ng? c?nh Các thông di?p do h? th?ng t?o ra c?n ph?n ánh ng? c?nh s? d?ng hi?n t?i b?t c? khi nào có th?. H? th?ng c?n c? g?ng nh?n bi?t du?c ngu?i dùng dang làm gì và nên t?o các thông di?p có liên quan d?n ho?t d?ng hi?n t?i c?a h?.
Kinh nghi?m Khi ngu?i dùng quen d?n v?i m?t h? th?ng, h? s? tr? nên khó ch?u b?i các thông di?p dài 'có ý nghia'. Tuy nhiên, nh?ng ngu?i m?i dùng l?i th?y nh?ng thông báo ng?n g?n khó hi?u. B?n nên cung c?p c? hai lo?i thông di?p và d? cho ngu?i dùng ki?m soát m?c d? xúc tích c?a các thông báo.
Trình d? ki nang Các thông di?p nên du?c di?u ch?nh theo trình d? ki nang cung nhu kinh nghi?m c?a ngu?i dùng. Thông di?p dành cho các lo?i ngu?i dùng khác nhau có th? du?c di?n d?t theo các cách khác nhau tùy theo b? thu?t ng? quen thu?c v?i ngu?i d?c.
Phong cách Các thông di?p nên mang tính tích c?c hon là tiêu c?c, nên dùng th? ch? d?ng hon là b? d?ng, không bao gi? nên có gi?ng xúc ph?m ho?c c? pha trò.
Van hóa N?u có th?, ngu?i thi?t k? nên là ngu?i quen thu?c v?i van hóa c?a d?t nu?c noi h? th?ng s? du?c bán. Có nh?ng khác bi?t van hóa rõ r?t gi?a châu Âu, châu Á và châu M?. M?t thông di?p phù h?p v?i n?n van hóa này có th? không ch?p nh?n du?c ? m?t n?n van hóa khác.
32L?i ngu?i dùng
- Gi? s? m?t y tá dang c?n tìm h? so c?a m?t b?nh
nhân nhung l?i gõ sai tên c?a b?nh nhân này.
M?i nh?p tên c?a b?nh nhân vào h?p bên du?i r?i
nh?n OK
Tên b?nh nhân
MacDonald, R.
OK
Cancel
33Thi?t k? thông di?p t?t và t?i
Thông báo l?i ki?u h? th?ng
L?i 27 S? h? so b?nh nhân không h?p l?
?
Thông báo l?i ki?u ngu?i dùng
OK
Cancel
Không có b?nh nhân dã dang kí nào có tên R.
MacDonalk Nh?n Patients d? xem danh sách b?nh
nhân Nh?n Retry d? nh?p l?i tên b?nh nhân Nh?n
Help d? tìm hi?u thêm thông tin
Patients
Help
Retry
Cancel
34Quy trình thi?t k? UI
- Thi?t k? UI là m?t quy trình l?p di l?p l?i v?i
s? liên l?c ch?t ch? gi?a ngu?i dùng và ngu?i
thi?t k?. - Ba ho?t d?ng chính trong quy trình
- User analysis Tìm hi?u ngu?i dùng s? làm gì v?i
h? th?ng - System prototyping phát tri?n m?t lo?t các b?n
m?u d? th? nghi?m - Interface evaluation th? nghi?m các b?n m?u cùng
v?i ngu?i dùng.
35Quy trình thi?t k?
36Phân tích ngu?i dùng
- N?u b?n không hi?u ngu?i dùng mu?n làm gì v?i m?t
h? th?ng, b?n khó có th? thi?t k? m?t giao di?n
hi?u qu?. - Các phân tích ngu?i dùng ph?i du?c mô t? theo
cách mà c? ngu?i dùng l?n ngu?i thi?t k? d?u có
th? hi?u du?c. - Các k?ch b?n mà b?n dùng d? miêu t? các tình
hu?ng s? d?ng di?n hình là m?t cách d? mô t? các
phân tích này.
37K?ch b?n tuong tác ngu?i dùng
Jane is a student of Religious Studies and is
working on an essay on Indian architecture and
how it has been influenced by religious
practices. To help her understand this, she would
like to access some pictures of details on
notable buildings but cant find anything in her
local library. She approaches the subject
librarian to discuss her needs and he suggests
some search terms that might be used. He also
suggests some libraries in New Delhi and London
that might have this material so they log on to
the library catalogues and do some searching
using these terms. They find some source
material and place a request for photocopies of
the pictures with architectural detail to be
posted directly to Jane.
38Các yêu c?u rút ra t? k?ch b?n
- Ngu?i dùng có th? không nh?n ra các t? khóa tìm
ki?m thích h?p, do dó c?n có cách giúp d? h? ch?n
t? khóa. - Ngu?i dùng ph?i có kh? nang ch?n collection c?n
tìm t?i dó. - Ngu?i dùng ph?i có kh? nang th?c hi?n tìm ki?m và
yêu c?u b?n sao c?a tài li?u liên quan.
39Các ki thu?t phân tích
- Phân tích tác v? - Task analysis
- Mô hình hóa các bu?c trong vi?c hoàn thành m?t
tác v?. - Ph?ng v?n và câu h?i di?u tra (questionnaire)
- H?i ngu?i dùng v? công vi?c c?a h?.
- Van hóa
- Quan sát ngu?i dùng khi h? dang làm vi?c.
40Phân tích tác v? thành cây phân c?p
41Ph?ng v?n
- T? ch?c các cu?c ph?ng v?n có c?u trúc linh d?ng
d?a trên các câu h?i m?. - Khi dó ngu?i dùng có th? cung c?p các thông tin
mà h? cho là quan tr?ng không ch? các thông tin
mà b?n dã d?nh thu th?p. - Ph?ng v?n theo nhóm t?o di?u ki?n d? ngu?i dùng
th?o lu?n v?i nhau v? công vi?c c?a h?.
42Van hóa
- M?t ngu?i quan sát ngu?i dùng khi h? dang làm
vi?c và h?i v? công vi?c c?a h? (không theo k?ch
b?n). - Có giá tr? vì nhi?u tác v? c?a ngu?i dùng mang
tính tr?c quan và h? c?m th?y r?t khó miêu t? và
gi?i thích các tác v? này. - Giúp hi?u v? vai trò c?a các ?nh hu?ng xã h?i và
t? ch?c d?i v?i công vi?c.
43H? so tìm hi?u van hóa
M?t tr?m di?u khi?n không luu có m?t s? 'bàn'
di?u khi?n, trong dó các bàn di?u khi?n các vùng
không gian c?nh nhau cung du?c d?t c?nh nhau. Các
chuy?n bay trong m?t vùng du?c bi?u di?n b?ng
các bang gi?y l?ng vào các giá g? theo th? t?
ph?n ánh v? trí c?a chúng trong vùng. N?u không
còn d? ch? trên giá (nghia là khi vùng không gian
dó r?t dông máy bay), nh?ng ngu?i di?u khi?n tr?i
các bang gi?y lên cái bàn vi?t d?t tru?c cái giá
g?. Khi chúng tôi quan sát nh?ng ngu?i di?u
khi?n, chúng tôi nh?n th?y c? m?t lúc h? l?i nhìn
sang giá treo các bang gi?y c?a vùng bên c?nh.
Chúng tôi h?i t?i sao. H? tr? l?i r?ng, n?u bàn
di?u khi?n bên c?nh ph?i tr?i gi?y lên bàn, di?u
dó có nghia s? có nhi?u chuy?n bay bay vào vùng
c?a h?. Vì v?y, h? s? c? g?ng tang t?c các chuy?n
bay trong vùng c?a mình d? 'l?y ch?' cho các
chuy?n bay dang d?n.
44Rút ra t? tìm hi?u van hóa
- Nh?ng ngu?i di?u khi?n ph?i nhìn th?y t?t c? các
chuy?n bay trong m?t vùng. Do dó, ph?i tránh ki?u
hi?n th? v?i thanh kéo mà trong dó các chuy?n bay
trên d?nh và du?i dáy màn hình có th? bi?n m?t. - Giao di?n ph?i có cách nào dó d? báo cho ngu?i
di?u khi?n v? s? chuy?n bay t?i các vùng giáp
ranh d? h? có th? l?p k? ho?ch cho công vi?c c?a
mình.
45B?n m?u UI
- M?c tiêu c?a b?n m?u là cho phép ngu?i dùng có
du?c tr?i nghi?m tr?c ti?p d?i v?i giao di?n. - N?u không có tr?i nghi?m tr?c ti?p, không th?
dánh giá kh? nang s? d?ng m?t giao di?n. - Quy trình làm b?n m?u có th? có 2 bu?c
- Lúc d?u, có th? dùng b?n m?u trên gi?y
- Sau dó tinh ch?nh thi?t k?, và phát tri?n các b?n
m?u t? d?ng hóa v?i d? ph?c t?p ngày càng tang.
46B?n m?u trên gi?y
- Dùng các b?n v? nháp v? UI d? duy?t qua các k?ch
b?n. - Dùng storyboard d? trình bày m?t chu?i tuong tác
v?i h? th?ng. - B?n m?u gi?y là cách thu th?p ph?n ?ng c?a ngu?i
dùng d?i v?i m?t d? xu?t thi?t k?.
47Các ki thu?t làm b?n m?u
- Script-driven prototyping
- Vi?t m?t lo?t các script và screen b?ng các công
c? nhu Macromedia Director. - Khi ngu?i dùng tuong tác, screen s? chuy?n sang
hi?n th? màn hình ti?p theo. - Visual programming
- Dùng m?t ngôn ng? chuyên d?ng cho phát tri?n
nhanh nhu Visual Basic. - Internet-based prototyping
- Dùng m?t trình duy?t web browser và các script
kèm theo.
48Ðánh giá UI
- C?n th?c hi?n m?t s? dánh giá UI d? dánh giá m?c
d? thích h?p. - Ðánh giá d?y d? và toàn b? thì quá d?t và không
th?c t? cho h?u h?t các h? th?ng. - V? lí tu?ng, m?t giao di?n c?n du?c dánh giá theo
m?t d?c t? v? usability. Tuy nhiên, ngu?i ta hi?m
khi vi?t các d?c t? dó.
49Các thu?c tính usability
Thu?c tính Miêu t?
Kh? nang h?c Ngu?i dùng m?i c?n bao lâu d? có th? ho?t d?ng hi?u qu? v?i h? th?ng?
T?c d? v?n hành T?c d? ph?n ?ng c?a h? th?ng có dáp ?ng t?t công vi?c c?a ngu?i dùng?
Ch?u l?i M?c d? dung th? l?i c?a h? th?ng d?i v?i l?i ngu?i dùng.
Kh? nang khôi ph?c Kh? nang h? th?ng khôi ph?c t? l?i c?a ngu?i dùng.
Tuong thích h? th?ng g?n bó ch?t ch? v?i m?t ki?u làm vi?c d?n dâu?
50Các ki thu?t dánh giá don gi?n
- Câu h?i di?u tra d? l?y ph?n h?i c?a ngu?i dùng.
- Quay video v? vi?c s? d?ng h? th?ng r?i sau dó
dánh giá n?i dung. - Cài các do?n mã thu th?p thông tin v? các ti?n
ích du?c s? d?ng và l?i c?a ngu?i dùng. - Ph?n m?m có ch?c nang thu th?p ph?n h?i tr?c
tuy?n c?a ngu?i dùng.
51Tóm t?t
- Các nguyên lý thi?t k? UI giúp thi?t k? UI t?t.
- Các ki?u tuong tác direct manipulation, menu
systems form fill-in, command languages và
natural language. - Nên dùng hi?n th? d? h?a d? bi?u di?n các xu
hu?ng và các giá tr? tuong d?i. Dùng hi?n th? s?
khi c?n con s? chính xác. - Nêu dùng màu s?c m?t cách h?n ch? và nh?t quán.
52Tóm t?t
- Quy trình thi?t k? UI g?m phân tích ngu?i dùng,
làm b?n m?u h? th?ng và dánh giá b?n m?u. - M?c dích c?a phân tích ngu?i dùng là d? ngu?i
thi?t k? nh?n ra du?c cách ho?t d?ng c?a ngu?i
dùng. - Quy trình làm b?n m?u UI nên b?t d?u t? b?n m?u
gi?y làm co s? cho b?n m?u t? d?ng sau dó. - Các m?c tiêu c?a dánh giá UI là d? thu th?p ph?n
h?i v? cách c?i ti?n thi?t k? giao di?n và d?
dánh giá xem giao di?n th?a mãn d?n dâu các yêu
c?u v? usability.