Thiết kế hệ thống

Một phần của tài liệu nghiên cứu kiến trúc hệ thống tích hợp điện toán đám mây và lbs (Trang 70 - 76)

Với bài toán đặt ra đƣợc phân tích ở trên, hệ thống thiết kế chia làm 02 module chính bao gồm: Module trên Server và Module trên Client, trong đó:

Module Server: là ứng dụng web (web application) cung cấp các dịch vụ

khai thác dữ liệu đƣợc chạy trực tuyến trên Internet, có khả năng:

- Truy vấn thông tin vị trí các điểm có siêu thị, nhà hàng, trạm xăng…

- Lƣu trữ và quản lý thông tin địa lý các điểm có siêu thị, nhà hàng, trạm xăng…

- Cập nhật dữ liệu cho hệ thống.

- Đƣợc đặt trên máy chủ của Google, đƣợc cài đặt và duy trì thông qua GAE. Công nghệ sử dụng: Java Serverlet, Javascript, Google Maps Javascript API v3, Google Maps Services, Google Cloud Datastore API.

Module Client:là một ứng dụng dạng .apk chạy trên thiết bị di động cài đặt

hệ điều hành Android có khả năng:

- Cung cấp thông tin về vị trí hiện tại

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/ - Dẫn đƣờng đến vị trí ngƣời dùng mong muốn

- Đƣợc cài đặt dƣới dạng các ứng dụng Android.

Sơ đồ mô hình của hệ thống đƣợc mô tả nhƣ trong hình 3.1 dƣới đây:

Hình 3. 1: Mô hình hệ thống

3.2.3.1. Công cụ sử dụng

Hệ thống đƣợc phát triển trên nền tảng các công nghệ sau:

Công nghệ lƣu trữ: Trong phần demo tác giả sử dụng hệ thống quản lý dữ liệu

phẳng Google Cloud Datastore. Là một công nghệ quản lý dữ liệu dạng đối tƣợng miễn phí, luôn sẵn sàng đối với ngƣời dùng.

Công nghệ lập trình giao tiếp với CSDL Cloud Datastore: Java Servlet là thành phần chính đƣợc sử dụng để phát triển các chƣơng trình dịch vụ Java ở phía máy chủ. Các Servlet là các chƣơng trình Java thực hiện ở các ứng dụng Server (tên gọi

“Servlet” cũng gần giống như “Applet” ở phía máy Client) để trả lời cho các yêu cầu

của Client. Các Servlet không bị ràng buộc chặt với một giao thức Client-Server cụ thể nào cả, nhƣng giao thức thƣờng đƣợc sử dụng là HTTP, do vậy, khi nói tới Servlet nghĩa là nói tới HTTP Servlet. Servlet là sự phát triển mở rộng của CGI để đảm bảo Server thực hiện đƣợc các chức năng của mình. Có thể sử dụng Servlet của Java để tuỳ chỉnh lại một dịch vụ bất kỳ, nhƣ Web Server, Mail Server, v.v.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/

Web Server hiển thị các tƣ liệu đƣợc viết trong HTML và hồi đáp cho yêu cầu của ngƣời sử dụng qua HTTP. Các tƣ liệu HTML chứa các văn bản đƣợc đánh dấu (định dạng) để các trình duyệt nhƣ Google Chrome, Internet Explorer, Netscape… đọc đƣợc.Nhƣ vậy với Serverlet rất dễ dàng cho phép tác giả giao tiếp với CSDL Google Cloud Datastore, trả về dữ liệu cho ngƣời dùng một cách nhanh chóng.

Công nghệ lập trình ứng dụng chạy trên Android: Java là một ngôn ngữ lập

trình dạng lập trình hƣớng đối tƣợng (OOP). Khác với phần lớn ngôn ngữ lập trình thông thƣờng, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi chạy, Java đƣợc thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ đƣợc môi trƣờng thực thi chạy.

Đặc điểm nổi bật nhất của Java là không phụ thuộc vào hệ điều hành và bộ xử lý. Điều này cho phép một ứng dụng viết bằng Java có thể đƣợc thực hiện trên bất kỳ hệ điều hành và hệ xử lý nào có hỗ trợ Java. Do vậy, nó đƣợc chọn cho việc xây dựng ứng dụng trên Android. Tuy nhiên ngƣời phát triển ứng dụng trên Android chỉ sử dụng 1 phần nhỏ thƣ viện J2EE đƣợc xem là máy ảo Dalvik.

3.2.3.2. Biểu đồ Ca sử dụng (Use case) của hệ thống

a. Các tác nhân và các pha sử dụng

Hệ thống có hai nhóm tác nhân chính là Nhà quản trị (Admin) và Ngƣời dùng cuối (Thiết bị). Trong đó:

- Nhà quản trị (Admin): có nhiệm vụ quản trị toàn bộ hệ thống, cập nhật và chỉnh sửa dữ liệu về các cửa hàng, trạm xăng, cây ATM, dữ liệu về Ngƣời dùng cuối. Nhà quản trị là nhóm tác nhân có quyền sử dụng cao nhất trong hệ thống, có các pha sử dụng chính nhƣ sau:

+ Đăng nhập (adsbygoogle = window.adsbygoogle || []).push({});

+ Quản trị dữ liệu các cửa hàng, trạm xăng, siêu thị… + Tìm kiếm thông tin

+ Hiển thị bản đồ + Quản lý trang tin

- Ngƣời dùng cuối (Thiết bị): là nhóm tác nhân chỉ đƣợc sử dụng các chức năng của hệ thống thông qua các thiết bị di động có GPS và Internet. Nhóm Ngƣời dùng cuối có các pha sử dụng nhƣ sau:

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/

+ Truy vấn địa điểm và thông tin về các địa điểm này đồng thời dẫn đƣờng tới các điểm đó.

Biểu đồ Use case tổng quát của toàn hệ thống đƣợc mô tả nhƣ hình 3.3:

b. Biểu đồ Ca sử dụng Quản trị dữ liệu các địa điểm

Hình 3. 2: Biểu đồ ca sử dụng quản trị dữ liệu các địa điểm

c. Biểu đồ Ca sử dụng Hiển thị bản đồ

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/

d. Biểu đồ Ca sử dụng Truy vấn địa điểm

Hình 3. 4: Biểu đồ ca sử dụng truy vấn địa điểm

3.2.3.3. Biểu đồ triển khai hệ thống

Hệ thống đƣợc triển khai trên 2 nút Server và Client.

Các thành phần cài đặt trên Server toàn bộ sử dụng nền tảng điện toán đám mây của Google (Google Cloud). Nó bao gồm một module cung cấp dữ liệu địa điểm dạng JSON cho Client, một module cập nhật dữ liệu địa điểm cho ngƣời quản trị dữ liệu, một module Cơ sở dữ liệu địa điểm để lƣu dữ liệu trên Cloud Datastore.

Ở phía Client là thiết bị smartphone dùng hệ điều hành Android đƣợc cài đặt 4 module là module Cập nhật thông tin vị trí, module Tùy chọn tiêu chí tìm kiếm, module Hiển thị bản đồ số, module Dẫn đƣờng trên bản đồ.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/

Hình 3. 5: Biểu đồ triển khai hệ thống

3.2.3.4. Thiết kế cơ sở dữ liệu

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn/

Một phần của tài liệu nghiên cứu kiến trúc hệ thống tích hợp điện toán đám mây và lbs (Trang 70 - 76)