i
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
TRẦN NGỌC LỢI
XÂY DỰNG ỨNG DỤNG
PHÂN TÍCH BÁO CÁO TÀI CHÍNH DOANH NGHIỆP
TRÊN NỀN TẢNG CÔNG NGHỆ WEB SERVICE
LUẬN VĂN THẠC SĨ KỸ THUẬT
Đà Nẵng – Năm 2017
ii
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
TRẦN NGỌC LỢI
XÂY DỰNG ỨNG DỤNG
PHÂN TÍCH BÁO CÁO TÀI CHÍNH DOANH NGHIỆP
TRÊN NỀN TẢNG CÔNG NGHỆ WEB SERVICE
Chuyên ngành: Khoa học Máy tính
Mã số: 60.48.01.01
LUẬN VĂN THẠC SĨ KỸ THUẬT
Người hướng dẫn khoa học: PGS.TS. Nguyễn Tấn Khôi
Đà Nẵng - Năm 2017
i
LỜI CAM ĐOAN
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai
công bố trong bất kỳ công trình nào khác.
Tác giả luận văn
Trần Ngọc Lợi
ii
TÓM TẮT
XÂY DỰNG ỨNG DỤNG PHÂN TÍCH BÁO CÁO TÀI CHÍNH DOANH
NGHIỆP TRÊN NỀN TẢNG CÔNG NGHỆ WEB SERVICE
Trần Ngọc Lợi, học viên cao học khóa 31, chuyên ngành Khoa học máy tính
Tóm tắt - Phân tích Báo cáo Tài chính có thể xem là nghệ thuật phiên dịch các số liệu,
bao gồm phân tích và giải thích các Báo cáo Tài chính thành những thông tin hữu ích, làm cơ
sở cho việc ra các quyết định tài chính. Để triển khai xây dựng ứng dụng phân tích Báo cáo
Tài chính thì Web Service là công nghệ đáng được xem xét. Web Service được coi là một
công nghệ mang đến cuộc cách mạng trong cách thức hoạt động của các dịch vụ B2B
(Business to Business) và B2C (Business to Customer). Với sự phát triển và lớn mạnh của
Internet, Web service thật sự là một công nghệ đáng được quan tâm để giảm chi phí và độ
phức tạp trong tích hợp và phát triển hệ thống. Ứng dụng phân tích Báo cáo tài chính doanh
nghiệp dựa trên nền tảng công nghệ Web Service nhằm hỗ trợ cán bộ thuế phân tích báo cáo
tài chính của doanh nghiệp. Ứng dụng tính điểm và xếp loại rủi ro đối với Báo cáo tài chính
theo hướng tự động. Ngoài ra, ứng dụng hỗ trợ các mẫu biểu, theo dõi, tổng hợp các thông
tin, hồ sơ có liên quan đến doanh nghiệp giúp cán bộ thuế có thể phát hiện, xử lý và khắc
phục kịp thời các trường hợp sai phạm của doanh nghiệp trong việc kê khai, nộp thuế đối với
ngân sách nhà nước.
Từ khóa – Ứng dụng phân tích rủi ro BCTC; Công nghệ Web Service; Phân tích
BCTC; Ứng dụng Web Service; Rủi ro BCTC.
BUILD ANALYSIS BUSINESS FINANCIAL REPORTS APPLICATION ON THE
BASIS OF WEB SERVICE TECHNOLOGY
Abstract - Financial Statement Analysis is known as the art of interpreting the data,
including analysis and interpretation of Financial Reports into useful information, as a basis,
which is used for making financial decisions. Web Service is a technology worth considering
to build and develop the business financial statements analysis application. Web Service
Technology bring a revolution to the operating way of B2B services (Business to Business)
and B2C (Business to Customer). Follow the development and growth of the Internet, Web
service is deservedly chosen for reducing the cost and complexity of system integration and
development. The business financial statement analysis application, which is built on the
standard of the web service technology, assists a tax officials to analyze financial statements.
It scores points and ranks risks automatically. Besides, it supports the forms, tracking,
aggregation of information and records related to the business. It helps a tax officials to
detect, handle and prevent timely in case of violation of the business declare and pay taxes to
the state budget.
Key words - Application of Financial Reporting Risk Analysis; Web service
technology; Financial analysis; Web service application; Financial reporting risk.
iii
MỤC LỤC
LỜI CAM ĐOAN .......................................................................................................i
TÓM TẮT ................................................................................................................. ii
MỤC LỤC ................................................................................................................ iii
DANH MỤC TỪ VIẾT TẮT...................................................................................vi
DANH MỤC CÁC BẢNG ..................................................................................... vii
DANH MỤC CÁC HÌNH ..................................................................................... viii
MỞ ĐẦU ....................................................................................................................1
1. Tính cấp thiết của đề tài ......................................................................................1
2. Mục tiêu của đề tài ..............................................................................................2
3. Đối tượng và phạm vi nghiên cứu ......................................................................2
4. Phương pháp nghiên cứu ....................................................................................3
5. Bố cục của luận văn ............................................................................................3
CHƯƠNG 1. TỔNG QUAN VỀ CÔNG NGHỆ WEB SERVICE ......................5
1.1. TỔNG QUAN VỀ WEB SERVICE ...................................................................5
1.1.1 Giới thiệu .......................................................................................................5
1.1.2 Kiến trúc của Web service .............................................................................7
1.1.3 Các thành phần của Web Service ..................................................................8
1.1.3.1 eXtensible Markup Language (XML) ....................................................8
1.1.3.2 Simple Object Access Protocol (SOAP) ................................................8
1.1.3.3 Web Service Description Language (WSDL) ........................................9
1.1.3.4 Universal Description, Discovery and Integration (UDDI) ...................9
1.1.4 Chất lượng của Web Service: ......................................................................10
1.2. CÁC CÔNG TRÌNH NGHIÊN CỨU CÓ LIÊN QUAN ...................................12
1.3. HƯỚNG NGHIÊN CỨU CỦA ĐỀ TÀI............................................................12
1.4. KẾT CHƯƠNG ..................................................................................................13
CHƯƠNG 2. THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG PHÂN TÍCH BÁO
CÁO TÀI CHÍNH ....................................................................................................14
2.1. BÁO CÁO TÀI CHÍNH DOANH NGHIỆP .....................................................14
2.2. CÁC PHƯƠNG PHÁP PHÂN TÍCH, ĐÁNH GIÁ RỦI RO ............................14
2.2.1 Phân tích ngang ............................................................................................15
2.2.2 Phân tích xu hướng ......................................................................................15
2.2.3 Phân tích tỷ số ..............................................................................................16
iv
2.3. QUÁ TRÌNH PHÂN TÍCH MỘT BÁO CÁO TÀI CHÍNH .............................16
2.4. MÔ TẢ BÀI TOÁN ...........................................................................................17
2.5. XÂY DỰNG KIẾN TRÚC TỔNG THỂ HỆ THỐNG ......................................19
2.5.1 Phân hệ chức năng Quản lý người dùng ......................................................19
2.5.2 Phân hệ chức năng Nhập, quản lý và phân tích rủi ro Báo cáo tài chính ....19
2.5.3 Phân hệ chức năng Nhập, quản lý hồ sơ kiểm tra và kết quả kiểm tra ........19
2.5.4 Phân hệ chức năng Tiện ích sử dụng ...........................................................19
2.6. ĐẶC TẢ TRƯỜNG HỢP NGƯỜI DÙNG .......................................................20
2.7. PHÂN TÍCH HỆ THỐNG .................................................................................23
2.7.1 Xây dựng biểu đồ Use Case.........................................................................23
2.7.1.1 Biểu đồ Use Case tổng quát .................................................................23
2.7.1.2 Phân rã Use case Cập nhật danh bạ doanh nghiệp ...............................23
2.7.1.3 Phân rã Use case Cập nhật thông tin BCTC .........................................24
2.7.1.4 Phân rã Use case Phân tích BCTC .......................................................24
2.7.1.5 Phân rã Use case Cập nhật hồ sơ kiểm tra............................................25
2.7.2 Mô tả Use case: ............................................................................................26
2.7.2.1 Use case Đăng nhập..............................................................................26
2.7.2.2. Use case Thêm mới BCTC ..................................................................27
2.7.2.3. Use case Cập nhật thông tin BCTC .....................................................28
2.7.2.4. Use case Xoá BCTC ............................................................................29
2.7.2.5. Use case Phân tích BCTC ....................................................................29
2.7.2.6. Use case Tra cứu ..................................................................................30
2.7.3 Các biểu đồ tuần tự ......................................................................................32
2.7.3.1. Biểu đồ tuần tự chức năng đăng nhập .................................................32
2.7.3.2. Biểu đồ tuần tự chức năng thêm BCTC ..............................................33
2.7.3.3. Biểu đồ tuần tự chức năng phân tích BCTC........................................33
2.7.3.4. Biểu đồ tuần tự chức năng Tra cứu: ....................................................34
2.7.4 Xây dựng cơ sở dữ liệu ................................................................................34
2.7.5 Biểu đồ lớp ...................................................................................................38
2.8. KẾT CHƯƠNG ..................................................................................................39
CHƯƠNG 3. TRIỂN KHAI HỆ THỐNG VÀ ĐÁNH GIÁ KẾT QUẢ .............40
3.1. MÔ HÌNH TRIỂN KHAI...................................................................................40
3.1.1 Xây dựng ứng dụng .....................................................................................40
3.1.2 Cài đặt hệ cơ sở dữ liệu ...............................................................................40
3.1.3 Phát triển dịch vụ .........................................................................................43
v
3.1.3.1 Cách thức tạo một dịch vụ web trên môi trường Dot net framework ..43
3.1.3.2 Để khai thác và sử dụng dịch vụ từ phía client: ...................................46
3.1.4 Cài đặt chương trình ....................................................................................47
3.2. CÁC KỊCH BẢN THỬ NGHIỆM .....................................................................48
3.2.1 Chức năng quản lý người dùng ....................................................................48
3.2.2 Chức năng cập nhật danh bạ doanh nghiệp .................................................49
3.2.3 Chức năng nhập, quản lý và phân tích BCTC .............................................51
3.2.4 Chức năng nhập, quản lý quyết định kiểm tra và kết quả kiểm tra ............57
3.3. NHẬN XÉT, ĐÁNH GIÁ ..................................................................................58
3.4. KẾT CHƯƠNG ..................................................................................................59
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .............................................................60
TÀI LIỆU THAM KHẢO ......................................................................................61
QUYẾT ĐỊNH GIAO ĐỀ TÀI
BẢN SAO KẾT LUẬN CỦA HỘI ĐỒNG, BẢN SAO NHẬN XÉT CỦA CÁC
PHẢN BIỆN.
vi
DANH MỤC TỪ VIẾT TẮT
STT
Từ viết tắt
Diễn giải
1
BCTC
2
B2B
Business to Business
3
B2C
Business to Customer
4
FTP
File Transfer Protocol
5
HTTP
HyperText Transfer Protocol
6
SMTP
Simple Mail Transfer Protocol
7
SOAP
Simple Object Access Protocol
8
TCP
Transmission Control Protocol
9
UDDI
Universal Description, Discovery and
Integration
10
XML
eXtensible Markup Language
11
W3C
World Wide Web Consortium
12
WSDL
Báo cáo tài chính
Web Services Description Language
vii
DANH MỤC CÁC BẢNG
Số hiệu
bảng
Tên bảng
Trang
2.1
Miêu tả use case Đăng nhập
26
2.2.
Mô tả use case thêm mới BCTC
27
2.3.
Mô tả use case cập nhật BCTC
28
2.4.
Mô tả use case xoá BCTC
29
2.5.
Mô tả use case phân tích BCTC
29
2.6.
Mô tả use case tra cứu
30
viii
DANH MỤC CÁC HÌNH
Số hiệu
hình
1.1.
2.1.
Tên hình
Kiến trúc của Web service
Biểu đồ Use case tổng quát Hệ thống dịch phụ phân tích
BCTC
Trang
7
23
2.2.
Biểu đồ Use case cập nhật danh bạ doanh nghiệp
23
2.3.
Biểu đồ Use case cập nhật thông tin BCTC
24
2.4.
Biểu đồ Use case phân tích BCTC
24
2.5.
Biểu đồ Use case cập nhật hồ sơ kiểm tra
25
2.6.
Sơ đồ hoạt động đăng nhập
27
2.7.
Sơ đồ hoạt động thêm mới BCTC
28
2.8.
Mô tả use case xoá BCTC
30
2.9.
Mô tả use case Tra cứu
31
210.
Biểu đồ tuần tự chức năng đăng nhập
32
2.11.
Biểu đồ tuần tự chức năng thêm BCTC
33
2.12.
Biểu đồ tuần tự chức năng phân tích BCTC
33
2.13.
Biểu đồ tuần tự chức năng tra cứu
34
2.14.
Biểu đồ lớp
38
3.1.
Mô hình quan hệ cơ sở dữ liệu
41
1
MỞ ĐẦU
1. Tính cấp thiết của đề tài
Qua quá trình thực hiện Luật quản lý thuế, mô hình quản lý thuế theo chức năng
ngày càng có hiệu quả và chuyên môn hoá cao. Công tác kiểm tra, giám sát được triển
khai rộng rãi và thường xuyên tại Cục Thuế tỉnh Trà Vinh. Tuy nhiên, công tác chuyên
môn ngày càng được chuyên môn hoá thì yêu cầu về trình độ cũng như phương pháp
giải quyết vấn đề của cán bộ chuyên trách ngày càng phải được nâng cao để đáp ứng
các giá trị “Minh bạch, chuyên nghiệp, liêm chính và đổi mới” của Tuyên ngôn ngành
thuế Việt Nam. Với cơ chế tự khai, tự nộp thuế đã được triển khai áp dụng, một số
doanh nghiệp đã kê khai, nộp thuế thường hay bị sai sót với nhiều lý do khác nhau
như: không tìm hiểu kỹ về chính sách thuế, việc nắm bắt chính sách thuế mới của chủ
doanh nghiệp và kế toán chưa sâu sát hoặc do doanh nghiệp cố tình thực hiện không
đúng quy định.
Trước thực trạng hiện nay trong công tác quản lý thuế, các doanh nghiệp thường
vi phạm hành chính trong lĩnh vực thuế và bị xử lý với nhiều hình mức độ khác nhau:
Truy thu số thuế vi phạm; Phạt 10%, 20% trên số thuế vi phạm; Phạt từ 01 đến 03 lần
số thuế trốn; Tính tiền chậm nộp 0,03% hoặc 0,05%/ngày tính trên số thuế vi
phạm.v.v. Việc xử lý các hành vi đó dẫn đến những khó khăn, hậu quả cho cả cơ quan
thuế và doanh nghiệp:
+ Đối với Doanh nghiệp: Hành vi vi phạm của doanh nghiệp càng lâu bị phát
hiện thì càng bị xử phạt nặng, gây hậu quả nghiêm trọng về kinh tế, có trường hợp
phải giải thể, phá sản…
+ Đối với Cơ quan thuế: Phải tăng cường quản lý về công tác thanh tra, kiểm tra,
quản lý nợ đối với các doanh nghiệp vi phạm hành chính về thuế.
Phân tích Báo cáo Tài chính có thể xem là nghệ thuật phiên dịch các số liệu, bao
gồm phân tích và giải thích các Báo cáo Tài chính thành những thông tin hữu ích, làm
cơ sở cho việc ra các quyết định tài chính. Nghệ thuật này không chỉ đòi hỏi vốn kiến
thức, hiểu biết nhất định về tài chính - kế toán, về quản trị kinh doanh mà còn yêu cầu
những kỹ năng mang tính hệ thống và logic hết sức đặc thù. Đặc biệt, trong bối cảnh
nền kinh tế nước ta đang hội nhập sâu rộng vào đời sống kinh tế toàn cầu, biến động
và bất ổn của khủng hoảng và hậu khủng hoảng kinh tế, vốn kiến thức này, vấn đề này
càng phải được cập nhật, củng cố và nâng cao hơn bao giờ hết.
Web Service được coi là một công nghệ mang đến cuộc cách mạng trong cách
thức hoạt động của các dịch vụ B2B (Business to Business) và B2C (Business to
2
Customer). Giá trị cơ bản của Web service dựa trên việc cung cấp các phương thức
theo chuẩn trong việc truy nhập đối với hệ thống đóng gói và hệ thống kế thừa .
Các phần mềm được viết bởi những ngôn ngữ lập trình khác nhau và chạy trên
những nền tảng khác nhau có thể sử dụng Web service để chuyển đổi dữ liệu thông
qua mạng Internet theo cách giao tiếp tương tự bên trong một máy tính. Tuy nhiên,
công nghệ xây dựng Web service không nhất thiết phải là các công nghệ mới, nó có
thể kết hợp với các công nghệ đã có như XML, SOAP, WSDL, UDDI… Với sự phát
triển và lớn mạnh của Internet, Web service thật sự là một công nghệ đáng được quan
tâm để giảm chi phí và độ phức tạp trong tích hợp và phát triển hệ thống.
Trước tình hình đó, nhằm phục vụ cho công việc của cơ quan đang công tác, tôi
chọn đề tài luận văn cao học về “Xây dựng ứng dụng phân tích Báo cáo tài chính
doanh nghiệp dựa trên nền tảng công nghệ Web Service” nhằm hỗ trợ cán bộ thuế
phân tích hồ sơ có thể sử dụng ứng dụng để phân tích báo cáo tài chính của doanh
nghiệp, có thể phát hiện, xử lý và khắc phục kịp thời các trường hợp sai phạm của
doanh nghiệp trong việc kê khai, nộp thuế đối với ngân sách nhà nước.
2. Mục tiêu của đề tài
Mục tiêu chính của đề tài là nghiên cứu ứng dụng công nghệ WEB SERVICE để
xây dựng ứng dụng phân tích Báo cáo tài chính của doanh nghiệp trên mạng. Từ đó
đánh giá, xác định mức độ rủi ro trong việc kê khai thuế của doanh nghiệp.
Để thực hiện được yêu cầu trên, luận văn tập trung thực hiện những nhiệm vụ cụ
thể như sau:
1) Tìm hiểu cơ sở lý thuyết về công nghệ Web service.
2) Tìm hiểu cơ sở lý thuyết về phương pháp hạch toán kế toán trong Báo cáo tài
chính của doanh nghiệp.
3) Tìm hiểu cơ sở lý thuế về các phương pháp đánh giá, xác định rủi ro trong Báo
cáo tài chính của doanh nghiệp.
4) Đề xuất phương pháp ứng dụng công nghệ Web Service để xây dựng ứng
dụng phân tích Báo cáo tài chính doanh nghiệp để đánh giá, xác định rủi ro.
5) Phân tích thiết kế, xây dựng hệ thống.
6) Triển khai đánh giá kết quả thực hiện.
3. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của đề tài:
- Hồ sơ khai thuế của doanh nghiệp.
3
- Qui trình kê khai thuế của doanh nghiệp.
- Công nghệ Web Service.
Phạm vi nghiên cứu của đề tài:
- Công tác kiểm tra thuế.
- Phân tích Báo cáo tài chính của doanh nghiệp.
- Xây dựng ứng dụng hỗ trợ phân tích báo cáo trên nền tảng Web Service.
4. Phương pháp nghiên cứu
Đề tài sẽ sử dụng các phương pháp nghiên cứu:
a. Phương pháp nghiên cứu lý thuyết
- Công nghệ Web Service,
- Phương pháp hạch toán kế toán trong Báo cáo tài chính của doanh
nghiệp,
- Các phương pháp đánh giá, xác định rủi ro trong Báo cáo tài chính của
doanh nghiệp;
b. Phương pháp thực nghiệm
- Khảo sát, phân tích dữ liệu từ nhiều nguồn khác nhau.
- Tiến hành xây dựng các giải pháp và xây dựng ứng dụng đánh giá.
- Xác định mức độ rủi ro trong việc kê khai thuế dựa trên các chỉ tiêu trên
báo cáo tài chính của doanh nghiệp.
5. Bố cục của luận văn
Bố cục của luận văn gồm các phần chính như sau:
Mở đầu: Trình bày tính cần thiết của đề tài, mục đích, phạm vi nghiên cứu của
đề tài, phương pháp nghiên cứu và bố cục của luận văn.
Chương 1. Tổng quan về công nghệ Web Service. Trình bày lý thuyết ngắn gọn,
khảo sát các công trình đã đăng tải liên quan đến đề tài luận văn, nêu những vấn đề
còn tồn tại, chỉ ra những vấn đề mà đề tài luận văn quan tâm.
Chương 2. Thiết kế và xây dựng hệ thống phân tích Báo cáo tài chính của doanh
nghiệp. Tổng hợp, thu thập, phân tích, đánh giá các số liệu trên cơ sở lý thuyết, giả
thiết khoa học để giải quyết vấn đề mà đề tài quan tâm.
Chương 3. Triển khai hệ thống và đánh giá kết quả. Trình bày phần tính toán, mô
phỏng hay kết quả thực nghiệm để minh chứng cho các kết quả trong các chương
4
trước; Phần bàn luận phải căn cứ vào các dẫn liệu khoa học thu được trong quá trình
nghiên cứu của đề tài luận văn hoặc đối chiếu so sánh kết quả nghiên cứu của các tác
giả khác thông qua các tài liệu tham khảo.
Kết luận và hướng phát triển. Đánh giá kết quả đã đạt được, xác định những ưu
nhược điểm và hướng phát triển trong tương lai.
TÀI LIỆU THAM KHẢO.
PHỤ LỤC.
5
CHƯƠNG 1. TỔNG QUAN VỀ CÔNG NGHỆ WEB SERVICE
1.1. TỔNG QUAN VỀ WEB SERVICE
1.1.1 Giới thiệu
Cùng với sự phát triển nhanh chóng của Internet như hiện nay, các dịch vụ Web
(Web Services) càng dần trở nên phổ biến và đóng vai trò quan trọng trong các hệ
thống thông tin của các công ty, tổ chức. Theo định nghĩa của W3C (World Wide Web
Consortium), Web Service là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng
tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet,
giao diện chung và sự gắn kết của nó được mô tả bằng XML.
Thuật ngữ Web Service diễn tả một cách thức tích hợp các ứng dụng trên nền
Web lại với nhau bằng cách sử dụng các công nghệ SOAP (Simple Object Access
Protocol), WSDL (Web Services Description Language) và UDDI (Universal
Description, Discovery and Integration) trong môi trường phân tán và dựa trên nền
tảng các giao thức Internet với mục tiêu tích hợp ứng dụng dịch vụ và truyền thông
điệp. SOAP được dùng để truyền dữ liệu, WSDL là một ngôn ngữ dựa trên định dạng
XML được sử dụng để mô tả các dịch vụ và UDDI được sử dụng để liệt kê các thông
tin về những dịch vụ nào hiện tại đang có sẵn để có thể sử dụng. Với các thành phần
trên của Web Service ta nhận thấy Web Service không cung cấp cho người dùng một
giao diện đồ họa nào, mà chỉ đơn thuần là việc chia sẻ dữ liệu logic và xử lí trên các
dữ liệu đó thông qua ngôn ngữ mô tả về dữ liệu.
Tuy vậy, người phát triển các ứng dụng Web Service có thể hoàn toàn viết
chương trình để cung cấp cho người dùng một giao diện đồ họa thuận tiện thông qua
trình duyệt, cung cấp chức năng cho người dùng. Các dịch vụ Web sẽ được chạy liên
tục trên các máy chủ của nhà cung cấp, mỗi khi người dùng kết nối để sử dụng dịch
vụ, các dữ liệu người dùng nhập thông qua giao diện đồ họa sẽ được gửi đến máy chủ
cung cấp dịch vụ đó, xử lí, lưu trữ và gửi kết quả tương ứng về cho người dùng
Đặc điểm của Web service:
Độc lập nền.
Truy cập thông qua web.
Cấu trúc hướng dịch vụ.
Sử dụng các chuẩn mở.
Tự mô tả.
6
Độc lập ngôn ngữ.
Ưu điểm của Web service
Có thể tái sử dụng, dễ bảo trì.
Linh hoạt, dễ mở rộng.
Cài đặt dễ dàng.
Bảo mật cao.
Chi phí thấp, hiệu quả cao.
Tính ổn định, chịu lỗi cao.
Nhược điểm của Web service
Dữ liệu truyền nhiều.
Không hỗ trợ kết nối thời gian dài.
Không hỗ trợ kết nối duy trì trạng thái (stateless).
Ngoài ra, ta có thể kể đến một số hạn chế khác như: toàn bộ dữ liệu của cơ quan,
tổ chức được lưu trữ trên Server của nhà cung cấp dịch vụ, không có gì đảm bảo dữ
liệu của cơ quan, tổ chức đó được bảo đảm an toàn với độ tin cậy cao. Các dịch vụ
được cung cấp nhiều khi có thể bị thay đổi phụ thuộc vào điều kiện của bên cung cấp
dịch vụ hoặc thậm chí có thể bị ngừng cung cấp dịch vụ đó, từ đó khiến cho tất cả các
ứng dụng sử dụng dịch vụ đó cũng bị tạm dừng hoạt động, hoặc phải thay đổi theo.
Nói cách khác đó chính là sự phụ thuộc của người sử dụng dịch vụ Web vào bên cung
cấp dịch Web.
Ứng dụng của Web service:
Hiện nay có một số dịch vụ web thông dụng như sau:
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).
Các ứng dụng 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…
Dịch vụ giao dịch trực tuyến (cho cả B2B và B2C) như đặt vé máy bay, đặt
khách sạn, thông tin thuê xe.
Dịch vụ Web cung cấp tiện ích cho việc xử lý văn bản, tài liệu của các công
ty, tổ chức.v.v.
7
1.1.2 Kiến trúc của Web service
Kiến trúc Web service gồm 3 phần:
Web service provider (bên cung cấp dịch vụ);
Web service consumer (bên sử dụng dịch vụ);
Web service broker (bên môi giới dịch vụ).
Hình 1.1. Kiến trúc của Web service
Ba thành phần kể trên tương tác với nhau bởi năm cơ chế, đó là:
Service: là cơ chế cho phép client xác định và triệu gọi các dịch vụ từ xa thông
qua mạng mà không phụ thuộc vào vị trí địa lí, hệ điều hành sử dụng hay ngôn ngữ lập
trình được sử dụng.
Message: là phương tiện giao tiếp giữa bên cung cấp dịch vụ và bên sử dụng
dịch vụ. Một message có thể là một yêu cầu từ bên sử dụng dịch vụ gửi đến bên cung
cấp dịch vụ hay là một phản hồi từ bên cung cấp dịch vụ về cho bên sử dụng dịch vụ.
Các message này được định nghĩa bằng ngôn ngữ đánh dấu độc lập nền tảng là XML.
Dynamic discovery: là cơ chế được cài đặt dựa trên directory service. Về phía
bên cung cấp, chúng sẽ sử dụng directory service để tự đăng ký những dịch vụ mà
chúng cung cấp. Còn về phía bên sử dụng, chúng sẽ truy vấn để tìm ra các dịch vụ
theo nhu cầu từ directory service thông qua mạng. Điều này làm giảm sự lệ thuộc của
bên sử dụng dịch vụ vào bên cung cấp dịch vụ.
Publish: để có thể truy cập được thì một Web service cần phải được công bố
để các Service consumer có thể tìm thấy nó. Việc công bố có thể khác nhau tùy thuộc
vào từng ứng dụng cụ thể. Nhưng thông thường, một mô tả dịch vụ bao gồm các thông
tin sau: các interface, các kiểu dữ liệu, các toán tử, các thông tin kết nối, vị trí của dịch
vụ có thể truy cập được trên mạng, siêu dữ liệu, v.v…
8
Find: trong thao tác tìm kiếm, Service consumer sẽ lấy mô tả về dịch vụ đang
được yêu cầu một cách trực tiếp hoặc thông qua Service broker. Thao tác tìm kiếm này
có thể diễn ra trong hai pha vòng đời của một Web service consumer, đó là pha thiết kế
xây dựng (lập trình viên cần biết mô tả, interface của dịch vụ) và pha thực thi (xác
định vị trí và tiến hành triệu gọi dịch vụ).
Bind: để sử dụng được dịch vụ thì cần phải triệu gọi nó. Trong thao tác bind,
Web service consumer khi thực thi sẽ gọi hoặc khởi tạo một luồng tương tác với dịch
vụ dựa trên các thông tin trong mô tả dịch vụ mà nó thu được trước đó như: vị trí dịch
vụ, cách liên lạc và tương tác với dịch vụ,…
1.1.3 Các thành phần của Web Service
1.1.3.1 eXtensible Markup Language (XML)
XML là nền tảng cho việc xây dựng một Web Service và tất cả dữ liệu sẽ được
chuyển sang định dạng thẻ XML.
Là một chuẩn mở do W3C đưa ra cho cách thức mô tả dữ liệu, nó được sử dụng
để định nghĩa các thành phần dữ liệu trên trang web và cho những tài liệu B2B. Về
hình thức, XML hoàn toàn có cấu trúc thẻ giống như ngôn ngữ HTML nhưng HTML
định nghĩa thành phần được hiển thị như thế nào thì XML lại định nghĩa những thành
phần đó chứa cái gì. Với XML, các thẻ có thể được lập trình viên tự tạo ra trên mỗi
trang web và được chọn là định dạng thông điệp chuẩn bởi tính phổ biến và hiệu quả
mã nguồn mở.
1.1.3.2 Simple Object Access Protocol (SOAP)
SOAP là giao thức quan trọng trong Web service được xây dựng dựa trên XML,
một giao thức truyền thông hay một định dạng để gửi tin nhắn cho phép các ứng dụng
trao đổi thông tin với nhau qua HTTP. SOAP được sử dụng để đặc tả và trao đổi thông
tin về các cấu trúc dữ liệu cũng như các kiểu dữ liệu giữa các thành phần trong hệ
thống. Sử dụng SOAP, ứng dụng có thể yêu cầu thực thi method trên máy tính ở xa mà
không cần quan tâm đến chi tiết về platform cũng như các phần mềm trên máy tính đó.
SOAP có khả năng mở rộng, được hiểu theo nghĩa cung cấp khả năng mở rộng phục
vụ cho nhu cầu đặc thù của ứng dụng và nhà cung cấp.
a. Đặc điểm của SOAP
Khả năng mở rộng: Cung cấp khả năng mở rộng phục vụ cho nhu cầu đặc thù của
ứng dụng và nhà cung cấp. Các chức năng về bảo mật, tăng độ tin cậy có thể đưa vào
phần mở rộng của SOAP. Các nhà cung cấp dịch vụ khác nhau, tùy vào đặc điểm hệ
9
thống của mình có thể định nghĩa thêm các chức năng mở rộng nhằm tăng thêm lợi thế
cạnh tranh cũng như cung cấp thêm tiện ích cho người sử dụng.
Có thể hoạt động tốt trên các giao thức mạng đã được chuẩn hóa (HTTP, SMTP,
FTP, TCP, ...)
Có tính độc lập nền, độc lập ngôn ngữ lập trình, mô hình lập trình được sử dụng.
b. Cấu trúc của thông điệp SOAP
Thông điệp SOAP bao gồm phần tử gốc envelope bao trùm toàn bộ nội dung
thông điệp SOAP, các phần tử header và body.
Một thông điệp SOAP bao gồm các thành phần sau:
Protocol Header.
SOAP Envelope: Nó bao gồm hai phần chính:
SOAP Header.
SOAP body.
1.1.3.3 Web Service Description Language (WSDL)
WSDL là một ngôn ngữ dựa trên XML dùng để mô tả giao diện của Web Service
và làm thế nào để truy cập các dịch vụ đó. Nó cung cấp một cách thức chuẩn để mô tả
các kiểu dữ liệu được truyền trong các thông điệp thông qua Web Service, các hoạt
động được thực hiện trên các thông điệp và ánh xạ các hoạt động này đến giao thức
vận chuyển. WSDL là một chuẩn của W3C.
WSDL định nghĩa cách mô tả Web Service theo cú pháp tổng quát của XML,
bao gồm các thông tin:
Tên dịch vụ.
Giao thức và kiểu mã hóa sẽ được sử dụng khi gọi các hàm của Web Service.
Loại thông tin: thao tác, tham số, những kiểu dữ liệu (có thể là giao diện của
Web Service cộng với tên cho giao diện này).
Một tài liệu WSDL hợp lệ sẽ gồm có hai phần:
Phần giao diện mô tả giao diện và giao thức kết nối.
Phần thi hành mô tả thông tin để truy xuất service.
Cả 2 phần trên sẽ được lưu trong 2 tập tin XML, bao gồm: tập tin giao diện
service (phần 1) và tập tin thi hành service (phần 2).
1.1.3.4 Universal Description, Discovery and Integration (UDDI)
UDDI là một chuẩn dựa trên XML định nghĩa một số thành phần cho phép các
client truy tìm và nhận những thông tin được yêu cầu khi sử dụng Web Service.
10
Để có thể sử dụng các dịch vụ, trước tiên client phải tìm dịch vụ, ghi nhận thông
tin về cách sử dụng dịch vụ và biết được đối tượng cung cấp dịch vụ, UDDI định nghĩa
một số thành phần cho biết trước các thông tin này để cho phép các client truy tìm và
nhận lại những thông tin yêu cầu sử dụng web services.
Một UDDI gồm có hai phần:
Phần đăng ký của tất cả các Web Service’s metadata, bao gồm cả việc trỏ đến
tài liệu WSDL mô tả dịch vụ.
Phần thiết lập WSDL Port type định nghĩa cho các thao tác và tìm kiếm thông
tin đăng ký.
1.1.4 Chất lượng của Web Service:
Với sự phát triển nhanh phóng và phổ biến của công nghệ Web Service, Chất
lượng các dịch vụ Web Service (QoS – Quality of Service) sẽ trở thành một yếu tố
quan trọng trong việc đánh giá sự thành công của các nhà cung cấp dịch vụ web.
Các yêu cầu về chất lượng dịch vụ cho Web Service phải đáp ứng
được các yêu cầu dưới đây:
Tính có sẵn : Tính có sẵn thể hiện một khía cạnh chất lượng của dịch vụ, tính
có sẵn trình bày dịch vụ có sẵn để dùng tại một thời điểm cụ thể hay không. Tính có
sẵn mô tả xác suất mà dịch vụ sẵn sàng phục vụ. Trong tính có sẵn, một giá trị thời
gian được dùng để mô tả liệu một dịch vụ có sẵn sàng để phục vụ hay không. Giá trị
lớn hơn chỉ ra rằng dịch vụ luôn sẵn sàng để sử dụng trong khi giá trị nhỏ hơn chỉ ra
không thể dự đoán được liệu dịch vụ có sẵn trong khoảng thời gian cụ thể hiện tại hay
không.
Thông thường, người ta thường sử dụng một đại luợng thời gian để kết hợp với
tính có sẵn của một dịch vụ, đại lượng thời gian đó được gọi là TTR (Time to Repair )
- Thời gian phục hồi. TTR mô tả khoảng thời gian được dùng để phục hồi một dịch vụ
web nếu có lỗi xảy ra. Thời gian phục hồi lý tưởng và được mong đợi là thời gian phục
hồi có giá trị nhỏ.
Tính truy cập được : Tính truy cập được thể hiện khía cạnh chất lượng dịch vụ
qua mức độ, khả năng phục vụ các yêu cầu Web Service. Nó diễn tả khả năng ước
lượng bao gồm tốc độ thành công hoặc sự thay đổi thành công của một dịch vụ cụ thể
trong một thời điểm. Tính truy cập được còn được thể hiện thông qua tính có sẵn của
dịch vụ Web. Một Web Service có tính truy cập cao khi hệ thống triển khai Web
Service đó có độ mềm dẻo cao. Độ mềm dẻo tham chiếu tới khả năng phục vụ các yêu
cầu một cách nhất quán mặc dù có thể có nhiều yêu cầu khác nhau cùng tồn tại trong
một tập hợp các yêu cầu.
- Xem thêm -