Mục tiêu nghiên cứu: Mục tiêu chính của tiểu luận này là phát triển một phần mềm đặt lịch vé tàu, đáp ứng đầy đủ nhu cầu của hành khách và các yêu cầu quản lý của nhân viên và quản trị v
Trang 1
TRUONG DAI HQC TAI NGUYEN VA MOI TRUONG
THANH PHO HO CHI MINH KHOA: HE THONG THONG TIN VA VIEN THAM
“hy, PHO ae
BAO CAO MON HOC
CONG NGHE NET
XAY DUNG PHAN MEM DAT VE TAU
Trang 2Giảng viên hướng dẫn
Lớp
Khóa
TRUONG DAI HQC TAI NGUYEN VA MOI TRUONG
THANH PHO HO CHI MINH KHOA: HE THONG THONG TIN VA VIEN THAM
san `
Wi pads wb oa
BAO CAO MON HOC
CONG NGHE NET XAY DUNG PHAN MEM DAT VE TAU
ThS Tran Van Dinh
09 Céng Nghé Phan Mém
2020 — 2024 Nhóm thực hiện 03 Võ Văn Khương 0950080016
TP Hồ Chí Minh, 31 tháng 10 năm 2023
Trang 3LỜI CÁM ƠN
Chúng em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô của
trường Đại học Tài Nguyên và Môi Trường TP.HCM, đặc biệt là các thầy cô khoa Hệ Thống Thông Tin va Vién Tham cua trường đã tạo điều kiện cho chúng em thực hiện báo
cáo môn học Và chúng em cũng xin chân thành cám ơn thầy Trần Văn Định đã nhiệt tình hướng dẫn chúng em hoàn thành tốt báo cáo môn học
Trong quá trình làm bài báo cáo môn học, khó tránh khỏi sai sót, rất mong thầy bỏ qua Đồng thời do trình độ lý luận cũng như kinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏi những thiếu sót, chúng em rất mong nhận được ý kiên đóng góp của thầy để chúng em học thêm được nhiều kinh nghiệm và sẽ hoàn thành tốt hơn Chung em xin chan thành cảm ơn!
Trang 4LỜI CAM ĐOAN
x0?
Chúng em xin cam đoan đẻ tài “Xây Dựng Phần Mềm Đặt Vé Tàu” là bài viết của chúng em
Kết quả nghiên cứu trong đề tài là trung thực và hoàn toàn không có sự sao chép
Chung em xin hoàn toàn chịu trách nhiệm về tính trung thực của các nội dung trong đề tài cua minh
Sinh viên thực hiện
Đỗ Thị Ngọc Bích
Nguyễn Văn Dùng
Võ Văn Khương
Trang 5Nhận xét của giảng viên
¬ , ngày Tháng năm 2023
Giảng viên
ThS Trần Văn Định
Trang 6MỤC LUỤC 52-252 221221221121712212.2112221122122122112121221222 re 6 LỜI MỞ ĐẦU - 2 S222 2122212112 11211221121221121121011122112121111 22 2e 6 CHƯƠNG 1 CƠ SỞ LÝ THUYÊT 2-55 2S 2E22212212211 1121121222121 1122 22 x2 8 1.1 TỎNG QUAN VỀ NGÔN NGỮ LẬP TRÌNH C# nen, 8
1.3.LCơ sở đữ liệu quan hệ lÀ gÌ? ác Tnhh Hà HH Hy 12 1.3.2 Cơ sở đữ liệu quan hệ bao gồm những thành phân nào? 12
1.4 TONG QUAN VE HE QUAN TRI CO SO DU LIEU SQL SERVER 17
1.4.L Khả Năng Quản Lý Cơ Sở Dữ LIỆM: à cà cành HH khao 17 1.4.2 Các Phiên Bản Của SQL SGFWÔEE ST nh HH HH hào 17 1.4.3 SQL Server Mlanagememt Studio (SSMS): à cà che IS
1.5 TONG QUAN VE MÔI TRƯỜNG VISUAL STUDIO 18 1.6 TONG QUAN VE MÔ HÌNH MVC 52 22222221222 xe 19
1.7.2 Chức Năng Cụ Thể cho Quản Trị ViÊH - se ehnrrheereg 21 1.7.3 Chite Nang Cu Thé cho NAGN ViGI.cccccccccccccccescescecessesesesesesseeeteessessees 21
Trang 72.3 CHỨC NĂNG CHI TIẾT s23 2211 511515511151551111121151112511 2151 EE se 22
CHUONG 3 PHAN TÍCH VA THIET KẾ HỆ THÓNG -5ccccscsez 24 3.1 PHÂN TÍCH HỆ THÓNG 5 2 1E 211211 11211 111 px re ghe 24
3.1.1 Biểu Đô LJse CS à Tnhh HH HH HH HH gg tran 27
3.2.1 Thiết Kế Cơ Sở Dữ LIỆM 5 S5 E2 SE HE 22112182218 ererrei 67
5.2 KẾT LUẬN PHẢN MÈẼÊM ng yu 85
SN (TA 7 san ằa cteeeetcnieteeteneneneaes 85
3.2.2 Vai trò của NhẬNH VIÊH à Ặ LH n nh T TH kg kg khe ren cà 85
Trang 8DANH MỤC HÌNH ẢNH
Hình 1: Hình ảnh về Cử 2-2221 22122122212211211211121121112112211211211212121 x0 12
Hình 3: Hình ảnh về thành phần NET 2 + E12 1S SE SE E518 trưng 14 Hình 4: Hình ảnh về CSDL quan hệ 2-5 - SE E1 E12 2E 1E EEEErrr re 16 Hình 5: Môi quan hệ CSIDL - 522225222 E122E271221121272121271211211 21121 rre 17
Hình 6: Các mỗi quan hệ trong SỘL, 0 221122111 12112 151 1112 11H 18 Hình 7: Lược đồ thực thể ERD 2 2s S21 E121 55115155112155 115185 te rrye 19
Hinh 8: Hinh anh vé SQL Server 2-52 2s 222 22122112111211221121122121121211 2126 20 Hình 9: Hình ảnh về Visual Stuđio 5:©2s 2 212211221271221271221211121 E1 x6 22 Hình 10: Hình ánh về mô hình IMVC - 2: 2221221222122112212211221 222122122 e6 23
Hình II: se Case Chính 2 C221 022211112211 11211 1111111111201 11k n HE ng 511k ret 30 Hình I2: se Case "Quản LUý” c1 1112111112115 1151115111525 11111 1151k xe 31 Hình 13: Use Case “Nhan Vién? cccccc cece ccececccssssceescecesssseescnenesseseseseesesaeaes 31 Hình 14: Use Case “Dang Nhap”’ 0.0 ccc cece ec ceecceeeceseeenseeeeceseeeeceeeneias 32 Hinh 15: Use Case “Quản Lý Tàảu)” - c1 2 1221112112211 111 1112112111118 8k kg 33 Hình I6: Use Case “Quản Lý Lịch Trìnhỉ” c1 2211211221113 225 2115115 rsk2 35 Hinh 17: Use Case “Quản Lý Hành Khách - 22 2221211112312 1211k rsrks 38
Hình I9: se Case “Hủy Vé”” Q20 1212 11 1102110111011 1 n1 khe HH ke 42
Hình 20: Use Case “Thông Kê Thông Tin Tàu” 5 St x22 2 12221122 crg 44 Hình 21: Use Case “Thông Kê Thông Tin Chuyến” s-cscsccxcEeEcrxerxerrren 45 Hình 22: Use Case “Thông Kê Ngày Lịch Trình” -scscES SE tr rt 47 Hình 23: Biểu đồ hoạt động Thêm Thông Tïn Tàu - ¿5S SE SE sex 48 Hình 24: Biểu đồ hoạt động Sửa Thông Tin Tàu 2-5: SE SE Erkerrren 49
Hình 26: Biểu đồ hoạt động Thêm Thông Tïn Lịch Trình - 52s sz x2 51 Hình 27: Biểu đồ hoạt động Sửa Thông Tin Lịch Trình - s22 sz z2 52
Trang 9Biêu Đồ Trình Tự “Thêm lịch trình ” s + SE 3 12 2x se 62 Biêu Đồ Trình Tự “Sửa lịch trình ” 2 s2 E2 se 2E xe rey 63 Biêu Đồ Trình Tự “Xóa lịch trình” 22 s23 82122121151 reo 64 Biểu Đồ Trình Tự “Thêm hành khách” 5 s22 +2E2£2EeExerxerxez 65 Biêu Đồ Trình Tự “Sửa hành khách” 5c S2 2E E2 2E 66
Biểu Đồ Trình Tự “Đặt vé” 5c sc 222212 1E e 68 Biểu Đồ Trình Tự “Hủy Vé” 5c 5c 1 S121121111222 22 1t HH He re 69
Code Controller Đặt VÓ HS SnS ng g2 511k vn si, 78
Code Confroller Hủy Vẻ 2L 20 12211122222 2112 111511572 cty 78
Trang 10Hình 56: Code Controller Quản Lý Hành Khách 2 5-2 22222222 csxsczxes 79
Hình 57: Code Controller Quản Lý Lịch Trình 2 5 2222221222122 zx+sex+2 79
Hình 58: Code Controller Quản Lý Tàu - 5 2 2221222112 221212221111 ey 80 Hình 59: Code Controller Doanh Thu VẺ - 0 2 E20 21112112111 1111111111111 11xx£ 81 Hình 60: Giao diện màn hình Quản Lý Tàu 22 2 S22 22222222222 2Serrsrko 82
Hinh 61: Giao diện màn hinh Quan Ly Lich Trình 22 5c 222 *2zsc+cssz+ssxs 83
Hình 62: Cao diện màn hình Quản Lý Hành Khách 2-5 552 23252 ‡++c +2 83
Hinh 63: CIao diện màn hình Đặt Vẻ Q02 ky nh ky 84
Hinh 64: Giao diện màn hinh Huy V6.0 ccc ccc 0 2 2 212211122112 11155 21x Hye, 84
Hình 65: Giao diện màn hình Thống Kê Thông Tin Tàu 5- sec: 85 Hình 66: Giao diện màn hình Thống Kê Thông Tin Chuyến Tàu - -: 85 Hình 67: Màn hình giao diện Thống Kê số vé đã bán - 5c ScSE tre 86 Hình 68: Màn hình gaio diện thống kê doanh thu các thang 0.cccccesceeee eee 87 Hình 69: Màn hình giao diện Thống kê số lần khách đặt vé 5s: §7
Trang 11
DANH MUC BANG
Cac tac mhan cia hé thong cececcccescsccsseseesessessesessevseeseceessvsecaseseevsecees 29
Các chức năng của hệ thống 2-21 SE E1 EE121111 11211111 1E xe 31
Kiểu dit ligu thIDangNhap c.ccccccccscsscsscscsssessssesetsesscsvsseeeersvsevscevseeseees 73 Kiểu dữ liệu tblChuc Vu 2.- 2.522 2225112112211221221121211212122.112 xe 73
Kiểu dữ liệu tblQuanLyLich Trïnh - - + se SE 2E£EEEEEEEEEEEExrkerrred 74 Kiểu dữ liệu tblHanhKhach À 2-52 222 219E212212221221221121122112121 2E xe 74 Kiều đữ liệu tbÍDafVe 22s c2 HH 0222121222 rrrra 75
II
Trang 12ngày càng tăng cao của hành khách và nâng cao chất lượng dịch vụ Chính vì vậy, chúng
em đã quyết định tập trung nghiên cứu và phát triển đề tài "Xây dựng phần mềm đặt lịch
Mục tiêu nghiên cứu:
Mục tiêu chính của tiểu luận này là phát triển một phần mềm đặt lịch vé tàu, đáp ứng đầy đủ nhu cầu của hành khách và các yêu cầu quản lý của nhân viên và quản trị viên Chúng em hướng đến việc tạo ra một công cụ mạnh mẽ, linh hoạt và dễ sử dụng dé
cung cấp trải nghiệm đặt vé thuận tiện và quản ly hiệu quả
Đối tượng nghiên cứu:
Đối tượng nghiên cứu của chúng em bao gồm cả hành khách, cũng như nhân viên
và quản trị viên liên quan đến quá trình vận hành và quản lý hệ thông vận tải tàu Chúng
em mong muôn đạt được cái nhìn toàn diện về mợi người tham gia trong quá trình này để
có thé tôi ưu hóa cả trải nghiệm khách hàng và quản lý
Trang 13
Phạm vi nghiên cứu:
Phạm vi nghiên cứu của chúng tôi sẽ tập trung vào phát triển một hệ thông phần mềm đặt lịch vé tàu, bao gồm cả giao diện người dùng, quản lý lịch trình, thông tin hành khách, đặt vé, hủy vé và thống kê hiệu suất Chúng em sẽ đảm bảo rằng hệ thống có tính linh hoạt và mở rộng đề đáp ứng mọi yêu cầu của người dùng
Phương pháp nghiên cứu:
- Nghiên cứu lý luận: thông qua tìm hiểu các tài liệu liên quan như sách, báo, nhưng chủ yếu tìm kiểm trên Internet
- Nghiên cứu thực nghiệm: thông qua các quan sát thực tế, yêu cầu của cơ sở những
lý luận được nghiên cứu, phần mềm được chạy thử từ đó có những điều chỉnh phù hợp Chúng em hy vọng rằng thông qua đề tài này, chúng em sẽ đóng góp một phần nhỏ
vào sự phát triển và hiện đại hóa trong lĩnh vực vận tải tàu, đồng thời đáp ứng và vượt
qua mọi thách thức, kê cả sự ngần ngại từ phía khách hàng không sử dụng phần mềm
13
Trang 14CHUONG 1 CO SO LY THUYET
1.1 TONG QUAN VE NGON NGU LAP TRINH C#
C# (C Sharp) la mot dạng ngôn ngữ lập trình hiện đại thường được sử dụng trên
Windows NET amework hoặc một số nền tảng mã nguồn mở Với khả năng thực hiện
nhiều công việc trong mọi lĩnh vực khác nhau nên C# được xem là một ngôn ngữ lập
trình hướng đối tượng OOP khá linh hoạt và đáng tin cậy [1]
Trang 15® Phat trién trang web
¢ Phat trién ứng dụng Windows
® Phát triển Game
Một số chương trình và ứng dụng được viết bằng ngôn ngữ lập trình C# như Windows Installer XML, Microsoft Visual Studio, Paint NET, KeePass, FlashDevelop, Banshee, NMath, Pinta va OpenRA
1.2 TONG QUAN VE CONG NGHE NET
.NET hay có tên gọi khác là DotNet Đây là một nền tảng lập trình cho phép các Developer phát triển các trang web hay ứng dụng Nền tảng này được Microsoft phát triển và cũng chủ yếu chạy trên hệ điều hành Window [1]
.NET không được xem là một loại ngôn ngữ lập trình, mà nó là nền tảng cho phép những ngôn ngữ lập trình khác nhau như Java hoặc C# dùng nhằm thực hiện tạo thành
những ứng dụng hoặc trang web trên Internet
.NET có bộ cấu tạo chính là bộ code đã được các lập trình viên hàng đầu của
Microsoft viết Nền tảng này được dùng với mục đích đó là phát triển dịch vụ web, ứng dụng bởi các lập trình viên khác Một số ngôn ngữ lập trình được sử dụng và ứng dụng
trên NET gồm VB.Net, Cứ
15
Trang 16C++ || C# JScript
A ) A 4
Common Language Specification
Web Services ASPNET Web Forms = Windows eee
Data and XML Classes
Framework Class Library
Common Language Runtime
Trang 17e ASP.NET: là một nền tảng phát triển ứng dụng web được tích hợp
trong NET Framework Nó cung cấp mô hình lập trình mạnh mẽ và lĩnh hoạt
cho việc xây dựng các trang web và ứng dụng web động
¢ WinForms (Windows Forms): là một phần của NET Framework cho phép phát triển ứng dụng desktop trên hệ điều hành Windows Nó cung cấp các thành phần giao diện người dung (UD) như cửa s6, nut, textbox dé tao giao diện người dùng trực quan va dé str dung
® ADO.NET: ADO.NET (ActiveX Data ObJects for NET) là một tập hợp các lớp trong NET Framework đề làm việc với dữ liệu Nó cung cấp các lớp để
kết nối và tương tác với cơ sở dữ liệu, thực hiện các thao tác như truy vấn, cập nhật và xóa dữ liệu
e¢ Class Library: Class Library trong NET Framework la mét b6 thu vién mã nguồn được tô chức thành các lớp, giao diện và các thành phần khác, cung cấp các dịch vụ và chức năng cụ thể Các thư viện này giúp tái sử dụng mã nguồn và tạo ứng dụng hiệu quả
® - Class CLR (Common Language Runtime): CLR là một thành phân chính của NET Framework Nó là môi trường thực thi mã nguồn chung cho các ngôn ngữ lập trình khác nhau, giúp quản ly bộ nhớ, quản lý tài nguyên, và cung cấp môi trường chạy cho ứng dụng NET
Các thành phần này là những yếu tô quan trọng trong việc xây dựng ứng dụng đa dạng trên nền tảng NET Framework, từ ứng dụng web (ASP.NET), ứng
dụng desktop (WinForms), xử lý đữ liệu (ADO.NET), đến việc quản lý mã nguồn
và tài nguyên (Class Library và CLR)
17
Trang 181.3 TONG QUAN VE CO SO DU LIEU QUAN HE
1.3.1.Cơ sở dit liéu quan hé la gi?
Cơ sở dữ liệu quan hệ là một loại cơ sở đữ liệu lưu trữ và cung cấp quyền truy cập
vào các điểm dữ liệu có liên quan đến nhau Cơ sở dữ liệu quan hệ dựa trên mô hình dữ liệu quan hệ, một cách trực quan, đơn giản để biểu diễn dữ liệu trong bảng
Trong cơ sở đữ liệu quan hệ, mỗi hàng trong bảng là một bản ghi với một ID duy
nhất được gọi là khóa Các cột của bảng chứa các thuộc tính của dữ liệu và mỗi bản ghi
thường có một giá trị cho mỗi thuộc tính, giúp dễ dàng thiết lập mối quan hệ giữa các
điểm dữ liệu
1.3.2 Cơ sở dữ liệu quan hệ bao gồm những thành phần nào?
Các thành phan cơ bản của một cơ sở dữ liệu quan hệ bao gồm:
CustomerID HN CustomerLastName CustomerCompany CustomerAddress S38, se oSm
> Ha Nguyễn Thị Hoa Đông 14Phan Chu Trinh, Hai Chau Đà Nẵng
2 Anh Ngô Hoà Thành Đô 90 Quang Trưng, Hải Châu Đà Nẵng
3 Trưng Hồ Đức Thành Nhàn 21 Quang Trưng, Tam Kỳ Quảng Nam
4 Ngo Nguyễn Thị Như Sáng tạo 15 Nguyễn Huệ Thửa Thiên Huế
5 Linh Trần Ngọc VietTech 97Lê Độ, Thanh Khê Đà Nẵng
Hình 4: Hình ảnh về CSDL quan hệ Với:
Trang 19Field (Cột/Trường): là trường dữ liệu thể hiện các thuộc tính của bảng Chăng hạn như: tên, địa chỉ vv
Row (dòng): là dòng dữ liệu gồm các thông tin dữ liệu liên quan với nhau gọi
là bảng record ( bang ghi)
Cell (ô): là các ô giao giữa các dòng và cột là nơi để chứa các dữ liệu Primary Key (Khóa chính): là một hoặc nhiều trường được gộp lại để định nghĩa bảng ghi Không được trùng và cũng không được để trống Lấy ví dụ đơn giản đề bạn hình dung giá trị Í của trường customer ID thê hiện cho tất
cả dữ liệu của dòng đầu tiên Hay nói gọn là tất cả các giá trị của dòng đầu tiên là thuộc trường customer ID = I Khóa chính có thể có hoặc không trong bảng nhưng đề thuận tiện và dễ dàng quản lý thường người ta sẽ đỉnh nghĩa khóa chính cho bảng
19
Trang 201.3.2.2 Relationship: Moi quan hé
CustomerID CustomerFirstName CustomeriasiNdame CustomerCompany CustomerAddress CustomerProvince
>
2 Anh Ngô Hoài Thành Đô 90 Quang Trưng, Hải Châu: Đà Nẵng
3 Trung Hồ Đức Thành Nhàn 21 Quang Trưng, Tam Kỳ Quảng Nam
4 Ngọc Nguyễn Thị Như Sáng tạo 15 Nguyễn Huệ Thửa Thiên Huế
5 Lnh Trần Ngọc VietTech 97 Lê Độ, Thanh Khê Đà Nẵng
InvoceNo InvoiceDate VAT CustomerID
› EE 2020010: 0.05 1
2 2020-03-12 0.05 1
3 2020-02-04 0.05 1 + 2020-01-15 0.05 2
5 2020-03-10 0.05 2
6 2020-03-21 0.05 3
A
Khoa ngoai
Hinh 5: Moi quan hé CSDL
e Foreign Key (Khóa ngoại): sẽ là trường ở bảng 1nvoice này nhưng lại là khóa
chính ở bảng customer kia, tạo nên một mỗi quan hệ giữa hai bảng với nhau
* Relationship (Mối quan hệ): sự kết nối giữa hai bảng đề xác định mỗi liên quan giữa các trường dữ liệu Cụ thể ví dụ như sau: đề biết khách hàng mã số
1 đã mua những đơn hàng nào thì bạn cần xác định vào các mối quan hệ trên Biểu hiện ở 3 dang sau:
o_ Mối quan hệ I-I: Mỗi bảng ghi chỉ có một và một bảng tướng ứng mà thôi
o_ Mối quan hệ I-n: Mối quan hệ này khá phô biến trong cơ sở dữ liệu
Trong mỗi quan hệ này thì | bang ghi ở bảng này có thê có nhiều bảng
ghi tương ứng ở bảng kia
Trang 21o_ Mối quan hệ n-n: Trong mối quan hệ này thì 1 bang ghi ở bảng này có thê có nhiều bảng ghi tương ứng ở bảng kia và ngược lại
Đây là mô hình hóa đê hiệu hơn về các môi quan hệ
Hình 6: Các mỗi quan hệ trong SỌL 1.3.2.3 Entity Relationship Diagram: Lượt đồ thê hiên mỗi quan hệ
Lược đồ thực thê - mối quan hệ (ERD) là một công cụ mô hình hóa dữ liệu được sử dụng trong quá trình thiết kế cơ sở dữ liệu Nó thể hiện các thực thể (entiies) trong hệ thống, mối quan hệ giữa chúng, và thuộc tính của từng thực thể Đây là một phần quan trọng trong quá trình phân tích và thiết kế cơ sở dữ liệu
21
Trang 22e® Mối quan hệ (Relationship): Đại diện cho sự tương tác giữa các thực thé
Mỗi quan hệ có thể là một-đến-một, một-đến-nhiều, hoặc nhiều-đến-nhiều
® Khoá chính (Prmary Key): Là một thuộc tính hoặc tập hợp các thuộc tinh
duy nhất nhận diện mỗi bản ghi trong một thực thê
22
Trang 23® Khoá ngoại (Foreign Key): Là một thuộc tính trong một thực thể được sử dụng để tham chiếu đến khoá chính của thực thê khác, tạo mỗi quan hệ giữa
chúng
1.4 TONG QUAN VE HE QUAN TRI CO SO DU LIEU SQL SERVER
SQL Server là một hệ quản trị cơ sở dữ liệu (DBMS) được phát triển va bao tri bởi Microsoft [2]
(AZ Microsoft SQL Server Management Studio
File Edit View Debug Tools Window Help
Password, =) @ Security
Yi Remember password # Mt Logins
Connect || Cancel Helo Options >>
[ Connect `
Hình 8: Hình ảnh về SQL Server Dưới đây là một tổng quan về SQL Server:
1.4.1, Kha Nang Quan Lÿ Cơ Sở Dữ Liệu:
* Quản Lý Dữ Liệu Toàn Diện: SQL Server cung cấp các tính năng quản lý dữ liệu đầy đủ từ việc tạo cơ sở dữ liệu, xác định bảng, quản lý quyền truy cập,
đến sao lưu và khôi phục dữ liệu
se Dịch Vụ Tích Hợp: SQL Server tích hợp nhiều dịch vụ bố sung như Integration Services (SSIS) để xử lý dữ liệu, Analysis Services (SSAS) dé phân tích dữ liệu, và Reporting Services (SSRS) đề tạo báo cáo
1.4.2 Các Phiên Bản Của SỢL Server:
¢ SQL Server Express: Phién ban mién phi, giới hạn về khả năng xử lý và kích thước cơ sở dữ liệu, thích hợp cho các ứng dụng nhỏ và dự án cá nhân
23
Trang 24®- SQL Server Standard Edition: Dành cho tổ chức vừa và lớn, cung cấp nhiều tính năng và khả năng mở rộng
® SQL Server Enterprise Edition: Dành cho doanh nghiệp với yêu cầu cao về hiệu suất, khả năng mở rộng và tính năng cao cấp
¢ SQL Server Developer Edition: Twong ty nhu Enterprise Edition nhung chi
duoc su dung cho muc dich phat triển và kiểm thử
1.4.3, SOL Server Management Studio (SSMS):
Là một công cụ quản lý đồ họa giúp người quản trị và lập trình viên tương
tac voi SQL Server SSMS cung cap giao dién đồ họa đề thực hiện các tác vụ như
truy vân, quan ly cơ sở dữ liệu, và theo dõi hiệu suât
1.5 TONG QUAN VE MOI TRUONG VISUAL STUDIO
Microsoft Visual Studio la m6t méi truéng phat trién tích hợp (IDE) của Microsoft Được sử dụng để phát triển chương trình máy tính cho Microsoft Windows, các trang web, ứng dụng web và các dịch vụ web [3]
Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau như C++, C#, Visual Basic, F#, Python, Node.js, and HTML/JavaScript
Microsoft Visual Studio 2022 hiện có một số phiên bản như:
© Céng déng Visual Studio: Cong cy mién phí, đầy đủ tính năng và có thê mở rộng dành cho các nhà phát triển xây dựng các ứng dụng phi doanh nghiệp
¢ Visual Studio Professional: Cac công cụ và dịch vụ dành cho nhà phát triển
chuyên nghiệp dành cho nhà phát triển cá nhân hoặc nhóm nhỏ
¢ Visual Studio Enterprise: Giải pháp cấp doanh nghiệp với các khả năng nâng cao dành cho các nhóm làm việc trên các dự án có quy mô hoặc độ phức tạp bất kỳ, bao gồm thử nghiệm nâng cao và DevOps
Trang 25
Visual Studio Code: Chinh sửa mã được xác định lại và tối ưu hóa để xây dựng và
gỡ lỗi các ứng dụng web và đám mây hiện đại Visual Studio Code miễn phí và có sẵn trên nền tảng yêu thích của bạn - Linux, OS X và Windows
Visual Studio Community 2022 Visual Studio Professional 2022 Visual Studio Enterprise 2022
Free, fully-featured IDE ft udents, open- Professiona
source and individual dev
Hinh 9: Hinh anh vé Visual Studio
1.6 TONG QUAN VE MO HiINH MVC
M6 hinh MVC (MVC pattern) thuong được dùng đề phát triển giao diện người dùng Nó cung cấp các thành phần cơ bản đề thiết kế một chương trình cho máy tính hoặc điện thoại di động, cũng như là các ứng dụng web [4]
Mô hình MVC gồm 3 loại chính là thành phần bên trong không thể thiếu khi áp
dụng mô hình này:
¢ Model: La b6 phan co chic năng lưu trữ toàn bộ dữ liệu của ứng dụng và là cầu nối giữa 2 thành phần bên dưới là View và Controller Một model là dit liệu được sử dụng bởi chương trình Đây có thể là cơ sở dữ liệu, hoặc ñle XML bình thường hay một đối tượng đơn giản Chăng hạn như biểu tượng
hay là một nhân vật trong game
e© View: Day là phần giao dién (theme) danh cho người sử dụng View là phương tiện hiển thị các đối tượng trong một ứng dụng Chẳng hạn như hiển thị một cửa số, nút hay văn bản trong một cửa số khác Nó bao gồm bắt cứ thứ gì mà người dùng có thể nhìn thấy được
¢ Controller: Là bộ phận có nhiệm vụ xử lý các yêu cầu người dùng đưa đến thông qua View Một controller bao gồm cả Model lẫn View Nó nhận input
và thực hiện các update tương ứng
25
Trang 26Luông xử ly trong MVC:
- Khi một yêu cầu của từ máy khách (Client) gửi đến Server Thì bị Controller trong MVC chặn lại để xem đó là URL request hay sự kiện
- Sau đó, Controller xử lý input của user rồi giao tiếp với Model trong MVC
Model chuan bi data va gun lai cho Controller
- Cuối cùng, khi xtr ly xong yéu cau thì Controller gửi dữ liệu trở lại View và hiển thị cho người dùng trên trình duyệt
Datab — Client
sore a Controller C— Đa
Hình 10: Hình ảnh về mô hình MỨC 1.7 TONG QUAN VE NGHIEP VU CUA DE TAI
Trang 27
1.7.2 Chức Năng Cụ Thể cho Quản Trị Viên
Đăng Nhập và Đăng Xuất: Xác thực và bảo mật thông tin người dùng Quản Lý Tàu: Thêm, sửa, xoá thông tin về các chuyến tàu
Quản Lý Lịch Trình: Xác định và quản lý các lịch trình điều hành của tàu
Quản Lý Hành Khách: Thực hiện quản lý thông tin hành khách, bao gồm cả việc thêm mới và xoá thông tin
Đặt Vé: Thực hiện quy trình đặt vé cho hành khách
Hủy Vé: Xử lý các yêu cầu hủy vé từ hành khách
Thống Kê: Tổng hợp và hiển thị thông tin thống kê về các chuyến tàu, vé đã
đặt, và các hoạt động khác để hỗ trợ quyết định quản lý
1.7.3 Chức Năng Cụ Thể cho Nhân Viên
Đăng Nhập và Đăng Xuất: Bảo mật thông tin người dùng và tương tác với hệ thong
Quản Lý Hành Khách: Cập nhật thông tin về hành khách, bao gồm việc thêm
mdi va xoa
Đặt Vé: Thực hiện quy trình đặt vé cho hành khách
Hủy Vé: Xử lý các yêu cầu hủy vé từ hành khách
CHƯƠNG 2 KHẢO SÁT HIỆN TRẠNG
27
Trang 282.1 MỤC ĐÍCH
Mục tiêu chính của phần mềm là cung cấp một hệ thống đặt vé tàu hiệu quả, dễ sử dụng và có khả năng quản lý thông tin tàu, lịch trình, hành khách và giao dịch đặt vẻ
2.2 NGƯỜI SỬ DUNG
Quản trị viên:
® - Đăng nhập đề truy cập vào hệ thông
© Có quyên truy cập đầy đủ vào hệ thông
© Quan ly thông tin về các chuyến tàu, lịch trình, hành khách và thông kê
e Thực hiện các chức năng quản lý hệ thống như thêm/sửa/xóa tàu, lịch trình,
và hành khách
e Thực hiện các chức năng đặt vé và hủy vé
Nhân viên:
® - Đăng nhập đề truy cập hệ thống
® - Quản lý thông tin hành khách, đặt vẻ và hủy vé
e - Xem thông tin chỉ tiết về các chuyên đi và vé đã đặt
2.3 CHỨC NĂNG CHI TIẾT
® Đăng Nhập và Đăng Xuất:
6 Đảm bảo an toàn thông tim người dùng
©_ Xác thực người dùng là quản trị viên hoặc nhân viên
® Quản Lý Tàu:
o_ Thêm, sửa, xóa thông tim về các đợt tàu
©_ Liệt kê danh sách tàu hiện có
¢ Quan Ly Lich Trinh:
o Xem va cap nhat lich trình của mỗi chuyén tau
o_ Thêm mới các chuyến đi và điều chính lịch trình
Trang 29® Quản Lý Hành Khách:
o_ Thêm, sửa, xóa thông tin về hành khách
©_ Xem danh sách hành khách
® Dặt Vé và Hủy Vé:
o Ghi lai thong tin đặt vẻ
o Xac nhan và ghi lại thông tin khi hủy vé
o_ Xem thông tin chỉ tiết về các vé đã đặt và hủy
¢ Thống Kê:
o_ Xem các bảng thống kê về tàu, chuyến, thời gian lịch trình
o_ Lọc thống kê theo khoảng thời gian
2.4, HIEU SUAT VA BAO MAT
- Dam bao phan mém chay muot ma va nhanh chong
- Bảo mật thông tin cá nhân va giao dich của hành khách
- Đảm bảo tính nhất quán và đồng bộ dữ liệu
2.5 GIAO DIỆN NGƯỜI DÙNG
- Giao điện thân thiện, dé str dụng cho cả quản trị viên và nhân viên
- Tích hợp các tính năng tìm kiếm và lọc đề thuận tiện trong việc quản lý dữ liệu
Trang 30CHUONG 3 PHẦN TÍCH VÀ THIET KE HE THONG
3.1 PHAN TICH HE THONG
Tác nhân “Quản Lý” là tác nhân giữ vai trò
chính của hệ thông, là người điều hành, quản lý
và theo dõi mọi hoạt động của hệ thống Tác nhân “Quản Lý” có thể thực hiện được
tất cả các chức năng có trong hệ thống của quản trị như: đăng nhập, đăng xuất, quản lý tàu, quản
lý hành khách, quản lý lịch trình, đặt vẻ, hủy vé, thống kê
02
Nhân Viên Nhân viên truy cập vào phần mềm đặt vé,
sử dụng được các chức năng đặt vé, hủy vẻ,
quản lý hành khách
Nhân viên truy cập có thể thực hiện xem,
thêm, sửa, xóa hành khách Và thực hiện được chức năng đặt vé, hủy vé
Bang 1: Các tác nhân của hệ thông
Trang 3103 Quan Ly Hanh Khach
Thêm mới, sửa đôi hoặc xóa thông tim về hành khách
Hiển thị danh sách hành khách có san va chi tiết của từng hành khách
05 Dat Vé Cho phép đặt vé cho một hành khách trên
một chuyến đi cụ thể dựa trên tên hành khách và
31
Trang 32
06 Huy Vé
„ Hiển thị báo cáo và thông kê về các thông
07 Thông Kê Thông Tim Tàu tin liên quan đên các tàu gen are
, ; Tao bao cao va thong ké vé cac théng tin
08 Thong Ké Théng Tin Chuyén liên quan đến các chuyến đi
Hiên thị báo cáo và thông kê vẻ lịch trình
09 Thông Kê Ngày Lịch Trình hoạt động trong một ngày cụ thê
Bảng 2: Các chức năng của hệ thông
3.1.1 Biểu Dé Use Case
- Biéu Dé Use Case Chinh:
Trang 33
Hinh 11: Use Case Chinh
- Biểu Đồ Use Case “Quan Ly”:
33
Trang 34Thóng Kê TT Ngày Lịch Trình | Hủy Vé
Hinh 12: Use Case "Quan Ly”
- Biéu Do Use Case “Nhan Vién”:
Quan Ly Hanh Khach
Hủy Vé
Nhân Viên
Hình 13: Lise Case “Nhân Viên ”
- Biểu Đồ Use Case “Đăng Nhập”:
34
Trang 35Quản Lý Nhân Viên
Dang nhap
Hình 14: se Case “Đăng Nhập”
- Tác nhân: Quản lý, Nhân viên
- Mô tả khái quát:
s - Quản Lý truy cập vào trang quản tri dé quan lý hệ thống của mình
e - Nhân Viên truy cập vảo trang quản trị để quản lý hành khách, đặt vé, hủy vé
- Điều kiện đầu vào: Ca sử dụng bắt đầu khi người dùng muốn đăng nhập vào hệ thống
- Dòng sựu kiện chính:
e _ Hệ thống yêu cầu nhập tên đăng nhập và mật khâu, chọn chức vụ
® - Người dùng nhập tên đăng nhập và mật khẩu
® Chọn chức vụ Quản Lý hoặc Nhân Viên
e _ Hệ thống kiểm tra tên đăng nhập, mật khẩu và chức vụ vừa nhập, nếu đúng sẽ cho phép vào hệ thông
Trang 36- Biểu Đồ Use Case “Quản Lý Tàu”:
Xóa TT Tàu Xem TT Tàu
Hinh 15: Use Case “Quan Ly Tau”
- Tác nhân: Quản Lý
- Mô tả khái quát: Người quản lý cần nắm bắt nhanh về các thông tin, tinh trạng của
Tau dé cap nhat lén phan mém
- Điều kiện đầu vào: Ca sử dung bat đầu khi quản lý đăng nhập thành công vào hệ thống
- Dòng sự kiện chính:
® Ca str dung bắt đầu khi người quản lý vào hệ thống đăng nhập và nhập mật khau cua minh
Trang 37Nếu chọn “Xem” thì sự kiện con xem được thực hiện
Nếu chọn “Thêm” thì sự kiện con thêm được thực hiện
Nếu chọn “Sửa” thì sự kiện con chính sửa được thực hiện
Néu chọn “Xóa” thì sự kiện con xóa được thực hiện
- Sự kiện con:
- Xem tau:
Người quản lý chọn chức năng xem
Danh sách thông tin tàu được và hiển thị
- Thêm tàu mới:
Hệ thống yêu cầu người quản lý nhập thông tin
Sau khi hoàn thành, chọn chức năng thêm, hệ thống kiểm tra tính hợp lệ thông
tin
Thông tin được thêm vào hệ thong
Danh sách tàu được cập nhật lại và hiển thị
- Sua thong tin tau:
Hệ thống truy xuất và hiển thị chỉ tiết thông tin tàu đã được người quản trị
chọn từ danh sách
Người quản trị sửa thông tin đã chọn
® Sau khi sửa thông tin tàu xong chọn nút Sửa Hệ thống kiểm tra tính hợp lệ của thông tin
¢ Thong tin tàu đã được cập nhật lại và hiền thị
- Xóa thông tin tàu:
se Hệ thông truy xuất và hiển thị thông tin chỉ tiết tàu đã được người quản lý
chọn
37
Trang 38e - Chọn chức năng xóa, hệ thông nhắc người quản lý xác nhận xóa thông tin tàu
® Người quản lý chấp nhận xóa, thông tin tàu được xóa hoàn toản ra khỏi hệ thống
- Dòng sự kiện phụ:
e _ Tên đăng nhập hoặc mật khẩu, chức vụ không hợp lệ, hệ thông báo lỗi, người dùng có thé nhập lại hoặc kết thúc ca sử dụng
e _ Thông tin không hợp lệ, hoặc không thẻ thêm, sửa thông tin tàu, hệ thống báo
lỗi, người quản lý có thê nhập lại hoặc kết thúc ca sử dụng
¢ Thông tin không thê xóa, hệ thống báo lỗi, người quản lý có thể thao tác lại
Trang 39Hệ thống kiểm tra tên đăng nhập và mật khâu đúng hiển thị mục Quản Lý
Lịch Trình, nếu sai không thực hiện
Hệ thống yêu cầu người quản lý có thê chọn một số chức năng cần thực hiện: Xem, thêm mới, sửa, xóa
Nếu chọn “Xem” thì sự kiện con xem được thực hiện
Nếu chọn “Thêm” thì sự kiện con thêm được thực hiện
Nếu chọn “Sửa” thì sự kiện con chính sửa được thực hiện
Néu chọn “Xóa” thì sự kiện con xóa được thực hiện
- Sự kiện con:
- Xem lịch trình:
Người quản lý chọn chức năng xem
Danh sách thông tin lịch trình được và hiền thị
- Thêm Lịch trình mới:
Hệ thống yêu cầu người quản lý nhập thông tin
Sau khi hoàn thành, chọn chức năng thêm, hệ thống kiểm tra tính hợp lệ thông
tin
Thông tin được thêm vào hệ thong
Danh sách lịch trình được cập nhật lại và hiển thị
- Sửa thông tim lịch trình:
39
Trang 40e - Hệ thống truy xuất và hiển thị chỉ tiết thông tin lịch trình đã được người quản
trị chọn từ danh sách
® - Người quản trị sửa thông tin đã chọn
© - Sau khi sửa thông tin lịch trình xong chọn nút Sửa Hệ thống kiểm tra tính hợp
lệ cua thong tin
¢ Thong tin lich trinh da duoc cap nhat lai va hiển thị
- Xóa théng tin lich trình:
e - Hệ thống truy xuất và hiển thị thông tin chỉ tiết lịch trình đã được người quản