Trường Đại Học Công Nghiệp Hà Nội
Khoa Công Nghệ Thông Tin
--------------------
BÁO CÁO BÀI TẬP LỚN MÔN
LẬP TRÌNH PHẦN MỀM HƯỚNG CẤU PHẦN
Đề tài: Xây dựng Hệ thống bán vé máy bay trực tuyến
Sinh viên thực hiện:
Lê Duy Thanh
Nguyễn Duy Hoàng
Lớp:
KTPM-CLC-K7
Giáo viên hướng dẫn:
Th.S Nguyễn Thái Cường
Hà Nội, 29 Tháng 11, Năm 2015
1
MỤC LỤC
MỤC LỤC......................................................................................................................................................2
LỜI NÓI ĐẦU................................................................................................................................................4
Tổng quan về cấu phần phần mềm..............................................................................................................5
Cấu phần là gì?.....................................................................................................................................5
Cấu phần theo các file Javascript...................................................................................................52
Cấu phần theo các class .java.........................................................................................................52
Cấu phần các file JSP......................................................................................................................54
Cấu phần theo các template, layout và các thư viện, mã nguồn có sẵn.........................................54
Giao diện chương trình......................................................................................................................55
Phần User.......................................................................................................................................55
Phần Admin....................................................................................................................................60
KẾT LUẬN...................................................................................................................................................64
TÀI LIỆU THAM KHẢO.................................................................................................................................65
3
LỜI NÓI ĐẦU
Ngày nay công nghệ thông tin phát triển rất mạnh mẽ. Việc ứng dụng công nghệ
thông tin vào việc giao dịch qua mạng đang rất phổ biến. Khách hàng không cần
đến tận nơi mà vẫn có thể mua được sản phẩm mình mong muốn. Đó là lý do mà
Website thương mại điện tử ra đời nhằm đáp ứng nhu cầu giao dịch giữa khách
hàng và người bán hàng.
Hiện nay có rất nhiều ngôn ngữ để lập trình web như: HTML, Javascript,…rồi
các ngôn ngữ PHP, ASP,….. Qua quá trình tìm hiểu và học tập ở trường chúng em
đã biết và được học ngôn ngữ Java và chúng em đã ứng dụng để xây dựng trang
web “Xây dựng Hệ thống bán vé máy bay trực tuyến” theo hướng cấu phần.
Dù đã rất cố gắng nhưng do thời gian hạn chế cũng như kiến thức còn hạn hẹp
nên bài tập lớn của chúng em có thể còn có thiếu sót. Mong thầy giáo và các bạn
góp ý kiến để nhóm em chỉnh sửa và bổ sung.
Qua đây chúng em cũng xin chân thành cảm ơn thầy Nguyễn Thái Cường đã
tận tình giúp đỡ chúng em hoàn thành đề tài này.
Chân thành cảm ơn thầy!
Lập trình hướng cấu phần (Component-Oriented Programming) là phương
pháp lập trình cho phép các chương trình được xây dựng từ những thành
phần phần mềm được xây dựng sẵn.
5
Tổng quan về bài toán
Phát biểu bài toán
Hoạt động quản lý bán vé của các đại lý bán vé máy bay
Khi có 1 yêu cầu đề xuất mua vé máy bay từ khách hàng, bộ phận kinh doanh
sẽ giới thiệu về các loại vé, các chuyến bay đang có. Và sau đó yêu cầu khách hàng
điền thông tin vào phiếu thông tin gồm: Tên, tuổi, năm sinh, số chứng minh thư/ số
hộ chiếu, số điện thoại, loại vé, số lượng vé chuyến bay. Nhân viên phòng kinh
doanh có nhiệm vụ nhập lại các thông tin lên hệ thống thông qua phiếu thông tin
vừa điền của khách hàng của khách hàng. Phòng Kinh doanh có nhiệm vụ tiếp nhận
và xử lý, kiểm tra các thông tin về hồ sơ nếu không có gì sai sót. Khách hàng sẽ
nhận được vé từ nhân viên và thanh toán chi phí cho vé. Khách hàng có thể trả lại
vé hoặc thay đổi lại lịch trình bay đã đăng ký của mình trong vòng 24h. Nếu không
có gì thay đổi hồ sơ sẽ được xét duyệt và Vé sẽ được chuyển xuống cho khách
hàng. Sau 24h khách hàng không thể trả lại hoặc sửa đổi lịch trình bay.
Hàng tháng bộ phận kế toán sẽ thống kê lượng vé bán, lượng khách hàng trong
tháng lên cho bộ phận kế hoạch. Từ đó bộ phận kế hoạch sẽ phân tích chiến lược
mới, đưa ra các biện pháp để tăng doanh thu, phát triển của công ty. Bộ phận kế
toán cũng thống kê doanh thu, chi phí, lương nhân viên lên ban quản trị. Bộ phận
này cũng là nơi trả lương cho nhân viên.
6
Những khó khăn gặp phải khi thực hiện công việc trên bằng tay
Phạm vi nghiên cứu
-
Sản phẩm của đề tài được xây dựng trên ngôn ngữ Java, hệ quản trị
SQL Server và sử dụng HTML, CSS, Javascript, JSP, Servlet,…và
framework Hibernate.
Ý nghĩa thực tiễn
Hệ thống được xây dựng nhằm mục đích:
-
Giúp nhân viên đại lý quản lý các vé, đơn hàng, nhân viên,… và các yêu
cầu khác 1 cách dễ dàng hơn..
-
Giúp khách hàng có thể tìm kiếm vé mà không cần tận nơi đến các đại
lý, khách hàng có thể đặt mua trực tuyến và giao hàng tận nơi 1 cách
nhanh chóng.
Từ đó giảm được chi phí thuê nhân viên, chi phí đi lại…cũng như
tiết kiệm được thời gian của cả nhà quản lý và khách hàng.
8
Phân tích yêu cầu của hệ thống
Về chức năng
-
-
Giao diện được trình bày đơn giản, dễ dàng quản lý khiến người dùng cảm
thấy dễ sử dụng nhất ngay từ lần sử dụng đầu tiên.
-
Giao diện dễ thấy trực quan, để khách hàng đang biết mình đang làm việc gì,
ở đâu.
9
Về dữ liệu
-
Dữ liệu được xây dựng trên hệ quản trị SQL Server.
Hệ thống các trường trong CSDL được thiết kế khoa học, hợp lý, các thông
tin không bị trùng lặp hay có dữ liệu rác.
CSDL được backup để đề phòng trường hợp hệ thống bị lỗi, để dễ dàng
restore
Về bảo mật
Hệ thống phân quyền cho người dùng, từ đó có thể quản lý các tác vụ mà
mỗi tài khoản được sử dụng.
Hệ thống sử dụng các chuỗi bắt lỗi nhập vào, tránh các tình trạng sai sót dữ
liệu, hư hỏng hệ thống.
10
QuanTriMayBay
Flow of Events
4. Hệ thống hiển thị thông tin chi tiết về chuyến bay,
gồm: giờ đi, giờ đến, thông tin máy bay, giá vé.
5. Khách hàng chọn các dịch vụ, điền thông tin hành
lý, thông tin người bay và thông tin liên hệ sau đó
nhấn Tiếp tục
6. Hệ thống hiển thị hình thức thanh toán.
7. Khách hàng thanh toán
8. Hệ thống xác nhận và trả về mã đơn hàng
Alternative Flows
• Sai/ thiếu thông tin hành khách, người đặt vé:
Hệ thống hiển thị thông báo lỗi và đề nghị nhập
lại
Special Requirements
N/A
Post-Conditions
Khách hàng tìm kiếm được chuyến bay phù hợp. Hệ thống
đang hiển thị trang tìm kiếm
Hệ thống chuyển sang trang thanh toán
Extension Points
N/A
Extension Points
N/A
14
UC Đăng nhập
Brief Description
Người quản trị đăng nhập vào hệ thống để thực hiện các tác
vụ quản trị hệ thống
Basic Flow
1. Quản trị nhập tên tài khoản và mật khẩu
Flow of Events
2. Hệ thống kiểm tra và trả về kết quả
Alternative Flows
• Sai tên tài khoản/ mật khẩu: Hiển thị thông báo và
đề nghị nhập lại
Special Requirements
N/A
Pre-Conditions
Hệ thống đang hiển thị trang đăng nhập vào trang quản trị
(tham khảo ca sử dụng Đăng ký phần
Front-end)
2. Người dùng nhập thông tin, sau đó nhấn
Đăng ký
3. Hệ thống kiểm tra và thêm người dùng
vào hệ thống
4. Người dùng được cung cấp một Số thẻ
duy nhất
Cập nhật
1. Hệ thống yêu cầu Số thẻ của tài khoản
cần cập nhật
2. Người dùng nhập Số thẻ, sau đó nhấn
Tiếp tục
3. Hệ thống kiểm tra và trả về thông tin
của tài khoản
4. Người dùng nhập lại các thông tin thay
đổi, sau đó nhấn Cập nhật
5. Hệ thống kiểm tra và lưu lại thông tin
16
Xóa
1. Hệ thống yêu cầu Số thẻ của tài khoản
cần cập nhật
2. Người dùng nhập Số thẻ, sau đó nhấn
Tiếp tục
3. Người dùng nhấn nút Xóa
4. Hệ thống hiển thị một thông báo xác thực
việc xóa
5. Người dùng chọn Đồng ý
UC Quản trị vé
Brief Description
Ca sử dụng này cho phép người quản trị quản lý các vé trong hệ
thống, gồm: Thêm, Cập nhật, và Xóa thông tin vé
Basic Flow
1. Hệ thống yêu cầu lựa chọn tác vụ mà người quản trị sẽ
thực hiện (thêm mới, cập nhật, hay xóa thông tin vé)
2. Người dùng chọn một trong 03 lựa chọn trên:
Thêm mới
Flow of Events
1. Hệ thống hiển thị trang thêm mới và yêu cầu nhập
thông tin vé gồm: địa điểm, thời gian đi, đến; mã
chuyến bay; loại máy bay; lịch trình; số ghế; giá tiền
của từng hạng ghế…
2. Người dùng nhập thông tin, sau đó nhấn Thêm
mới
3. Hệ thống kiểm tra và thêm mới vé vào hệ thống
18
Cập nhật
1. Hệ thống yêu cầu một số thông
tin liên quan đến vé cần cập nhật
2. Người dùng nhập thông tin, sau
10. Hệ thống xóa vé khỏi hệ thống
Alternative Flows
• Không tìm thấy vé : Trong
trường hợp Cập nhật và Xóa,
nếu không tìm thấy vé nào, hệ
thống sẽ thông báo lỗi và đề nghị
nhập lại
•
Hủy việc xóa: Nếu trường hợp
Xóa, người dùng chọn Hủy bỏ khi thông báo
xác thực xuất hiện thì việc xóa bị dừng lại
Special Requirements
N/A
Pre-Conditions
Quản trị đã đăng nhập vào hệ thống. Hệ
thống đang hiển thị trang Quản trị vé
Post-Conditions
Hệ thống thêm mới, cập nhật, xóa vé tương
ứng với hành động của người dùng
Extension Points
N/A
Pre-Conditions
Quản trị đã đăng nhập vào hệ thống. Hệ thống đang hiển thị
trang Quản trị Đặt vé
Post-Conditions
Hệ thống tìm và hiển thị thông tin đặt vé của vé
được yêu cầu
Extension Points
N/A
21
UC Quản trị hãng máy bay
Brief Description
Flow of Events
Ca sử dụng này cho phép người quản trị quản lý
các hãng trong hệ thống, gồm: Thêm, Cập nhật, và
Xóa thông tin hãng
1. Hệ thống yêu cầu lựa chọn tác vụ mà
người quản trị sẽ thực hiện (thêm mới, cập
nhật, hay xóa thông tin)
2. Người dùng chọn một trong 03 lựa chọn
trên:
1. Hệ thống yêu cầu một số thông tin liên
quan đến hãng cần cập nhật
2. Người dùng nhập thông tin, sau đó nhấn
Tiếp tục
3. Hệ thống kiểm tra và trả về các hãng
tương ứng với thông tin nhập vào
7. Người dùng chọn hãng và nhấn nút Xóa
8. Hệ thống hiển thị một thông báo xác
thực việc xóa
9. Người dùng chọn Đồng ý
10. Hệ thống xóa vé khỏi hệ thống
Alternative Flows
• Không tìm thấy hãng: Trong trường
hợp Cập nhật và Xóa, nếu không tìm
thấy hãng nào, hệ thống sẽ thông báo
lỗi và đề nghị nhập lại
Special Requirements
• Hủy việc xóa: Nếu trường hợp Xóa,
người dùng chọn Hủy bỏ khi thông báo xác thực
xuất hiện thì việc xóa bị dừng lại
N/A
Pre-Conditions
Quản trị đã đăng nhập vào hệ thống. Hệ thống
đang hiển thị trang Quản trị hãng
Post-Conditions
3. Hệ thống kiểm tra và thêm mới máy bay vào hệ
thống
Cập nhật
1. Hệ thống yêu cầu một số thông tin liên quan đến
máy bay cần cập nhật
2. Người dùng nhập thông tin, sau đó nhấn Tiếp tục
3. Hệ thống kiểm tra và trả về các máy bay tương
ứng với thông tin nhập vào
4. Người dùng chọn một máy bay để cập nhật thông
tin
5. Hệ thống hiển thị thông tin chi tiết về máy bay
6. Người dùng nhập lại các thông tin thay đổi, sau đó
nhấn Cập nhật
7. Hệ thống kiểm tra và lưu lại thông tin
24
Xóa
1.
Hệ thống yêu cầu một số
thông tin liên quan đến máy
bay cần cập nhật
2. Người dùng nhập thông tin,
sau đó nhấn Tiếp tục
3. Hệ thống kiểm tra và trả về
các máy bay tương ứng với
thông tin nhập vào