Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Cấu trúc môn học
Tương tác người máy
Human Computer Interaction - HCI
• 60 tiết LT+ đồ án môn học + bài tập
• Cần các kiến thức cơ bản về CNTT, đồ hoạ,
tâm lý nhận thức, công thái học
• Cung cấp những nguyên lý chung về tương
tác người máy
Department of Software Engineering
Faculty of Information Technology
Hanoi University of Technology
• Cung cấp những kiến thức cần thiết để học
các môn chuyên ngành hẹp và áp dụng vào
thiết kế, xây dựng, đánh giá phần mềm.
TEL: 04-8682595 FAX: 04-8692906
Email: cnpm@it-hut.edu
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 1 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 2
Cấu trúc môn học (tiếp)
Cấu trúc môn học (tiếp)
II-Phần II Phân tích và thiết kế giao tiếp người
dùng (User Interface Analyse and Design)
Chương IV: Các nguyên tắc chính và vòng đời
hình sao trong thiết kế giao tiếp Người
dùng – Máy tính
Chương V: Mô hình GOM, Keytrock,… (GOM
and Keytrock Models)
Chương VI: Đặc tả yêu cầu người dùng và phân
tích nhiệm vụ
Chương VII: Ký pháp đối thoại và thiết kế
• Nội dung môn học: 3 phần 10 chương
I- Phần I Phần cơ sở (foundation) gồm 4
chương:
Chương 0: Tổng quan về HCI
Chương I: Tâm lý nhận thức của Con người
trong giao tiếp và xử lý
Chương II: Nhân tố Máy tính trong tương tác
người máy
Chương III: Các dạng đối thoại trong tương
tác người máy (Dialogue styles for HCI)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 3 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 4
Tài liệu tham khảo (Reference)
Cấu trúc môn học (tiếp)
[1] Jenny Preece et al: Human-Computer Interaction,
Addison-Wesley, 1994
III-Phần III Cài đặt và đánh giá tương tác người
dùng (Users Interface Implementation
and Evaluation ) gồm 2 chương:
[2] Dix, Finlay, Abowd and Beale: Human -Computer
Chương VII: Hỗ trợ Cài đặt (Implementation)
Chương VIII: Các kỹ thuật đánh giá phần mềm
Interaction (course and book), Prentice-Hall,
second edition, 1993
(http: //www.hcibook.com/hcibook/toc.html)
[3] Gary Perlman, Ohio State University: User
Interface
(Evaluation Techniques)
• Đánh giá: Đồ án môn học + Bài tập
development (course), SEI Curriculum Module,
11-1989
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 5 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 6
1
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Tài liệu tham khảo (tiếp)
Tài liệu tham khảo (tiếp)
[4] C.Machgeels: Interfaces Humains- ordinateur (cours),
Département Informatique, ULB, 2001-2002
[9] Dự thảo ®Ò c¬ng m«n häc HCI- PGS Nguyễn Văn Ba
[5] J.Coutas, Interface Home-ordinareur,
khoa CNTT.
[10] Bản đề cương HCI (Human Computer Interface -Hiệp
Conception et réalisation, Dunod Paris 1990 (Bá)
(Nghiêng về hướng tâm lý khoa học nhận thức)
[6] Andy Downton, Engineering the Human-
Computer Interface , McGraw Hill 1992.
[7] J.P.Menadier, l’Interface uilisateur pour une
hội CNPM ACM & IEEE ). course CS1
(Use Interface Design and Development)
[11] W.Brener, R. Zarnekow, H. Witig: Software
Informatique plus conviale, Dunod Paris 1991.
Intelligent Agents. 1998.
[8] Sommerville, Software Engineering (chapter 17-
User Interface), Addison 1996 (BM)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 7 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 8
0.1 Định nghĩa và khái niệm
Chương 0: Tổng quan về HCI
• HCI: Human-Computer Interaction
• CHI: Computer – Human Interaction
• IHO: Interaction Humains Ordinateur
• IHM: Interaction Homme Machine
• Tương tác người máy
0.1. Thuật ngữ và khái niệm
0.2. Người dùng
0.3. Môi trường
0.4 Lĩnh vực liên quan
0.5. Chất lượng
0.6. Phương tiện và công cụ
0.7. Đầu vào
0.8. Đầu ra
0.9. Công cụ (Tools)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 9 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 10
Định nghĩa và vai trò của HCI (tiếp)
Định nghĩa (tiếp)
• Không có định nghĩa chính xác .Tuy nhiên có thể dùng
hai định nghĩa:
• Định nghĩa 1
Tập các quá trình, đối thoại và các hành động, qua đó ND con
người sử dụng và tương tác với MT (Backer & Buxton, 1987).
Vai trò của HCI:
Tạo ra các Hệ Thống an toàn và sử dụng được
(Usability) như các Hệ Thống chức năng.
Usability: Là khái niệm trong trong HCI có thể hiểu là
làm cho HT dễ học và dễ dùng.
• Định nghĩa 2
Là một lĩnh vực liên quan đến thiết kế, đánh giá và cài đặt Hệ
thống MT tương tác cho con người sử dụng và nghiên cứu các
hiện tượng chính xảy ra trên đó (ACMSIGCHI 1992).
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 11 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 12
2
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
0.3 Môi trường làm việc
0.2 Người dùng
• Trước đây:
• Trước đây:
- Là các kỹ thuật viên, chuyên gia
• Hiện nay: Đa dạng
- Máy tính lớn, không nối mạng
- Người sử dụng máy tính không phải là
người thao tác, điều khiển máy tính.
- Môi trường: văn bản dạng text
- Người dùng đầu cuối (có ít kiến
• Ngày nay :
thức về tin học)
- Máy tính cá nhân, mạng, internet
- Môi trường: đa dạng, văn bản, đồ hoạ, trực
quan
- Các kỹ thuật viên, chuyên gia
- Yêu cầu đòi hỏi cao
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 13 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 14
0.4 Lĩnh vực liên quan (tiếp)
0.4 Lĩnh vực liên quan
4 thành phần chính: Môi trường, Con người,
Máy tính và Quá trình phát triển (ACM SIGCHI
1992)
• Trước đây : Phương pháp tính
• Ngày nay:
- Phương pháp tính, tính toán ký hiệu, Soạn
thảo Văn bản, xử lý đồ hoạ, hình ảnh, âm
thanh, đa phương tiện.
- §an quyện dữ liệu, lệnh và kết quả Đối
thoại (Dialogue),
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 15 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 16
Con người
Môi trường (Use and Context)
• Mục đích: Hiểu con người như là một Bộ xử lý
• Sử dụng những gì mà máy tính cung cấp được gọi
là “ứng dụng”. Tổ chức xã hội, công việc, kinh
doanh tương tác với ứng dụng đó
• Lĩnh vực ứng dụng (Application Area): phân loại
các ứng dụng và các ứng dụng đặc biệt
thông tin
Cảm nhận
Lưu trữ (các loại bộ nhớ)
Xử lý
• Ngôn ngữ, giao tiếp và tương tác
Các sắc thái ngôn ngữ: cú pháp , ngứ nghĩa
Các mô hình hình thức của ngôn ngữ
• Công thái học
- cá nhân, nhóm
- giao tiếp hướng văn bản
- giao tiếp hướng truyền thông
- Môi trường thiết kế, lập trình, CAD/CAM
- Trợ giúp trực tuyến, điều khiển HT liên tục
Bố trí hiện và điều khiển, quan hệ
Nhận thức của con người và giới hạn,…
• Sự thích nghi Người-Máy
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 17 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 18
3
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Qui trình phát triển
Máy tính và kiến trúc tương tác
(Computer System and Interface Architecture)
• Bao gồm thiết kế và kỹ thuật
• Các tiếp cận thiết kế
• Kỹ thuật và công cụ cài đặt
• Kỹ thuật đánh giá
• Hệ thống mẫu và Case studies
• Các thiết bị vào ra
• Các kỹ thuật đối thoại; vào, ra và tương tác
• Các kiểu đối thoại
• Đồ hoạ máy tính
• Kiến trúc đối thoại
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 19 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 20
0.6 Phương tiện và công cụ
0.5 Chất lượng
• Trước đây: Trạng thái ứng xử đúng với dữ
liệu đúng
• Tiếp theo: Trạng thái đúng với dữ liệu có
• Hai thành phần cơ bản:
Con người và máy tính
Phương tiện: đối thoại
=> Muốn làm tương tác phải Hiểu đối tượng & Con người
thể sai
Y/c
• Ngày nay: Thân thiện, sinh động, dễ
Hoạt động
T/L
dùng
Đối thoại
Trao đổi giữa các
môđun
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 21 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 22
Thành phần Swing của JBuilder
Phương tiện và công cụ (tiếp)
• Công cụ: Visual Basic, Jbuilder của Java 1.4
Chú ý Thành phần Swing là phần mới của Java
để xây dựng giao tiếp đồ hoạ: menu, các hộp
công cụ như Combo, List, Dialogue, . . .
• Java là NNLT hướng đối tượng, ra đời 5 /1995 do
nhóm chuyên gia đứng đầu là James Goshing thuộc
công ty Sun Microsystems thiết kế. Năm 1991 lấy tên là
Oak, năm 1995 chính thức lấy tên Java, và được thiết
kế lại để xây dựng chương trình ứng dụng Internet.
Ngoài ứng dụng Web, Java còn có đủ đặc tính lập trình
để thiết kế chương trình ứng dụng độc lập.
• Nếu SV chưa học cần giới thiệu khoảng 10 tiết;
nếu không thì chỉ cần nêu khoảng 1 tiết.
• Độc lập với hệ nền, do vậy có thể chạy trên bất cứ máy
tính nào có hệ điều hành hỗ trợ Java Virtual Machine.
• Là ngôn ngữ có tính phân tán với khả năng nối mạng
cài sẵn .
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 23 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 24
4
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Thành phần Swing (tiếp)
Thành phần Swing (tiếp)
• Các bản Java trước (<1.2), các thành phần đồ hoạ được
• Swing chỉ thay thế UI như Button, Textfield, TextArea;
Một số thành phần khác: Graphics, Color, Font,
FontMetrics, LayoutManager vẫn nhờ AWT. Nó thừa
kế các lớp trong thư viện AWT.
xây dựng trong thư viện AWT (Abstract Windows
Toolkit). AWT là thư viện hữu ích trong thiết kế
chương trình ứng dụng GUI nhưng không dùng để
thiết kế những Project toàn diện.
• Các thành phần Swing có tên gọi kèm theo tiếp đầu
ngữ J, gồm trên 250 lớp. Swing là giải pháp toàn diện
để thiết kế các trình ứng dụng GUI trung tâm.
• Để giới thiệu về Swing ta có thể quy về các thành phần
• Do AWT phụ thuộc nhiều vào hệ nền, nên từ bản Java
2 trở đi các thành phần giao diện người dùng (UI) thay
thế bằng tập hợp thành phần linh hoạt, đa năng và
mạnh mẽ: thành phần Swing.
• Swing.* là gói thuộc Javax chứa thành phần UI dạng
đồ hoạ.
• Swing ít phụ thuộc vào hệ đích hơn và tài dần dần thay
thế cho AWT.
chính như sau :
- JComponent là lớp trên của tất cả các thành phần
Swing lightweight, bản thân nó thì được thừa kế từ lớp
Container trong sơ đồ phân cấp đồ hoạ Java.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 25 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 26
Sơ đồ phân cấp của Swing
Java Swing (tiếp)
Swing UI có thể chia thành bốn thành phần sau:
- javax.swing.AbstractButton. Lớp trừu tượng,
chứa định nghĩa các nút: JButton, JToggleButton,
CheckBox, JRadioButton, JMenuItem và JMenu.
- javax.swing.JtextComponent: chứa các thành
phần văn bản:Jlabel, Jlist, JcomboBox, JmenuBar,
Jpanel, JoptionPane, JscrollBar, JscrollPane,
JfileChooser và gồm các lớp : JpoPupMenu,
JtoolBar, JlayeredPane, JrootPane, JprogressBar,
JtoolTip, JtabbedPane, Jtree, JinternalFrame,
Jslider, Jtable, Jpane, Jseparator, JsplitPane, . . .
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 27 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 28
Java Swing (tiếp)
Java Swing (tiếp)
- Ngoài hai thành phần trên thì Swing còn chứa
- Các thành phần Swing Heavyweight:
các thành phần khác như sau.
+ javax.swing.border: Lớp chứa tất cả các kiểu
đường viền
+ javax.swing.colorchooser: Lớp và giao diện
hỗ trợ cho các thành phần. JcolorChooser dùng
để cho phép lựa chọn màu.
+ javax.swing.event: Gói đặc biệt chứa các loại
biến cố và các đối tượng lắng nghe. Các thành
phần Swing hỗ trợ các biến cố và đối tượng
lắng nghe được định nghĩa trong java.awt.event
và java.beans .
+ Japplet (javax.swing.Japplet): Lớp tạo tiểu
trình
+ Jframe (javax.swing.Jframe): Là cửa sổ không
lồng bên trong cửa sổ khác, là cơ sở chính chứa
các thành phần UI. Khi muốn thêm một thành
phần thì không trực tiếp thêm vào Jframe mà
phải thêm vào JrootPane - thành phần con của
Jframe.
+ JDialog: Là dạng cửa sổ tạm, được bật lên
nhằm thu nhận thông tin từ ND, hoặc thông báo
mỗi khi có biến cố xảy ra.
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 29 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 30
5
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Java Swing (tiếp)
Thiết kế các thành phần giao diện với
Swing
khiển
điều
cấp
các
• Chương trình đồ hoạ Java được điều khiển bởi biến
cố. Khi chương trình vận hành tức là tương tác với ND
thì tất mọi biến cố chi phối việc thi hành chương trình .
Biến cố phát sinh từ các tác động bên ngoài của con
người như: bấm chuột, nhấn phím . . . , hay từ HĐH.
Các lớp biến cố được chứa trong gói Java.awt.event
ngoại trừ một số biến cố như : EventListenerList,
ListSlectionEvent, chứa trong gói Javax.Swing.event .
• Swing quản lý các đối tượng lắng nghe thông qua
ListenerList, nó được gọi từ EventListenerList.
+ javax.swing.filechooser: Thành phần hỗ trợ
cho JfileChooser.
+ javax.swing.plaf: Lớp chứa các kiểu nhìn và
cảm nhận (look–and–feel) từ sơ đồ phân cấp đồ
hoạ API, dùng để định nghĩa các thủ tục thành
phần giao diện người dùng. Hầu hết các lớp
này được chứa trong gói trừu tượng, chúng
được thiết kế chỉ dành cho các nhà phát triển.
Một số lớp con như sau:javax.swing.table -
Jtable,
Cung
javax.swing.text: Chứa các lớp và giao diện
được sử dụng bởi các thành phần văn bản.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 31 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 32
Một số biến cố và phương thức xử lý
Thiết kế các thành phần giao diện với
Swing (tiếp)
1- ActionEvent
+ Nguyên nhân: Nhấp nút lên đối tượng, trường văn
bản ,...
• Khi nhận được biến cố phát sinh do tác động lên các
đối tượng nguồn thì đối tượng lắng nghe (listener) đã
được đối tượng nguồn đăng ký trước sẽ nhận và xử lý
biến cố dựa theo chương trình đã lập. Giữa đối tượng
nguồn và đối tượng lắng nghe luôn liên lạc với nhau
thông qua phương thức xử lý biến cố (handler) đặt trên
đối tượng lắng nghe .
+ Giao diện lắng nghe : ActionListener
+ Phương thức XL:actionPerformed(ActionEvent e)
2- ItemEvent
+ Nguyên nhân: Chọn khoản mục mới, nhấp ô
chọn
+ Giao diện lắng nghe: ItemListener
+ Phương thức xử lý:ItemStateChanged(ItemEvent e)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 33 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 34
Một số biến cố và phương thức xử lý
(tiếp)
Một số biến cố và phương thức xử lý
(tiếp)
3- WindowEvent
+ Nguyên nhân: Mở, đóng, thu nhỏ thành biểu
tượng
vii)windowDeactivated(WindowEvent e)
4- ContainerEvent
+ Nguyên nhân: Bổ sung hoặc loại bỏ thành phần
khỏi vật chứa
+ Giao diện lắng nghe: WindowListener
+ Phương thức xử lý:
+ Giao diện lắng nghe: ContainerListener
+ Phương thức xử lý :
i)componentAdded(ContainerEvent e)
ii)componentRemoved(ContainerEvent e)
i)window Closing(WindowEvent e)
ii)windowOpened(WindowEvent e)
iii)windowIconified(WindowEvent e)
iv)windowDeiconified(WindowEvent e)
v)windowClosed(WindowEvent e)
vi)windowActivated(WindowEvent e)
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 35 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 36
6
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Một số biến cố và phương thức xử lý
(tiếp)
Một số biến cố và phương thức xử lý
(tiếp)
6- FocusEvent (mở rộng gói java.awt.ComponentEvent)
+ Nguyên nhân: Dời tiêu điểm đến/ ra khỏi thành phần :
5- ComponentEvent
+ Nguyên nhân: Di chuyển, định kích cỡ, dấu hoặc
Component
hiện lại Component
+ Giao diện lắng nghe : FocusListener
+ Phương thức xử lý :
+ Giao diện lắng nghe: ComponentListener
+ Phương thức xử lý :
i)focusGained(FocusEvent e)
ii)focusLost(FocusEvent e)
7- TextEvent
+ Nguyên nhân:Thay đổi văn bản(JtextComponent)
+ Giao diện lắng nghe : TextListener
i)componentMoved(ComponentEvent e)
ii)componentHidden(ComponentEvent e)
iii)componentResized(ComponentEvent e)
iv)componentShown(ComponentEvent e)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 37 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 38
Một số biến cố và phương thức xử lý
(tiếp)
Một số biến cố và phương thức xử lý
(tiếp)
+ Giao diện lắng nghe: có hai giao diện lắng nghe là
MouseListener và MouseMotionListener
+ Phương thức xử lý.
- Với MouseListener :
: KeyListener
+ Phương thức xử lý : textValueChanged(TextEvent e)
8- KeyEvent
+ Nguyên nhân: Thả hoặc nhấn phím Component
+ Giao diện lắng nghe
+ Phương thức xử lý :
i) KeyPressed(KeyEvent e)
ii) KeyReleased(KeyEvent e)
iii)KeyTyped(KeyEvent e)
i) MousePressed(MouseEvent e)
ii) MouseReleased(MouseEvent e)
iii) MouseEntered(MouseEvent e)
iv)MouseExited(MouseEvent e)
v)MouseClicked(MouseEvent e)
-Với MouseMotionListener :
i) MouseDragged(MouseEvent e)
9- MouseEvent
+ Nguyên nhân:Di chuyển chuột Component
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 39 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 40
Thiết kế vùng chứa
Một số biến cố và phương thức xử lý
(tiếp)
• Các thành phần để thiết kế vùng chứa sau: Jframe,
tạo khung cơ sở chứa các thành phần Jpanel
:
ii) MouseMoved(MouseEvent e)
10- AdjustmentEvent
+ Nguyên nhân: Di chuyển thanh cuốn JscrollBar
+ Giao diện lắng nghe
: AdjustmentListener
+ Phương thức xử lý
adjustmentValueChanged(AdjustmentEvent e)
Jpanel, Japplet. Với:
- Jframe:
hoặc các thành phần giao diện.
- Japplet: tạo tiểu trình có thể chứa các Jframe
- Jpanel: là các thành phần trực tiếp dùng để biểu diễn
các nút, nhãn, văn bản, . . ., được đặt bám vào các
Jframe/Japplet. Jpanel có thể được đặt lồng nhau.
:
11- ListSelectionEvent
+ Nguyên nhân: Chọn khoản mục: Jlist
+ Giao diện lắng nghe: ListSelectionListener
+ Phương thức xử lý
- Ngoài các thành phần dùng để thiết kế, Swing còn thừa
kế các trình quản lý các thành phần giao diện (layout
manager) nhằm đạt hiệu quả cao như: FlowLayout,
GridLayout, GridBagLayout, BorderLayout, ...
ValueChanged(ListSelectionListener e)
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 41 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 42
7
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Sơ đồ phân cấp của Jframe
Lớp JrootPane
(javax.swing.JrootPane)
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 43 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 44
Lớp quản lý bố cục
Một vài thí dụ dùng Swing để xây
dựng giao tiếp UI
H×nh 1: Cöa sæ so¹n th¶o chÝnh
Dept. of SE, 2002
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 45 HUT, Falt. of IT HCI - One. 46
Thí dụ dùng Swing để xây dựng giao
tiếp UI (tiếp)
Thí dụ dùng Swing để xây dựng giao
tiếp UI (tiếp)
Hình 3: Sử dụng JColorChooser
Hỡnh 2: Sử dụng jFileChooser
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 47 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 48
8
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Môi trường Swing khi thiết kế
UI
Một vài đoạn mã lệnh cho các
sự kiện
void fileOpen() {
if (!okToAbandon()) {return;}
if (JFileChooser.APPROVE_OPTION ==
jFileChooser1.showOpenDialog(this)) {
openFile(jFileChooser1.getSelectedFile().get
Path());
}
this.repaint();
}
Đoạn mã lệnh cho sự kiện khi chọn Open trên
Menu hay nhấn biểu tượng Open trên ToolBar
Thiết kế 3 phím lệnh với Jbutton trên JToolBar
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 49 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 50
Chương I: Tâm lý nhận thức của Con
Mã lệnh cho thủ tục mở File
người trong giao tiếp và xử lý
void openFile(String fileName) {
try
{File file = new File(fileName);
int size = (int)file.length();
int chars_read = 0;
FileReader in = new FileReader(file);
char[] data = new char[size];
while(in.ready()) {
chars_read += in.read(data,
chars_read, size - chars_read);}
0,
1.1 Tổng quan
1.2 Kênh vào ra
1.3 Bộ nhớ
1.4 Lập luận và giải quyết vấn đề
1.5 Tâm lý và thiết kế hệ tương tác
in.close();
jTextArea1.setText(new String(data,
chars_read));
this.currFileName = fileName;
this.dirty = false;
statusBar.setText("Opened"+fileName);
updateCaption();}
catch (IOException e)
{ statusBar.setText("Error opening "+fileName);}}
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 51 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 52
1.2 Kênh vào ra
1.1 Tổng quan
• Thực hiện thông qua:
• Chức năng: Con người được xem như một
Quan sát (Vision): kích thứơc, màu sắc và độ
tương phản
Đọc ( Reading): nhận mẫu, mã hoá bởi biểu
diễn bên trong => cú pháp, ngữ nghĩa.
Nghe (Hearing): khoảng cách, hướng của đối
tượng
hệ thống xử lý thông tin tinh tế, gồm:
Hệ thống cảm nhận (sensory system)
Hệ thống nhận thức (cognitif system)
Hệ thống xử lý (motor system)
• Tương tác: qua kênh vào ra
Nhấn phím: sự phản hồi lại của môi trường
Chuyển động: thời gian trả lời và thời gian
Thông tin nhận và trả lời qua kênh vào
Thông tin lưu trữ trong bộ nhớ
Thông tin được xử lý và ứng dụng theo nhiều
cách khác nhau.
chuyển động.
- Thời gian chuyển động: phụ thuộc tuổi tác, độ tinh
tế
- Thời gian trả lời: phụ thuộc kiểu kích thước
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 53 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 54
9
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
1.3 Bộ nhớ
• Luật Fit: miêu tả thời gian, chi phí để nhận
được kết quả (đích)
- D : K/c dịch chuyển
- L: kích thước đích
X0
X1 X2
Đích
D
- Xi: k/c dịch chuyển sau i
lần, Xi = x Xi-1
• Hai loại bộ nhớ:
Bộ nhớ ngắn hạn (STM)
Bộ nhớ dài hạn (LTM)
• Mô hình bộ nhớ
- Vì X0= D => Xn = nx D
L
- Xn L/2 => n x D L/2
Rehearsal
Attention
- n = -log2 (2D/L)/log2
T = I log2 2D/L với :
I = -(s + c +m)/log2 100 ms
Bộ nhớ
LTM
Bộ nhớ
cảm nhận
Bộ nhớ STM
bộ nhớ l/v
= s + c + m
Thời gian chạm đích chỉ phụ thuộc vào tỉ số
D/L (khoảng cách phải nhỏ, đích phải lớn
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 55 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 56
Bộ nhớ dài hạn
Bộ nhớ (tiếp)
• Các đặc trưng của bộ nhớ dài hạn:
Bộ nhớ cảm nhận (sensory memory): chứa kích
thích (stimulus) từ nhìn, nghe, sờ. Thông tin này
được chuyển sang bộ nhớ STM bởi “Attention”,
thực chất là một bộ lọc .
Bộ nhớ ngắn hạn (Short Tem Memory): hay còn gọi
- Cấu trúc tuyến tính
- Truy nhập chậm: 1/10 s
- Hư hỏng: chậm
- Khả năng không hạn chế
- Thông tin biểu diễn qua mạng ngữ nghĩa, frame, hoặc luật sản
suất,. . .
• Hai kiểu bộ nhớ LTM:
là bộ nhớ làm việc, có các đặc trưng sau:
- Truy cập nhanh: 700 ms
- Hư hỏng (Decay): nhanh (200ms)
- Khả năng hạn chế: 7 2 chữ số
- rời rạc (episotic): bộ nhớ tuần tự các sự kiện
- Ngữ nghĩa (Semantic): bộ nhớ có cấu trúc của các sự kiện, khái
niệm và kiểu.
• Thông tin trong bộ nhớ ngữ nghĩa lấy từ bộ nhớ rời rạc
Bộ nhớ dài hạn (Long Tem Memory): hay còn gọi là
bộ nhớ lưu trữ. Thông tin từ bộ nhớ STM sang LTM
thực hiện bởi “tổng duyệt ” Rehearsal”.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 57 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 58
Bộ nhớ dài hạn (tiếp)
Bộ nhớ dài hạn (tiếp)
• Bộ nhớ ngữ nghiã cấu trúc
Cung cấp truy nhập thông tin
Biểu diễn mối quan hệ giữa các bit của thông tin
Hỗ trợ suy diễn
• Mô hình mạng ngữ nghĩa (semantic network)
Thừa kế: các nút con thừa kế tính chất các nút cha
Mối quan hệ giữa các bit thông tin được tường minh
Hỗ trợ suy diễn qua thừa kế
• Mô hình frame
Thông tin được biểu diễn dưới dạng cấu trúc dữ liệu. Các Slots trong
xcấu trúc được thể hiện với giá trị đặc biệt cho 1 thể hiện đã cho của
dữ liệu
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 59 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 60
10
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Bộ nhớ dài hạn (tiếp)
Mô hình Scrips
Bộ nhớ dài hạn (tiếp)
Mô hình frame
Collie
Fixed: nhánh của chó
• Mô hình thông tin nổi được yêu cầu để giải thích tình
huống hay ngôn ngữ. Kịch bản cũng có các phần tử để
cá biệt hoá các giá trị đặc biệt
Loại: chó chăn cừu
DOG
Fixed: 4 chân
Default:
• Thí dụ
Default:
Kích thước: 65 cm
Loài: ăn thịt
âm thanh: chối tai
Variable
Variable
kích thước
màu sắc
màu sắc
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 61 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 62
1.4 Suy luận và giải quyết vấn đề
Bộ nhớ dài hạn (tiếp)
mô hình luật sản xuất
• Luật sản xuất: Biểu diễn tri thức thủ tục- luật hành
động-điều kiện. nếu điều kiện thoả thì hành động được
thực hiện.
• Suy luận có hai dạng:
Deductive
Inductive
a) Suy luận deductive
• Chú ý:
Dạng: If Cond Then [Action]
Đưa ra kết luận cần thiết 1 cách lô gíc từ các giả thiết
Cấu trúc, ngữ nghĩa, thói quen làm cho dễ nhớ
Quên: thông tin trong bộ nhớ dài hạn hỏng rất chậm, các thông
tin mới sẽ thay thế các thông tin cũ (retroactive interreference)
Trích rút: - recall: thông tin được tái tạo trong bộ nhớ và trợ
If it is Friday then she will go to work
It is Friday Therefore she will go to work.
Kết luận lô gic không nhất thiết phải đúng
giúp bởi loại, hình ảnh
- recognition: thông tin cung cấp các tri thức đã biết
If it is raining then the ground is dry
It is raining Therefore the ground is dry
trước và kém phức tạp hơn gọi lại
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 63 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 64
Suy luận (tiếp)
Suy luận và giải quyết vấn đề
• Giải quyết vấn đề: Là quá trình tìm lời giải chưa
biết nhờ tri thức
b) Suy luận qui nạp (inductive)
Từ cái đã biết đến cái chưa biết
Thí dụ all elephants we have seen have trunks therefore
all elephants have trunks.
Không tin cậy: chỉ có thể khẳng định sai
Tuy nhiên con người không quen sử dụng dạng phủ
định
Abductive: Lập luận từ sự kiện đến nguyên nhân. Thí
dụ: Sam lái nhanh khi say rượu vậy nếu Sam lái nhanh
thì cho là Sam say.
• Các lý thuyết
a) Gestalt
Giải quyết vấn đề bao gồm sản xuất và tái sản xuất
Sản xuất vẽ lên bản chất và cấu trúc hoá lại vấn đề
Đích trừu tượng không đủ giải thích bản chất
Chuyển dịch từ các hành vi đến lý thuyết xử lý thông tin
b) Lý thuyết không gian bài toán
Không gian bài toán bao gồm các phát biểu của bài toán
Giải quyết vấn đề bao gồm việc khởi sinh các phát biểu
Không tin cậy: có thể dẫn đến giải thích sai.
nhờ các phép toán
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 65 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 66
11
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Suy luận và giải quyết vấn đề (tiếp)
Suy luận và giải quyết vấn đề (tiếp)
Heuristics có thể dùng để chọn các phép toán
Thao tác với HT xử lý thông tin bên trong của con người
ứng dụng rộng rãi với các bài toán được định nghĩa tốt
• Tương tự
Các bài toán mới có thể giải quyết bằng các tri thức tương tự
trong lĩnh vực mới
•
ânh xạ tương tự này có thể khó khi lĩnh vực đó khá khác về
mặt ngữ nghĩa
• Kiểu thu nhận tri thức
- Các luật đa mục đích để giải thích các sự kiện
của bài toán – tri thức tăng cường
- Học các luật đặc tả nhiệm vụ
- Luật được hiệu chỉnh
Cơ chế dịch chuyển giữa các mức:
- Thủ tục hoá: mức 1 và mức 2
- Khái quát hoá: mức 2 và mức 3
i) Thủ tục hoá (proceduralization)
Cắt đoạn thông tin như trong STM
Khái niệm hơn là nhóm nhân tạo. Thông tin càng có cấu trúc
càng hiệu quả
Mô hình 3 mức của thu nhận tri thức:
- Mức 1: If cook [type, ingredients, time]
THEN cook for: time
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 67 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 68
Suy luận và giải quyết vấn đề (tiếp)
Suy luận và giải quyết vấn đề (tiếp)
Khái quát hoá
- Mức 2: If
type is casserole AND ingredients ARE
[chicken,carrots,potatoses]
cook [casserole,[chicken,carrots,potatoses], 2 hours]
cook [casserole,[beef,dumpinh,carrots ], 2 hours]
cook [caake,[flour, sugar,butter, egg], 45 min]
- Mức 2: If
type is casserole AND ingredients ARE
THEN cook for: 2 hours
[chicken,carrots,potatoses]
type is cakle AND ingredients ARE
THEN cook for: 2 hours
If
[chicken,carrots,potatoses]
type is cakle AND ingredients ARE
THEN cook for: 45 min
- Mức 3: If
type is casserole AND ingredients ARE
If
[chicken,carrots,potatoses]
THEN cook for: 45 min
ANYTHING
THEN cook for: 2 hours
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 69 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 70
Lỗi và mô hình suy nghĩ
1.5 Tâm lý và thiết kế hệ thống
tương tác
• Kiểu lỗi
Sơ ý (slip)/ lỗi nhỏ: Thay đổi trạng thái hành
• Các cá thể khác nhau có suy nghĩ khác nhau
• Các mô hình về tâm lý nhận thức
1) cá thể khác nhau
vi có thể gây lỗi
Hiểu không đúng: con người tạo ra các mô
hình tư duy để giải thích hành vi. Nếu hiểu
sai sẽ gây lỗi.
- dài hạn: phụ thuộc vào giới, sức khoẻ và mức độ
thông minh
- ngắn hạn: ảnh hưởng của lo âu hay mệt mỏi
- Thay đổi: tuổi tác
2) các mô hình
- Hiểu ngữ cảnh về tâm lý
- Hiểu điều kiện thực nghiệm cụ thể
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 71 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 72
12
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Các mô hình
Chương II: Nhân tố Máy tính
trong tương tác người máy
• Các hướng dẫn (guidlines)
• Các mô hình tâm lý nhận thức (GOMS,
Keytrock, . . .)
• Các kỹ thuật phân tích và đánh giá
2.1 Tổng quan
2.2 Thiết bị vào
2.3 Thiết bị ra
2.4 Bộ nhớ
2.5 Xử lý
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 73 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 74
2.1 Tổng quan
Một hệ thống máy tính tiêu biểu
• Máy tính là thành phần thứ 2 tham gia
tương tác
• Các thành phần chủ yếu:
Các thiết bị vào ra: màn hình, bàn phím, máy
in, loa, . . .
Bộ nhớ
Xử lý: tốc độ, mạng. Hình thức xử lý: lô, tương
tác
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 75 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 76
Thiết bị vào (tiếp)
2.2 Thiết bị vào-ra
Thiết bị vào
• Một số loại bàn phím khác:
Alphabectic: phím phân bố theo thứ tự chữ cái =>
chậm, đào tạo lâu
Đặc tả đối tượng
và hành động
của tương tác
Dvorak: tốc độ tăng từ 10 đến 15%, giảm mệt
Chord: 4 đến 5 phím. Chữ cái là tổ hợp 1 số phím. Kích
thước nhỏ, học nhanh. Tuy nhiên không ưa chuộng
• Bàn phím
• Bộ nhận dạng chữ viết tay
• Chuột và thiết bị định vị
i) Bàn phím
Thiết bị vào chung
Bàn phím chuẩn kiểu QWERTY
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 77 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 78
13
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Thiết bị vào (tiếp)
Thiết bị vào (tiếp)
• Một số thiết bị khác
Joystick: thiết bị vào gián tiếp, điều khiển bởi
chuyển động hay nhấn. Thường có phím nhấn ở
trên đỉnh hay mặt trước.
• Bộ nhận dạng chữ viết tay:
Chữ viết tay là công cụ giao tiếp phổ biến
Thể hiện phần lớn thông tin theo cách thức tự nhiên
• Chuột và thiết bị định vị
Mouse: phổ biến, dế dùng, gồm tấm trượt và phím (thường
Trackball: giống như chuột (upside-down).
từ 1 đến 3 phím)
-Cần không gian vật lý
để di chuyển, không
mỏi tay
-- Con trỏ màn hình
theo chiều x,y
Thiết bị vào gián tiếp, tốc độ nhanh, yêu cầu ít
không gian và thường lắp đặt cho notebook.
Touchscreen: phát hiện sự hiện diện của ngón
tay hay bút trên màn hình. Là thiết bị định vị
trực tiếp. Nhanh, không yêu cầu con trỏ, hợp
với menu chọn. Tuy nhiên có thể gây xước màn
hình, kém chính xác.
-- chuyển động chuột
theo trục x,z
HUT, Falt. of IT
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Dept. of SE, 2002 HCI - One. 79 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 80
Thiết bị ra
Thiết bị vào (tiếp)
Bút chì quang: Khi tiếp xúc màn hình, nó phát hiện các
điểm sáng trên màn hình huỳnh quang. Là thiết bị định vị
trực tiếp. Dùng để vẽ từng điểm
Digitising tablet: Thiết bị gián tiếp. Có nhiều loại bảng
• Màn hình (Cathode ray tube )
• Visual
• Auditory
• Máy in
• Máy quét và nhận dạng ký tự
- Resistive tablet
- Magnetic tablet
- Sonic tablet
Độ phân giải 60 x 60, mẫu hoá với tần số từ 50 200Hz. Có
thể nhập text, yêu cầu không gian.
Dataglove: Thiết bị cảm ứng quang (có thể dùng 3-D)
Eyegaze: Tập các đầu nhằm phát hiện và điều khiển con
trỏ.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 81 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 82
Màn hình
Màn hình (tiếp)
• Là thiết bị ra chuẩn của máy tính
• Quét lưới: là dạng phổ biến nhất, độ phân giải
phổ biến là 512 x 512 và có thể đến 1192 x 980 ,
dạng đen trắng (đa cấp xám) hay màu
• Dạng ngẫu nhiên hay véc tơ: quét theo hàng, độ
phân giải có thể đạt 4096 x 4096.
• Quan sát trực tiếp: tương tự như quét véc tơ, tuy
nhiên ảnh duy trì bởi flood guns. Độ phân giải có
thể đạt tới 4096 x 3120 hoặc hơn
Có 3 chế độ quét khác nhau: lưới, ngẫu nhiên và
trực tiếp.
• Màn hình tinh thể lỏng: nhẹ, nhỏ, không
phóng xạ.
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 83 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 84
14
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Thiết bị nghe nhìn
Máy in
• Tập ký tự trên trang và dùng kỹ thuật điểm (dot)
• Ba kỹ thuật: ma trận điểm (dot-matrix printers), kỹ
• Visual: dials, gauge, light
• Auditory: beeps, bongs, clonks, speech
thuật phun (ink-jet) và in nhiệt.
Kỹ thuật ma trận điểm có thể đạt tới 120 dpi, kỹ
thuật phun: 300 dpi.
Hiện nay dùng kỹ thuật in laser và đạt tới 1200dpi.
• Fonts:
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 85 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 86
Bộ nhớ
Máy quét và bộ nhạn dạng ký tự
RAM:
thời gian truy nhập: 100 ns. Tốc độ
truyền: 10 Mb/s
• Máy quét: chuyển ảnh tương tự sang ảnh
• Bộ nhớ dài hạn: LTM thường dùng như đĩa,
CD
• Chú ý: Nếu MT xử lý quá nhanh, thông tin
số. Có 2 kiểu:
Flat-bed: quét cả trang
Hand-held: quét và tạo ảnh với độ rộng 3-4”
Độ phân giải từ 100-300 dpi và có thể đến 1500
Trợ giúp có thể không đọc được.
dpi hay hơn.
Dùng tạo tài liệu cùng với ảnh chụp
• OCR: chuyển ảnh bitmap sang text. Các
fonts khác nhau sẽ gây nên khó khăn.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 87 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 88
3.1 Tổng quan
Chương 3: Các dạng tương tác
Người dùng-máy tính
• Tương tác là sự giao tiếp giữa người
dùng và hệ thống. Để có cái nhìn tổng
quan, người ta hay biểu diễn dưới dạng
framework (D. Norman), phát triển bởi
Abowd và Beale.
3.1 Tổng quan
3.2 Các mô hình tương tác
3.3 Các dạng tương tác
3.4 Mô hình WIMP
3.5 Điều khiển trực tiếp
3.6 Ngữ cảnh tương tác
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 89 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 90
15
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
3.2. Mô hình tương tác
3.2. Mô hình tương tác (tiếp)
- Framework tương tác có 4 thành phần:
O
Ra
U
Người dùng
S
Hệ thống
I
Vào
1. Người dùng
2. Đầu vào
3. Hệ thống
4. Đầu ra
=> Mỗi thành phần có ngôn ngữ riêng =>
Vấn đề chuyển dịch ?
=> ngôn ngữ giữa các thành phần: Khó khăn
• Sử dụng Framework để:
1. Thiết lập mục đích (user)
2. Hình thành chủ ý
3. Đặc tả hành động trên giao tiếp
4. Thực hiện hành động
5. Nhận và giải thích trạng thái của HT
6. Đánh giá trạng thái HT với mục đích đặt
ra
hoặc không thể.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 91 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 92
3.2. Mô hình tương tác (tiếp)
3.3. Các dạng tương tác
- Người dùng muốn chuyển dịch hành động qua
giao tiếp thành trạng thái của HT
- HT phản ánh qua đầu ra và được giải thích bởi
người dùng.
- Các khía cạnh phải xem xét:
1. Câu hỏi/ trả lời dạng truy vấn
2. Điền theo mẫu
3. Ngôn ngữ lệnh
4. Ngôn ngữ tự nhiên
5. Menu
1. Công thái học (ergonomie) : nhóm đ/k theo chức năng ,
tần xuất; môi trường, màu sắc
2. Dễ dùng, thời gian đào tạo ngắn
3. Thông tin phản hồi
4. Khôi phục lỗi, trở về trạng thái cũ
5. Tính nhất quán, chuẩn hoá
HUT, Falt. of IT
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Dept. of SE, 2002 HCI - One. 93 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 94
3.3. Các dạng tương tác (tiếp)
Giao tiếp dạng hỏi đáp (tiếp)
- Loại SQL: thao tác với CSDL => hiểu cấu trúc,
1. Câu hỏi/ trả lời và dạng truy vấn (Query)
cú pháp của CSDL
thiếu
- Dẫn dắt qua một loạt câu hỏi
- Chất lượng
+ Tự nhiên, dễ thiết kế, quen thuộc nhất là với
người dùng mới, thiếu kinh nghiệm
- Nhược điểm
+ Phức tạp đối với tình huống phức tạp,
tính tổng quát.
+ Cần nhiều giao tiếp.
Giao tiếp kiểu truy vấn với CSDL (dạng GUI)
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 95 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 96
16
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Giao tiếp dạng form điền
Form điền (tiếp)
2. Điền theo mẫu (Form fills & Spreadsheets)
- Chủ yếu dùng truy xuất DL: nhập, trích rút.
Màn hình giống như khuôn mẫu.
Các đề mục
Các thông tin cần điền
Một dạng Form nhập liệu trong CSDL
Thông tin phải điền có
thể chọn/ đánh dấu
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 97 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 98
Form điền (tiếp)
Form điền (tiếp)
- Chất lượng
+ Tự nhiên, quen thuộc , dễ thiết kế, có chỉ dẫn
cần thiết.
+ Dễ dàng thay đổi khi cần.
- Nhược điểm:
+ Thiếu sáng tạo của người dùng
+ Tải cao với Hệ Thống, mạng.
Form nhập và trích dữ liệu trong ACCESS
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 99 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 100
Giao tiếp kiểu dòng lệnh
Giao tiếp kiểu dòng lệnh
thí dụ
3. Ngôn ngữ lệnh
- Là loại giao tiếp được sử dụng sớm nhất và đến
nay vẫn còn khá phổ dụng (môi trường VB). Nó
cung cấp phương tiện biểu diễn lệnh trực tiếp cho
máy tính thông qua các phím chức nang, ký tự
đơn, từ viết tắt hay đầy đủ.
- Thí dụ: Các lệnh của DOS hay UNIX thường
dùng các động từ tiếng Anh viết tắt: Dir ln của
UNIX dùng để xem nội dung ổ đĩa hay thư mục.
Có thể có macro lệnh. Truy nhập trực tiếp vào Hệ
thống.
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 101 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 102
17
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Giao tiếp kiểu dòng lệnh (tiếp)
Giao tiếp kiểu
Ngôn ngữ tự nhiên
- Chất lượng:
4. Ngôn ngữ tự nhiên
+ Thích hợp với nhiệm vụ có tính lặp
+ Thích hợp với ND có kinh nghiệm do tính ngắn
gọn, nhanh và dễ hiểu của câu lệnh.
- Nhược điểm:
- Có thể là phương tiện hấp dẫn nhất trong giao
tiếp với máy tính vì ND khó có thể nhớ dòng lệnh
hay quên mất các mức phân cấp của menu.
- Ngôn ngữ tự nhiên với 2 dạng: chữ viét, lời nói
đều rất được quan tâm và nghiên cứu.
- Chất lượng
+ Cần phải đào tạo.
+ Sai sót cao.
+ Khó xử lý tình huống lỗi.
+ Tự nhiên, không tốn công đào tạo.
+Dễ thích ứng, sửa lỗi dễ.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 103 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 104
Menu
Giao tiếp kiểu
Ngôn ngữ tự nhiên (tiếp)
5. Menu
- Nhược điểm
+ Không rõ ràng: cú pháp, cấu trúc, câu có thể
- Menu là tập các lựa chọn có thể cho ND được hiện
trên màn hình và được chọn bởi chuột, phím số
hay phím chữ cái
không rõ
+ dài, tải cao.
+ Thí dụ: trong câu “The man hit the boy with
the sticks”, người ta không rõ gậy là phương tiện
để đánh chú bé hay chú bé có gậy?
=> Sử dụng ngôn ngữ tự nhiên trong các lĩnh vực
- Có nhiều mức độ khác nhau: 1, 2 hay nhiều mức.
Dạng: cây, mạng, kéo thả (pull-down hay pop up),
ngữ cảnh, tách rời, chồng chéo, . . .
- VB hoặc kết hợp với các lựa chọn số hay dạng
đồ hoạ.
hạn chế thì có thể thành công.
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 105 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 106
Giao tiếp kiểu Menu (tiếp)
Giao tiếp kiểu Menu (tiếp)
- Thí dụ
PAYMENT DETAILS
Please select payment method:
1. Cash
2. Cheque
3. Credit card
- Chất lượng : Dễ học, dễ dùng và có nhiều
lựa chọn. Có hướng dẫn, ít nhớ. Thích
hợp với ND không thường xuyên.
- Nhược điểm : Tốn không gian nhớ
màn hình. Thông tin có thể bị che dấu
trong các menu con. Chậm với NSD
thành thạo.
4. Invoice
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 107 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 108
18
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
Giao tiếp kiểu Menu (tiếp)
3.4. WIMP (Window, Icon, Menu,
Pointer)
- Sự kết hợp của VB và đồ hoạ:
- Thí dụ
PAYMENT DETAILS
Please select payment method:
1. Cash
2. Cheque
1. Windows: như màn hình độc lập, có thể chứa
Text hay đồ hoạ. Kích thước có thể thay đổi và
điều chỉnh.
2. Biểu tượng (Icons): tranh hay hình ảnh thu nhỏ
và đa dạng.
3. Credit card
4. Invoice
Một kiểu giao tiếp menu đơn giản trong môi trường Text
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 109 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 110
WIMP (tiếp)
3.4. WIMP (tiếp)
3. Menus
Icons
a)Menu 2 mức
b)Menu nhiều mức
Scroll
Bar
Một cửa sổ tiêu biểu của MS Office
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 111 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 112
3.4. WIMP (tiếp)
WIMP (tiếp)
4. Con trỏ (Pointers)
- Là 1 thành phần quan trọng vì WIMP dùng
chủ yếu định vị và lựa chọn.
- Dạng con trỏ có ý nghĩa gắn với hành động.
Ngoài ra, có thể bổ sung : phím lệnh, thanh
công cụ, spinner, hộp hội thoại, check box. . .
Dạng ngầm định hiện nay của nhiều loại MT: PC
hay Desktop
- Chất lượng:
+ Tốt, dễ học, ít nhớ.
+ Tính chủ động của ND cao, giảm sai sót
- Nhược điểm:
+ Khó lập trình, tải cao. Màn hình đồ hoạ ? + +
Chậm với ND có kinh nghiệm. Nhóm các mức
trong menu, . . .
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 113 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 114
19
Biªn so¹n: L¬ng M¹nh B¸
Prepared by MSc Luong Manh Ba
Prepared by MSc Luong Manh Ba
3.6. Ngữ cảnh tương tác
3.5. Đ iều khiển trực tiếp- WYSIWYG
(What you see is What you get)
• ảnh hưởng của tương tác đến thiết kế giao tiếp
lượng tương tác phụ thuộc môi
ND. Chất
trường
• Nếu có nhiều kiểu ND => cần đưa vào nhiều
- Chất lượng: sinh động dễ sử dụng
- Nguy hiểm:
kiểu tương tác .
• Window phối hợp menu, phím nóng, biểu
thí dụ cần phân biệt
sao/chuyển đối tượng với xoá đối tượng
vì có khi ND chỉ cần sao.
tượng và lối tắt (Shortcut), thanh công cụ.
Prepared by MSc Luong Manh Ba
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 115 HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 116
Bài tập
3.1 Chọn 2 kiểu tương tác mà bạn có kinh nghiệm và
dùng Framework để phân tích các tương tác khi dùng
kiểu giao tiếp này với việc lựa chọn nhiệm vụ trong 1
CSDL. Cái nào là k/c lớn nhất trong mỗi trường hợp?
3.2 Hãy tìm tất cả các HT sử dụng thành công ngôn ngữ
tự nhiên. Các UD nào là hợp lý nhất?
HUT, Falt. of IT Dept. of SE, 2002 HCI - One. 117
20