1. introduction to usability
TRANSCRIPT
Introduction to Usability
Giới thiệu về Tính Thân Thiện Người Dùng
Trần Tuấn Anh
VTC Online go.vn
Use Usable Usability
Inconsistency
Sự thiếu nhất quán
Affordance
Affordance là một đặc tính (quality) của một đốitượng (object) hay một môi trường (env), đặctính này cho phép người dùng thực hiện mộthành động.
Shortcuts
Giao diện quan trọng
• Giao diện ảnh hưởng lớn đến nhận thức (perception) về một sản phẩm– Một phần mềm thân thiện với người dùng sẽ dễ
được đón nhận
– Trang web khó dùng sẽ bị tẩy chay
• Sự cảm nhận nhiều khi hời hợt– Người dùng tự đổ lỗi cho chính mình khi không dùng
được sản phẩm
– Người dùng đầu cuối nhiều khi không phải là ngườiđưa ra quyết đinh mua bán
Mọi thứ đều có cái giá của nó
Hoặc là thiết kế từ ban đầu, hoặc trả giá sau này
Thiết kế Giao diện là Việc Khó
• Bạn không phải là người dùng– Đa số các quy trình sản xuất phần mềm giải quyết vấn đề
giao tiếp giữa các lập trình viên
– Mục đích chính của giao diện là giao tiếp với người dùng
• Người dùng luôn đúng– Nếu một vấn đề xảy ra thường xuyên, thì đó là lỗi của hệ
thống
• Tuy vậy, người dùng không phải lúc nào cũng đúng– Người dùng không có chuyên môn thiết kế
Lập trình Giao diện là Việc Khó
• Lập trình giao diện chiếm tỉ trọng lớn trong phát triển phần mềm
• Giao diện chiếm ~50%:
– Thời gian thiết kế
– Thời gian lập trình
– Thời gian bảo dưỡng
– Số lượng code
vì vậy Giao diện là một phần Quan trọng của Phần mềm
Định nghĩa Usability
• Usability: người dùng sử dụng tính năng của hệthống tốt đến thế nào?
• Các khía cạnh của Usability– Learnability : hệ thống có dễ học không?– Efficiency (Tính hiệu quả): một khi đã học, dùng hệ
thống có hiệu quả không?– Memorability: có dễ nhớ những gì bạn đã học
không?– Errors (Lỗi): hệ thống có ít lỗi không? Các lỗi có thể
khắc phục được không?– Satisfaction (Thỏa mãn): dùng hệ thống có thấy thú vị
không?
Các khía cạnh có độ quan trọng khác nhau
• Phụ thuộc vào đối tượng người dùng
– Người dùng mới cần hệ thống dễ học
– Người dùng không thường xuyên cần hệ thống dễnhớ
– Chuyên gia cần tính hiệu quả
• Người dùng không luôn luôn là mới hoặc chuyên gia
– Kinh nghiệm về chuyên môn
– Kinh nghiệm về ứng dụng
– Kinh nghiệm về tính năng
Usability chỉ là một thuộc tính
• Một hệ thống phần mềm cần phải quan tâm đến nhiều vấn đề:
– Tính năng
– Performance
– Chi phí
– Bảo mật
– Usability
– Độ ổn định
• Một thiết kế cần phải cân đối các thuộc tính này
Usability là một quy trình
Thiết kế
Thực thiĐánh giá
Thiết kế
• Task analysis (phân tích tác vụ)
• Design guidelines
– Tránh những lỗi cơ bản
– Có thể không rõ ràng hoặc mâu thuẫn
Implement
• Prototype
– Rẻ dễ thực hiện
– Low-fidelity: giấy
– Medium-fidelity: HTML, Photoshop, etc
Đánh gia (Evaluate)
• Kiểm nghiệm bản prototype trên thực tế
• Expert evaluation
– Heuristics and walkthroughs
• Predictive evalution
– Kiểm tra giao diện theo một mô hình
• Emprical evalutation
– Theo dõi người dùng sử dụng
Iterative Design
Thiết kế
Thực thiĐánh giá
Không bao giờ đúng ngay lần đầu
Mục tiêu
• Phương pháp phân tích tác vụ người dùng
• Áp dụng kiến thức về khả năng của con người vào tính thân thiện người dùng
• Guidelines cho việc thiết kế giao diện
• Sự quan trọng của iterative design
• Các phương pháp protyping
• Đánh giá/kiểm định giao diện
Tài liệu tham khảo
• Giáo trình MIT 6.831