Nhập môn tương tác người máy
Đề tài: Xây dựng giao diện tương tác trong game trên di động.
Giáo viên hướng dẫn: TS.Vũ Thị Hương Giang.
Nhóm sinh viên:
• Nguyễn Bằng Việt 20073447
• Nguyễn Văn Nam 20072039
• Tạ Huy Vũ 20073527
• Nguyễn Văn Long 20071797
• Nguyễn Đức Anh Vũ 20063809
Phân công công việc:
- Tìm hiểu lý thuyết thiết kế giao diện: Tạ Huy Vũ, Nguyễn Đức Anh Vũ.
- Tìm hiểu android, các công cụ hỗ trợ giao diện và cài dặt ứng dụng:
Nguyễn Bằng Việt, Nguyễn Văn Nam.
- Đánh giá, kiểm thử: Nguyễn Văn Long.
- Tổng hợp tài liệu, viết báo cáo: cả nhóm.
MỤC LỤC
Đặt vấn đề: Error: Reference source not found
Mục đích bài toán: Error: Reference source not found
Đối tượng sử dụng: Error: Reference source not found
Thiết kế giao tiếp: Error: Reference source not found
Tổng quan WIMP: Error: Reference source not found
Windows: Error: Reference source not found
Icons: Error: Reference source not found
Menus: Error: Reference source not found
Pointers: Error: Reference source not found
Phân tích ứng dụng: Error: Reference source not found
Thiết kế ứng dụng: Error: Reference source not found
Thiết kế giao diện trong Android: Error: Reference source not found
Tổng quan: Error: Reference source not found
Các cộng cụ hỗ trợ thiết kế giao diện: Error: Reference source not found
Đặc tả ứng dụng: Error: Reference source not found
Đặc tả chức năng: Error: Reference source not found
Đặc tả dữ liệu: Error: Reference source not found
Phân tích và thiết kế giao diện: Error: Reference source not found
Các kỹ thuật UCD sử dụng Error: Reference source not found
Phân tích giao diện: Error: Reference source not found
Đánh giá tính dùng được: Error: Reference source not found
Tính dễ học: Error: Reference source not found
Tính mềm dẻo: Error: Reference source not found
Tính vững chắc: Error: Reference source not found
1. Đặt vấn đề:
1.1. Mục đích bài toán:
Ngày nay, việc trao đổi thông tin ví dụ như: về công việc hoặc đơn giản là
những cuộc trò chuyện tán gẫu là hết sức cần thiết. Chính vị vậy mà những ứng
dụng như yahoo, skype ra đời. Khi những chiếc điện thoại smartphone chưa ra đời,
những ứng dụng đó chỉ hạn chế trên những chiếc máy bàn, hoặc những chieescs
laptop tuy đã nhỏ gọn những vẫn rất hạn chết, vì vậy nhu cầu xây dựng ra một ứng
dụng trên những chiếc điện thoại nhỏ gọn là hết sức cần thiết. Với những hạn chế
của 1 chiếc smartphone việc thiết kế được một giao diện tương tác tốt trên nó là
điều vô cùng quan trọng. Đề tài này với mong muốn giải quyết được bài toán đó.
Bằng việc nghiên cứu các công cụ hỗ trợ thiết kế giao diện, đặc điểm tâm lý của
người dùng smartphone, nhóm sẽ xây dựng một ứng dụng phần nào dáp ứng được
một thiết kế tốt cho ứng dụng chat trên di động, mà cụ thể là smartphone có cài đặt
hệ điều hành android.
1.2. Đối tượng sử dụng:
Ứng dụng hướng đến đối tượng sử dụng là những người dùng sử dụng smartphone
có cài đặt hệ điều hành android.
2. Thiết kế giao tiếp:
2.1. Tổng quan WIMP:
2.1.1. Windows:
Các cửa sổ là các vùng màn hình, chúng có thể được xem như một
mang hình độc lập. Một cửa sổ thường chứa văn bản hoặc đồ họa và có
thể di chuyển hay chỉnh lại kích thước theo ý muốn trong giới hạn cho
phép. Có thể nhiều hơn 1 cửa sổ trên màn hình cùng lúc, cho phép các
công việc khác nhau được xuất hiện cùng lúc. Người sử dụng cũng có
thể thao tác trên các cửa sổ khác nhau, ví dụ họ có thể chuyển từ một
dòng công việc này sang dòng công việc khác.
2.1.2. Icons:
Các cửa sổ có thể được đóng lại và mất luôn hoặc chúng có thể được
làm co lại cho các trình bày rút gọn. Một bức tranh nhỏ gọn được sử
dụng để miêu tả một cửa sổ đóng và cách trình bày này được biết đến
như một biểu tượng. Với việc xuất hiện các biểu tượng thì nhiều cửa sổ
có thể xuất hiện trên màn hình cùng lúc, sẵn sàng để mở rộng tới kích
thước lớn nhất bằng việc nhấn vào biểu tượng. Với việc làm co một cửa
sổ thành biểu tượng được hiểu như là cửa sổ biểu tượng. Khi người sử
dụng tạm thời không muốn tiếp tục dùng hội thoại, họ có thể hội thoại
đó bằng biểu tượng của cửa sổ chứa hội thoại. Biểu tượng lưu giữ
không gian trên màn hình cửa sổ và dùng làm cách nhắc người sử dụng
có thể phục hồi lại hội thoại sau đó bằng cách mở cửa sổ biểu tượng.
2.1.3. Menus:
Đặc trưng của các hệ thống cửa sổ là menu, một kỹ thuật tương tác phổ
biến dùng cho cả các hệ thống không cửa sổ cũng dùng được. Một menu
đưa ra một lựa chọn các thao tác hay dịch vụ có thể được trình diễn bởi
hệ thống vào lúc quy định. Các menu cung cấp các thao tác mà nó có
thể được duyệt qua. Điều này hàm ý rằng các tên được sử dụng trong
menu nên có nhiều ý nghĩa và cung cấp nhiều thông tin. Thiết bị con trỏ
được sử dụng để cho biết yêu cầu lựa chọn
2.1.4. Pointers:
Con trỏ là một phần quan trọng vì WIMP dùng chủ yếu định vị và lựa
chọn. Dạng tương tác được yêu cầu bởi WIMP dựa rất nhiều vào việc
trỏ và lựa chọn kiểu như các biểu tượng. Chuột cung cấp một thiết bị
đầu vào có khả năng làm những việc như vậy, mặc dù các cần điều
khiển(joysticks) và bóng xoay(trackball) cũng là những sự lựa chọn.
Người sử dụng được trình diễn với con trỏ trên màn hình được điều
khiển bởi thiết bị đầu vào
2.2. Phân tích ứng dụng:
Ứng dụng được cài đặt trên các thiết bị smartphone chạy hệ điều hành
android. Với những hạn chế của smartphone như kích thước màn hình, quá
trình tương tác, cấu hình ứng dụng thiết kế giao tiếp WIMP cần thêm một
số bổ sung như sau:
- Windows: đối với máy tính các cửa sổ được hiện thị một cách trực quan,
tức là người dùng có thể quan sát tất cả các cửa sổ, nhưng đối với
smartphone thì việc quan sát tất cả các cửa sổ là không khả thi, nên ở
đây window chỉ thể hiện một cửa sổ nào đó, khi người dùng muốn quan
sát cửa sổ khác có thể chuyển thông qua các button.
- Menus: việc bố trí menu trên smartphone được thể hiện thông qua danh
sách.
- Pointers: riêng pointers trên smartphone thì việc tương tác thông qua
việc cảm ứng của người dùng trên màn hình, tức là khi người dùng muốn
lựa chon một biểu tượng nào đó chẳng hạn, thay vì sử dụng chuột click
vào biểu tượng như trên máy tính, người dùng sẽ trực tiếp chạm tay vào
biểu tượng để lựa chọn kích hoạt chúng.
3. Thiết kế ứng dụng:
3.1. Thiết kế giao diện trong Android:
3.1.1. Tổng quan:
Trong một ứng dụng Android, giao diện người dùng được xây dựng
bằng cách sử dụng View và ViewGroup đối tượng. Có nhiều loại quan
điểm và các nhóm view, mỗi một trong số đó là hậu duệ của lớp View.
View objects là các đơn vị cơ bản của biểu hiện giao diện người dùng
trên nền tảng Android. Các class xem như là cơ sở phục vụ cho class
con được gọi là "widget", trong đó cung cấp đầy đủ các đối tượng thực
hiện giao diện, giống như các lĩnh vực văn bản và nút. Class
ViewGroup phục vụ như là cơ sở cho lớp con được gọi là " layouts",
cung cấp các loại khác nhau của kiến trúc bố trí, như linear, tabular và
relative.
Một View object là một cấu trúc dữ liệu có đặc tính lưu trữ các thông
số bố trí và nội dung cho một khu vực cụ thể hình chữ nhật của màn
hình. Một View object xử lý đo lường riêng của mình, bố trí, bản vẽ
thay đổi tập trung,, di chuyển, và phím/tương tác cử chỉ cho khu vực
hình chữ nhật của màn hình. Là một object trong giao diện người dùng,
view cũng là một điểm tương tác cho người sử dụng và nhận các sự kiện
tương tác.
Xem Hierarchy
Trên nền tảng Android, bạn xác định một hoạt động của giao diện người
dùng bằng cách sử dụng một hệ thống phân cấp của View và
ViewGroup, như trong biểu đồ dưới đây. Cây này có thể được phân cấp
đơn giản hay phức tạp như bạn cần nó được, và bạn có thể xây dựng nó
lên bằng cách sử dụng thiết lập Android của widgets và layouts định
sẵn, hoặc với Views tùy chỉnh mà bạn tạo ra cho mình. Để đính kèm với
cây phân cấp xem màn hình cho rendering, Hoạt động của bạn phải gọi
setContentView() Phương pháp và thông qua một tham chiếu đến đối
tượng button gốc.
Hệ thống Android nhận được tập tin này và sử dụng nó để làm mất hiệu
lực, đo lường, và vẽ cây. Nút gốc của các yêu cầu phân cấp cho nó vẽ
các nút con - lần lượt, mỗi nút view là nhóm chịu trách nhiệm kêu gọi
mỗi lần view nút con riêng của mình để vẽ có thể yêu cầu một kích
thước và vị trí trong nút gốc. Nhưng đối tượng viewgroup có quyết định
cuối cùng về nơi làm thế nào, có thể được cho mỗi nút con.Android
parses các yếu tố của cách bố trí của bạn trong thứ tự (từ phía trên cùng
của cây phân cấp), instantiating việc xem và thêm chúng vào parent(s).
Bởi vì đây là những trích ra trong trật tự, nếu có các yếu tố đó chồng
chéo nhau các vị trí, một lần cuối để được rút ra sẽ nằm trên đầu trang
của những người khác trước đây để rút ra không gian đó.
Giao diện
Cách phổ biến nhất để xác định bố trí của bạn và thể hiện sự phân cấp
view là với một tập tin XML layout. XML cung cấp một cơ cấu có thể
đọc được cho bố trí, giống như HTML. Mỗi phần tử trong XML là cả
một View hoặc đối tượng ViewGroup (hoặc hậu duệ đó). Các đối tượng
View là lá trong cây, ViewGroup đối tượng là các nhánh trong cây.
Tên của một phần tử XML là tương ứng với lớp học Java mà nó đại
diện. Vì vậy, một yếu tố <textview> tạo ra một TextView trong UI của
bạn, và một phần tử <linearlayout> tạo ra một LinearLayout viewgroup.
Khi bạn tải một layout resource, hệ thống Android khởi chạy thời gian
các đối tượng, tương ứng với các yếu tố trong cách bố trí của bạn. Ví
dụ, một bố trí dọc đơn giản với một lần xem văn bản và một nút sẽ như
thế này:
<? xml version = "1.0" encoding = "utf-8"?>
<LinearLayout
xmlns:android=" /> android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a TextView"/>
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello, I am a Button" />
</LinearLayout>
Chú ý rằng các phần tử LinearLayout chứa cả TextView và Button. Bạn
có thể làm khác LinearLayout (hoặc các loại hình xem nhóm) bên trong
ở đây, để kéo dài sự phân cấp xem và tạo ra một bố cục phức tạp hơn.
Để biết thêm về việc xây dựng một bố cục UI, đọc Giao diện kê khai.
Có rất nhiều cách mà bạn có thể xem cách bố trí của bạn. Sử dụng nhiều
hơn và các loại khác nhau của các view group, bạn có thể cấu trúc views
con và view groups trong vô số cách . Xác định các nhóm xem được
cung cấp bởi Android (gọi là layouts) bao gồm LinearLayout,
RelativeLayout, TableLayout, GridLayout và khác. Mỗi cung cấp một
bộ duy nhất của các thông số bố trí được sử dụng để xác định vị trí của
views con và cơ cấu layout Để tìm hiểu về một số các loại khác nhau
của các view group được sử dụng cho một layout, đọc Giao diện đối
tượng thường gặp.
Widgets
Widget là một object View phục vụ như một giao diện để tương tác với
người dùng. Android cung cấp một tập các widgets thực hiện đầy đủ,
giống như các button, Checkbox, và text-entry , do đó bạn có thể nhanh
chóng xây dựng giao diện người dùng của bạn. Một số widgets được
cung cấp bởi Android phức tạp hơn, giống như một date picker, clock,
và zoom controls. Nhưng nó không giới hạn trong các loại widgets được
cung cấp bởi các nền tảng Android.
Nếu bạn muốn làm một cái gì thêm cho tùy biến và tạo ra các yếu tố của
hành động của bạn, bạn có thể, bằng cách xác định object view của
riêng bạn hoặc bằng cách mở rộng và kết hợp các Widget hiện có. Đọc
tiếp tại Building Custom Components. Để có một danh sách các vật
dụng được cung cấp bởi Android, xem gói android.widget
UI Sự kiện
Một khi bạn đã thêm một số Views/widgets đến giao diện, có thể bạn
muốn biết về sự tương tác của người dùng với họ, vì vậy bạn có thể thực
hiện hành động.
Để được thông báo về UI events người dùng, bạn cần phải làm một
trong hai điều:
Xác định một sự kiện nghe và đăng ký nó với các View. Khác thường
hơn không, đây là cách bạn sẽ lắng nghe cho các sự kiện. Các class
View có chứa một tập hợp các giao diện lồng nhau đặt tên
On<something>Listener, đều có một phương pháp gọi lại được gọi là
On<something>() Ví dụ. View.OnClickListener (để xử lý "nhấp chuột"
trên một View), View.OnTouchListener ( để xử lý các sự kiện màn hình
cảm ứng trong một View), và View.OnKeyListener (để xử lý thiết bị ép
quan trọng trong một View). Vì vậy nếu bạn muốn View của bạn được
thông báo khi nó là " clicked" (chẳng hạn như khi một nút được chọn),
thực hiện và xác định OnClickListener của nó gọi method onClick()
(nơi bạn thực hiện các hành động sau khi nhấp chuột), và đăng ký nó
vào Xem với setOnClickListener().
Ghi đè một callback method hiện cho View. Đây là những gì bạn nên
làm gì khi bạn đã thực hiện lớp View của riêng bạn và muốn lắng nghe
cho các sự kiện cụ thể xảy ra trong nó. Ví dụ về các sự kiện bạn có thể
xử lý bao gồm màn hình là touched onTouchEvent() khi trackball là di
chuyển onTrackballEvent() hoặc khi một phím trên thiết bị được nhấn
onKeyDown(). Điều này cho phép bạn xác định các hành vi mặc định
cho từng sự kiện bên trong tuỳ chỉnh View của bạn và xác định xem sự
kiện này cần được thông qua ngày để View con khác. Một lần nữa, đây
là những callbacks View class, do đó, cơ hội duy nhất của bạn để xác
định đó là khi bạn xây dựng một phần tùy chỉnh.
Menus
Menu đơn có một phần quan trọng của giao diện người dùng trong một
ứng dụng. Menus cung cấp một giao diện đáng tin cậy cho thấy rằng các
chức năng ứng dụng và cài đặt. Trong trình đơn ứng dụng phổ biến nhất
là tiết lộ bằng cách bấm phím MENU trên thiết bị. Tuy nhiên, bạn cũng
có thể thêm Context Menus, có thể hiển thị khi người sử dụng máy nhấn
và nắm giữ phím trên một mục. Thực đơn cũng được hệ thống phân cấp
cấu trúc bằng cách sử dụng một xem, nhưng bạn không xác định cấu
trúc này cho mình.
Thay vào đó, bạn xác định onCreateOptionsMenu() hoặc
onCreateContextMenu() gọi method cho hoạt động của bạn và tuyên bố
các mục mà bạn muốn bao gồm trong menu của bạn. Trong một thời
gian thích hợp, Android sẽ tự động tạo ra hệ thống View phân cấp cần
thiết cho menu, và rút ra mỗi trong mỗi menu items đó.
Menus cũng xử lý các sự kiện riêng của nó, do đó không cần phải đăng
ký sự kiện listeners trên các item trong menu của bạn. Khi một item
trong menu của bạn được chọn, onOptionsItemSelected() hoặc
onOptionsItemSelected() onContextItemSelected() method
onContextItemSelected() sẽ được gọi bằng framework. Và cũng giống
như layout của bạn, bạn có tùy chọn để khai báo các menu item cho bạn
trong một tệp tin XML. Đọc Tạo Menus để tìm hiểu thêm.
Adapters
Thỉnh thoảng bạn sẽ muốn populate một view group với một số thông
tin mà không thể hard-coded được, thay vào đó, bạn muốn bind để xem
một nguồn dữ liệu bên ngoài. Để làm điều này, bạn sử dụng một
AdapterView xem như là view group của bạn và View con được khởi
tạo và populated với dữ liệu từ Adapter. Các đối tượng AdapterView là
một implementation của ViewGroup xác định những view con của nó
dựa trên một đối tượng Adapter nhất định. Adapter các hành vi như là
chuyển phát nhanh giữa các nguồn dữ liệu của bạn (có lẽ là một mảng
của chuỗi bên ngoài) và AdapterView, hiển thị nó trong đó. Có một số
hiện thực của class Adapter, cho nhiệm vụ cụ thể, chẳng hạn như
CursorAdapter việc đọc dữ liệu cơ sở dữ liệu từ một Cursor, hoặc một
ArrayAdapter đọc từ một mảng tùy ý. Để tìm hiểu thêm về cách sử dụng
một adapter cho populate views của bạn, hãy đọc đóng vào dữ liệu với
AdapterView.
Styles and Themes
Có lẽ bạn không hài lòng với dáng vẻ của các widgets tiêu chuẩn. Để
sửa đổi chúng, bạn có thể tạo một số style riêng và chủ đề của bạn.
Một Style là một tập hợp của một hay nhiều thuộc tính định dạng mà
bạn có thể áp dụng như một đơn vị đến các yếu tố cá nhân trong layout
của bạn. Ví dụ, bạn có thể xác định một Style chỉ định một văn bản kích
thước và màu sắc nhất định, sau đó áp dụng nó để chỉ các yếu tố View
cụ thể.
Một Theme là một tập hợp của một hay nhiều thuộc tính định dạng
mà bạn có thể áp dụng như một đơn vị đến tất cả các hoạt động trong
một ứng dụng, hoặc chỉ hoạt động đơn lẻ. Ví dụ, bạn có thể định nghĩa
một theme mà bộ màu sắc cụ thể cho khung cửa sổ và nền bảng, và đặt
kích cỡ chữ và màu sắc cho các menu. Theme này sau đó có thể được áp
dụng cho các hoạt động cụ thể hoặc ứng dụng toàn bộ. Styles and
themes là nguồn tài nguyên.
Android cung cấp một số kiểu mặc định và style and themes mà bạn
có thể sử dụng, hoặc bạn có thể phát triển riêng tài nguyên style and
theme của bạn. Learn more about using styles and themes in the
Applying Styles and Themes document. Tìm hiểu thêm về cách sử dụng
phong cách và chủ đề trong các ứng dụng Styles và tài liệu đề.
3.1.2. Các cộng cụ hỗ trợ thiết kế giao diện:
- Trong Android, việc hiện thị màn hình được thực hiện thông qua
Activity.
- Mỗi Activity sẽ chứa các View theo cấu trúc cây, nghĩa là một layout
gốc chứa các view/ layout con bên trong hoặc chỉ có một view duy nhất
(bản thân layout cũng là một view).
- Có thể thiết kế giao diện trong code java hoặc trong file xml trong thư
mục layout.
- Các công cụ tương ứng trong android hỗ trợ việc xây dựng giao diện
theo giao tiếp WIMP:
• Windows: android sử dụng các activity như các cửa sổ trong giao
tiếp WIMP, việc chuyển đổi qua lại giữa các cửa sổ sẽ được thực
hiện thông qua các intent.
• Icons: control <ImageView /> hỗ trợ việc tạo các icon trong
android, để tạo các icon sống động, đẹp mắt cho giao diện, người
lập trình có thể set các image tương ứng.
• Menus: trong android có hỗ trợ người dùng tạo menu một cách
nhanh chóng bằng việc tạo layout cho menu với các item tương
ứng, ngoài ra người dùng cũng có thể thiết kế menu thông qua các
button, các tab hoặc thậm chí là một danh sách dạng listview.
3.2.Đặc tả ứng dụng:
3.2.1. Đặc tả chức năng:
Các tính năng đề xuất cho ứng dụng
- Đăng ký tài khoản
- Xác thực người dùng(Đăng nhập).
- Hiển thị danh sách bạn bè theo nhóm.
- Trò chuyện với bạn bè(song song với nhiều người).
- Thông báo khi có người chat.
- Hiển thị danh sách bạn bè đang chat(trong phiên đăng nhập, sang
phiên đăng nhập khác sẽ reset lại).
3.2.2. Đặc tả dữ liệu:
Dữ liệu demo của hệ thống như sau:
- Table User.
- Table Group.
- Table Friend.
3.3.Phân tích và thiết kế giao diện:
3.3.1. Các kỹ thuật UCD sử dụng
- Phỏng vấn.
- Nghiên cứu các thiết kế đã thành công (cụ thể yahoo).
3.3.2. Phân tích giao diện:
Giao diện ứng dụng được thiết kế theo các tiêu chí sau:
- Tính thẩm mỹ.
- Tính rõ ràng, trong sáng
- Tính tương thích.
- Tính cấu hình.
- Tính nhất quán.
- Tính hiệu quả.
- Tính trực tiếp.
a. Tính thẩm mỹ:
Giao diện hệ thống tuy chưa đạt được hoàn toàn các quy chuân về
giao diện, nhưng một số tiếu chuẩn cơ bản đã đáp ứng được:
- Độ tương phản cao giữa các thành phần trên màn hình: danh sách
các người dùng được bố trí hợp lý (sử dụng listview android)
thông tin được hiển thị chữ trắng trên nền đen. Khung cửa sổ chat
bố trí giúp người dùng dễ dàng phân biệt được nội dung thông tin
gửi và nhận.
- Màu sắc và đồ họa trong ứng dụng được sử dụng tương đối đơn
giản giúp người dùng tránh bị choáng ngợp khi đăng nhập vào
ứng dụng.
b. Tính rõ ràng, trong sáng:
Những nội dung thông tin được hiện thị trên màn hình
c. Tính tương thích:
- Người sử dụng: thiết kế hoàn toàn hướng đến nhu cầu của người
dùng.
- Nhiệm vụ: mọi chức năng trong hệ thống được thực hiện 1 cách
tự nhiên, người dùng không phải gò ép thao tác để đạt được mục
tiêu mong muốn.
d. Tính cấu hình:
Hệ thống chưa đáp ứng được tính cấu hình như mong muốn, khả năng
cá nhân hóa còn hạn chế.
e. Tính nhất quán:
Tính nhất quán được đảm bảo, ví dụ: trong cùng ngữ cảnh chat với
những bạn bè hệ thống cũng cấp những thao tác tương tự nhau, việc
hiện thị về cơ bản là không có gì khác biệt.
Một thành phần, ví dụ khung chat đối với những người bạn khác nhau
là giống nhau, chỉ có nội dung là khác còn cách bố trí là tương tự
nhautạo cho người dùng cảm giác dễ dùng, có thể suy luận được
các thao tác tương tự khi chat với người khác thông qua các thao tác
đã làm với người đang chat.
f. Tính hiệu quả:
Yêu cầu thiết kế một ứng dụng chat trên các thiết bị di động đó là việc
các thao tác mà người dùng phải thực hiện phải được tối ưu hóa triệt
để, tức là các thao tác thừa, không cần thiết phải được loại bỏ, các
luông tương tác phải dễ dàng. Vì vậy mục tiêu hướng đến của ứng
dụng là làm sao tạo được cảm giác thoải mái trong qua trình thao tác
của người dùng, và ứng dụng đã đáp ứng phần nào yêu cầu đó. Tuy
nhiên nhược điểm là khi số lượng người chat trong cùng một thời
điểm nhiều thì sẽ gây khó khăn cho việc chuyển đói cửa sổ chat để
thực hiện trò chuyện với 1 người bạn khác.
g. Tính trực tiếp:
Ứng dụng cung cấp các phương án hoàn thành tác nhiệm, ví dụ: khi
người dùng thực hiện việc đăng nhập, đăng ký hệ thống có những
phương án hỗ trợ người dùng hoàn thành nhiệm vụ.
3.3.3. Giao diện ứng dụng:
Hình 1- Màn hình đăng nhập
Hình 2- Màn hình đăng ký.
Hình 3- Màn hình danh sách bạn bè.
Hình 4: Màn hình chat.
Hình 5- Màn hình chat khi có thông báo có người chat.
4. Đánh giá tính dùng được:
4.1. Tính dễ học:
Ứng dụng có tính dễ học tương đối cao, những người mới sử dụng thiếu
kinh nghiệm hoàn toàn có thể dễ dàng sử dụng hệ thống. Ví dụ thao tác khi
chat với những người dùng khác nhau hoàn toàn có thể dự đoán được khi
người dùng đã thực hiện việc chat với một đối tượng bạn bè nào đó trong
danh sách, mọi hoạt động chỉnh sửa thông tin của bạn bè đều có thể dự đoán
được.
Hệ thống còn đảm bảo tính thân thiện ở chỗ bố trí danh sách bạn bè là dễ
dàng cho người dùng lựa chọn. Các View bố trí khung chat hoàn toàn tiện
lợi cho thao tác touch của người dùng.
4.2. Tính mềm dẻo:
Tính mềm dẻo hệ thống còn chưa được tốt lắm, người dùng không đưa ra
được những lựa chọn mang tính cá nhân.
4.3.Tính vững chắc:
Hệ thống tạm thời đáp ứng được những yêu cầu đề ra, nhưng chưa đảm bảo
được việc giúp người dùng định nghĩa các nhiệm vụ mới.