4.2.1. Thiết kế cơ sở dữ liệu
Dựa vào sơ đồ thực thể liên kết, ta chuyển đổi các thực thể thành các bảng cơ sở dữ liệu nhƣ sau (#: khóa chính, @: khóa ngoài):
Bảng 4.2 Đối tượng profile người dùng
Field Name Data type Data Size Description
# UserId Number 10 Khóa chính
fds
Username Text 50 Tên ngƣời dùng
Sex Number 1 Mã giới tính
Birthday A
Text 30 Ngày sinh
Address Text 50 Địa chỉ
Company Text 50 Nơi làm việc
Description Text 50 Mô tả bản thân
Email Text 50 Địa chỉ email
FollowNumber Number 5 Số ngƣời theo dõi
LikeNumber Number 5 Số like nhận đƣợc
StarNumber Number 5 Chỉ số đánh giá
Hobby Text 50 Thói quen
InterestedIn Text 50 Sở thích
@ InrelationShip Number 1 Mã mối quan hệ
@ ChannelId Number 5 Mã kênh kết nối
Boss Boolean Chủ tài khoản chính
Imei Text 30 Số IMEI nhận dạng
AvatarPath Text 50 Đƣờng dẫn avatar
@ PermissionId Number 1 Mã riêng tƣ
Bảng 4.3 Đối tượng kênh tạo bởi người dùng
Field Name Data type Data Size Description
# ChannelId Number 10 Khóa chính
ChannelName Text 50 Tên kênh
MemberNumber Number 1 Số ngƣời trong kênh
Date Text 30 Ngày thiết lập
Bảng 4.4 Đối tượng ảnh được chia sẻ
Field Name Data type Data Size Description
# ImageID Number 10 Khóa chính
Description Text 50 Mô tả về ảnh
ImagePath Text 50 Đƣờng dẫn của ảnh
Date Text 30 Ngày chia sẻ
CommentNumber Number 5 Số lƣợng comment
LikeNumber Number 5 Số lƣợng like
@ PermissionId Number 1 Mã quyền riêng tƣ
Bảng 4.5 Đối tượng tin nhắn được chia sẻ
Field Name Data type Data Size Description
# TextID Number 10 Khóa chính
Content Text 50 Nội dung
Date Text 30 Ngày chia sẻ
LikeNumber Number 5 Số lƣợng like
CommentNumber Number 5 Số lƣợng comment
Bảng 4.6 Đối tượng bình luận về các nội dung chia sẻ
Field Name Data type Data Size Description
# CommentID Number 10 Khóa chính
UserId Number 5 Mã ngƣời comment
TargetId Number 5 Mã đối tƣợng đƣợc
comment
Details Text 50 Nội dung comment
Date Text 30 Thời gian comment
Bảng 4.7 Đối tượng lượt thích trên các nội dung chia sẻ
Field Name Data type Data Size Description
# LikeID Number 10 Khóa chính
UserId Number 5 Mã ngƣời like
TargetId Number 5 Mã đối tƣợng đƣợc like
Date Text 30 Thời gian like
Bảng 4.8 Đối tượng phân quyền cho người dùng
Field Name Data type Data Size Description
# PermissionID Number 10 Khóa chính, mã quyền
fds
Details Text 30 Miêu tả chi tiết
Bảng 4.9 Đối tượng quan hệ giữa các người dùng
Field Name Data type Data Size Description
# LikeID Number 10 Khóa chính, mã mối quan hệ
4.2.2. Thiết kế biểu đồ gói
Từ sơ đồ thực thể liên kết, ta có thể xây dựng biểu đồ gói của ứng dụng mạng xã hội phạm vi gần nhƣ Hình 4.18. Ứng dụng đƣợc thiết kế theo mô hình MVC (Model - View - Control).
4.2.3. Thiết kế giao diện ngƣời dùng
Giao diện đăng ký/đăng nhập
Giao diện màn hình Setting và nhóm liên lạc
Giao diện bảng thông báo và đăng bài lên kênh chung
4.3. Kiểm thử ứng dụng 4.3.1. Môi trƣờng phát triển 4.3.1. Môi trƣờng phát triển
Ứng dụng mạng xã hội phạm vi gần Galaxy đƣợc xây dựng trên môi trƣờng phát triển nhƣ sau:
Android SDK: chứa các thƣ viện hỗ trợ lập trình của Android và trình quản lý thiết bị cho việc chạy mô phỏng phần mềm.
JDK Platform: trình biên dịch mã nguồn của ứng dụng Android với ngôn ngữ lập trình Java
Chord SDK: bộ công cụ hỗ trợ phát triển ứng dụng mạng xã hội đã mô tả ở trên.
Hệ quản trị cơ sở dữ liệu SQLite: đƣợc tích hợp trong Android SDK
Công cụ lập trình Eclipse
4.3.2. Cài đặt ứng dụng
Nhƣ đã mô tả ở trên, ứng dụng mạng xã hội phạm vi gần Galaxy hoạt động trên các thiết bị có yêu cầu nhƣ sau:
Thiết bị của hãng Samsung có số IMEI (có khe cắm SIM)
Hệ điều hành Android phiên bản 4.0 trở lên
Thiết bị có kết nối WiFi, WiFi Direct hoặc Access Point
Với các thiết bị thỏa mãn các yêu cầu nêu trên, ta có thể cài đặt ứng dụng bằng 2 cách:
1. Sao chép file cài đặt Galaxy.apk vào thiết bị và cài đặt trong thiết bị 2. Tiến hành build ứng dụng trên Eclipse và nạp trực tiếp lên thiết bị
4.3.3. Kiểm thử ứng dụng
Qua quá trình cài đặt và kiểm thử các chức năng của ứng dụng, ta có kết quả kiểm thử đƣợc tổng kết trong bảng sau:
Bảng 4.10 Kiểm thử các chức năng chính của ứng dụng
STT Chức năng Dữ liệu vào Dữ liệu ra Kết
quả
1 Quản lý profile và các chức năng liên quan đến profile của người dùng
1.1 Hiển thị profile của ngƣời dùng
Profile của ngƣời dùng
Màn hình hiển thị profile của ngƣời dùng. Tùy theo từng ngƣời dùng sẽ có hiển thị khác nhau.
OK
1.2 Ngƣời dùng thay đổi profile của mình
Các thông tin mà ngƣời dùng thay đổi
Màn hình hiển thị profile đã thay đổi và cập nhật cơ sở dữ liệu
OK 1.3 Hiển thị các hoạt động của ngƣời dùng Thao tác hiển thị các hoạt động Màn hình hiển thị các hoạt động của ngƣời dùng OK 1.4 Hiển thị profile của ngƣời dùng khác Chọn một ngƣời dùng
Hiển thị profile của ngƣời dùng tùy theo quan hệ hiện tại. Nếu là ngƣời dùng mới, hiển thị chức năng follow, add friend. Nếu là bạn, thì hiển thị quan hệ hiện tại.
OK
1.5 Thay đổi quan hệ với ngƣời dùng khác
Quan hệ muốn thay đổi
Thông báo là đã gửi yêu cầu thay đổi. Chờ phản hồi từ ngƣời dùng đồng ý hay không đồng ý OK 1.6 Cập nhật profile của ngƣời dùng khác Thao tác cập nhật profile
Màn hình profile với các thông tin cập nhật. Các thông tin này có thể thay đổi so với các thông tin trong cơ sở dữ liệu của ngƣời dùng. Cập nhật cơ sở dữ liệu.
OK
1.7 Yêu cầu kết bạn Thao tác kết bạn Màn hình thông báo gửi lời mời. Nếu có accept sẽ hiển thị là friend. Nếu không sẽ thông báo bị từ chối
OK
2 Kiểm thử một số chức năng Chord SDK cung cấp
2.1 Hiển thị danh sách tất cả ngƣời dùng trong mạng
Tham gia một mạng kết nối
Danh sách tất cả ngƣời dùng trong mạng OK 2.2 Cập nhật danh sách khi có thay đổi Ngƣời dùng khác tham gia hay rời khỏi mạng
Danh sách tất cả ngƣời dùng sau khi có ngƣời tham gia vào mạng hay rời mạng
2.3 Gửi yêu cầu kết bạn đến ngƣời dùng khác
Yêu cầu kết bạn Thông báo gửi thành công và ngƣời dùng kia nhận đƣợc
OK
2.4 Gửi bài viết trong kênh chung
Bài viết gồm ảnh và text
Hiển thị bài viết lên kênh chung và ngƣời dùng trong mạng nhận đƣợc OK 2.5 Cập nhật trạng thái mạng Trạng thái mạng thay đổi
Trạng thái mạng hiện thời OK 2.6 Cập nhật trạng
thái khi gửi bài viết
Lỗi xảy ra: mất mạng, thiết bị gửi rời mạng
Thông báo cho ngƣời dùng lỗi tại sao không gửi đƣợc bài viết
OK
Qua bảng kết quả kiểm thử, ta có thể thấy các chức năng của ứng dụng hoạt động ổn định. Ứng dụng có thể hoạt động trong chế độ offline, không cần kết nối Internet hay một máy chủ quản lý dữ liệu. Từ đó, ứng dụng mang lại cho ngƣời dùng trải nghiệm những mối quan hệ mang tính chất vật lý hơn, đồng thời tăng cƣờng bảo mật cho thông tin cá nhân.
Kết luận chƣơng 4
Trong chƣơng cuối cùng của luận văn, ta đã đi qua các giai đoạn phân tích, thiết kế, triển khai và kiểm thử ứng dụng mạng xã hội phạm vi gần. Ta có thể thấy ứng dụng đã đạt đƣợc những kết quả nhất định trong việc cung cấp các chức năng tiện ích và giá trị gia tăng cho ngƣời dùng di động.
Bên cạnh đó, ứng dụng vẫn có thể đƣợc tiếp tục hoàn thiện ở một số hạng mục nhƣ cải tiến giao diện ngƣời dùng, chuyên biệt hóa các tính năng quảng cáo và hỗ trợ khẩn cấp, tăng cƣờng độ ổn định. Đặc biệt, việc mở rộng ứng dụng nhằm hỗ trợ các nền tảng phát triển khác nhƣ AllJoyn sẽ đƣa ứng dụng mạng xã hội phạm vi gần tiếp cận tới đông đảo ngƣời dùng di động hơn nữa.
KẾT LUẬN
Trong sự phát triển của thị trƣờng di động hiện nay, ngƣời dùng có xu hƣớng luôn mang theo thiết bị di động bên mình. Từ đó, nhu cầu sử dụng thiết bị di động, đặc biệt là điện thoại thông minh, trong đời sống cá nhân cũng nhƣ cho mục đích công việc ngày càng lớn.
Trƣớc những nhu cầu thực tiễn đó, mô hình mạng xã hội dựa trên vị trí hứa hẹn cung cấp các trải nghiệm mới mẻ cho ngƣời dùng di động cũng nhƣ mở ra một phƣơng thức mới cho ngành quảng cáo, bán lẻ. Mạng xã hội phạm vi gần không sử dụng server quản lý tập trung, không yêu cầu kết nối mạng Internet, ngoài khả năng cho phép ngƣời dùng trao đổi thông tin, giao tiếp xã hội còn có thể ứng dụng trong các trƣờng hợp cứu hộ thiên tai, thảm họa. Trên cơ sở vận dụng các phƣơng pháp nghiên cứu, luận văn đã đạt đƣợc những kết quả chủ yếu nhƣ sau:
Thứ nhất, luận văn đã khảo sát và phân tích đƣợc kiến trúc, ƣu nhƣợc điểm của các mô hình mạng xã hội cũng nhƣ các nền tảng phát triển phần mềm cho mạng xã hội phạm vi gần. Từ đó, đƣa ra mô hình tổ chức dữ liệu phân tán, tăng cƣờng khả năng bảo mật thông tin cá nhân cho ngƣời sử dụng thiết bị di động.
Thứ hai, luận văn đã triển khai thành công ứng dụng mạng xã hội phạm vi gần, cung cấp các tính năng trao đổi thông tin cơ bản và thiết yếu cho ngƣời dùng. Ngƣời dùng có thể tƣơng tác và tìm kiếm bạn bè dựa trên không gian và thời gian thực tế chứ không chỉ là các mối quan hệ ảo trên mạng xã hội truyền thống.
Thứ ba, luận văn đề xuất mô hình ứng dụng mạng xã hội phạm vi gần trong ngành truyền thông, quảng cáo dựa trên tính năng phát quảng bá các bản tin và hình ảnh quảng cáo tới thiết bị trong cùng mạng kết nối; ứng dụng trong công tác tìm kiếm cứu nạn trên đất liền dựa trên tính năng quét và tìm kiếm các thiết bị lân cận. Đây là những tính năng cung cấp thêm các giá trị gia tăng vô cùng hữu ích cho ngƣời dùng.
TÀI LIỆU THAM KHẢO
[1] http://www.wi-fi.org/discover-wi-fi/15-years-of-wi-fi, truy cập lần cuối ngày 25/3/2015.
[2] http://www.wi-fi.org/discover-wi-fi/wi-fi-direct, truy cập lần cuối ngày 25/3/2015.
[3] Hughes Systique Coporation (2012), Wi-Fi Direct Technology White Paper,
Maryland, US.
[4] Bluetooth Special Interest Group (2010), Bluetooth Technology 2010 Annual Report.
[5] Noah Klugman, Josh Adkins (2014), Bluetooth LE 4.0 an 4.1 (BLE), University of Michigan, US.
[6] Peter Crocker (2013), Proximity-based mobile social networking: outlook and analysis, Gigaom Pro.
[7] Smith's Point Analytics (2011), Proximity Based Mobile Social Networking: Applications and Technology, Making New Connections in the Physical World. [8] Judy Hartley (2012), Peer-to-Peer Networking: A Mobile Coming of Age, Intel
Corporation.
[9] Hongwei Li, Haojin Zhu, Bong Jun Choi (2014), Security and Privacy of P2P Networks in Emerging Smart City, Springer Publish.
[10] http://developer.android.com, truy cập lần cuối ngày 25/3/2015.
[11] https://allseenalliance.org/developers/, truy cập lần cuối ngày 25/3/2015. [12] http://developer.samsung.com/chord/, truy cập lần cuối ngày 25/3/2015. [13] Samsung Electronics Co., Ltd (2014), Chord Programming Guide version
2.0.
[14] IDC Corporate (2014), Smartphone OS and Vendors Market Share Report, Q4 2014.
[15] PGS.TS Nguyễn Văn Ba (2008), Phát triển hệ thống hướng đối tượng với UML 2.0 và C++, Nhà xuất bản Đại học Quốc gia Hà Nội, Hà Nội.
[16] Daniel Camps-Mur, Andres Garcia-Saavedra, Pablo Serrano (2013), "Device to device communications with WiFi Direct: overview and experimentation", IEEE (Wireless Communications volume 20), pp. 96 - 104;