Tải bản đầy đủ
4 Tìm hiểu dịch vụ web (web service)

4 Tìm hiểu dịch vụ web (web service)

Tải bản đầy đủ

Web Services = XML + Transport Protocol (HTTP)
1.4.2 Đặc điểm của dịch vụ web
− Dịch vụ Web cho phép client và server tương tác được với nhau ngay cả trong
những môi trường khác nhau.
− Phần lớn kĩ thuật của dịch vụ Web được xây dựng dựa trên mã nguồn mở và
được phát triển từ các chuẩn đã được công nhận như XML.
− Một Dịch vụ Web bao gồm có nhiều mô-đun.
− Là sự kết hợp của việc phát triển theo hướng từng thành phần với những lĩnh
vực cụ thể và cơ sở hạ tầng Web.
− Một ứng dụng khi được triển khai sẽ hoạt động theo mô hình client-server. Nó
có thể được triển khai bởi một phần mềm ứng dụng phía server ví dụ như PHP,
Oracle Application server hay Microsoft.Net…
Ngày nay dịch vụ Web đang rất phát triển, những lĩnh vực trong cuộc sống có
thể áp dụng và tích hợp dịch vụ Web là khá rộng lớn như dịch vụ chọn lọc và phân
loại tin tức (hệ thống thư viện có kết nối đến web portal để tìm kiếm các thông tin
cần thiết); ứng dụng cho các dịch vụ du lịch (cung cấp giá vé, thông tin về địa
điểm…), các đại lý bán hàng qua mạng, thông tin thương mại như giá cả, tỷ giá hối
đoái, đấu giá qua mạng…hay dịch vụ giao dịch trực tuyến (cho cả B2B và B2C)
như đặt vé máy bay, thông tin thuê xe…
1.4.3 Ưu và nhược điểm
 Ưu điểm:
 Dịch vụ Web cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần

mềm khác nhau chạy trên những nền tảng khác nhau.
 Sử dụng các giao thức và chuẩn mở. Giao thức và định dạng dữ liệu dựa trên

văn bản giúp các lập trình viên dễ dàng hiểu được.
 Nâng cao khả năng tái sử dụng.
 Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại bằng cách cho phép các tiến

trình/chức năng nghiệp vụ đóng gói trong giao diện dịch vụ Web.
27

 Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ

thống, dễ dàng cho việc phát triển các ứng dụng phân tán.
 Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt

động, phát triển hệ thống nhanh và tương tác hiệu quả với hệ thống của các doanh
nghiệp khác.
 Nhược điểm:
 Những thiệt hại lớn sẽ xảy ra vào khoảng thời gian chết của dịch vụ Web,

giao diện không thay đổi, có thể lỗi nếu một máy khách không được nâng cấp, thiếu
các giao thức cho việc vận hành.
Có quá nhiều chuẩn cho dịch vụ Web khiến người dùng khó nắm bắt.
 Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật.

1.4.4 Kiến trúc web service

Hình 1.9: Kiến trúc web service
Trong đó bao gồm các tầng :

28

• Tầng vận chuyển với những công nghệ chuẩn là HTTP , SMTP và JMS ●
Tầng giao thức tương tác dịch vụ ( Service Communication Protocol) với
công nghệ chuẩn là SOAP . SOAP là giao thức nằm giữa tầng vận chuyển và
tầng mô tả thông tin về dịch vụ, SOAP cho phép người dùng triệu gọi một
service từ xa thông qua một message XML.
• Tầng mô tả dịch vụ (Service Description) với công nghệ chuẩn là WSDL
và XML. WSDL là một ngôn ngữ mô tả giao tiếp và thực thi dựa trên XML.
Web service sử dụng ngôn ngữ WSDL để truyền các tham số và các loại dữ
liệu cho các thao tác , các chức năng mà web service cung cấp.
• Tầng dịch vụ ( Service): cung cấp các chức năng của service.
• Tầng đăng ký dịch vụ (Service Registry) với công nghệ chuẩn là UDDI.
UDDI dùng cho cả người dùng vạ̀ SOAP server, nó cho phép đăng ký dịch
vụ để người dùng có thể gọi thực hiện service từ xa qua mạng, hay nói cách
khác một service cần phải được đăng ký để cho phép các client có thể gọi
thực hiện.
Bên cạnh đó để cho các service có tính an toàn , toàn vẹn và bảo mật thông tin
trong kiến trúc web service chúng ta có thêm các tầng Policy, Security, Transaction,
Management giúp tăng cường tính bảo mật , an toàn và toàn vẹn thông tin khi sử
dụng service.
Trong đề tài này em xây dựng một web service làm nhiệm vụ kết nối cơ sở
dữ liệu giữa Client và Android, Web service cung cấp các phương thức cho phép
client lấy được dữ liệu từ server và trả về cho người sử dụng thấy các thông tin cần
thiết.

29

CHƯƠNG 2
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 Phân tích
2.1.1 Phân tích dịch vụ Google Maps
Dịch vụ bản đồ số Google Maps có hỗ trợ một số chức năng như: tìm đường
đi giữa 2 điểm, ước lượng khoảng cách, xác định tọa độ của một điểm theo tên được
nhập vào, hoặc lấy tọa độ từ một điểm trên bản đồ. Tuy nhiên Google Maps lại
không hỗ trợ xác định điểm đầu và điểm cuối của một con đường theo tên, phố.
Ngược lại, việc quản lý giao thông thì lại phải căn cứ vào tên đường phố. Vì thế
cần có thêm cơ sở dữ liệu để quản lý tên đường phố là bắt buộc với ứng dụng trong
đề tài này.
2.1.2 Phân tích hệ thống
 Yêu cầu người dùng
Xây dựng phần mềm “Dịch vụ cung cấp thông tin tình trạng giao thông dựa
theo vị trí cho thiết bị cầm tay trên nền Android” cần thực hiện được các chức năng
sau:
- Chức năng biên tập, dành cho người biên tập có thể đặt các trạng thái bằng cách
thao tác trực tiếp trên bản đồ.
- Chức năng xem thông tin dành cho người dùng dịch vụ có thể biết trạng thái
các điểm được thông báo.
 Yêu cầu hệ thống
- Một nút giao thông có thể có nhiều trạng thái như tắc đường, cấm đường, có
công trình thi công, hoặc là có tai nạn giao thông. Những trạng thái này có thể được
thêm vào hoặc sửa đổi cho phù hợp.

30

- Dữ liệu đường phố, vùng địa lý thực tế có thể bị thay đổi, vì thế nguời biên tập có
thể cập nhật được cơ sở dữ liệu đường phố, quận huyện khi cần thiết để đảm bảo
tính chính xác.
- Chức năng báo tắc đường phải chỉ định được tọa độ, tên đường, tên trạng thái của
nút giao thông trên bản đồ.
- Người dùng thiết bị di động nền Android có thể xem các trạng thái đó trên điện
hoại ở chế độ bản đồ hoặc theo danh sách.
- Người dùng cũng có thể thông báo một con đường đang bị tắc với mô tả và gửi
lên cho Server.
- Client có thể tự động cập nhật các trạng thái sau một khoảng thời gian nào đó.
Người dùng cũng có thể cập nhật bằng tay để có những thông tin cập nhật nhất.
- Phần Server được lập trình trên nền Web phải hỗ trợ các thao tác như bấm
chuột phải để đặt trạng thái. Người biên tập thao tác trực tiếp trên bản đồ vì thế yêu
cầu Trạng thái được đặt cần phải đúng với một con đường nào đó trên bản đồ.
2.2 Xây dựng biểu đồ ca sử dụng
2. 2.1 Xác định tác nhân và ca sử dụng
 Tác nhân
- Nguoi dung: Người dùng điện thoại Android và phần mềm.
- Nguoi bien tap: Người cập nhật thông tin trạng thái giao thông.
- Google map: Hệ thống cung cấp bản đồ cho hệ thống
 Ca sử dụng
- Xem ban do: Người dùng thực hiện xem các thông tin giao thông trên bản
đồ.
- Xem theo danh sach: Người dùng xem các thông tin giao thông ở chế độ
danh sách.
- Cap nhat: thực hiện lại các việc gửi yêu cầu lên hệ thống để lấy thông tin.

31

- Gui thong bao: Người dùng gửi thông báo các trạng thái giao thông
cho hệ thống.
- Xem trang thai theo duong: Người biên tập chọn một đường trong danh
sách để xem thông tin trạng thái đường đó.
- Tao trang thai: Người biên tập thông báo một trạng thái mới qua một
điểm trên bản đồ.
- Cap nhat trang thai: Người biên tập thực hiện cập nhật trạng thái tại
điểm. Mục đích cập nhật là thay đổi mô tả, hoặc thời gian dự kiến kết thúc.
- Ket thuc trang thai: Người biên tập kết thúc một trạng thái sớm hơn thời
gian dự kiến, thông tin về trạng thái sẽ không được gửi đến cho người dùng nữa.
 Biểu đồ ca sử dụng

Hình 2.1 Biểu đồ ca sử dụng của Server
32