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

Bài tập lớn môn Thiết kế hướng đối tượng Hệ thống bán vé tàu trực tuyến

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.26 MB, 35 trang )

Hệ thống bán vé tàu trực tuyến
Bài tập lớn lần 1 + lần 2 : Thiết kế hướng đối tượng
Hệ thống bán vé tàu trực tuyến
Nhóm 3: Lớp KSTN – ĐTVT – K54
Vũ Công Lực
Nguyễn Trung Quân
Nguyễn Hoàng Ân
Nguyễn Đình Quý
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 1
Hệ thống bán vé tàu trực tuyến
Contents
1. Xây dựng tài liệu yêu cầu hệ thống
a. Chủ nhiệm dự án ( project sponsor ) : Nhóm 3
b. Nhu cầu kinh doanh ( business need ) :
• Xuất phát từ bên bán : muốn bán vé tàu tự động,không cần nhân viên
trực phòng vé,tránh được hiện tượng quá tải,update thông tin nhanh
chóng.
• Xuất phát từ khách hàng : Muốn mua vé ở mọi lúc,mọi nơi,không bị
chen lấn,xếp hàng,thanh toán đơn giản,nhanh gọn. Đảm bảo sự chính
xác của vé mình mua.
c. Yêu cầu kinh doanh ( business requirements )
• Hệ thống bán vé tàu online ra đời nhằm giải quyết các vấn đề trên.
Hệ thống sẽ giúp khách hàng đặt vé tàu qua mạng trực tuyến,thanh
toán qua tài khoản cá nhân.
• Để phục vụ mục đích đó thì hệ thống phải có các chức năng sau :
chức năng đặt vé,chức năng thanh toán,chức năng tra cứu về chuyến
tàu,giờ tàu chạy,chức năng quản lý thông tin khách hàng….
d. Các giá trị kinh doanh ( business values ):
• Giá trị hữu hình : Giảm chi phí đi lại cho khách hàng,không cần
nhân viên trực phòng vé
• Giá trị vô hình : giúp tiết kiệm thời gian,cải thiện được chất lượng


dịch vụ
2. Phân tích tính khả thi
a. Khả thi về kỹ thuật
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 2
Hệ thống bán vé tàu trực tuyến
• Đây là một ứng dụng rất thực tế và đã khá phổ biến hiện nay,do đó
nhóm có thể tiếp cận và tham khảo thông tin từ các trang web đã
được xây dựng.
• Các thành viên đã được trang bị các kiến thức về các môn : Ngôn
ngữ lập trình, kỹ thuật phần mềm ứng dụng, phân tích và thiết kế
hướng đối tượng… nên có đủ khả năng để xây dựng được hệ thống.
• Kích thước của dự án :
 + số lượng người tham gia : 4 người
 + thời gian : 1 kì học ( 15 tuần )
 + độ phức tạp của hệ thống : không quá phức tạp
b. Khả thi về kinh tế
• Chi phí phát triển hệ thống thấp,chỉ mất chi phí về host,doman và
chi phí bảo trì hệ thống
• Lợi nhuận thu được từ hệ thống là cao.
3. Xác định kích thước hệ thống theo phương pháp điểm chức năng
• Tính toán số điểm chức năng:
Liệt kê các thành phần cơ bản của chương trình:
a. Các đầu vào ngoại vi
• Thông tin người dùng
• Thông tin giờ tàu
• Thông tin sơ đồ đoàn tàu
• Thông tin đặt vé tàu
• Thông tin đại lý
• Thông tin khuyến mãi
b. Các đầu ra ngoại vi

• Profile người dùng
• Lịch sử đặt vé tàu
• Báo cáo số lượng khách hàng đặt vé
• Hướng dẫn người dùng
• Thông báo, tin tức về các chuyến tàu
c. Các truy vấn ngoại vi
 Tra cứu chuyến tàu
 Tra cứu giá vé
 Tra cứu sơ đồ đoàn tàu
 Tra cứu thông tin đại lý
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 3
Hệ thống bán vé tàu trực tuyến
 Tra cứu thông tin ga tàu
 Tra cứu thông tin khuyễn mại
d. Các File logic nội bộ
• File thông tin chuyến tàu
• File sơ đồ đoàn tàu
• File thông tin đại lý
• File thông tin ga tàu
• File lưu trữ đặt vé
• File thông tin người dùng
• File thống kê truy nhập
• File thông báo, tin tức, khuyến mãi
e. Các giao diện ngoại vi
• Giao tiếp khách hàng
• Giao tiếp đại lý
• Giao tiếp với các ga tàu
• Giao tiếp với hệ thống quản lý
Description
Complexity

Total
Number
Low Medium High Total
Các đầu vào 6 0x3 5x4 1x6 26
Các đầu ra 5 0x4 3x5 2x7 29
Truy vấn 6 0x3 6x4 0x6 24
Files 8 0x7 5x10 3x15 95
Giao diện
ngoại vi
4 0x5 3x7 1x10 31
Total unadjusted funtion points (TUFP) 235
• Tính độ phức tạp xử lý hiệu chỉnh:
Data communications (Truyền thông dữ liệu) 4
Heavy use configuration (Cấu hình sử dụng nặng) 0
Transaction rate (Tốc độ xử lý) 0
Complex processing (Xử lý phức tạp) 0
End-user efficiency (Hiệu quả người dùng cuối) 3
Installation easy (Cài đặt dễ dàng) 0
Multiple sites (Đa địa điểm) 3
Performance (Hiệu năng) 0
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 4
Hệ thống bán vé tàu trực tuyến
Distributed functions (Xử lý phân tán) 3
Online data entry (Vào dữ liệu online) 4
Online update (Cập nhật trực tuyến) 3
Reuseability (Khả năng dùng lại) 0
Operational easy (Hoạt động dễ dàng) 2
Extensibility (Khả năng mở rộng) 0
Total processing complexity (PC) 22
Adjusted Processing Complexity (ADC) = 0,65 + ( 0,01 x 22 ) = 0,87

Total Adjusted Function Points (TAFP) = 0,87 x 235 = 205
• Tính số dòng lệnh:
Lập trình html : Số dòng lệnh = 15 x 205 = 3075 (dòng)
• Ước lượng nhân lực:
Effort = 1.4 x 3,075 = 4,305 person-months.
• Ước lượng thời gian thực hiện dự án:
Schedule Time = 3.0 x 4,305
1/3
= 5 tháng.
4. Xây dựng kế hoạch phát triển hệ thống với biểu đồ Gant
Task Name Duration Start Finish
xây dựng module tra cứu/tìm
kiếm
33 days Sun 20/01/13 Tue 05/03/13
tìm hiểu và phân tích yêu cầu 6 days Sun 20/01/13 Fri 25/01/13
Tính toán yêu cầu 3 days Sat 26/01/13 Tue 29/01/13
Xác định danh sách các thuộc
tính
4 days Wed 30/01/13 Mon 04/02/13
Lập cơ sở dữ liệu 12 days Tue 05/02/13 Wed 20/02/13
Lập trình 9 days Thu 21/02/13 Tue 05/03/13
Xây dựng module đặt vé 26 days Wed 06/03/13 Wed 10/04/13
Tìm hiểu và phân tích yêu cầu 4 days Wed 06/03/13 Mon 11/03/13
Tính toán yêu cầu 4 days Tue 12/03/13 Fri 15/03/13
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 5
Hệ thống bán vé tàu trực tuyến
Xác định danh sách các thuộc
tính
4 days Sat 16/03/13 Wed 20/03/13
Lập cơ sở dữ liệu 7 days Thu 21/03/13 Fri 29/03/13

Lập trình 9 days Sat 30/03/13 Wed 10/04/13
Xây dựng module quản lý
thành viên
25 days Thu 11/04/13 Wed 15/05/13
Tìm hiểu và phân tích yêu cầu 3 days Thu 11/04/13 Mon 15/04/13
Tính toán yêu cầu 3 days Tue 16/04/13 Thu 18/04/13
Xác định danh sách các thuộc
tính
5 days Fri 19/04/13 Thu 25/04/13
Lập cơ sở dữ liệu 7 days Fri 26/04/13 Mon 06/05/13
Lập trình 7 days Tue 07/05/13 Wed 15/05/13
Xây dựng module trang
chủ,thiết kế giao diện
12 days Thu 16/05/13 Fri 31/05/13
Chạy thử và sửa lỗi 15 days Sat 01/06/13 Thu 20/06/13
5. Xây dựng tài liệu yêu cầu hệ thống
5.1. Phương pháp thu thập tài liệu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 6
Hệ thống bán vé tàu trực tuyến
5.2. Phương pháp quan sát từ các hệ thống hiện tại
Sử dụng phương pháp quan sát từ các hệ thống hiện tại như:
• Hệ thống bán vé tàu của công ty vận tải hành khách đường sắt Sài Gòn:

Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 7
Hệ thống bán vé tàu trực tuyến
• Hệ thống bán vé tàu Europe

• Hệ thống bán vé tàu qua SMS

Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 8

Hệ thống bán vé tàu trực tuyến
Nhóm đã xây dựng yêu cầu hệ thống mới có các chức năng sau:
 Chức năng 1: Tra cứu chuyến tàu
Chức năng này cho phép người dùng tra cứu các thông tin liên quan tới các
chuyến tàu bao gồm:
• Ga xuất phát
• Ga đến
• Thời gian tàu đi
• Thời gian tàu đến
• Thời gian di chuyển (ngồi trên tàu)
 Chức năng 2 : Tra cứu giá vé:
Chức năng này cho phép người dùng tra cứu các thông tin về giá vé, khách hàng
chỉ cần nhập các thông tin sau:
• Mã tàu
• Ga đi
• Ga đến
• Thời gian đi
• Loại chỗ
Phần mềm sẽ trả lại kết quả bảng giá vé tương ứng cho người dùng.
 Chức năng 3 : Tra cứu sơ đồ đoàn tàu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 9
Hệ thống bán vé tàu trực tuyến
Chức năng này cho phép người dùng tra cứu về hành trình và lí lịch của một đoàn
tàu. Người dùng nhập các thông tin về:
• Mã tàu
• Ngày đi
Phần mềm sẽ trả về kết quả là các tuyến tàu di chuyển, ga trên bản đồ.
 Chức năng 4 : Tra cứu đại lý
Chức năng này cho phép người dùng tra cứu các thông tin về đại lý bán vé, thanh
toán vé. Trong trường hợp người dùng không có tài khoản thanh toán trực tuyến

hoặc không muốn thanh toán trực tuyến thì có thể tra cứu các thông tin về đại lý
bán vé trong khu vực của mình để đến đặt mua vé hoặc thanh toán. Người dùng
nhập thông tin tra cứu về:
• Thành phố/tỉnh
Phần mềm sẽ trả về các đại lý trong khu vực đó.
 Chức năng 5 : Tra cứu ga tàu.
Chức năng này cho phép người dùng tra cứu các thông tin về ga tàu. Phần mềm
cung cấp 1 bảng danh sách thông tin các ga tàu bao gồm: tên ga, địa chỉ, số điện
thoại cho người dùng tra cứu và liên lạc.
 Chức năng 6 : Đặt mua vé
Chức năng này cho phép người dùng tự động đặt mua vé. Khách hàng đăng nhập
vào hệ thống và đặt mua vé sau khi đã tra cứu và chọn chuyến tàu phù hợp với
mình.
 Chức năng 7 : Thay đổi đặt mua vé
Chức năng này cho phép người dùng đăng nhập và thay đổi các trạng thái sau khi
đã đặt vé như : Hủy mua vé hoặc thay đổi chuyến tàu.
 Chức năng 8 : Thanh Toán trực tuyến:
Chức năng này cho phép người dùng thanh toán tiền vé trực tuyến qua thẻ ngân
hàng như ViettinBank, VietcomBank, Paypal, VISA
Khách hàng cần đăng nhập vào hệ thống và điền các thông tin sau để thanh toán:
o Họ tên
o Email
o Địa chỉ
o Post code
o Số điện thoại
 Chức năng 9: Tìm kiếm thông tin khuyễn mại
Chức năng này cho phép người dùng tìm kiếm các thông tin khuyễn mại như :
giảm giá, chương trình khuyễn mại đặc biệt.
 Chức năng 10: Đăng ký/ đăng nhập
Chức năng này cho phép người dùng đăng ký thành viên mới để đặt vé và thanh

toán hoặc đăng nhập hệ thống.
6. Xây dựng biểu đồ hoạt động
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 10
Hệ thống bán vé tàu trực tuyến
• Bước 1 : Xác định phạm vi và bối cảnh của hệ thống
- Hiện nay, với sự phát triển rộng rãi của internet, mọi người đều có xu hướng mong
muốn đặt mua vé tàu trực tuyến để tiết kiệm thời gian và không phải đi lại. Nhằm
tối đa hóa việc tự động mua vé tàu, phần mềm “bán vé tàu trực tuyến” giúp khách
hàng có thể tra cứu, tìm kiếm các thông tin cần thiết và tự động đặt mua vé.
- Phạm vi dự án: Phần mềm có chức năng từ tìm kiếm, tra cứu các thông tin tới đặt
mua vé và thanh toán để hoàn tất một quá trình đặt mua vé.
• Bước 2 : Xác định các hoạt động các luồng điều khiển và dòng dữ liệu :
- Phần mềm có 10 chức năng chính :
o Tra cứu chuyến tàu
o Tra cứu giá vé
o Tra cứu sơ đồ đoàn tàu
o Tra cứu đại lý
o Tra cứu ga tàu.
o Đặt mua vé
o Thay đổi đặt mua vé
o Thanh Toán trực tuyến
o Tìm kiếm thông tin khuyễn mại
o Đăng ký/ đăng nhập
- Phần mềm chỉ tương tác với người dùng nên đối tượng điều khiển luồng hoạt động
ở đây là người dùng.
- Các dòng dữ liệu chính bao gồm : Tra cứu chuyến tàu, đặt mua vé, thay đổi đặt
mua vé, tra cứu giá vé, tra cứu bản đồ tàu, tra cứu đại lý, tra cứu ga tàu, tìm kiếm
thông tin KM.
• Bước 3 : Xác định tất cả các quyết định trong tiến trình được mô hình hóa :
- Các chức năng : Đặt mua vé, thay đổi đặt mua vé, thanh toán trực tuyến yêu cầu

người dùng phải đăng nhập vào hệ thống. Các chức năng còn lại thì người dùng
không cần đăng nhập.
• Bước 4 : Xác định các hoạt động thực hiện song song với nhau
Các chức năng : tra cứu bao gồm :
o Tra cứu chuyến tàu
o Tra cứu giá vé
o Tra cứu sơ đồ đoàn tàu
o Tra cứu đại lý
o Tra cứu ga tàu.
o Tìm kiếm thông tin KM
sẽ thực hiện song song với nhau.Vì các hoạt động này không cần thực hiện tuần tự, tùy
thuộc vào mục đích của người dùng.
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 11
Hệ thống bán vé tàu trực tuyến
Chức năng : Đặt mua vé và thay đổi đặt mua vé.
• Bước 5 : Vẽ biểu đồ hoạt động :
7. Xây dựng biều đồ ca sử dụng
7.1. Liệt kê danh sách Case sử dụng
Dựa trên chức năng yêu cầu nhóm đưa ra các case sử dụng của hệ thống bao gồm:
 Tra cứu chuyến tàu
 Tra cứu giá vé
 Tra cứu sơ đồ đoàn tàu
 Tra cứu đại lý
 Tra cứu ga tàu
 Đặt mua vé
 Thay đổi đặt mua vé
 Thanh toán trực tuyến:
 Tìm kiếm thông tin khuyễn mại
 Đăng ký
 Đăng nhập

7.2. Lựa chọn 4 CSD quan trọng, xây dựng bản mô tả CSD.
 Case sử dụng : Tra cứu chuyến tàu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 12
Hệ thống bán vé tàu trực tuyến
Use case name : Tra cứu chuyến tàu ID: 1 Important level : High
Primary actor : Khách hàng Use case type : Chi tiết, cần thiết
Stakeholders and interests :
- Khách hàng: có thể tra cứu các thông tin về các chuyến tàu bao gồm: ga đến, ga
đi, thời gian đi, thời gian đến, thời gian di chuyển.
Brief Description : case sử dụng này giúp khách hàng tìm kiếm thông tin về chuyến tàu
phù hợp với mình nhất.
Relationships :
Association :
Include :
Extend :
Generalization :
Normal Flow of Events:
1. Khách hàng chọn chức năng tra cứu chuyến tàu
2. Hệ thống hiển thị bảng tra cứu chuyến tàu
3. Khách hàng nhập thông tin trên bảng tra cứu bao gồm : Ga đi, ga đến, ngày đi.
4. Sau khi nhập đủ thông tin thì click vào tra cứu.
5. Hệ thống tra cứu trả lại kết quả thông tin chuyến tàu bao gồm:
- Mã tàu
- Thời gian di chuyển
- Hành trình tàu : ga đi, ga trung gian, ga đến.
- Thời gian : thời gian đi, thời gian đến ga trung gian, thời gian đến bến cuối.
 Case sử dụng : Đặt mua vé
Use case name : Đặt mua vé ID: 2 Important level : High
Primary actor : Khách hàng Use case type : Chi tiết, cần thiết
Stakeholders and interests :

Khách hàng: có thể đặt mua vé khi đã tìm hiểu và chọn từ kết quả sau khi tra cứu.
Brief Description : case sử dụng này giúp khách hàng đặt mua vé phù hợp với mình trên
website
Relationships :
Association :
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 13
Hệ thống bán vé tàu trực tuyến
Include : Đăng nhập
Extend :
Generalization :
Normal Flow of Events:
1. Khách hàng chọn chức năng đặt mua vé.
2. Hệ thống hiển thị bảng tra cứu đặt mua vé.
3. Khách hàng nhập thông tin trên bảng tra cứu bao gồm: Ga đi, ga đến, ngày đi,
ngày về (vé khứ hồi), mã tàu (nếu biết).
4. Khách hàng sau khi nhập đủ thông tin thì click vào tra cứu.
5. Hệ thống sẽ tìm kiếm và trả lại kết quả thông tin các chuyến tàu bao gồm:
- Mã tàu, ga đi, ngày đi, giờ đi, ga đến, giờ đến.
- Loại chỗ : ghế cứng, ghế điều hóa.
- Số chỗ trống : theo mác tàu và loại chỗ
- Số chỗ đã đặt.
6. Khách hàng click vào nút “chi tiết” để xem chi tiết các chỗ còn trống của mã tàu
phù hợp với mình.
7. Hệ thống trả về bảng thông tin bao gồm các thông tin:
- Mã tàu, toa số, khoang số, chỗ số, loại chỗ, giá vé.
8. Khách hàng click vào chỗ cần đặt.
9. Khách hàng đặt chỗ.
 Case sử dụng : Thay đổi đặt mua vé
Use case name :Thay đổi đặt mua vé ID: 3 Important level : Normal
Primary actor : Khách hàng Use case type : Chi tiết

Stakeholders and interests :
Khách hàng: có thể thay đổi và hủy bỏ đặt mua vé đã đặt từ trước.
Brief Description: case sử dụng này giúp khách hàng hủy bỏ đặt mua vé đã đặt từ trước
và khi vé chưa thanh toán hoặc xuất vé.
Relationships :
Association :
Include : Đăng nhập
Extend :
Generalization :
Normal Flow of Events:
1. Khách hàng chọn chức năng thay đổi đặt mua vé.
2. Hệ thống hiển thị bảng tìm kiếm
3. Khách hàng nhập thông tin lên bảng tìm kiếm bao gồm : ngày đặt vé, đến ngày
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 14
Hệ thống bán vé tàu trực tuyến
4. Hệ thống tìm kiếm và trả về bảng thông tin phiếu đặt vé bao gồm: Mã vé, ngày đặt
vé, hình thức thanh toán, mã chỗ, số tiền.
5. Khách hàng click vào nút bỏ
 Case sử dụng: Tra cứu ga tàu
Use case name : Tra cứu ga tàu ID: 4 Important level : High
Primary actor : Khách hàng Use case type : Chi tiết, cần thiết
Stakeholders and interests :
- Khách hàng: có thể tra cứu các thông tin về ga tàu bao gồm: Mã ga
Tên ga
Địa chỉ ga
Dung lượng chứa
Số điện thoại ga.
Brief Description : case sử dụng này giúp khách hàng tìm kiếm thông tin về ga tàu phù
hợp với mình nhất.
Relationships :

Association :
Include :
Extend :
Generalization :
Normal Flow of Events:
1. Khách hàng chọn chức năng tra cứu ga tàu.
2. Hệ thống hiển thị bảng tra cứu ga tàu
3. Khách hàng nhập thông tin trên bảng tra cứu bao gồm : Địa chỉ
4. Sau khi nhập đủ thông tin thì click vào tra cứu.
5. Hệ thống tra cứu trả lại kết quả thông tin các ga tàu bao gồm:
- Tên ga.
- Địa chỉ ga.
- Số điện thoại ga.
7.3. Xây dựng bảng quan hệ và biểu đồ CSD
Bảng quan hệ:
User case name Primary actor Relation ship
Association Include Extend
Tra cứu chuyến tàu Khách hàng
Đặt mua vé Khách hàng
Thay đổi đặt mua vé Khách hàng
Tra cứu ga Khách hàng
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 15
Hệ thống bán vé tàu trực tuyến
 Biểu đồ case:

8. Xây dựng biểu đồ lớp cho 4 CSD đã lựa chọn
8.1. Với mỗi CSD liệt kê danh sách lớp.
 Ca sử dụng : Tra cứu chuyến tàu
Normal Flow of Events:
1. Khách hàng chọn chức năng tra cứu chuyến tàu

2. Hệ thống hiển thị bảng tra cứu chuyến tàu
3. Khách hàng nhập thông tin trên bảng tra cứu chuyến tàu bao gồm : Ga đi, ga đến,
ngày đi.
4. Sau khi nhập đủ thông tin thì click vào tra cứu.
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 16
Hệ thống bán vé tàu trực tuyến
5. Hệ thống tra cứu trả lại kết quả thông tin danh sách chuyến tàu bao gồm:
- Mã tàu
- Thời gian di chuyển
- Hành trình tàu: ga đi, ga trung gian, ga đến.
- Thời gian: thời gian đi, thời gian đến ga trung gian, thời gian đến bến cuối.
Từ bảng trên và dựa vào kinh nghiệm ta liệt kê được các lớp sau:
• Khách hàng
• Chuyến tàu
• Danh sách chuyến
• Tra cứu chuyến
• Đoàn tàu
• Ga tàu
 Ca sử dụng: Đặt mua vé
Normal Flow of Events:
1. Khách hàng chọn chức năng đặt mua vé.
2. Hệ thống hiển thị bảng tra cứu chuyến tàu.
3. Khách hàng nhập thông tin trên bảng tra cứu chuyến tàu bao gồm: Ga đi, ga đến,
ngày đi, ngày về (vé khứ hồi), mã tàu (nếu biết).
4. Khách hàng sau khi nhập đủ thông tin thì click vào tra cứu.
5. Hệ thống sẽ tìm kiếm và trả lại kết quả thông tin danh sách chuyến tàu bao gồm:
- Mã tàu, ga đi, ngày đi, giờ đi, ga đến, giờ đến.
- Loại chỗ ngồi: ghế cứng, ghế điều hóa.
- Số chỗ trống : theo mác tàu và loại chỗ
- Số chỗ đã đặt.

6. Khách hàng click vào nút “chi tiết” để xem chi tiết các chỗ còn trống của mã tàu
phù hợp với mình.
7. Hệ thống trả về bảng thông tin bao gồm các thông tin:
- Mã tàu, toa số, khoang số, chỗ số, loại chỗ, giá vé.
8. Khách hàng chọn chỗ cần đặt để thêm vào danh sách đặt chỗ.
9. Khách hàng đặt chỗ.
Từ bảng trên và dựa vào kinh nghiệm ta liệt kê được các lớp sau
• Khách hàng
• Vé tàu
• Chỗ ngồi
• Chuyến tàu
• Danh sách chuyến tàu
• Danh sách đặt chỗ
• Đơn đặt hàng
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 17
Hệ thống bán vé tàu trực tuyến
• Ga tàu
• Tra cứu chuyến
 Ca sử dụng : thay đổi đặt mua vé
Normal Flow of Events:
1. Khách hàng chọn chức năng thay đổi đặt mua vé.
2. Hệ thống hiển thị bảng tra cứu vé.
3. Khách hàng nhập thông tin lên bảng tra cứu vé bao gồm : ngày đặt vé, đến ngày
4. Hệ thống tìm kiếm và trả về bảng thông tin danh sách vé bao gồm: Mã vé, ngày
đặt vé, hình thức thanh toán, mã chỗ, số tiền.
5. Khách hàng click vào xóa vé.
Từ bảng trên và dựa vào kinh nghiệm ta liệt kê được các lớp sau:
• Khách hàng
• Vé tàu
• Tra cứu vé

• Danh sách vé
• Chỗ ngồi
 Ca sử dụng : Tra cứu ga
Normal Flow of Events:
1. Khách hàng chọn chức năng tra cứu ga tàu.
2. Hệ thống hiển thị bảng tra cứu ga tàu
3. Khách hàng nhập thông tin trên bảng tra cứu ga bao gồm : Địa chỉ
4. Sau khi nhập đủ thông tin thì click vào tra cứu.
5. Hệ thống tra cứu trả lại kết quả thông tin danh sách ga tàu bao gồm:
- Tên ga.
- Địa chỉ ga.
- Số điện thoại ga.
Từ bảng trên và dựa vào kinh nghiệm ta liệt kê được các lớp sau:
• Khách hàng
• Ga tàu
• Danh sách ga
• Tra cứu ga
8.2. Chọn 2 lớp cho 1 CSD, xây dựng thẻ CRC.
 Lớp khách hàng
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 18
Hệ thống bán vé tàu trực tuyến
Class Name : Khách hàng ID : 1 Type : cụ thể
Description: Là người sử dụng hệ thống để tìm kiếm, tra
cứu và đặt mua vé tàu trực tuyến.
Associated Use Case:
Responsibilities
- Thay đổi thông tin
Collaborators
- Đặt chỗ - Đơn đặt hàng
- Chọn chỗ - Danh sách đặt chỗ

- Tra cứu chuyến tàu - Tra cứu chuyến
- Tra cứu ga tàu - Tra cứu ga
- Tra cứu vé - Tra cứu vé
- Xóa vé - Danh sách vé
Attributes
- Họ tên KH (string)
- Ngày sinh
- Số CMT (int)
- Số điện thoại KH (int)
- Email (string)
- Địa chỉ KH (string)
- Số tài khoản (int)
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) :
- Other Associations :
 Lớp chuyến tàu
Class Name : chuyến tàu ID : 2 Type : cụ thể, chi tiết
Description: Biểu diễn thông tin về các chuyến tàu sẽ hoạt
động trong một thời gian nào đó.
Associated Use Case:
Responsibilities
- Cập nhật chuyến tàu
- Thay đổi thời gian
- Thay đổi lịch trình
Collaborators
Attributes
- Mã chuyến tàu
- Mã tàu
- Ga đi

Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 19
Hệ thống bán vé tàu trực tuyến
- Ga trung gian
- Ga đến
- Thời gian đi
- Thời gian đến ga trung gian
- Thời gian đến ga cuối
- Thời gian di chuyển
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : Ga tàu
- Other Associations :
 Danh sách chuyến:
Class Name : Danh sách
chuyến tàu
ID : 3 Type : cụ thể, chi tiết
Description: Biểu diễn thông tin về các chuyến tàu sẽ hoạt
động trong một thời gian nào đó.
Associated Use Case:
Responsibilities
- Tạo danh sách chuyến
Collaborators
- Tra cứu chuyến
Attributes
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : Chuyến tàu
- Other Associations :
 Lớp đoàn tàu
Class Name : đoàn tàu ID : 4 Type : cụ thể

Description: cho biết thông tin về 1 đoàn tàu Associated Use Case:
Responsibilities
- Cập nhật tàu
- Thay đổi thông tin tàu
- Tính số toa
- Tính số ghế
- Tính trọng tải
Collaborators
Attributes
- Mã tàu
- Ngày bắt đầu hoạt động
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 20
Hệ thống bán vé tàu trực tuyến
- Số toa
- Số ghế
- Trọng tải
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : Chỗ ngồi
- Other Associations : chuyến tàu
 Lớp ga tàu
Class Name : ga tàu ID : 5 Type : cụ thể
Description: cho biết thông tin, vị trí của 1 ga tàu. Associated Use Case:
Responsibilities
- Cập nhật ga tàu
- Thay đổi thông tin ga
- Tính dung lượng chứa
Collaborators
Attributes
- Mã ga

- Tên ga
- Địa chỉ ga
- Dung lượng chứa
- Số điện thoại ga.
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : Chuyến tàu
- Other Associations :
 Lớp chỗ ngồi
Class Name : chỗ ngồi ID : 6 Type : cụ thể
Description: cho biết thông tin chi tiết về vị trí và loại chỗ
ngồi.
Associated Use Case:
Responsibilities
- Cập nhật chỗ
- Thay đổi thông tin chỗ
- Thống kê tình trạng ghế.
Collaborators
Attributes
- Mã chỗ
- Mã tàu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 21
Hệ thống bán vé tàu trực tuyến
- Vị trí toa
- Loại ghế
- Tình trạng ghế
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : Đoàn tàu
- Other Associations : vé tàu

 Lớp vé tàu
Class Name : vé tàu ID : 7 Type : cụ thể
Description: cho biết thông tin về vé tàu Associated Use Case:
Responsibilities Collaborators
Attributes
- Mã vé
- Mã chuyến tàu
- Mã chỗ
- Loại vé
- Giá tiền
- Tình trạng vé
- Thời gian đặt vé
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) :
- Other Associations : chỗ ngồi, chuyến tàu.
 Lớp Danh sách vé
Class Name : Danh sách vé ID : 8 Type : cụ thể
Description: cho biết thông tin về danh sách các vé đã mua Associated Use Case:
Responsibilities
- Tìm vé
- Tạo danh sách vé
Collaborators
Attributes
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 22
Hệ thống bán vé tàu trực tuyến
Relationship:
- Generalization ( a- kind –of):
- Aggregation (has-parts) : vé tàu
- Other Associations :

8.3. Xây dựng biểu đồ lớp cho 4 CSD.
 Ca sử dụng : Tra cứu chuyến tàu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 23
Hệ thống bán vé tàu trực tuyến
 Ca sử dụng : Đặt mua vé
 Ca sử dụng thay đổi đặt mua vé
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 24
Hệ thống bán vé tàu trực tuyến
 Ca sử dụng : Tra cứu ga tàu
Nhóm 3 : Lớp KSTN – Điện tử viễn thông – K54Page 25

×