ii
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
iii
NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
………………………………………………………………………………………
iv
LỜI CẢM ƠN
Việc làm chung đề tài luận văn này thật sự là một cơ duyên với chúng tôi
vì ban đầu chúng tôi không định làm với nhau và làm đề tài này. Nhưng từ khi
tìm hiểu sâu hơn và bắt tay vào thực hiện thì chúng tôi luôn cảm thấy thích thú
và cố gắng cùng nhau thực hiện tốt nó bằng tất cả sự đam mê, sức lực của mình.
Nhìn lại những kỳ niên luận trước đã cho chúng tôi rất nhiều kinh nghiệm
hữu ích, nhưng đứng trước một vấn đề mới, một thách thức mới lần này, chúng
tôi không thể nào tự giải đáp những vướng mắc của mình nếu như không có sự
giúp đỡ tận tình của Thầy Nguyễn Phú Trường. Qua trang giấy nhỏ, chúng tôi xin
được chân thành nói lời cảm ơn Thầy: “Cảm ơn Thầy đã ân cần dìu dắt chúng em
từ những buổi đầu bỡ ngỡ cho đến nay đã hoàn thành trọn vẹn đề tài!”.
Chúng tôi cũng xin được cảm ơn các Thầy: Lê Quyết Thắng, Nguyễn Công
Huy, Cù Vĩnh Lộc, Võ Đình Duy thuộc khoa CNTT và TT, đã cho chúng tôi
những lời tư vấn quý báu về đề tài và hướng phát triển của nó. Và sâu sắc nhất,
chúng tôi xin được gửi lời biết ơn đến gia đình, những người luôn đứng sau ủng
hộ, động viên chúng tôi, và tạo điều kiện để chúng tôi có thể hoàn thành bước
khó khăn nhất này.
Khoảng thời gian mười lăm tuần không đủ dài để chúng tôi làm đề tài này
tốt hơn nhưng chúng tôi đã hoàn thành được những mục tiêu đề ra và học được
thêm nhiều điều bổ ích. Ngoài việc tiếp cận phân tích và tìm hiểu những điểm
hay của những hệ thống sẵn có, chúng tôi còn tạo ra được một hệ thống mô phỏng
lại của riêng mình. Nói chung, về chuyên môn, chúng tôi đã tích lũy được phần
nào kiến thức bổ ích. Nhưng bên cạnh kết quả cuối cùng là chương trình demo
và quyển báo cáo mà chúng tôi đã rất vất vả bên nhau mới có được, những xung
đột nhỏ, những nụ cười và những buổi cơm trưa ăn cùng nhau thực sự là chuỗi
ngày giúp chúng tôi hiểu thêm về kỹ năng sống và tình bạn. Xin được cảm ơn tất
cả mọi người! Cảm ơn kỳ luận văn này đã làm cho cuộc sống chúng tôi thêm thú
vị và ý nghĩa hơn!
Nguyễn Hữu Hậu
v
MỤC LỤC
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ........................................................ i
NHẬN XÉT CỦA CÁN BỘ PHẢN BIỆN ............................................................... iv
LỜI CẢM ƠN .............................................................................................................v
MỤC LỤC ................................................................................................................. vi
KÝ HIỆU VÀ VIẾT TẮT ......................................................................................... ix
TÓM TẮT ...................................................................................................................x
ABSTRACT ................................................................................................................x
TỪ KHÓA ................................................................................................................. xi
CHƯƠNG 1.
TỔNG QUAN ..................................................................................1
1.1. Đặt vấn đề ......................................................................................................1
1.1.1.
Đặt vấn đề ............................................................................................1
1.1.2.
Định nghĩa vấn đề................................................................................1
1.2. Lịch sử giải quyết vấn đề ...............................................................................2
1.3. Mục tiêu đề tài ...............................................................................................2
1.4. Phạm vi của đề tài ..........................................................................................2
1.4.1.
Phạm vi chức năng ..............................................................................2
1.4.2.
Phạm vi triển khai................................................................................2
1.5. Phương pháp nghiên cứu ...............................................................................3
1.5.1.
Hướng giải quyết .................................................................................3
1.5.2.
Kế hoạch thực hiện ..............................................................................3
1.5.3.
Phân công công việc ............................................................................4
CHƯƠNG 2.
CƠ SỞ LÝ THUYẾT .....................................................................10
2.1. XML ............................................................................................................10
2.1.1.
Giới thiệu XML .................................................................................10
2.1.2.
Cây XML (XML Tree) ......................................................................10
2.1.3.
Cú pháp XML ....................................................................................11
2.1.4.
Những phần tử XML .........................................................................12
2.1.5.
Những thuộc tính XML .....................................................................13
2.1.6.
Xác nhận hợp lệ XML .......................................................................15
2.2. XML schema ...............................................................................................15
2.2.1.
Giới thiệu XML Schema ...................................................................15
2.2.2.
Tại sao sử dụng XML Schema ..........................................................16
vi
2.2.3.
Sử dụng XML Schema thế nào .........................................................16
2.3. SOAP ...........................................................................................................17
2.3.1.
Giới thiệu giao thức SOAP................................................................17
2.3.2.
Cú pháp thông điệp SOAP ................................................................18
2.3.3.
Các phần tử trong thông điệp SOAP .................................................19
2.4. WSDL ..........................................................................................................23
2.4.1.
Giới thiệu WSDL ..............................................................................23
2.4.2.
Tài liệu WSDL ..................................................................................23
2.4.3.
WSDL porttype .................................................................................25
2.4.4.
Gắn kết WSDL ..................................................................................27
2.5. Dịch vụ Web ................................................................................................27
2.5.1.
Giới thiệu Dịch vụ Web ....................................................................27
2.5.2.
Những phần tử nền tảng của Dịch vụ Web .......................................28
2.5.3.
Tại sao sử dụng Dịch vụ Web ...........................................................28
2.6. Bảo mật ........................................................................................................29
2.6.1.
Giới thiệu tiêu chuẩn mã hóa tiên tiến ..............................................29
2.6.2.
Giới thiệu giải thuật băm MD5 .........................................................29
2.6.3.
Giới thiệu HMAC ..............................................................................33
2.7. Mô hình MVC ............................................................................................34
2.7.1.
Giới thiệu mô hình MVC ..................................................................34
2.7.2.
Php FrameWork dựa trên MVC ........................................................35
2.8. Dữ liệu chuẩn ...............................................................................................36
CHƯƠNG 3.
NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU .................................37
3.1. Thu thập thông tin........................................................................................37
3.1.1.
Thông tin cung cấp cho HTTTHT .....................................................37
3.1.2.
Thông tin xuất ra từ HTTTHT ..........................................................38
3.2. Thiết kế các mô hình ...................................................................................38
3.2.1.
Xây dựng mô hình hoạt động chung của hệ thống ............................38
3.2.2.
Thiết kế mô hình xử lý DFD .............................................................46
3.2.2.1. DFD cấp 0 ......................................................................................46
3.2.2.2. DFD cấp 1 ......................................................................................47
3.2.2.3. DFD cấp 2 ......................................................................................48
3.3. Xây dựng các hệ thống ................................................................................52
3.3.1.
Giả lập các hệ thống hãng hàng không .............................................52
vii
3.3.1.1. Mô hình mức quan niệm (CDM) ...................................................52
3.3.1.2. Mô hình mức vật lý (PDM) ...........................................................53
3.3.1.3. Các bảng dữ liệu ............................................................................54
3.3.1.4. Mô tả các dịch vụ cung cấp ...........................................................60
3.3.2.
Xây dựng Cooperation Management System ....................................61
3.3.2.1. Mô hình mức quan niệm (CDM) ...................................................61
3.3.2.2. Mô hình mức vật lý (PDM) ...........................................................62
3.3.2.3. Các bảng dữ liệu ............................................................................63
3.3.2.4. Mô tả các dịch vụ cung cấp ...........................................................67
3.3.2.5. Thiết kế website cho Cooperation Managerment System .............68
3.3.3.
Xây dựng Controller System .............................................................70
3.3.3.1. Mô hình mức quan niệm (CDM) ...................................................70
3.3.3.2. Mô hình mức vật lý (PDM) ...........................................................70
3.3.3.3. Các bảng dữ liệu ............................................................................71
3.3.3.4. Mô tả các dịch vụ cung cấp ...........................................................72
3.3.4.
Thiết kế website cho virtual airlines .................................................73
3.4. Giới thiệu sản phẩm .....................................................................................75
3.5. Thảo luận kết quả ........................................................................................94
KẾT LUẬN VÀ ĐỀ NGHỊ .......................................................................................95
Kết luận .................................................................................................................95
Hướng phát triển ...................................................................................................95
PHỤ LỤC .................................................................................................................... I
Yêu cầu phần cứng .................................................................................................. I
Hướng dẫn cài đặt ................................................................................................... I
TÀI LIỆU THAM KHẢO .........................................................................................III
viii
KÝ HIỆU VÀ VIẾT TẮT
HTTTHT: Hệ Thống Thông Tin Hợp Tác
HTTTTV: Hệ Thống Thông Tin Thành Viên
HHKTV: Hãng Hàng Không Thành Viên
IATA: International Air Transport Association
CDM: Conceptual Data Model
PDM: Physical Data Model
DFD: Data Flow Diagram
HMAC: Hash Message Authentication Code
ix
TÓM TẮT
Luận văn nghiên cứu về công nghệ Dịch vụ Web (Web Services) để xây dựng
hệ thống thông tin hợp tác cho ngành hàng không. Với mục đích liên kết các hệ thống
hãng hàng không để mở rộng mạng lưới các chuyến bay, chúng tôi thiết kế một hệ
thống trung gian để cộng tác dữ liệu từ các hệ thống hãng hàng không. Trong luận
văn chúng tôi tập trung vào các vấn đề chính sau:
1) Xây dựng mô hình hoạt động cho hệ thống thông tin hợp tác trong ngành
hàng không.
2) Thể hiện hai chức năng tìm vé và đặt vé trên hệ thống thông tin hợp tác.
ABSTRACT
This thesis studies about Web Service technology for building the cooperation
information system in aeronautic. In order to link the aeronautics’ system to extend
the flight network, we build an intermediate system to co-operate data from the
aerounautic’s system. In the dissertation, we focus on 2 main problems:
1) Designing the operational model of the aeronautical corporation
information system.
2) Performing 2 functions: searching and booking tickets on the cooperation
information system.
x
TỪ KHÓA
Hệ thống thông tin hợp tác (cooperation information system): Là một hệ
thống trung gian cho các hệ thống sẵn có (các hệ thống thông tin thành viên). Vai trò
của hệ thống này là quản lý việc cộng tác dữ liệu giữa các hệ thống thông tin thành
viên.
Hệ thống thông tin thành viên: là hệ thống sẵn có trong thực tế, hệ thống này
tham gia chia sẻ dữ liệu với của các hệ thống thông tin thành viên khác thông qua hệ
thống thông tin hợp tác.
Hãng hàng không ảo (virtual airline): là một tổ chức chuyên bán vé cho các
hãng hàng không trong liên minh.
Liên minh hàng không: là một tổ chức trong lĩnh vực hàng không, bao gồm
các thành viên là các hãng hàng không. Hiện tại trên thế giới có ba liên minh hàng
không lớn: Star alliance, SkyTeam, One world.
Hành trình: là một chuỗi các chuyến bay nối tiếp nhau đưa hành khách đến
một nơi nào đó.
Lịch biểu chuyến bay (schedule): là những chuyến bay được các hãng hàng
không thiết lập trước.
Controller System: là một hệ thống con của hệ thống thông tin hợp tác. Hệ
thống này là trung tâm tiếp nhận mọi yêu cầu từ các thành viên trong liên minh, điều
hướng xử lý và thực hiện những thao tác xử lý. Sau đó, hệ thống trả về kết quả theo
yêu cầu tương ứng.
Cooperation Management System: là một hệ thống con của hệ thống thông
tin hợp tác. Hệ thống có vai trò là quản lý mọi thông tin của các hệ thống thông tin
thành viên
xi
DANH MỤC HÌNH
Hình 2.6.2.a. Sơ đồ vòng lặp chính MD5
Hình 2.6.2.b. Sơ đồ một vòng lặp MD5
Hình 2.6.3.a. Nguyên tắc sinh mã xác nhận
Hình 2.7.1.a. Sơ đồ hoạt động cơ bản của mô hình MVC
Hình 2.7.2.a. Mô hình MVC ứng dụng trong PHP
Hình 3.2.1.a. Mô hình hoạt động hệ thống thông tin hợp tác
Hình 3.2.1.b. Mô tả tiến trình tìm vé
Hình 3.2.1.c. Mô tả tiến trình đặt vé
Hình 3.2.1.d. Mô tả quá trình tạo dữ liệu gửi
Hình 3.2.1.e. Mô tả quá trình xác thực dữ liệu
Hình 3.2.1.f. Mô tả cơ chế xác thực dữ liệu
Hình 3.2.2.1.a. DFD cấp 0
Hình 3.2.2.2.a. DFD cấp 1
Hình 3.2.2.3.a. Phân rã ô xử lý Manage Cooperation
Hình 3.2.2.3.b. Phân rã ô xử lý Manage reports.
Hình 3.2.2.3.c. Nhóm ô xử lý tìm vé
Hình 3.2.2.3.d. Nhóm ô xử lý đặt vé
Hình 3.2.2.3.e. Nhóm ô xử lý thanh toán
Hình 3.2.2.3.f. Nhóm ô xử lý trả vé
Hình 3.2.2.3.g. Nhóm ô xử lý thay đổi hành trình bay
Hình 3.3.1.1.a. Mô hình mức quan niệm của hệ thống hàng không
Hình 3.3.1.2.a. Mô hình mức vật lý của hệ thống hãng hàng không
Hình 3.3.2.1.a. Mô hình mức quan niệm của Cooperation Management System
Hình 3.3.2.2.a. Mô hình mức vật lý của hệ thống hãng hàng không
Hình 3.3.2.5.a. Sơ đồ trang web quản trị
Hình 3.3.2.5.b. Giao diện trang chủ website quản trị
Hình 3.3.3.1.a. Mô hình mức quan niệm của hệ thống Controller
Hình 3.3.3.2.a. Mô hình mức vật lý của hệ thống Controller
Hình 3.4.a. Lưu đồ giải thuật phương thức book.
Hình 3.4.b. Lưu đồ phương thức getLinkBookingList.
Hình 3.4.c. Lưu đồ giải thuật phương thức insertToTicket.
Hình 3.4.d. Lưu đồ giải thuật phương thức insertToMFTicket.
Hình 3.4.e. Mô tả Dịch vụ book ở Controllers_System trong tập tin WSDL.
Hình 3.4.g. Mô tả Dịch vụ getKey trong tập tin WSDL.
Hình 3.4.h. Lưu đồ giải thuật phương thức getListOfAirlineID.
Hình 3.4.i. Mô tả Dịch vụ getListOfAirline trong tập tin WDSL.
Hình 3.4.j. Lưu đồ giải thuật phương thức getServedSchedule:
Hình 3.4.k. Hình mô tả Dịch vụ getSchedule ở các hãng airline.
Hình 3.4.l. Lưu đồ giải thuật phương thức Book.
Hình 3.4.m. Hình mô tả Dịch vụ book được cài đặt ở các hãng airline.
Hình a: Sơ đồ trao đổi dữ liệu nhau thông qua hệ thống trung gian
Hình b: Sơ đồ trao đổi dữ liệu nhau thông qua hệ thống trung gian
xii
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
CHƯƠNG 1. TỔNG QUAN
1.1. ĐẶT VẤN ĐỀ
1.1.1. Đặt vấn đề
Trong thực tế, có rất nhiều hệ thống thông tin theo từng lĩnh vực đang hoạt
động, giúp ích cho người dùng về nhiều mặt như: tiết kiệm thời gian, chi phí, nhân
lực…Nhưng một hệ thống thông tin độc lập chưa đáp ứng được nhiều yêu cầu và vấn
đề đặt ra trong thực tế đòi hỏi phải có sự hợp tác với nhau để chia sẻ dữ liệu vì mục
đích chung, lợi ích chung cho các chủ thể của hệ thống và yêu cầu ngày càng cao của
người dùng. Việc chia sẻ dữ liệu qua lại giữa các hệ thống thông tin cần có sự tham
gia của một hệ thống trung gian - hệ thống thông tin hợp tác. Hệ thống này được
xây dựng để quản lý các thành viên tham gia (các HTTTTV), dữ liệu chia sẻ và đảm
bảo việc trao đổi dữ liệu được an toàn.
Hiện nay trên thế giới có rất nhiều hãng hàng không đang hoạt động giúp cho
hành khách có thể đi lại tiện lợi và tiết kiệm nhiều thời gian. Tuy nhiên, hành khách
vẫn thấy khó khăn mỗi khi phải bay quá cảnh nhiều chuyến vì phải truy cập nhiều
website của từng hãng hàng không độc lập để tìm những chuyến bay và tự sắp lịch
mới có thể đi đến nơi mình mong muốn. Yêu cầu đã được đặt ra cho ngành hàng
không là cần có sự liên kết các hãng lại để đơn giản hóa việc tìm hành trình hợp lý
cho hành khách. Đề tài luận văn: Xây dựng hệ thống thông tin hợp tác ứng dụng cho
lĩnh vực hàng hàng không là một ví dụ minh họa cho việc xây dựng một HTTTHT
cho liên minh hàng không để giải quyết vấn đề nêu trên.
1.1.2. Định nghĩa vấn đề
Vì các hệ thống thông tin hoạt động độc lập cho nên dữ liệu của các hệ thống
đó cũng được lưu trữ độc lập với cách thức và cấu trúc khác nhau. Chúng ta cần xây
dựng một hệ thống trung gian để thu thập dữ liệu từ các hệ thống ấy, sau đó xử lý
chúng và phục vụ cho người dùng. Trong ngành hàng không, những dữ liệu phân tán
đó là các lịch bay, HTTTHT sẽ nối kết các chuyến bay lại thành những hành trình
phù hợp với yêu cầu của hành khách.
Việc trao đổi dữ liệu giữa hệ thống sẵn có phải dựa vào giao thức, cơ chế trên
một nền tảng công nghệ nhất định. Trong thực tế, các hệ thống sẵn có thường không
đồng nhất về dữ liệu cũng như nền tảng công nghệ và ngôn ngữ. HTTTHT cần phải
giải quyết những vấn đề tương thích này. Ngoài ra, việc trao đổi dữ liệu giữa các hệ
thống phải đảm bảo an toàn. Tức là dữ liệu trao đổi phải đảm bảo tính toàn vẹn, chống
phủ nhận và bảo mật.
HTTTHT trong ngành hàng không phải đảm bảo cung cấp các chức năng sau:
Quản lý thông tin các HHKTV tham gia vào liên minh hàng không.
Quản lý thông tin các dịch vụ mà các hãng hàng không cung cấp: tìm vé,
đặt vé, trả vé, đổi vé…
Quản lý dữ liệu chung giữa các hệ thống: các hành trình bay.
Thể hiện được các tính năng mới: tìm hành trình, đặt vé cho hành trình…
1
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
1.2. LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ
Hiện nay, trên thế giới có ba liên minh hàng không lớn là: Star Alliance,
SkyTeam, One World. Việc thành lập các liên minh đã mang lại nhiều lợi ích cho
hành khách và cho các HHKTV.
Các liên minh hàng không đã thể hiện rất tốt chức năng nối chuyến, tạo ra
nhiều sự lựa chọn cho hành khách để đi đến nơi nào đó. Hệ thống còn đảm bảo việc
tìm các hành trình cho hành khách có sự ưu tiên về chi phí thấp nhất.
Để gia nhập vào liên minh hàng không, các hãng hàng không thành viên phải
đáp ứng được các yêu cầu: tiêu chuẩn dịch vụ khách hàng, mức độ an toàn và tuân
thủ công nghệ. Việc gia nhập liên minh phải thông qua các thủ tục, các hãng hàng
không cung cấp thông tin của mình qua thủ tục đó.
1.3. MỤC TIÊU ĐỀ TÀI
Đề tài chúng tôi nghiên cứu hướng đến các mục tiêu chính sau:
Thể hiện được hai chức năng tìm hành trình bay và đặt vé trên website
của hãng hàng không và website của công ty chuyên bán vé.
Xây dựng ứng dụng web cho việc cấu hình thông tin liên quan đến các
hãng hàng không thành viên.
Việc trao đổi dữ liệu qua lại giữa các hệ thống cần phải đảm bảo an
toàn.
1.4. PHẠM VI CỦA ĐỀ TÀI
1.4.1. Phạm vi chức năng
Sự thành lập các liên minh hàng không có nhiều mục đích. Tuy nhiên, trong
phạm vi đề tài chúng tôi chỉ quan tâm đến mục đích là mở rộng mạng lưới các hành
trình bay. Chúng tôi sẽ xây dựng một hệ thống có hai chức năng chính là quản lý
thành viên trong liên minh và tương tác với hành khách.
Quản lý thành viên trong liên minh: chức năng này dành cho người quản trị hệ
thống trong liên minh hàng không, được thể hiện thông qua giao diện website người
quản trị. Người quản trị sẽ có một tài khoản để đăng nhập vào trang quản trị. Tại đây
họ có thể cấu hình các thành viên trong liên minh thông qua các chức năng con của
trang quản trị.
Hệ thống tương tác với hành khách: hành khách có thể sử dụng các chức năng
như tìm hành trình, đặt vé cho hành trình trên giao diện của website liên minh hàng
không hay website của hãng hàng không.
1.4.2. Phạm vi triển khai
Các hệ thống hãng hàng không trong thực tế sẽ không đồng nhất về dữ liệu.
Vì thế, hệ thống thông tin hợp tác cần phải tích hợp tất cả các quy định về chia sẻ dữ
liệu của từng hãng hàng không. Mặt khác, các hệ thống hãng hàng không trong thực
tế cũng không đồng nhất về công nghệ, có thể các hệ thống cũ vẫn còn đang sử dụng
công nghệ RMI, CORBA, DCOM… Với mục đích tái sử dụng lại hệ thống sẵn có,
thì hệ thống thông tin hợp tác cần phải giao tiếp được với các hệ thống sẵn có ấy. Tuy
2
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
nhiên, trong phạm vi đề tài chúng tôi sẽ giả lập các hệ thống sẵn có, cho nên mặc định
là các hệ thống sẵn có sẽ đồng nhất về dữ liệu và đồng nhất về công nghệ. Vấn đề
giải quyết việc không đồng nhất về dữ liệu và công nghệ sẽ nằm trong hướng mở
rộng của đề tài.
1.5. PHƯƠNG PHÁP NGHIÊN CỨU
1.5.1. Hướng giải quyết
-
Tiến hành nghiên cứu đặc điểm của các hệ thống thông tin hiện tại: các hệ
thống liên minh hàng không, các hệ thống hãng hàng không.
Xây dựng hệ thống thông tin hợp tác.
Kiểm thử hệ thống.
Cải tiến hệ thống.
1.5.2. Kế hoạch thực hiện
Quy trình thực hiện
Thời gian
Mô tả quy trình
Khảo sát
2 tuần
Tìm kiếm các nguồn thông tin
về liên minh hàng không trên
mạng.
Tìm kiếm các nguồn dữ liệu
chuẩn trong ngành hàng
không.
Vào các trang web của các
hãng hàng không để đặt vé.
Phân tích và thiết kế
6 tuần
Dựa vào các thông tin khảo
sát được phân tích cơ chế hoạt
động chung của hệ thống. Xác
định các công nghệ cần sử
dụng trong triển khai hệ
thống.
Thiết kế mô hình hoạt động
chung cho hệ thống thông tin
hợp tác.
Thiết kế các mô hình CDM,
PDM, DFD cho hệ thống
thông tin hợp tác.
Viết tài liệu cụ thể cho việc
cài đặt hệ thống.
Cài đặt
6 tuần
Tiến hành cài đặt hệ thống
theo mô hình và theo tài liệu
cụ thể.
Kiểm thử
2 tuần
Kiểm thử sự hoạt động của hệ
thống
3
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
Báo cáo
4 tuần
Viết quyển báo cáo cuối cùng
cho đề tài và báo cáo trước hội
đồng.
1.5.3. Phân công công việc
Bước khảo sát
STT
Công việc
Mô tả
Ngày
khởi
động dự
kiến
Ngày
khởi
động
thực tế
Số
ngày
thực tế
Người
thực hiện
Tình trạng
1
Tìm hiểu các
hệ thống hiện
tại
Truy cập
vào các
trang:
skyteam.
com,
abay.vn,
vietname
airlines.c
om
31/12/2
012
31/12/2
012
14
Hoa Quốc
Bảo
Đã thu thập
những thông
tin đầu vào,
đầu ra của hệ
thống quản lý
bán vé, các
chức năng mà
hệ thống đáp
ứng cho người
dùng.
3
Tìm hiểu
thông tin về
các liên mình
hàng không
Tham
khảo tại
trang
vi.wikipe
dia.org
31/12/2
012
31/12/2
012
14
Hoa Quốc
Đã thu thập
một số thông
tin về thủ tục
gia nhập liên
minh hàng
không, lợi ích
cho các hãng
hàng không
khi gia nhập
liên minh hàng
hàng không
Tìm kiếm các
dữ liệu chuẩn
Tham
khảo
nguồn dữ
liệu
chuẩn
của các
hiệp hội
IATA,
ICAO…
07/12/2
012
07/12/2
012
7
2
Bảo
Ngô
Thành
Được
Có được dữ
liệu theo
chuẩn
IATA(IATA
code)
Bước phân tích và thiết kế
4
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
STT
Công việc
Mô tả
Ngày
khởi
động dự
kiến
Ngày
khởi
động
thực tế
Số
ngày
thực tế
Người
thực hiện
Tình trạng
1
Thiết kế mô
hình hoạt
động cho hệ
thống thông
tin hợp tác
Thiết lập
mô hình
hoạt
động cho
HTTTHT
ứng dụng
trong
ngành
hàng
không.
Viết tài
liệu cho
mô hình
hoạt
động đã
đề ra.
14/01/2
013
14/01/2
013
21
Hoa Quốc
Bảo
Có được mô
hình hoạt động
cho HTTTHT
2
Mô tả các
dịch vụ cần
xây dựng
trong hệ
thống
Sử dụng
công
nghệ
Dịch vụ
Web cài
đặt trên
từng hệ
thống
con. Viết
tài liệu
mô tả cụ
thể các
dịch vụ
được cài
đặt trên
từng hệ
thống
con.
28/01/2
013
28/01/2
013
7
Nguyễn
Hữu Hậu
Có được tài
liệu mô tả dịch
vụ cụ thể
3
Thiết lập cơ
chế an ninh
trong trao đổi
dữ liệu trên
công nghệ
Dịch vụ Web
Nghiên
cứu các
công
nghệ:
chữ ký
số, phong
bì số và
giao thức
chuẩn
SSL,
HMAC.
Từ đó
28/01/2
013
28/01/2
013
7
Hoa Quốc
Bảo
Có được tài
liệu cụ thể cho
việc thiết kế
cơ chế an toàn
trong trao đổi
dữ liệu
5
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
ứng dụng
vào hệ
thống
cho việc
an toàn
trong trao
đổi dữ
liệu.
4
Thiết kế mô
hình CDM
cho từng hệ
thống con
04/02/2
013
04/02/2
013
14
Hoa Quốc
Bảo
Có được các
mô hình CDM
cho từng hệ
thống con
5
Thiệt kế mô
hình PDM
cho từng hệ
thống con
04/02/2
013
04/02/2
013
14
Hoa Quốc
Bảo
Có được mô
hình PDM cho
từng hệ thống
con
6
Thiết kế mô
hình DFD
18/02/2
013
18/02/2
013
7
Hoa Quốc
Bảo
Có được mô
hình DFD
7
Thiết kế giải
thuật tìm
hành trình
bay
04/01/2
013
04/01/2
013
7
Ngô
Thành
Được
Có được giải
thuật nối
chuyến bay
Bước cài đặt
STT
Công việc
Mô tả
Ngày
khởi
động dự
kiến
Ngày
khởi
động
thực tế
Số
ngày
thực tế
Người
thực hiện
Tình trạng
1
Xây dựng
thư viện cho
cơ chế an
ninh trong
trao đổi dữ
liệu
Dựa vào
đặc tả về
an ninh
trong trao
đổi dữ
liệu ở
bước
phân tích
thiết kế.
25/02/2
013
25/02/2
013
3
Nguyễn
Hữu Hậu
Hoàn thành
2
Cài đặt dịch
vụ lấy lịch
biểu cho các
hệ thống
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
25/02/2
013
25/02/2
013
3
Hoa Quốc
Bảo
Hoàn thành
6
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
hãng hàng
không
phân tích
thiết kế.
3
Cài đặt dịch
vụ đặt vé giữ
chỗ cho các
hệ thống
hãng hàng
không
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
phân tích
thiết kế.
28/02/2
013
28/02/2
013
3
Nguyễn
Hữu Hậu
Hoàn thành
4
Cài đặt dịch
vụ lấy khóa
bí mật của
từng
HHKTV cho
Cooperation
Management
System
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
phân tích
thiết kế.
28/02/2
013
28/02/2
013
3
Hoa Quốc
Bảo
Hoàn thành
5
Cài đặt dịch
vụ lấy địa chỉ
dịch vụ cung
cấp của từng
HHKTV cho
Cooperation
Management
System
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
phân tích
thiết kế.
03/03/2
013
03/03/2
013
3
Nguyễn
Hữu Hậu
Hoàn thành
6
Cài đặt dịch
vụ lấy múi
giờ cho
Cooperation
Management
System
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
phân tích
thiết kế.
25/02/2
013
25/02/2
013
3
Ngô
Thành
Được
Hoàn thành
7
Cài đặt dịch
vụ tìm hành
trình bay cho
Controller
System
Dựa vào
bảng mô
tả và giải
thuật cho
việc tìm
hành trình
đã lập ở
bước
phân tích
thiết kế.
28/02/2
013
28/02/2
013
14
Ngô
Thành
Được
Hoàn thành
8
Cài đặt dịch
vụ đặt vé cho
hành trình tại
Controller
System.
Dựa vào
bảng mô
tả dịch vụ
đã lập ở
bước
06/03/2
013
06/03/2
013
14
Nguyễn
Hữu Hậu
Hoàn thành
7
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
phân tích
thiết kế.
9
Xây dựng
FrameWork
trên mô hình
MVC
11/02/2
013
11/02/2
013
14
Ngô
Thành
Được
Hoàn thành
10
Thiết kế
website quản
trị cho
Cooperation
Management
System
Dựa trên
FrameWo
rk đã xây
dựng.
03/03/2
013
03/03/2
013
28
Hoa Quốc
Bảo
Hoàn thành
11
Thiết kế
website cho
liên minh
hàng không
(chuyên về
bán vé)
Dựa trên
FrameWo
rk đã xây
dựng.
14/03/2
013
14/03/2
013
18
Ngô
Thành
Được
Hoàn thành
12
Thiết kế
website cho
hệ thống
hãng hàng
không
(chuyên về
bán vé)
Dựa trên
FrameWo
rk đã xây
dựng.
01/04/2
013
01/04/2
013
7
Ngô
Thành
Được
Hoàn thành
Mô tả
Ngày
khởi
động dự
kiến
Ngày
khởi
động
thực tế
Số
ngày
thực tế
Người
thực hiện
Tình trạng
Bước kiểm thử
STT
Công việc
1
Cấu hình các
thông tin về
các HHKTV
08/04/2
013
08/04/2
013
14
Hoa Quốc
Bảo
2
Thực hiện
việc tìm vé
trên website
của liên minh
hàng không
08/04/2
013
08/04/2
013
14
Ngô
Thành
Được
3
Thực hiện
việc đặt vé
trên website
08/04/2
013
08/04/2
013
14
Nguyễn
Hữu Hậu
8
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
của liên minh
hàng không
4
Thực hiện
việc tìm vé
trên website
của hãng
HHKTV
08/04/2
013
08/04/
14
Ngô
Thành
Được
5
Thực hiện
việc đặt vé
trên website
của hãng
HHKTV
08/04/2
013
08/04/2
013
14
Nguyễn
Hữu Hậu
9
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Trong đề tài, chúng tôi có sử dụng các ngôn ngữ nền tảng của Dịch vụ Web
như: XML, XML Schema, WSDL và giao thức SOAP, sẽ được giới thiệu lần lượt
dưới đây.
2.1. XML
2.1.1. Giới thiệu XML
XML được thiết kế để truyền tải và lưu trữ dữ liệu.
- XML là viết tắt của cụm từ eXtensible Markup Language.
- XML là một ngôn ngữ đánh dấu tương tự như HTML.
- XML được thiết kế để mang theo thông tin, không để hiển thị thông tin.
- Các thẻ của XML không được định nghĩa trước. Chúng phải tự định nghĩa
nó.
- XML được thiết kế để tự mô tả.
- XML là một khuyến nghị tổ chức W3C.
XML ngày nay có vai trò quan trọng đối với Web như HTML và là nền tảng
của Web.
XML là một công cụ được dùng phổ biến nhất cho việc trao đổi dữ liệu tất cả
các loại chương trình.
2.1.2. Cây XML (XML Tree)
Khuôn dạng một tài liệu XML là một cấu trúc bắt đầu từ nút gốc và các nhánh
tới các nút lá.
- Một Ví dụ về tài liệu XML đơn giản:
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
Dòng đầu tiên là khai báo XML. Nó định nghĩa XML version 1.0 và sử dụng
mã hóa ISO-8859-1 = Latin-1/West European character set. Dòng tiếp theo mô tả một
nút gốc của tài liệu <note>. Bốn dòng kế tiếp định nghĩa những phần tử con của nút
gốc: to, from, heading, body.Và dòng cuối cùng cho biết là kết thúc của nút gốc
</note>.
- Khuôn dạng tài liệu XML là một cấu trúc cây:
10
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
Tài liệu XML phải chứa đựng một phần tử gốc (root element). Nút gốc này là
cha của những phần tử khác. Những phần tử (element) trong một tài liệu XML tạo
nên một cây. Cây bắt đầu từ gốc và nhánh cho đến cấp thấp nhất của cây. Tất cả các
phần tử đều có thể có phần tử con của nó.
Một tập hợp cha, con và anh em được dùng để diễn tả mối quan hệ giữa các
phần tử. Phần tử cha có những đứa con. Những con trên cùng một mức được gọi là
anh em (siblings). Tất cả những phần tử có thể chứa nội dung văn bản và các thuộc
tính như HTML.
2.1.3. Cú pháp XML
Cú pháp của XML rất đơn giản và có tính logic. Luật rất dễ học và sử dụng.
- Tất cả các phần tử XML phải có thẻ đóng:
Trong XML, sẽ là không hợp lệ nếu bỏ quên thẻ đóng.
This is a paragraph.
- Thẻ XML thì phân biệt hoa thường:
Những thẻ XML phân biệt hoa thường. Thẻ <Letter> sẽ khác thẻ <letter>
Thẻ mở và đóng phải được viết tương ứng giống nhau.
<Message>This is incorrect</message>
<message>This is correct</message>
- Phần tử XML phải được lồng nhau đúng đắn:
Trong XML, tất cả những phần tử phải được lồng nhau đúng đắn trong những
phần tử khác.
<b><i>This text is bold and italic</i></b>
Trong ví dụ trên, “lồng nhau đúng đắn” chỉ đơn giản là từ thẻ <i> được mở ra
trong thẻ <b> nó phải được đóng lại bên trong thẻ <b>.
- Những tài liệu XML phải có phần tử gốc:
Tài liệu XML phải chứa một phần tử làm cha của tất cả các phần tử còn lại.
Phần tử này được gọi là phần tử gốc.
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
- Thuộc tính của XML phải nằm trong cặp dấu nháy (đơn hoặc kép):
Trong XML, giá trị của thuộc tính phải luôn nằm trong cặp dấu nháy.
Quan sát hai tài liệu XML phía dưới. Tài liệu đầu là sai cú pháp, tài liệu thứ
hai đúng cú pháp.
<note date=12/11/2007>
<to>Tove</to>
<from>Jani</from>
</note>
<note date="12/11/2007">
<to>Tove</to>
<from>Jani</from>
</note>
11
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
Lỗi của tài liệu XML đầu tiên là do giá trị của thuộc tính date không nằm trong
cặp dấu nháy.
Tham chiếu những thực thể (thay thế một vài ký tự đặc biệt):
Một vài ký tự có ý nghĩa đặc biệt trong XML.
Nếu chúng ta đặt một ký tự như “<” trong một XML nó sẽ gây ra lỗi bởi vì
trình phân tích sẽ nghĩ nó là bắt đầu của một phần tử mới. Ví dụ như:
<message>if salary < 1000 then </message>
Để tránh trường hợp này, thay thế ký tự “<” với một thực thể tham chiếu:
<message>if salary < 1000 then</message>
Có 5 tham chiếu thực thể được định nghĩa lại trong XML:
<
<
nhỏ hơn
>
>
lớn hơn
&
&
và
'
'
nháy đơn
"
"
nháy kép
Lưu ý: Chỉ có ký tự “<” và ký tự “&” là không hợp lệ nghiêm trọng trong
XML. Phần lớn các ký tự khác là hợp lệ nhưng chúng ta nên thay thế chúng như một
thói quen tốt.
- Chú thích trong XML:
Cú pháp để viết chú thích trong XML thì giống như trong HTML.
<!-- Đây là một chú thích -->
- Khoảng trắng được giữ lại trong XML:
Với XML các khoảng trắng sẽ không bị xóa.
XML lưu trữ dòng mới như là LF (Line Feed).
2.1.4. Những phần tử XML
Một tài liệu XML chứa đựng nhiều phần tử.
Một phần tử XML là bất cứ những gì nó chứa đựng từ lúc mở thẻ mở cho tới
lúc mở thẻ đóng.
- Một phần tử có thể chứa đựng:
Những phần tử khác
Văn bản thuần
Những thuộc tính
Hoặc một sự trộn lẫn của những mục trên
<bookstore>
<book category="CHILDREN">
<title>Harry Potter</title>
<author>J K. Rowling</author>
12
Đề tài: Xây Dựng HTTTHT Ứng Cho Lĩnh Vực Hàng Không.
Giáo Viên Hướng Dẫn: Nguyễn Phú Trường.
<year>2005</year>
29.99</price>
</book>
<book category="WEB">
<title>Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
39.95</price>
</book>
</bookstore>
Trong ví dụ trên, <bookstore> và <book> có những phần tử chứa nội dung
phần tử vì chúng còn chứa những phần tử khác. <book> cũng có một thuộc tính
(category="CHILDREN"). <title>, <author>, <year>, and có nội dung văn
bản vì nó chứa văn bản.
- Quy cách đặt tên XML (XML Naming Rules):
Những phần tử XML phải theo quy luật đặt tên sau:
Tên có thể chứa những ký tự, số và những ký tự khác.
Tên không thể bắt đầu bởi số hoặc là dấu chấm câu.
Tên không thể bắt đầu bởi từ xml (hoặc là XML hoặc là Xml)
Tên không thể chứa khoảng trắng.
Bất cứ tên nào cũng có thể dùng được, không có những từ được quy định sẵn.
- Những đề nghị khi đặt tên:
Đặt tên gợi nhớ, nên đặt dấu gạch dưới giữa các từ trong tên:
<first_name>, <last_name>.
Tên nên ngắn gọn và đơn giản, như <book_title> không nên như
<the_title_of_the_book>.
Tránh dấu “-”. Nếu chúng ta đặt tên nào đó dạng như “first-name”, một
số phần mềm có thể nghĩ chúng ta muốn thực hiện phép tính trừ.
Tránh dấu “.”. Nếu chúng ta đặt tên nào đó dạng “first.name”, một số
phần mềm có thể nghĩ name là thuộc tính của first.
Tránh dấu ký tự “:”. Dấu hai chấm có thể bị hiểu nhầm là không gian
tên.
Tài liệu XML thường có một cơ sở dữ liệu liên quan. Do đó chúng ta
nên dùng quy cách đặt tên của CSDL của chúng ta cho những phần tử
trong tài liệu XML.
Những ký tự unicode là hợp lệ nhưng cũng không nên dùng vì có thể
nhà cung cấp phần mềm chúng ta đang dùng không hỗ trợ chúng.
- Các phần XML dễ dàng mở rộng để mang nhiều thông tin hơn nếu tài liệu
có thay đổi trong tương lai vì trình phân tích vẫn nhận dạng lại được những
thẻ cũ.
2.1.5. Những thuộc tính XML
13