Tải bản đầy đủ (.docx) (27 trang)

Xây dựng hệ thống quản lí bán vé máy bay

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.4 MB, 27 trang )

Xây dựng hệ thống quản lí bán vé máy bay

BÀI TẬP LỚN MÔN CÔNG NGHỆ PHẦN MỀM

Đề tài: Xây dựng hệ thống quản lí bán vé máy bay

Lớp

CNPM1

Nhóm 18

Page 1


Xây dựng hệ thống quản lí bán vé máy bay
Đề bài :
Với mỗi modul cá nhân :








1.

Vẽ lại sơ đồ UC chi tiết của hệ thống và của modul
Vẽ lại sơ đồ các lớp sau pha phân tích
Định nghĩa các thuộc tính và kiểu thuộc tính của mỗi lớp


Dùng kĩ thuật thẻ CRC và 3 nguyên lí thiết kế phương thức để gán phương
thức cho các lớp.
Định nghĩa khuôn mẫu cho từng phương thức.
Điền tất cả vào sơ đồ lớp để thu được sơ đồ lớp chi tiết (theo mô hình MVC
dùng thực thể thuần)
Vẽ lại sơ đồ tuần tự sau pha thiết kế.

Sơ đồ UC chi tiết của hệ thống và của modul nhân viên bán
hàng tại quầy (Dirrect Seller).
a. Sơ đồ UC chi tiết toàn hệ thống.

Page 2


Xây dựng hệ thống quản lí bán vé máy bay

b. Sơ đồ UC của modul.

Page 3


Xây dựng hệ thống quản lí bán vé máy bay

Mô tả UC :












Login : UC này cho phép nhân viên(nói chung) đăng nhập theo tài khoản
của mình.
Direct Seller Login : UC này cho phép nhân viên bán hàng tại quầy đăng
nhập theo tài khoản của mình.
Change password : UC này cho phép nhân viên thay đổi mật khẩu của
mình sau khi đã đăng nhập vào hệ thống.
Logout: UC này cho phép nhân viên đăng xuất sau khi đã đăng nhập vào hệ
thống, hoàn thành công việc hoặc hết phiên làm việc của mình.
Booking at the counter : UC này cho phép nhân viên bán hàng tại quầy đặt
vé khi có yêu cầu từ khách hàng đến đặt vé trực tiếp tại quầy
Cancle at the counter : UC này cho phép nhân viên bán hàng tại quầy hủy
đặt vé khi có yêu cầu từ khách hàng đến hủy đặt vé trực tiếp tại quầy.
Change at the counter : UC này cho phép nhân viên bán hàng tại quầy đổi
vé khi có yêu cầu từ khách hàng đến đổi vé trực tiếp tại quầy.
Search flight : UC này cho phép nhân viên bán hàng tại quầy tìm kiếm
thông tin về chuyến bay (giá vé, loại vé, ngày giờ bay, hãng máy bay….) khi
có yêu cầu của khách hàng.
Search by name : UC này cho phép nhân viên bán hàng tại quầy tìm kiếm
thông tin về chuyến bay mà khách hàng muốn hủy vé hoặc đổi vé.
Page 4


Xây dựng hệ thống quản lí bán vé máy bay
2.


Sơ đồ lớp sau pha phân tích.



Chức năng đặt vé tại chỗ (Booking at the counter)

Trong đó :
 AddBookingFrm : Form đặt vé chính.
 SearchFreeTicketFrm : Form tìm kiếm vé trống.
 AddClientFrm : Form thêm thông tin khách hàng (với khách hàng
mới).
 Flight : chuyến bay (chứa thông tin về chuyến bay mà khách hàng có
nhu cầu đặt)
 Client : Khách hàng.
 Booking : Thông tin đặt vé (bao gồm thông tin khách hàng và
CouponBook).
 DirrectSellerCtr : Lớp điều khiển của nhân viên bán hàng tại quầy.


Chức năng hủy đặt vé tại chỗ (Cancel at the counter)

Page 5


Xây dựng hệ thống quản lí bán vé máy bay



Booking : lưu thông tin đặt vé của KH (bao gồm thông tin khách hàng và tất
cả vé đã đặt)

Chức năng đổi vé tại chỗ (Change at the counter)

UpdateTicketFrm : Form update thông tin đặt vé (update lại thông tin đặt vé
sau khi đổi)
Sơ đồ lớp sau pha phân tích cho toàn modul:
Page 6


Xây dựng hệ thống quản lí bán vé máy bay

3.

Định nghĩa các thuộc tính và kiểu thuộc tính cho các lớp
a.

Chức năng Booking at the counter

Page 7


Xây dựng hệ thống quản lí bán vé máy bay







Lớp Flight (Model) :
• ID :

• dateLift :
• hourLift :
• mediateAirport :
• Status:
Lớp Client (Model) :
• ID :
• idCardNumber:
• fullName:
• birthDay:
• address :
• phoneNumber :
Lớp Booking :
• ID :
• bookingDate :
• flight :
• client :
• pricePerOneTicket :

String
date
time
String
String

_ Mã chuyến bay.
_ Ngày cất cánh.
_Giờ cất cánh.
_Sân bay trung gian.
_Trạng thái chuyến bay.


Integer
String.
String
date
String
Integer

_Mã khách hàng.
_ mã thẻ thành viên KH
_Họ tên đầy đủ.
_Ngày sinh nhật.
_Địa chỉ.
_Số điện thoại.

String
date
Flight
Client.
integer

_ Mã phiếu.
_Ngày đặt.

Page 8

_ giá tiền 1 vé.


Xây dựng hệ thống quản lí bán vé máy bay
tax :

integer
totalPrice :
integer
note :
String
Lớp BookingDAO (controller) :
• dbcon :
connection
• url :
String
• userName :
String
• password :
String
Lớp DirrectSellerFrm (View) :
• dsBooking :
button
đặt vé máy bay.
• dsCancel :
button
hủy đặt vé máy bay.
• dsChange :
button
đổi vé máy bay.
Lớp SearchFreeTicketFrm(View) :
• txtAirline :
textField
• txtTicketType :
comboBox
chiều).

• txtTicketClass:
comboBox
• txtBeginPlace :
comboBox
• txtEndPlace :
comboBox
• txtDayFlight :
textField
• txtNumberAdult :
textField
• txtNumberChildrent : textField
• btnSearhFlight :
button
• tblTable
table
• btnReset :
button
nhập
Lớp AddClientFrm (View):
• txtNameSearch :
textField
kiếm.
• btnSearch :
button
• tblResult :
table
• txtID :
textField
• txtIdCardNumber :
textField

khách hàng
• txtFullName :
textField
hàng.












Page 9

_ tiền thuế.
_ tổng tiền.
_ ghi chú
_ kết nối với DB .
_ đường dẫn tới DB.
_ tài khoản kết nối với DB.
_Mật khẩu của userName
_ nút chọn để vào chức năng
_ nút chọn để vào chức năng
_ nút chọn để vào chức năng
_ Chứa tên hãng máy bay.
_ Chứa loại vé (khứ hồi, 1

_Chứa tên hạng vé.
_ Chứa điểm khởi hành.
_ Chứa điểm kết thúc.
_ Chứa ngày đi.
_ Chứa số lượng người lớn.
_ Chứa số lượng trẻ em.
_ Nút tìm kiếm chuyến bay.
_Chứa kết quả tìm kiếm
_ Nút reset lại hết thông tin đã
_ Chứa tên khách hàng cần tìm
_ Chứa kết quả tìm kiếm
_ Chứa số thẻ thành viên của
_ Chứa họ tên đầy đủ khách


Xây dựng hệ thống quản lí bán vé máy bay
txtBirthday :
textField
hàng.
• txtNote :
textField
• btnSubmit :
button
khách hàng.
• btnReset :
button
đã nhập.
Lớp BookingTicketFrm :
• txtID : textField
• btnSearchFreeTicket : button

vé trống(tìm kiếm chuyến bay)
• btnSearchClient :
button
thông tin khách hàng
• btnSubmit :
button
booking
• btnCancel :
button
• btnReset :
button
• booking :
Booking




Sơ đồ lớp thu được

Page 10

_ Chứa ngày sinh của khách
_ Chứa ghi chú thêm
_ nút đồng ý thêm thông tin
_ nút reset lại toàn bộ thông tin

_nút chọn chức năng tìm kiếm
_nút chọn chức năng tìm kiếm
_nút xác nhận đồng ý thêm
_nút hủy

_nút reset thông tin đã nhập


Xây dựng hệ thống quản lí bán vé máy bay

Chức năng Cancle at the counter
Lớp CancelTicketFrm :
• btnSearchDeleteTicket : button
_nút chọn chức năng tìm kiếm
vé để xóa(tìm kiếm chuyến bay)
• btnSubmit :
button
_nút xác nhận đồng ý xóa
• btnCancel :
button
_nút hủy
• booking :
Booking
Lớp SearchDeleteTicketFrm :
• txtIdClient : textField _ô chứa mã khách hàng
• txtNameClient : textField _ô chứa tên khách hàng
• btnSearch : button _ nút chọn tìm kiếm.
• tblResult : table _ bảng chứa kết quả tìm kiếm.
b.





Page 11



Xây dựng hệ thống quản lí bán vé máy bay




btnChoose : button _ nút chọn vé để hủy.
btnCancel : button _ nút hủy
btnReset : button _ nút reset các thông tin đã nhập.

Sơ đồ lớp thu được

Chức năng Change at the counter
Lớp ChangeTicketFrm :
• btnSearchChangeTicket : button
_nút chọn chức năng tìm kiếm
vé mà khách hàng đã đặt theo tên hoặc id để đổi(tìm kiếm chuyến
bay).
c.



Page 12


Xây dựng hệ thống quản lí bán vé máy bay










btnUpdateTicket :
thông tin đặt vé mới.
btnSubmit :
btnCancel :
booking :

button

_nút chọn chức năng update

button
button
Booking.

_nút xác nhận đồng ý đổi
_nút hủy

Lớp SearchChangeTicketFrm :
• txtIdClient : textField _ô chứa mã khách hàng
• txtNameClient : textField _ô chứa tên khách hàng
• btnSearch : button _ nút chọn tìm kiếm.
• tblResult : table _ bảng chứa kết quả tìm kiếm.
• btnChoose : button _ nút chọn vé để đổi.
• btnCancel : button _ nút hủy

• btnReset : button _ nút reset các thông tin đã nhập.
Lớp UpdateTicketFrm(View) :
• txtAirline :
textField
_ Chứa tên hãng máy bay.
• txtTicketType :
comboBox _ Chứa loại vé (khứ hồi, 1
chiều).
• txtTicketClass:
comboBox _Chứa tên hạng vé.
• txtBeginPlace :
comboBox _ Chứa điểm khởi hành.
• txtEndPlace :
comboBox _ Chứa điểm kết thúc.
• txtDayFlight :
textField
_ Chứa ngày đi.
• txtNumberAdult :
textField
_ Chứa số lượng người lớn.
• txtNumberChildrent : textField
_ Chứa số lượng trẻ em.
• btnSearhFlight :
button
_ Nút tìm kiếm chuyến bay.
• tblTable
table
_Chứa kết quả tìm kiếm.
• btnChoose
button

_nút chọn
• btnReset :
button
_ Nút reset lại hết thông tin đã
nhập
Sơ đồ lớp thu được:

Page 13


Xây dựng hệ thống quản lí bán vé máy bay

Sơ đồ lớp toàn modul :

Page 14


Xây dựng hệ thống quản lí bán vé máy bay

4.

Dùng kĩ thuật thẻ CRC và 3 nguyên lí thiết kế phương thức để
gán phương thức cho các lớp.



Thẻ CRC của lớp BookingDAO cho chức năng đặt vé, hủy vé và đổi vé

Page 15



Xây dựng hệ thống quản lí bán vé máy bay



Thẻ CRC của lớp DirrectSellerFrm



Thẻ CRC của lớp BookingTicketFrm

Page 16


Xây dựng hệ thống quản lí bán vé máy bay



Thẻ CRC của lớp CancelTicketFrm



Thẻ CRC của lớp ChangeTicketFrm

Page 17


Xây dựng hệ thống quản lí bán vé máy bay




Thẻ CRC của lớp SearchFreeTicketFrm



Thẻ CRC của lớp AddClientFrm

Page 18


Xây dựng hệ thống quản lí bán vé máy bay



Thẻ CRC của lớp SearchDeleteTicketFrm



Thẻ CRC của lớp UpdateTicketFrm

Page 19


Xây dựng hệ thống quản lí bán vé máy bay



Thẻ CRC của lớp SearchChangeTicketFrm




Theo nguyên lý A : để che giấu thông tin các thuộc tính cần để là private do
vậy các lớp cần có các phương thức get/set tương ứng cho mỗi thuộc tính
nếu cần.
Áp dụng nguyên lý B,C :
• Lớp BookingTicketFrm :



Page 20


Xây dựng hệ thống quản lí bán vé máy bay



Phải có phương thức bắt sự kiện nút : SearchFreeTicket,
SearchClient, Cancel, Reset, Submit, thông báo thành công.
Phải có phương thức hiển thị form (Hàm khởi tạo)



Lớp SearchFreeTicketFrm :
 Phải có phương thức bắt sự kiện nút : SearchFlight, Reset.
 Phải có phương thức hiển thị form (Hàm khởi tạo)



Lớp AddClientFrm :
 Phải có phương thức bắt sự kiện nút : Search, Submit, Reset.

 Phải có phương thức hiển thị form(Hàm khởi tạo).
Lớp CancelTicketFrm :
 Phải có phương thức bắt sự kiện nút : SearchDeleteTicket,
Submit, Cancel.
 Phải có phương thức hiển thị form(Hàm khởi tạo).





Lớp SearchDeleteTicketFrm :
 Phải có phương thức bắt sự kiện nút : Search, Choose,
Reset,Cancel.
 Phải có phương thức hiển thị form(Hàm khởi tạo).



Lớp ChangeTicketFrm :
 Phải có phương thức bắt sự kiện nút : SearchChangeTicket,
Submit, Cancel,UpdateTicket.
 Phải có phương thức hiển thị form(Hàm khởi tạo).



Lớp SearchChangeTicketFrm :
 Phải có phương thức bắt sự kiện nút : Search, Choose,
Reset,Cancel.
 Phải có phương thức hiển thị form(Hàm khởi tạo).




Lớp UpdateTicketFrm :
 Phải có phương thức bắt sự kiện nút : Search, Choose,
SearchFlight
 Phải có phương thức hiển thị form(Hàm khởi tạo).



Lớp BookingDAO :

Page 21


Xây dựng hệ thống quản lí bán vé máy bay
Có các phương thức tạo kết nối với CSDL, phương thức thêm
một booking vào CSDL, sửa, xóa, tìm kiếm thông tin một
booking trong CSDL.
Lớp Client ,Flight,Booking:
 Phải có phương thức đóng gói thông tin đối tượng (sử dụng
hàm khởi tạo hoặc các hàm set).




5.

Định nghĩa khuôn mẫu cho từng phương thức của từng lớp





Lớp BookingTicketFrm :
-Phương thức bắt sự kiện cho các nút : btnSearchFreeTicket_action(),
btnSearchClient_action(),btnSubmit_action(),btnCancel_action(),
btnReset_action().
-Hàm khởi tạo : BookingTicketFrm().
Lớp SearchFreeTicketFrm :
-Phương thức bắt sự kiện cho các nút : btnSearchFlight_action(),
btnReset_action().
-Hàm khởi tạo : SearchFreeTicketFrm().



Lớp AddClientFrm :
-Phương thức bắt sự kiện cho các nút : btnSearch_action(),
btnReset_action(),btnSubmit_action()
-Hàm khởi tạo : SearchFreeTicketFrm().



Lớp CancelTicketFrm :
-Phương thức bắt sự kiện cho các nút :
btnSearchDeleteTicket_action(),btnCancel_action(),btnSubmit_action
()
-Hàm khởi tạo : CancelTicketFrm().



Lớp SearchDeleteTicketFrm :
-Phương thức bắt sự kiện cho các nút : btnSearch_action(),

btnReset_action(),btnChoose_action(),btnCancel_action()
-Hàm khởi tạo : SearchDeleteTicketFrm().
Lớp ChangeTicketFrm :
-Phương thức bắt sự kiện cho các nút :
btnSearchChangeTicket_action(),
btnUpdateTicket_action(),btnSubmit_action(),btnCancel_action().
-Hàm khởi tạo : ChangeTicketFrm().



Page 22


Xây dựng hệ thống quản lí bán vé máy bay


Lớp SearchChangeTicketFrm :
-Phương thức bắt sự kiện cho các nút : btnSearch_action(),
btnReset_action(),btnChoose_action(),btnCancel_action()
-Hàm khởi tạo : SearchChangeTicketFrm().



Lớp UpdateTicketFrm :
-Phương thức bắt sự kiện cho các nút : btnSearchFlight_action(),
btnReset_action(), btnChoose_action().
-Hàm khởi tạo : UpdateTicketFrm().




Lớp DirrectSellerFrm :
-Phương thức bắt sự kiện các nút :
btnDsBooking_action(),btnDsCancel_action(),btnDsChange_action()
-Hàm khởi tạo : DirrectSellerFrm()



Lớp BookingDAO :
-Phương thức khởi tạo : BookingDAO().
-Phương thức xử lý CSDL : searchClient(name : Client[]),
searchFlight(Flight),
addBooking(Booking),addClient(Client)
Lớp Booking :
-Phương thức khởi tạo : Booking().
-Các phương thức get/set : getID(), setID()
Lớp Client :
-Phương thức khởi tạo : Client().
-Các phương thức get/set : getID(), setID(), getFullName(),
setFullName()…Các thuộc tính còn lại tương tự.







6.

Lớp Flight :
Phương thức khởi tạo : Flight().

-Các phương thức get/set : getID(), setID(), getDateLift(),
setDateLift()…Các thuộc tính còn lại tương tự.

Sơ đồ lớp chi tiết theo mô hình MVC thực thể thuần.

Page 23


Xây dựng hệ thống quản lí bán vé máy bay

7.

Sơ đồ tuần tự sau pha thiết kế.
A, Chức năng Booking at the Counter.

Page 24


Xây dựng hệ thống quản lí bán vé máy bay

Page 25


×