1. Trang chủ
  2. » Thể loại khác

ĐỀ TÀI: XÂY DỰNG HỆ THỐNG ĐẶT VÉ XE BẰNG GIAO THỨC RMI. TS. HUỲNH CÔNG PHÁP

39 5 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống Đặt Vé Xe Bằng Giao Thức RMI
Tác giả Nguyễn Minh Vỹ, Vũ Văn Tiến
Người hướng dẫn TS. Huỳnh Công Pháp
Trường học Trường Đại Học Công Nghệ Thông Tin Và Truyền Thông Việt - Hàn
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ Án
Năm xuất bản năm ...
Thành phố Đà Nẵng
Định dạng
Số trang 39
Dung lượng 1,59 MB

Cấu trúc

  • Chương 1 Giới thiệu (7)
    • 1.1 Giới thiệu đề tài (7)
    • 1.2 Phương pháp, kết quả (7)
    • 1.3 Ưu điểm, nhược điểm (8)
    • 1.4 Cấu trúc đồ án (8)
  • Chương 2 Nghiên cứu tổng quan (9)
    • 2.1 Tổng quan về lập trình mạng (9)
    • 2.2 Các mô hình mạng (11)
    • 2.3 Tổng quan TCP/IP (17)
    • 2.4 Tổng quan về RMI (22)
    • 2.5 Ngôn ngữ lâp trình java (23)
    • 2.6 Cơ sở dữ liệ My SQL (24)
    • 2.7 Các chức năng hệ thống (25)
  • Chương 3 Phân tích thiết kế hệ thống (26)
    • 3.1 Sơ đồ Use Case (26)
    • 3.2 Use case (27)
    • 3.3 Mô tả Use case (27)
    • 3.4 Biểu đồ hoạt động (29)
    • 3.5 Biểu đồ lớp (31)
  • Chương 4 Triển khai xây dựng (32)
    • 4.1 Thiết kế cơ sở dữ liệu (32)
    • 4.2 Thiết kế giao diện của hệ thống (33)
  • Chương 5 Kết luận và hướng phát triển (38)
    • 5.1 Kết luận (38)
    • 5.2 Hướng phát triển (38)

Nội dung

Giới thiệu

Giới thiệu đề tài

Lập trình đối tượng phân tán đang trở thành một chủ đề quan trọng trong công nghệ phân tán phần mềm hiện nay Java nổi bật với RMI (Remote Method Invocation), một kỹ thuật cho phép triển khai các đối tượng phân tán một cách hiệu quả và linh hoạt.

Trong lập trình Java, các chương trình thường được xây dựng dưới dạng thủ tục hàm, với việc các hàm gọi lẫn nhau và truyền tham số chủ yếu diễn ra trên máy cục bộ Kỹ thuật RMI (Remote Method Invocation) cho phép các đối tượng trên các máy khác nhau giao tiếp và gọi phương thức lẫn nhau, mở rộng khả năng tương tác trong môi trường phân tán.

Dựa trên những yếu tố đó, em đã mô phỏng được hệ thống “ Đặt vé XE “ bằng giao thức RMI.

Phương pháp, kết quả

1.2.1 Phương pháp Để thực hiện dự án em sử dụng các phương pháp sau :

• Phương pháp nghiên cứu hệ thống, phương pháp tư duy.

• Phương pháp phân tích, tổng hợp: mục đích để chứng minh từng luận điểm trong đề tài thêm phần thuyết phục.

• Phương pháp tin học hóa bằng công cụ lập trình để giải quyết vấn đề đã được phân tích và xây dựng giải pháp.Kết quả đạt được.

1.2.2 Kết quả đạt được khi hoàn thành :

• Làm ra ứng dụng giúp người dùng có thể đặt được vé xe thông qua mô hình lập trình đối tượng phân tán.

Ưu điểm, nhược điểm

1.3.1 Ưu điểm Ưu điểm của mô hình này là đơn giản, tích hợp được những ứng dụng nhỏ

Bên cạnh những ưu điểm, mô hình này cũng còn có những điểm hạn chế:

• Do tính toán nghiêng về phía Client nhiều nên đòi hỏi phải có cấu hình đủ mạnh.

Chương trình có chức năng nằm chủ yếu ở phía client, điều này gây khó khăn trong việc nâng cấp, vì cần phải cập nhật lại trên tất cả các client.

• Do mọi thao tác nằm trên client nên thao tác yêu cầu dữ liệu giữa client và server nhiều dẫn đến tốc độ chương trình chậm.

Cấu trúc đồ án

Các thành phần trong bài báo cáo:

• Phân tích thiết kế hệ thống.

• Kết luận và hướng phát triển.

Nghiên cứu tổng quan

Tổng quan về lập trình mạng

Ngày nay, khi nhắc đến phát triển ứng dụng phần mềm, phần lớn mọi người đều đề cập đến các chương trình có khả năng hoạt động trong môi trường mạng tích hợp, đặc biệt là mạng máy tính Các ứng dụng này bao gồm phần mềm kế toán doanh nghiệp, quản lý, trò chơi và điều khiển, tất cả đều là những chương trình ứng dụng mạng quan trọng.

Mạng máy tính được phát triển để nghiên cứu và phân tích quá trình giao tiếp giữa các hệ thống Nó cho phép các máy tính trao đổi thông tin và tài nguyên với nhau Do đó, việc kết nối mạng yêu cầu phải có một mạng riêng biệt để thực hiện chức năng này.

Khi phát triển ứng dụng phần mềm, chủ yếu là tạo ra các chương trình hoạt động hiệu quả trong môi trường mạng tích hợp, bao gồm cả mạng máy tính Những ứng dụng này có thể là phần mềm kế toán doanh nghiệp, quản lý, trò chơi, hoặc các hệ thống điều khiển khác.

Vấn đề lập trình mạng liên quan đến nhiều lĩnh vực kiến thức khác nhau.

Kiến thức về ngôn ngữ lập trình, phân tích thiết kế hệ thống, hệ thống mạng, mô hình xây dựng ứng dụng mạng và cơ sở dữ liệu là rất quan trọng Ngoài ra, hiểu biết về truyền thông và các lĩnh vực liên quan như mạng điện thoại di động, PSTN, hệ thống GPS, cũng như các mạng như BlueTooth, WUSB và mạng sensor, đều đóng vai trò quan trọng trong việc phát triển các chương trình ứng dụng mạng.

Hình 1 Mô hình lập trình mạng

Lập trình mạng có thể định nghĩa bởi công thức sau: LTM = KTM + MH

• KTM: Kiến thức mạng truyền thông.

• MH: Mô hình lập trình mạng.

• NN: Ngôn ngữ lập trình mạng.

Tất cả các ngôn ngữ lập trình đều có khả năng lập trình mạng, nhưng mỗi ngôn ngữ mang đến những ưu và nhược điểm riêng, cùng với mức độ hỗ trợ thư viện API khác nhau Việc lựa chọn ngôn ngữ lập trình phù hợp để phát triển ứng dụng mạng phụ thuộc vào loại ứng dụng, hệ điều hành mạng và thói quen lập trình của người lập trình Một số ngôn ngữ lập trình phổ biến hiện nay bao gồm:

Trong phát triển ứng dụng mạng hiện nay, hai ngôn ngữ lập trình phổ biến nhất là NET và Java Tuy nhiên, sự xuất hiện của Javascript đã tạo ra xu hướng lập trình Full-Stack, thay thế cho các công nghệ lập trình front-end và back-end truyền thống Người lập trình có thể sử dụng thành thạo Javascript để phát triển ứng dụng mạng hiệu quả hơn.

Các mô hình mạng

2.2.1 Mô hình tham chiếu OSI

Hình 2 Mô hình 7 tầng OSI a Tầng vật lý

Tầng vật lý, hay còn gọi là tầng thiết bị, là tầng đầu tiên trong bảy tầng của mô hình OSI Tầng này đảm nhận trách nhiệm đáp ứng các yêu cầu dịch vụ từ tầng liên kết dữ liệu.

Tầng này đề cập đến phần cứng của mạng truyền thông, bao gồm hệ thống dây nối và sự liên kết viễn thông điện từ Nó cũng đảm nhận việc thiết kế điện, kiểm soát xung đột và các chức năng ở mức hạ tầng thấp nhất.

Tầng vật lý là nền tảng chính của mạng truyền thông, chịu trách nhiệm cung cấp phương tiện truyền tín hiệu ở dạng bit Các yếu tố như hình dáng của các nút cắm điện và tần số phát sóng đều được xác định trong hạ tầng này.

Một ví dụ điển hình cho tầng này là hạ tầng của mạng lưới bưu phẩm, trong đó bao gồm việc xác định các yếu tố như giấy thư và mực.

Các chức năng và dịch vụ chính mà tầng vật lý giải quyết :

• Thiết lập và ngắt mạch một liên kết viễn thông trên một phương tiện truyền thông.

Tham gia vào một quy trình chia sẻ tài nguyên, nơi nhiều người sử dụng đồng thời, bao gồm việc giải quyết tranh chấp và kiểm soát luồng.

Biến đổi thể dạng của dữ liệu số trong thiết bị của người dùng được đồng bộ với tín hiệu truyền qua đường truyền thông, đóng vai trò quan trọng trong việc đảm bảo tính chính xác và hiệu quả của quá trình truyền tải thông tin Tầng liên kết dữ liệu là một phần thiết yếu trong hệ thống mạng, giúp quản lý và kiểm soát việc truyền dữ liệu giữa các thiết bị.

Tầng liên kết dữ liệu, là tầng thứ hai trong mô hình bảy tầng OSI, đóng vai trò quan trọng trong việc đáp ứng các yêu cầu của tầng mạng và tạo ra các yêu cầu phục vụ cho tầng vật lý.

Liên kết dữ liệu có nhiệm vụ gửi thông tin từ một vị trí đến nhiều nơi khác Tại tầng này, một nút mạng chỉ cần có khả năng kết nối với một số nút khác, không cần thiết phải gửi thông tin đến tất cả các nút Tương tự trong các mối quan hệ xã hội, con người chỉ cần quen biết ít nhất một người khác mà không nhất thiết phải biết tất cả mọi người, ví dụ như ông Tùng ở Waterloo, Canada.

Tầng liên kết dữ liệu cung cấp dịch vụ chuyển dữ liệu qua các liên kết vật lý, với khả năng chuyển dữ liệu có thể đáng tin cậy hoặc không Nhiều giao thức liên kết dữ liệu thiếu cơ chế xác nhận (acknowledgement) cho việc nhận frame, và một số thậm chí không có kiểm tra lỗi qua checksum Do đó, các giao thức ở tầng cao hơn cần đảm nhiệm các chức năng như điều khiển lưu lượng, kiểm lỗi, cũng như xác nhận và truyền lại dữ liệu.

Tầng mạng (Network Layer) là tầng thứ ba trong mô hình OSI gồm bảy tầng, có nhiệm vụ đáp ứng yêu cầu dịch vụ từ tầng giao vận và cung cấp yêu cầu dịch vụ cho tầng liên kết dữ liệu.

Tầng mạng chịu trách nhiệm đánh địa chỉ cho các thông điệp, chuyển đổi các địa chỉ lôgic và tên thành địa chỉ vật lý Nó cũng xác định tuyến truyền thông từ nguồn đến đích và quản lý các vấn đề giao thông, bao gồm chuyển mạch, định tuyến và kiểm soát tắc nghẽn của các gói dữ liệu.

• Một số những điểm mà tầng mạng cần quan tâm:

 Mạng có tính chất định hướng kết nối (connection-oriented) hay phi kết nối (connectionless)

 Địa chỉ toàn cầu (Global Addresses)

 Chuyển tiếp một thông điệp d Tầng giao vận

Tầng giao vận, là tầng thứ tư trong bảy tầng của mô hình OSI, có vai trò quan trọng trong việc đáp ứng các yêu cầu dịch vụ từ tầng phiên và cung cấp các yêu cầu dịch vụ cho tầng mạng.

Tầng giao vận trong mô hình TCP/IP cung cấp dịch vụ chuyển dữ liệu giữa các máy chủ, đảm bảo tính toàn vẹn của dữ liệu thông qua việc sửa lỗi và điều khiển lưu lượng Giao thức TCP, với chức năng định hướng kết nối, thường đảm nhiệm vai trò này, giúp dữ liệu được truyền tải một cách trọn vẹn và hiệu quả.

Tầng phiên đóng vai trò quan trọng trong việc quản lý hội thoại giữa các tiến trình ứng dụng của người dùng cuối, hỗ trợ cả lưỡng truyền và đơn truyền Nó thiết lập các quy trình như đánh dấu điểm hoàn thành, trì hoãn, kết thúc và khởi động lại, giúp tối ưu hóa hiệu suất giao tiếp trong các ứng dụng.

Tầng phiên thường không được sử dụng, nhưng có những trường hợp nó phát huy tác dụng Mục tiêu của tầng này là tích hợp thông tin từ các dòng khác nhau, có thể đến từ nhiều nguồn khác nhau, một cách chính xác Cụ thể, tầng phiên giải quyết vấn đề đồng bộ hóa, đảm bảo rằng mọi người không nhìn thấy các phiên bản dữ liệu không nhất quán hoặc các tình trạng tương tự.

Tổng quan TCP/IP

TCP/IP (Giao thức điều khiển truyền nhận/ Giao thức liên mạng) là một bộ giao thức quan trọng dùng để truyền tải và kết nối các thiết bị trong mạng Internet Được phát triển nhằm tăng cường độ tin cậy của mạng, TCP/IP còn cung cấp khả năng phục hồi tự động, giúp đảm bảo thông tin được truyền đi một cách hiệu quả và an toàn.

Hình 4 Mô hình TCP/IP

2.3.2 Cách thức hoạt động của mô hình TCP/IP

TCP/IP là sự kết hợp của hai giao thức, trong đó IP (Giao thức liên mạng) đảm nhiệm việc gửi các gói tin đến địa chỉ đích đã định Giao thức này thực hiện điều này bằng cách thêm thông tin dẫn đường vào các gói tin, giúp chúng đến đúng nơi đã được xác định từ trước.

Giao thức TCP (Transmission Control Protocol) đảm nhiệm vai trò kiểm tra và bảo đảm an toàn cho từng gói tin khi di chuyển qua các trạm Nếu phát hiện gói tin bị lỗi, TCP sẽ gửi tín hiệu yêu cầu hệ thống gửi lại gói tin khác.

Quá trình hoạt động ở chức năng của mỗi tầng trong mô hình TCP/IP :

Mô hình TCP/IP tiêu chuẩn gồm bốn lớp chồng lên nhau, bắt đầu từ Tầng vật lý (Physical) ở mức thấp nhất, tiếp theo là Tầng mạng (Network), sau đó là Tầng giao vận (Transport), và cuối cùng là Tầng ứng dụng (Application).

Hình 5 Mô hình hoạt động của TCP/IP

Tầng 4 - Tầng Ứng dụng (Application) là lớp giao tiếp cao nhất trong mô hình mạng, chịu trách nhiệm kết nối và truyền tải dữ liệu giữa các máy tính thông qua các dịch vụ mạng như duyệt web, chat và gửi email Tầng này sử dụng các giao thức như SMTP, SSH, FTP để đảm bảo việc trao đổi dữ liệu diễn ra suôn sẻ Khi dữ liệu được truyền đến tầng Ứng dụng, nó sẽ được định dạng theo kiểu Byte nối Byte, kèm theo thông tin định tuyến để xác định chính xác đường đi của gói tin.

Tầng 3 - Tầng Giao vận (Transport) có chức năng chính là xử lý giao tiếp giữa các máy chủ trong cùng một mạng hoặc khác mạng thông qua bộ định tuyến Tại tầng này, dữ liệu được phân đoạn thành các đoạn có kích thước nhỏ hơn 64KB, với mỗi đoạn có thể có kích thước không bằng nhau Cấu trúc của một Segment bao gồm Header chứa thông tin điều khiển và phần dữ liệu.

Tầng 2 - Tầng mạng (Internet) tương tự như tầng mạng trong mô hình OSI, nơi định nghĩa các giao thức chịu trách nhiệm truyền tải dữ liệu một cách logic trong mạng Tại đây, dữ liệu được đóng gói thành các gói (Packets) với kích thước phù hợp với mạng chuyển mạch sử dụng để truyền tải Các giao thức chính trong tầng này bao gồm IP, ICMP và AR, giúp đảm bảo việc truyền dữ liệu diễn ra hiệu quả và chính xác.

Tầng 1 - Tầng Vật lý trong mô hình OSI kết hợp giữa tầng Vật lý và tầng liên kết dữ liệu, chịu trách nhiệm truyền dữ liệu giữa hai thiết bị trong cùng một mạng Tại đây, các gói dữ liệu được đóng gói thành khung (Frame) và được định tuyến đến đích đã được chỉ định.

2.3.3 Kết nối Client – Server với TCP/IP

Khi hoạt động, server cần xác định địa chỉ IP và lắng nghe trên một port cụ thể Nó sẽ duy trì trạng thái này cho đến khi client gửi yêu cầu kết nối Sau khi server chấp nhận, một kết nối sẽ được thiết lập, cho phép giao tiếp giữa server và client.

Để triển khai giao thức TCP/IP trong C#, cần thực hiện các bước trên cả server và client, cho phép chạy chúng trên cùng một máy.

 Tạo một đối tượng System.Net.Sockets.TcpListener để bắt đầu “lắng nghe” trên một cổng cục bộ.

Đợi và chấp nhận kết nối từ client thông qua phương thức AccepSocket() Phương thức này sẽ trả về một đối tượng System.Net.Sockets.Socket, cho phép gửi và nhận dữ liệu một cách hiệu quả.

 Thực hiện giao tiếp với client.

Quy trình này thường được thực hiện trong một vòng lặp, cho phép chấp nhận nhiều kết nối đồng thời bằng cách sử dụng Thread, hoặc xử lý các kết nối theo thứ tự.

 Tạo một đối tượng System.Net.Sockets.TcpClient.

 Kết nối đến server với địa chỉ và port xác định với phương thức TcpClient.Connect().

 Lấy luồng (stream) giao tiếp bằng phương thức TcpClient.GetStream().

 Thực hiện giao tiếp với server.

• Quy trình này có thể được minh họa theo mô hình sau :

2.3.4 Sự khác nhau giữa mô hình TCP/IP a TCP/IP

• TCP là Transmission Control Protocol (Giao thức điều khiển truyền vận).

• Mô hình TCP/IP được phát triển dựa trên các điểm hướng tới mô hình internet.

• TCP / IP đáng tin cậy hơn OSI.

• TCP/IP không có ranh giới nghiêm ngặt.

• Trong tầng ứng dụng, TCP/IP sử dụng cả tầng phiên và tầng trình diễn.

• TCP/IP phát triển giao thức trước sau đó mới phát triển mô hình.

• TCP/IP cung cấp hỗ trợ truyền thông không kết nối trong tầng mạng.

• TCP/IP phụ thuộc vào giao thức. b OSI

• OSI là Open Systems Interconnection, kết nối hệ thống mở.

• OSI có ranh giới chặt chẽ.

• OSI tiếp cận theo chiều dọc.

• OSI sử dụng tầng phiên và tầng trình diễn khác nhau.

• OSI phát triển mô hình trước sau đó mới phát triển giao thức.

• Trong tầng mạng, OSI hỗ trợ kết nối không dây và kết nối định tuyến.

• OSI là giao thức độc lập.

Dưới đây là hình ảnh minh họa :

Hình 7 Sự khác nhau giữa mô hình TCP/IP với OSI

Tổng quan về RMI

RMI (Remote Method Invocation) là một kỹ thuật trong Java cho phép cài đặt các đối tượng phân tán, hỗ trợ việc gọi phương thức từ xa và trả về giá trị cho các ứng dụng tính toán phân tán Là một phần của bộ J2SDK, RMI yêu cầu ngôn ngữ Java được sử dụng ở cả hai phía gọi và phía được gọi Để giải quyết các vấn đề truyền thông giữa Client và Server, RMI sử dụng lớp trung gian, với lớp ở máy Client gọi là Stub và lớp ở máy Server gọi là Skeleton.

RMI (Remote Method Invocation) là một mô hình đối tượng phân tán trong Java, cho phép giao tiếp dễ dàng giữa các đối tượng phân tán trong môi trường Internet.

- RMI là API bậc cao được xây dựng dựa trên lập trình Socket.

- RMI không những cho phép chúng ta truyền dữ liệu giữa các đối tượng trên các hệ thống máy tính khác nhau, mà còn triệu gọi các phương

- Việc truyền dữ liệu giữa các máy khác nhau được xử lý một cách trong suốt bởi máy ảo Java (Java virtual machine).

RMI, giống như mô hình Client/Server, vẫn duy trì khái niệm về Client và Server, nhưng có cách tiếp cận linh hoạt và mềm dẻo hơn so với mô hình truyền thống.

- Một điều thuận lợi quan trong nhất của RMI là nó cung cấp cớ chế callbacks, nó cho phép Server triệu gọi các phương thức ở Client.

To create a remote interface, it is advisable to extend from java.rmi.Remote This interface should declare all the methods that the client can invoke, and each method within this interface must throw a RemoteException.

Remote implementation is executed from the Remote interface and extends UnicastRemoteObject, where the methods declared in the interface are implemented It serves as a true Remote Object, generating two intermediary classes: Stub and Skel.

• RMI registry: Bộ đăng kí này sẽ đăng kí một Remote object với Naming Registry Giúp các Remote object được chấp nhận khi gọi các method từ xa

• Các class thực thi trên server.

• Client class: Truy vấn trên tên Remote object trên RMI registry, thông qua stub để gọi các phương thức trên server.

Ngôn ngữ lâp trình java

Java là một ngôn ngữ lập trình hướng đối tượng (OOP) và dựa trên các lớp, nổi bật với việc biên dịch mã nguồn thành bytecode thay vì mã máy Điều này cho phép bytecode được thực thi trong môi trường runtime, mang lại tính linh hoạt và khả năng tương thích cao cho các ứng dụng Java.

Trước đây, Java chậm hơn các ngôn ngữ biên dịch như C và C++, nhưng nhờ công nghệ biên dịch tại chỗ (Just in Time Compilation), hiệu suất của Java đã được cải thiện, và trong một số trường hợp, Java có thể chạy nhanh hơn So với các ngôn ngữ thông dịch như Python, Perl, và PHP, Java nhanh hơn gấp nhiều lần Hiệu suất của Java cũng tương đương với C#, một ngôn ngữ có cú pháp và quy trình biên dịch tương tự.

Java có cú pháp tương tự như C và C++, nhưng đơn giản hơn trong lập trình hướng đối tượng và ít tính năng xử lý cấp thấp Điều này khiến việc viết chương trình bằng Java trở nên dễ dàng và tiết kiệm thời gian sửa lỗi Tuy nhiên, lập trình hướng đối tượng trong Java lại phức tạp hơn.

Cơ sở dữ liệ My SQL

MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới, được ưa chuộng bởi các nhà phát triển ứng dụng nhờ vào tốc độ cao, tính ổn định và dễ sử dụng Hệ thống này có khả năng hoạt động trên nhiều hệ điều hành khác nhau và cung cấp một loạt các hàm tiện ích mạnh mẽ Với tốc độ và tính bảo mật vượt trội, MySQL rất phù hợp cho các ứng dụng truy cập cơ sở dữ liệu trên internet Người dùng có thể tải MySQL miễn phí từ trang chủ, với nhiều phiên bản dành cho các hệ điều hành như Windows, Linux và MacOS.

MySQL là một hệ quản trị cơ sở dữ liệu quan hệ tiêu biểu, sử dụng ngôn ngữ truy vấn có cấu trúc (SQL) để quản lý và truy xuất dữ liệu hiệu quả.

MySQL là cơ sở dữ liệu phổ biến được sử dụng để hỗ trợ các ngôn ngữ lập trình như NodeJs, PHP và Perl, cung cấp một giải pháp lưu trữ hiệu quả cho thông tin trên các trang web được phát triển bằng những ngôn ngữ này.

Các chức năng hệ thống

2.7.1 Chức năng cho khách hàng

Các chức năng dành cho khách hàng

 Xem danh sách vé đã đặt.

 Tìm kiếm phim theo thể loại.

2.7.2 Chức năng cho người quản lý

Các chức năng dành cho người quản trị :

 Quản lý danh sách phim( Thêm, sửa, xóa …).

Phân tích thiết kế hệ thống

Sơ đồ Use Case

3.1.1 Sơ đồ Use case người sử dụng

Hình 9 Sơ đồ Use case cửa khách hàng

3.1.2 Sơ đồ Use case người quản lý

Hình 10 Sơ đồ Use cae người quản lý

Use case

 Xem thông tin cá nhân

Mô tả Use case

3.3.1 Mô tả Use case người sử dụng a Đăng nhập

- Mô tả: Hiện thị form đăng nhập thông tin tài khoản và mật khẩu.

- Tác nhân: Người sử dụng.

- Dữ liệu vào: Tài khoản và mật khẩu.

 Đăng nhập thành công nếu tài khoản và mật khẩu chính xác.

 Đăng nhập thất bại nếu tài khoản và mật khẩu sai. b Đăng ký

- Mô tả: Hiển thị form đăng ký thông tin.

- Tác nhân: Người sử dụng.

- Dữ liệu vào: Tên, tài khoản và mật khẩu.

 Đăng ký thất bại nếu tài khoản đã tồn tại.

 Đăng ký thành công nếu tài khoản hợp lệ. c Đăng xuất

- Mô tả: Thoát khỏi trạng thái đăng nhập.

- Tác nhân: Người sử dụng.

- Kết quả: Thoát khỏi trạng thái đăng nhập và hiển thị qua màn hình đăng nhập. d Xem danh sách vé

- Mô tả: Hiển thị danh sách vé đã đặt.

- Tác nhân: Người sử dụng.

- Dữ liệu vào: Thông tin khách hàng.

- Kết quả: Hiển thị danh sách vé đã đặt.

- Quá trình xử lý: Đăng nhập => Xem danh sách vé. e Đặt vé

- Mô tả: Khi khách hàng chọn phim và chọn qua màn hình đặt vé, sẽ hiển thị các ghế để khách hàng chọn.

- Tác nhân: Người sử dụng.

- Dữ liệu vào: Thông tin khách hàng, thông tin phim, số ghế, ngày đặt.

- Kết quả: Hiển thị màn hình đặt vé cho khách hàng đặt vé phim.

- Quá trình xử lý: Đăng nhập => Chọn phim => Đặt vé. f Xem thông tin cá nhân

- Mô tả: Hiển thị màn hình thông tin cá nhân của khách hàng.

- Tác nhân: Người sử dụng.

- Dữ liệu vào: Thông tin khách hàng.

- Kết quả: Hiển thị màn hình thông tin cá nhân của khách hàng

- Quá trình xử lý: Đăng nhâp => Xem thông tin cá nhân.

3.3.2 Mô tả Use case người quản lý a Quản lý vé

- Mô tả: Quản lý vé.

- Tác nhân: Người quản lý b Đăng nhập

- Mô tả: Hiển thị form đăng nhập thông tin tài khoản và mật khẩu.

- Tác nhân: Người quản lý.

- Kết quả: Hiển thị trang quản lý. c Đăng xuất

- Mô tả: Thoát khỏi trang quản trị.

- Tác nhân: Người quản lý.

- Kết quả: Thoát khỏi trang quản trị và trạng thái đăng nhập

Biểu đồ hoạt động

3.4.1 Biểu đồ hoạt dộng của khách hàng

Hình 11 Biểu đồ hoạt động của Use case đặt vé

3.4.2 Biểu đồ hoạt động của người quản lý

Hình 12 Biểu đồ hoạt động của Use case đăng nhập

Hình 14 Biểu đồ hoạt động của Use case Quản lý khách hàng

Triển khai xây dựng

Thiết kế cơ sở dữ liệu

Dựa trên cách hoạt động của hệ thống, cũng như yêu cầu về chức năng ta thấy rõ các thực thể ( đối tượng cần quan tâm ) là:

- Giá vé tàu (tbl_train)

4.1.2 Xác định các thuộc tính của các thực thể ( đối tượng )

- Thực thể “ giá vé tàu ”

4.1.3 Cấu trúc cơ sở dữ liệu

Hình 16 Cấu trúc cơ sở dữ liệu của thực thể “tuyến đường”

Hình 17 Cấu trúc cơ sở dữ liệu của thực thể “vé”

Hình 18 Cấu trúc cơ sở dữ liệu của thực thể “giá vé tàu”

Hình 19 Cấu trúc cơ sở dữ liệu của thực thể “khách hàng”

Thiết kế giao diện của hệ thống

4.2.1 Giao diện khởi động Server:

4.2.2 Giao diện đăng kí mua vé của khách hàng:

4.2.3 Giao diện đăng nhập mua vé của khách hàng:

4.2.4 Giao diện đặt vé của khách hàng:

4.2.5 Giao diện đặt ghế ngồi khi chọn được vé:

4.2.6 Giao diện thông tin của khách hàng:

Ngày đăng: 12/02/2022, 17:13

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w