Các ứng dụng Google Maps

Một phần của tài liệu Điện toán đám mây của Google và ứng dụng xây dựng hệ thống quản lý dịch vụ (Trang 44)

Google Ditu

Đây là phiên bản định vị của Trung Quốc của dịch vụ Google Maps và Google Local. Để phù hợp với luật pháp của Trung Quốc, Google phải dỡ bỏ hoặc thay đổi một số tính năng Google Maps trong Google Ditu.

Google Moon

Google đã chụp ảnh mặt trăng và đƣa vào giao diện Google Maps, tạo ra một công cụ gọi là Google Moon. Mặc định công cụ này hiển thị các điểm dừng chân của tàu vũ trụ Apollo trên mặt trăng. Một dự án cộng tác giữa NASA Ames Research Center và Google gần đây đang tích hợp và cải tiến dữ liệu đƣợc sử dụng cho Google Moon. Đây là dự án Planetary Content.

Google Mars

Google Mars cho phép xem ảnh hữu hình giống nhƣ Google Moon, gồm các ảnh hồng ngoại và các địa hình nổi (mặt chiếu) của sao Hỏa. Ngƣời dùng có thể chuyển giữa các mặt chiếu, dữ liệu hữu hình và dữ liệu hồng ngoại, giống nhƣ chuyển giữa bản đồ, vệ tinh và kết hợp bản đồ - vệ tinh của Google Maps. Khi kết hợp với các nhà khoa học NASA tại khoa Mars Space Flight ở trƣờng đại học Arizona State,

Google đã cung cấp các dữ liệu thu thập đƣợc từ hai phái đoàn NASA Mars là Mars Global Surveyor và 2001 Mars Odyssey.

Hiện nay Google Earth 5 có thể truy cập dữ liệu Google Mars ở độ phân giải cao hơn, cũng nhƣ khả năng xem địa vật 3D, xem toàn cảnh từ các vùng khác nhau của sao Hỏa tƣơng tự nhƣ Google Street View.

Google Sky

Google Sky là một công cụ bản đồ không gian trực tuyến cho phép ngƣời dùng xem bản đồ toàn cầu thông qua ảnh chụp bởi không gian Hubble.

Google Ride Finder

Là một công cụ gắn vào GPS của ô tô để chọn tham gia các dịch vụ taxi và ô tô to. Công cụ hiển thị vị trí hiện tại của tất cả các phƣơng tiện đƣợc hỗ trợ bởi các dịch vụ tại các thành phố chính của Mỹ, bao gồm Chicago, San Francisco. Nhƣng năm 2009 công cụ này không đƣợc tiếp tục nữa.

Google Transit

Google Transit ra đời tại Google Labs, lúc đầu hỗ trợ bản đồ cho Phần Lan, Oregon, hiện nay bao gồm hàng trăm thành phố của nƣớc Mỹ, Canada, Châu Âu, Châu Á, Châu Phi, Australia, New Zealand. Dịch vụ này tính toán đƣờng đi, thời gian di chuyển và chi phí, so sánh với khi đi bằng ô tô. Tháng 10 năm 2007, Google Transit thành công tại Google Labs và đƣợc tích hợp đầy đủ vào Google Maps.

Google Transit đƣợc mở rộng trên toàn thế giới, tại hàng trăm thành phố và toàn bộ các quốc gia Trung Quốc, Nhật Bản, Thụy Sỹ. Nó đƣa thông tin các thành phố chính của Mỹ và Canada, một số ngoại lệ đáng chú ý nhƣ Washington DC. Ở một số vùng nhƣ vƣơng quốc Anh, Google Transit chỉ bao gồm các điểm trung chuyển. Ví dụ ngành vận tải ở London không cung cấp cho Google Transit dữ liệu của mình, nhƣng một số công ty xe buýt khác lại cung cấp dữ liệu của họ, theo cảnh báo “những thông tin này có thể chƣa đầy đủ” khi tìm kiếm hƣớng đi trong hoặc ngoài London. Ở một số vùng khác, Google Transit không cung cấp hƣớng đi cho các phƣơng tiện giao thông công cộng nhƣng lại cung cấp Transit Layer phủ lên các đƣờng giao thông trên bản đồ. Các ví dụ đáng chú ý gồm Paris, Berlin, Mexico City và nhiều thủ đô khác trên thế giới.

Google Biking directions

Ngày 10 tháng 3 năm 2010, Google thêm khả năng tìm kiếm đƣờng đi cho xe đạp trên Google Maps. Đƣờng đi tối ƣu đƣợc tính toán dựa vào các con đƣờng thƣờng dành cho xe đạp. Một lớp tùy chọn cũng thể hiện các kiểu khác nhau của đƣờng đi cho xe đạp, từ những đƣờng mòn chỉ dành cho xe đạp đến các con đƣờng ƣu tiên. Dịch vụ

này đƣợc cung cấp tại Mỹ và là phiên bản kiểm thử beta tại một số quốc gia nhƣ Singapore.

Google My Map

Tháng 4 năm 2007, Google thêm một tính năng mới My Map vào bản đồ tìm kiếm địa phƣơng của Google. My Map cho phép ngƣời dùng và các công ty thƣơng mại tạo ra bản đồ của chính họ bằng cách đặt các điểm đánh dấu, các lƣới và các đa giác trên bản đồ. Có sẵn 84 điểm đánh dấu, sắp xếp từ các quán bar đến nhà hàng đến các ký hiệu động đất. Có thể chọn màu, độ rộng và độ mờ đục cho đa đƣờng và đa giác. Có thể lƣu lại bản đồ đƣợc sửa bằng My Maps để sau này xem lại hoặc công khai hoặc đánh dấu là không công bố, trong trƣờng hợp đó ngƣời dùng sẽ cần URL đƣợc lƣu với ID 42 ký tự. Mỗi thành phần đƣợc thêm vào My Map có thẻ sửa đƣợc. Thẻ này có thể chứa ký tự, nhiều chữ hoặc HTML. Các video và các thành phần khác có thể đƣợc nhúng vào trong thẻ HTML. Tuy nhiên lại không nhúng đƣợc các bản đồ đã tạo ra vào trang web hay blog. Một số website độc lập đã tạo ra các công cụ cho phép ngƣời dùng nhúng các bản đồ và thêm các tính năng vào bản đồ của họ.

Google Street View

Là một tính năng mới của Google Map cung cấp khả năng xem đƣờng phố của các thành phố ở nƣớc Mỹ. Lúc đầu cho phép xem 5 thành phố nhƣng về sau đã mở rộng ra hàng nghìn vùng ở Australia, Canada, Trung Quốc, Cộng hòa Séc, Pháp, Đức, Hồng Kông, Ấn Độ, Nhật, Mexico, New Zealand, Nam Phi, Tây Ban Nha, Thụy Điển, Thụy Sỹ, Hà Lan, Na Uy, vƣơng quốc Anh, Mỹ. Australia đƣợc thêm vào tính năng Street View với hầu hết các đƣờng cao tốc, đƣờng, phố. Nhật Bản, Tour de France cũng đƣợc thêm vào. Sau đó, Google thêm các bản đồ trƣờng đại học. Các thành phố chính của Mehico và các điểm du lịch cũng đƣợc thêm vào.

Google Aerial View

Bao gồm các ảnh trên không, cung cấp ảnh của các thành phố quan sát bằng mắt của chim. Thành phố đầu tiên là San Jose và San Diego. Tính năng này đƣợc phát triển dựa vào Google Maps API, là một tính năng thí nghiệm của Google Maps Labs. Sau đó, Google Aerial View có thể xem đƣợc các thành phố của Mỹ.

Google Latitude

Là một tính năng của Google cho phép ngƣời dùng chia sẻ các địa điểm vật lý với nhau. Dịch vụ này dành cho các thiết bị di động.

Google Flu Shot Finder

Cho phép ngƣời dùng ở Mỹ xác định các khu vực có virus H1N1 và các vùng có vaccine cúm gần một địa chỉ hoặc mã ZIP nào đó.

Là phiên bản trực tuyến của trò chơi Monopoly dùng Google Maps. Ngày nay trò chơi này không còn nữa.

2.6 Tổng kết chương

Chƣơng này đã tìm hiểu về điện toán đám mây của Google để thấy đƣợc tiện ích mà điện toán đám mây của Google mang lại và ứng dụng điện toán đám mây của Google trong phát triển phần mềm. (adsbygoogle = window.adsbygoogle || []).push({});

Google App Engine là nền tảng điện toán đám mây theo mô hình PaaS. Google App Engine cho phép chạy ứng dụng web trên cơ sở hạ tầng của Google. Việc xây dựng, bảo trì, thay đổi ứng dụng rất dễ dàng, ngƣời dùng không cần phải bảo trì máy chủ mà chỉ cần đẩy ứng dụng lên máy chủ Google, khi đó Google sẽ phục vụ đáp ứng nhu cầu của ngƣời dùng [3].

Google App Engine cung cấp môi trƣờng phát triển đầy đủ tính năng giống nhƣ Google App Engine đƣợc cài đặt trên tính máy tính của ngƣời dùng.

Chƣơng sau sẽ áp dụng các kiến thức tìm hiểu đƣợc ở chƣơng này để phân tích, thiết kế, xây dựng thử nghiệm hệ thống quản lý dịch vụ trong đó các dịch vụ đƣợc cung cấp bởi Google sẽ đƣợc sử dụng là: Google Map API, Google App Engine, Google Data Store.

Chương 3.

XÂY DỰNG HỆ THỐNG QUẢN LÝ DỊCH VỤ 3.1 Mô tả bài toán

3.1.1 Giới thiệu

Ngày nay, việc xây dựng và triển khai các ứng dụng phần mềm nguồn mở đang đƣợc coi là một trong những giải pháp tối ƣu giúp giảm thiểu tối đa kinh phí bản quyền. Chính phủ Việt Nam cũng đang có chính sách khuyến khích sử dụng và phát triển phần mềm mã nguồn mở.

Luận văn này sẽ nghiên cứu, xây dựng thử nghiệm một hệ thống quản lý dịch vụ cho phép quản lý, tìm kiếm các điểm cung cấp dịch vụ nhƣ địa điểm ăn uống, chụp ảnh, du lịch... Hệ thống này chạy đƣợc trên trình duyệt của các điện thoại di động, các máy tính hoặc bất kỳ thiết bị nào miễn là có kết nối Internet.

Hệ thống đƣợc phát triển bằng ngôn ngữ lập trình Java, sử dụng công cụ Eclipse, trong đó có sử dụng Google Map API, Web server sử dụng dịch vụ Google App Engine và Database server sử dụng Google Data Store.

3.1.2 Giải pháp

Hệ thống quản lý dịch vụ này sẽ áp dụng những công nghệ đƣợc cung cấp bởi Google để thấy đƣợc những lợi ích từ việc sử dụng công nghệ này. Các dịch vụ đƣợc cung cấp bởi Google sẽ đƣợc sử dụng là: Google Map API, Google App Engine, Google Data Store.

3.2 Tổng quan về hệ thống quản lý dịch vụ

Các chức năng cơ bản của phần mềm thử nghiệm Hệ thống quản lý các dịch vụ: - Chức năng về quản trị hệ thống: quản lý user, quản lý danh mục các dịch vụ, đăng nhập hệ thống, ra khỏi hệ thống.

- Chức năng cơ bản về bản đồ: xem bản đồ dƣới các dạng khác nhau (bản đồ, vệ tinh, kết hợp, địa hình), cho phép tìm kiếm một địa điểm nào đó, tìm đƣờng đi giữa hai địa điểm, hiển thị chỉ dẫn tƣơng ứng, tìm kiếm các điểm cung cấp dịch vụ theo các loại hình dịch vụ khác nhau.

Danh sách nhóm ngƣời ảnh hƣởng đến hệ thống: có 3 tác nhân ảnh hƣởng đến hệ thống đƣợc chia làm 2 nhóm: nhóm User và Administrator.

User

Administrator

Visitor Member

Hình 0.1 Nhóm người ảnh hưởng tới hệ thống

Nhóm Administrator: là nhóm quản trị hệ thống, nhóm này đƣợc thực hiện toàn bộ các chức năng của hệ thống, bao gồm quản lý ngƣời dùng, quản lý các nhóm quyền, quản lý các dịch vụ. Administrator Manage User Manage Service Manage Role Login as Administrator <<include>> <<include>> <<include>> Hình 0.2 Các ca sử dụng của Quản trị hệ thống

Nhóm User: bao gồm khách viếng thăm hệ thống để tìm kiếm thông tin về địa điểm và đƣờng đi, hoặc nhóm quản lý bao gồm các ngƣời dùng đƣợc phân các quyền quản lý dịch vụ. Khách viếng thăm hệ thống không cần có tài khoản truy cập hệ thống nhƣng vẫn có thể sử dụng đƣợc các tiện ích của hệ thống. Nhóm quản lý là những ngƣời dùng đƣợc cấp user có quyền tƣơng ứng trên hệ thống.

User

Visitor Member

Manage Service Login as User

<<include>>

View Address Info Search Address

Get direction

Hình 0.3 Các ca sử dụng của User

3.3 Yêu cầu chức năng hệ thống

Các yêu cầu chung cho các chức năng của hệ thống (adsbygoogle = window.adsbygoogle || []).push({});

- Giao diện thân thiện với ngƣời sử dụng, font chữ Unicode, hình ảnh minh họa dễ hiểu, dễ gợi nhớ.

- Các loại màn hình trong ứng dụng

 Màn hình hiển thị: hiển thị bản đồ các điểm đƣợc quản lý trên hệ thống.

 Màn hình tra cứu: gồm text box cho phép nhập địa điểm hoặc giá trị cần tra cứu và kết quả hiển thị tƣơng ứng.

 Màn hình cập nhật thông tin: màn hình thêm mới, cập nhật các thông tin đƣợc lƣu trong hệ thống nhƣ thông tin về ngƣời dùng, thông tin dịch vụ.

 Màn hình đăng nhập: để ngƣời dùng nhập vào tài khoản và sử dụng các chức năng tƣơng ứng.

- Yêu cầu về kiểm tra thông tin hợp lệ

 Kiểm tra trƣờng dữ liệu khi nhập

o Khi ngƣời sử dụng tự nhập giá trị, hệ thống kiểm tra tính hợp lệ của dữ liệu, nếu sai thì hệ thống hiển thị thông báo lỗi.

o Ngƣời sử dụng phải sửa lại giá trị sau khi thông báo lỗi đƣợc hiển thị để tiếp tục thực hiện chức năng.

 Kiểm tra dữ liệu khi lƣu vào cơ sở dữ liệu o Kiểm tra tính hợp lệ;

o Câu thông báo lỗi: theo ngữ cảnh.

3.4 Phân tích thiết kế hệ thống 3.4.1 Mô hình tổng thể hệ thống 3.4.1 Mô hình tổng thể hệ thống

Hệ thống quản lý các dịch vụ sẽ lấy dữ liệu bản đồ từ Google Maps và đƣa vào hệ thống. Hệ thống đƣợc đặt trên Google App theo mô hình tổng thể đƣợc biểu diễn trong hình vẽ sau:

Hình 0.4 Mô hình tổng thể hệ thống

3.4.2 Các chức năng chi tiết của hệ thống

Bảng 3.1. Các chức năng chi tiết của hệ thống

Chức năng Mô tả Chi tiết

Đăng nhập Cho phép ngƣời dùng đăng nhập vào hệ thống. Màn hình đăng nhập có hai

trƣờng: Username, Password và nút “Login”, “Cancel”.

Sau khi ngƣời dùng chọn “Login”: Nếu username và password đúng, ngƣời dùng đăng nhập thành công hệ thống. Nếu sai sẽ có thông báo lỗi.

Quản lý ngƣời dùng

Cho phép thêm, sửa, xóa ngƣời dùng trong hệ thống.

Các thông tin về ngƣời dùng bao gồm tên đăng nhập, mật khẩu, họ tên, ngày sinh, địa chỉ, quyền… Mỗi ngƣời dùng chỉ đƣợc phân một nhóm quyền duy nhất. Tên đăng nhập là duy nhất với mỗi ngƣời dùng.

Quản lý nhóm quyền

Cho phép thêm, sửa, xóa nhóm quyền trong hệ thống.

Các thông tin về nhóm quyền bao gồm tên, mã, quyền tƣơng ứng. Quản lý dịch

vụ

Cho phép thêm, sửa, xóa dịch vụ

Các thông tin về dịch vụ bao gồm loại dịch vụ, địa chỉ cung cấp dịch vụ, tỉnh thành, mô tả về dịch vụ. Tìm kiếm (adsbygoogle = window.adsbygoogle || []).push({});

điểm cung cấp dịch vụ

Cho phép tìm kiếm địa chỉ các điểm cung cấp dịch vụ

Ngƣời dùng chọn dịch vụ cần tìm địa điểm cung cấp, hệ thống liệt kê các điểm cung cấp dịch vụ cho ngƣời dùng biết. Ngƣời dùng có thể nhấp chuột vào địa điểm đƣợc chỉ để xem mô tả chi tiết về địa điểm đó.

Tìm kiếm địa điểm

Cho phép tìm kiếm địa điểm bất kỳ

Ngƣời dùng nhập địa điểm cần tìm, chọn tìm kiếm, hệ thống hiển thị địa điểm đó trên bản đồ

Tìm kiếm đƣờng đi giữa hai địa điểm

Cho phép tìm kiếm đƣờng đi giữa hai địa điểm

Ngƣời dùng nhập điểm bắt đầu, điểm kết thúc, chọn chỉ đƣờng, hệ thống hiển thị đƣờng đi từ điểm đầu đến điểm kết thúc trên bản đồ và danh sách các đƣờng đi để tới đƣợc điểm kết thúc đó.

3.4.3 Yêu cầu về môi trường phát triển

Hệ thống đƣợc phát triển bằng ngôn ngữ Java nhờ công cụ Eclipse. Mã nguồn và các file liên quan đƣợc đặt trên máy localhost. Các file sau khi chạy thành công trên localhost sẽ đƣợc đẩy lên App Engine.

Ngƣời sử dụng dùng trình duyệt web để ghé thăm ứng dụng. Điện thoại hoặc máy tính của ngƣời dùng có kết nối Internet.

3.4.4 Các ca sử dụng của hệ thống

User

Visitor Member

Manage Service Login as User

<<include>>

View Address Info Search Address

Get direction

Hình 0.5 Các ca sử dụng của người dùng cuối

Các ca sử dụng của Administrator: Administrator Manage User Manage Service Manage Role Login as Administrator <<include>> <<include>> <<include>> Hình 0.6 Các ca sử dụng của quản trị hệ thống Quản lý ngƣời dùng: Administrator

Manage User Login as Administrator

Add User Update User Delete User <<include>> <<include>> <<include>> Hình 0.7 Ca sử dụng quản lý người dùng Quản lý nhóm quyền: Administrator Login as Administrator Manage Role Add Role Update Role Delete Role <<include>> <<include>> <<include>> Hình 0.8 Ca sử dụng quản lý nhóm quyền

Quản lý Dịch vụ: Administrator Login Manage Service Add Service Update Service Delete Service <<include>> <<include>> <<include>> Member Hình 0.9 Ca sử dụng quản lý Dịch vụ

Các user case về vịêc hiển thị bản đồ:

User

Visitor Member

Search Address

View Address Info Get direction

Display Information (adsbygoogle = window.adsbygoogle || []).push({});

Display Image

Display Map Display direction

Hình 0.10 Ca sử dụng xem bản đồ

3.4.5 Thiết kế hệ thống 3.4.5.1 Biểu đồ hoạt động 3.4.5.1 Biểu đồ hoạt động

Click Login

Type Username/Pass Display Error

Display menu Redirecting to login page

Data false true Use Function Choosing menu Finishing Finishing Initialize

Hình 0.11 Sơ đồ hoạt động cho chức năng đăng nhập

Mô tả: Vào hệ thống, ngƣời dùng chọn chức năng Login, hệ thống sẽ hiển thị trang đăng nhập, trong đó ngƣời dùng phải nhập tên đăng nhập (Username), mật khẩu (Password) rồi nhấn Login. Nếu dữ liệu ngƣời dùng nhập vào không tồn tại trong hệ thống thì hiển thị lỗi tƣơng ứng. Nếu dữ liệu ngƣời dùng nhập vào đã tồn tại trong hệ

Một phần của tài liệu Điện toán đám mây của Google và ứng dụng xây dựng hệ thống quản lý dịch vụ (Trang 44)