Bài giảng Tương tác người máy: Chương 8 - Hỗ trợ cài đặt giao tiếp người dùng - máy tính trình bày tổng quan về cài đặt giao tiếp người dùng - máy tính; Tìm hiểu về các thành phần của hệ thống Window; Lập trình ứng dụng; Sử dụng công cụ; Hệ quản trị tương tác ND (UIMS). Mời các bạn cùng tham khảo chi tiết bài giảng tại đây!
Trang 1Tương tác người - máy
Human Computer Interaction - HCI
Department of Software Engineering Faculty of Information Technology Hanoi University of Technology
Trang 2Phần III: Cài đặt và đánh giá
giao tiếp người dùng
Chương VIII: Hỗ trợ cài đặt giao tiếp ND Chương IX: Các kỹ thuật đánh giá tương
tác người máy Project
Trang 3Chương VII: Hỗ trợ cài đặt giao tiếp
Trang 48.1 Tổng quan
• Cài đặt phụ thuộc vào 1 hệ thống cụ thể Phần
này chỉ mô tả một số công cụ hỗ trợ như: ngôn ngữ lập trình, Tools, Toolkit hay UIMS
• Các chức năng giao tiếp thường được hỗ trợ bởi
các môđun vào ra hay các ngôn ngữ lập trình, các
Trang 58.1 Tổng quan (tiếp)
• Công cụ lập trình cung cấp các dịch vụ cho người
lập trình
•Hệ thống window là lõi cho các luồng xử lý HT-ND
đồng thời hay riêng biệt
• Các công cụ giao tiếp tạo cho chương trình gần
với mức cảm nhận của ND
• Các UIMS giúp cho việc điều khiển các mối quan
hệ giữa biểu diễn và chức năng của các đối tượng
Trang 6• Vai trò của hệ thống windows
8.2 Các thành phần của hệ thống
window
Hệ thống window dùng để xây dựng các giao tiếp
Trang 78.2 Các thành phần của hệ thống
window (tiếp)
• Tính độc lập thiết bị: sử dụng các mô hình vào
ra đồ hoạ như: điểm ảnh, GKS(Graphic
Kernel System), giao tiếp phân cấp lập trình
cho đồ hoạ, PostScript => độc lập với thiết bị
phần cứng
• Chia xẻ tài nguyên: thực hiện nhiệm vụ đồng
thời, hỗ trợ các quá trình độc lập
• Tách biệt các UD cá nhân
Trang 88.2 Các thành phần của hệ thống
window (tiếp)
Mô hình ảnh
- Pixel
- GKS: Chuẩn quốc tế, coi màn hình như một
tập các đoạn liên thông, mỗi đoạn là một macro các phần tử đồ hoạ
- PHIGH: cũng là một chuẩn mở rông của
GKS: màn hình là dãy các doạn có thể hiệu
chỉnh được
- PostScript: một ngôn ngữ lập trình để mô
hình hoá màn hình.
Trang 98.2 Các thành phần của hệ thống
window (tiếp)
• Kiến trúc của hệ thống windows: 3 kiến trúc
phần mềm có thể (Coutaz):
1) Mỗi UD quản lý tất cả các quá trình của mình
- Mọi quá trình quan tâm đến tính đồng bộ
- Giảm tính khả chuyển của UD riêng biệt Kiến trúc này bộc lộ nhược điểm lớn là mọi quá trình đều phải quan tâm đến tính đồng bộ, trái ngược với quan điểm phân chia tài nguyên.
Trang 108.2 Các thành phần của hệ thống
window (tiếp)
2)Vai trò quản lý thuộc Hệ điều hành
- UD gắn chặt vào Hệ điều hành, các UD không phải quan tâm đến điều đó => UD phải phát triển dựa vào một HĐH cụ thể.
3) Vai trò quản lý như một UD riêng biệt
- Chức năng quản lý tách riêng như 1 UD nhằm cung cấp các giao tiếp cho cho các UD khác
=> Kiến trúc client-server
Trang 11Kiến trúc Client-Server
Trang 12Kiến trúc X-Windows
Trang 13Kiến trúc X-Windows (tiếp)
• Mô hình X Window được phát triển tại MIT
vào những năm 1980.
• X Window dựa vào mô hình điểm ảnh với một
số cơ chế định vị thích hợp Nó được chấp
nhận như một chuẩn
• Dùng X protocol để điều khiển giao tiếp
Khách-Chủ Giao thức này có thể cài đặt trên
các máy tính và các hệ điều hành khác nhau.
=> cho phép khách và chủ không nhất thiết trên
Trang 14Kiến trúc X-Windows (tiếp)
• Các máy khách có thể liên kết với một
terminal hoặc một cửa sổ chính
• Sử dụng các cửa sổ riêng biệt để định chiến
lược vào ra:
- Dùng cửa sổ xếp chồng
- Truyền dữ liệu giữa các client
- Thay đổi đầu vào
Trang 15Kiến trúc X-Windows (tiếp)
• Máy chủ thực hiện các nhiệm vụ sau
- Cho phép nhiều UD khách truy nhập đến
thiết bị hay không?
- Phân tích các yêu cầu của UD khách nhằm
thực hiện các thao tác màn hình hay cung cấp
Trang 17Vòng lặp đọc - đánh giá (read evaluation loop)
Trang 18Vòng lặp đọc - đánh giá (tiếp)
• Mô thức lập trình này được sử dụng trên
Macintosh
• Server gửi cho UD khách dòng vào của ND
dưới dạng sự kiện có cấu trúc
• UD khách được lập trình để đọc sự kiện
chuyển cho mình và xác định tất cả các hình
trạng của UD đặc biệt mà nó phải trả lại kết
quả.
Trang 19Vòng lặp đọc - đánh giá(tiếp)
Trang 20Dựa vào thông báo (Notifier based)
Trang 21Dựa vào thông báo (tiếp)
• Vòng lặp chính điều khiển quá trình xử lý sự
kiện không nằm trong UD
• Cơ chế thông báo tập trung nhận các sự kiện
từ hệ thống window, lọc rồi gửi chúng cho
chương trình UD theo cách được khai báo bởi
chương trình.
• Chương trình UD thông báo lại rằng đó là sự
kiện mà nó quan tâm hay không gọi là
Trang 22Thí dụ
• Notifier khi nhận một sự kiện từ hệ thống
windows, xem xét đó có phải là sự kiện được
xác định bởi chương trình UD không, nếu
đúng nó trả điều khiển cho CallBack.
• Thí dụ: một chương trình tạo một cửa sổ hay
một frame trên đó có một phím lệnh”QUIT”.
Khi phím này được nhấn bởi thiết bị trỏ như
chuột chương trình sẽ kết thúc và cửa sổ cũng
được đóng lại.
Trang 24Thí dụ(tiếp)
- Màn hình do chương trình tạo ra gồm 3 đối tượng: 1 cửa sổ, thanh tiêu đề và phím lệnh Quit.
- Chương trình UD sẽ thông báo cho Notifier của thủ tục - CallBack được kích hoạt khi phím lệnh được chọn Chương trình UD sẽ khởi tạo Notifier bằng việc gọi thủ tục này.
- Khi Notifier nhận được sự kiện chọn từ phím
lệnh, đ/k sẽ chuyển cho thủ tục Quit để đóng cửa sổ và yêu cầu kết thúc.
Trang 258.4 Sử dụng công cụ (Use Toolkits)
• Các đối tượng tương tác: Vào ra liên hệ với
nhau
Trang 278.5 Sử dụng UIMS
• UIMS bổ sung các mức khác vào Toolkits
nhằm tạo thuận lợi cho ND không phải là
người lập trình:
- Hệ phát triển giao tiếp ND (UIDS)
- Môi trường phát triển ND (UIDE)
• UIMS như một kiến trúc khái niệm nhằm tách
biệt giữa ngữ nghĩa và biểu diễn ứng dụng:
tính khả chuyển, tính sử dụng lại, đa giao
tiếp, ., và xác định vai trò của: các thành
Trang 29Cài đặt UIMS (tiếp)
• Khuynh hướng của điều khiển đối thoại
- Điều kiển trong (vòng lặp đọc-đánh giá)
- Điều kiển ngoài, thí dụ như tính độc lập ngữ
nghĩa của ứng dụng hoặc biểu diễn
- Điều khiển biểu diễn như các đặc tả đồ hoạ