XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO THEO MÔ HÌNH ĐA TẦNG

68 0 0
Tài liệu đã được kiểm tra trùng lặp
XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO THEO MÔ HÌNH ĐA TẦNG

Đ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

Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công Nghệ Thông Tin, it, phầm mềm, website, web, mobile app, trí tuệ nhân tạo, blockchain, AI, machine learning - Công nghệ thông tin UBND TỈNH QUẢNG NAM TRỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN ---------- ĐẶNG THỊ HOA XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO THEO MÔ HÌNH ĐA TẦNG KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC Quảng Nam, tháng 4 năm 2018 UBND TỈNH QUẢNG NAM TRỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN ---------- KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC Tên đề tài: XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO THEO MÔ HÌNH ĐA TẦNG Sinh viên thực hiện ĐẶNG THỊ HOA MSSV: 2114011016 CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN KHÓA 2014 – 2018 Cán bộ hướng dẫn ThS. DƠNG PHƠNG HÙNG MSCB: ……… Quảng Nam, tháng 4 năm 2018 LỜI CẢM ƠN Sau chặng đường 4 năm học tập và rèn luyện dưới mái trường Đại học Quảng Nam, được sự chỉ bảo tận tình của các thầy cô, và sự giúp đỡ từ bạn bè, cùng những nỗ lực của bản thân, em thấy mình đã dần nâng cao được những kiến thức, kĩ năng, những kinh nghiệm sống cho bản thân. Em sẽ tiếp tục cố gắng phấn đấu dùng những điều đã được dạy và tích lũy vận dụng vào thực tế để trở thành một người có ích cho xã hội. Em xin gửi lời cảm ơn đến ban lãnh đạo trường Đại Học Quảng Nam, các giảng viên khoa Công nghệ thông tin, các cô chú nhân viên đã tạo điều kiện thuận lợi và động viên em trong suốt thời gian ngồi trên ghế nhà trường để em học tập và làm việc thật tốt. Với lòng kính trọng và biết ơn sâu sắc, em xin được bày tỏ lời cảm ơn chân thành nhất đến thầy Dương Phương Hùng đã tận tình hướng dẫn và truyền đạt những kinh nghiệm quý báu cho em trong suốt quá trình thực hiện đề tài này. Cuối cùng, em xin gửi lời cảm ơn tới gia đình, bạn bè, những người đã quan tâm giúp đỡ và động viên, khuyến khích em trong thời gian qua để em hoàn thiện đề tài này. Tan Kỳ, tháng 4 năm 2018 Sinh viên thực hiện Đặng Thị Hoa MỤC LỤC HÌNH ẢNH Hình 1: Mô hình MVC ................................................................................................... 7 Hình 2: Môi trường hệ thống ....................................................................................... 10 Hình 3: Sơ đồ Use Case tổng quát ............................................................................... 17 Hình 4: Sơ đồ mối quan hệ Use Case quản li hóa đơn................................................. 17 Hình 5: Sơ đồ mối quan hệ Use Case đặt lịch.............................................................. 18 Hình 6: Sơ đồ mối quan hệ Use Case dịch vụ.............................................................. 18 Hình 7: Sơ đồ mối quan hệ Use Case nhân viên .......................................................... 19 Hình 8: Sơ đồ mối quan hệ Use Case khách hàng ....................................................... 19 Hình 9: Sơ đồ mối quan hệ Use Case Users ................................................................ 20 Hình 10: Sơ đồ mối quan hệ Use Case hóa đơn........................................................... 20 Hình 11: Sơ đồ mối quan hệ Use Case thống kê.......................................................... 20 Hình 12: Sơ đồ xác định Object và class ..................................................................... 35 Hình 13: Sơ đồ Class và mối quan hệ giữa các Class .................................................. 36 Hình 14: Lược đồ tuần tự Use-case Đăng nhập ........................................................... 36 Hình 15: Lược đồ tuần tự Use-case Thêm sân ............................................................. 37 Hình 16: Lược đồ tuần tự Use-case Đổi sân ................................................................ 37 Hình 17: Lược đồ tuần tự Use-case Thanh Toán ......................................................... 38 Hình 18: Lược đồ tuần tự Use-case Đặt lịch ................................................................ 38 Hình 19: Lược đồ tuần tự Use-case Thêm dịch vụ ...................................................... 39 Hình 20: Lược đồ tuần tự Use-case Thêm nhân viên .................................................. 39 Hình 21: Lược đồ tuần tự Use-case Thêm khách hàng ................................................ 40 Hình 22: Lược đồ tuần tự Use-case Thống kê ............................................................. 40 Hình 23: Lược đồ hoạt động Use-case Đăng nhập ...................................................... 41 Hình 24: Lược đồ hoạt động Use-case Thêm sân ........................................................ 41 Hình 25: Lược đồ hoạt động Use-case Thanh Toán .................................................... 42 Hình 26: Lược đồ hoạt động Use-case Đặt lịch ........................................................... 42 Hình 27: Hình Lược đồ hoạt động Use-case Thêm dịch vụ ........................................ 43 Hình 28: Lược đồ hoạt động Use-case Thêm gói dịch vụ ........................................... 43 Hình 29: Lược đồ hoạt động Use-case Thêm nhân viên .............................................. 44 Hình 30: Lược đồ hoạt động Use-case Thêm khách hàng ........................................... 44 Hình 31: Lược đồ hoạt động Use-case Thống kê ........................................................ 45 Hình 32: Biểu đồ trạng thái của lớp nhân viên ............................................................ 45 Hình 33: Biểu đồ trạng thái của lớp khách hàng .......................................................... 45 Hình 34: Biểu đồ trạng thái của lớp sân bóng .............................................................. 46 Hình 35: Biểu đồ trạng thái của lớp dịch vụ ................................................................ 46 Hình 36: Biểu đồ trạng thái của lớp hóa đơn ............................................................... 46 Hình 37: Thuộc tính của bảng Sân Bóng ..................................................................... 47 Hình 38: Thuộc tính của bảng Đặt Lịch ....................................................................... 47 Hình 39: Thuộc tính của bảng Khách Hàng ................................................................. 48 Hình 40: Thuộc tính của bảng Nhân Viên ................................................................... 48 Hình 41: Thuộc tính của bảng Lương .......................................................................... 48 Hình 42: Thuộc tính của bảng Dịch Vụ ....................................................................... 49 Hình 43: Thuộc tính của bảng Gói Dịch Vụ ................................................................ 49 Hình 44: Thuộc tính của bảng Gói Dịch Vụ - Dịch Vụ ............................................... 49 Hình 45: Thuộc tính của bảng Hóa Đơn ...................................................................... 49 Hình 46: Thuộc tính của bảng Hóa Đơn – Hoạt Động ................................................ 49 Hình 47: Cơ sở dữ liệu bảng dịch vụ ........................................................................... 50 Hình 48: Giao diện Form Đăng nhập ........................................................................... 51 Hình 49: Giao diện form quản lí .................................................................................. 52 Hình 50: Giao diện form đặt lịch ................................................................................. 53 Hình 51: Giao diện form dịch vụ ................................................................................. 53 Hình 52: Giao diện form nhân viên ............................................................................. 54 Hình 53: Giao diện form khách hàng ........................................................................... 55 Hình 54: Giao diện form users ..................................................................................... 55 Hình 55: Giao diện form thống kê ............................................................................... 56 Hình 56: Giao diện form hóa đơn ................................................................................ 56 DANH MỤC BẢNG BIỂU Bảng 1: Yêu cầu chức năng ......................................................................................... 10 Bảng 2: Các Actor và Use - Case trong hệ thống ........................................................ 16 Bảng 3: Các Use Case và vai trò Use Case trong hệ thống ........................................ 16 Bảng 4: Đặc tả Use Case đăng nhập ........................................................................... 21 Bảng 5: Use Case thêm sân .......................................................................................... 22 Bảng 6: Use Case đổi tên sân ...................................................................................... 23 Bảng 7: Use Case bắt đầu hoạt động cho sân ............................................................. 23 Bảng 8: Use Case đổi sân ............................................................................................ 24 Bảng 9: Use Case thanh toán ..................................................................................... 25 Bảng 10: Use Case thêm đặt lịch ............................................................................... 26 Bảng 11: Use Case thêm dịch vụ ............................................................................... 27 Bảng 12: Use Case thêm số lượng dịch vụ ................................................................. 29 Bảng 13: Use Case thêm gói dịch vụ .......................................................................... 29 Bảng 14: Use Case thêm nhân viên ............................................................................ 30 Bảng 15: Use Case thêm khách hàng .......................................................................... 31 Bảng 16: Use Case đăng kí người dùng ...................................................................... 33 Bảng 17: Use xem hóa đơn ......................................................................................... 34 Bảng 18: Use Case thống kê ....................................................................................... 35 MỤC LỤC LỜI CẢM ƠN ............................................................................................................1 Phần 1. MỞ ĐẦU ......................................................................................................1 1.1. Lí do chọn đề tài ................................................................................................1 1.2. Mục tiêu của đề tài .............................................................................................1 1.3. Đối tƣợng và phạm vi nghiên cứu .....................................................................1 1.4. Phƣơng pháp nghiên cứu ...................................................................................1 1.5. Lịch sử nghiên cứu .............................................................................................2 1.6. Đóng góp của đề tài ............................................................................................2 1.7. Cấu trúc đề tài ....................................................................................................2 Phần 2. NỘI DUNG NGHIÊN CỨU ......................................................................3 Chƣơng 1: CƠ SỞ LÍ THUYẾT ..............................................................................3 1.1. Tổng quan về ngôn ngữ lập trình java .............................................................3 1.1.1. Ngôn ngữ Java ............................................................................................3 1.1.1.1. Sơ lược về java ........................................................................................3 1.1.1.2. Khả năng của java ...................................................................................3 1.1.2. Java Swing trên công cụ hỗ trợ NetBeans .....................................................3 1.1.2.1. Java Swing ...............................................................................................3 1.1.2.2. Java Swing chạy trên NetBeans ..............................................................3 1.1.3. Sơ lược hệ quản trị cơ sớ dữ liệu SQL Server ...............................................4 1.1.3.1. Hệ thống ngôn ngữ SQL .........................................................................4 1.1.3.2. Hệ thống quản lí cơ sở dữ liệu SQL Server ............................................4 1.2. Mô hình 3 lớp (mvc) đơn giản ...........................................................................6 1.2.1. Mô hình MVC ................................................................................................6 1.2.2. Định nghĩa các thành phần trong mô hình MVC...........................................7 1.3. Lợi thế của mô hình 3 lớp ..................................................................................8 1.3.1. Ưu điểm .........................................................................................................8 1.3.2. Hạn chế ..........................................................................................................8 Chƣơng 2: KHẢO SÁT HIỆN TRẠNG VÀ MÔ TẢ TỔNG THỂ HỆ THỐNG9 2.1. Khảo sát hiện trạng thực tế ...............................................................................9 2.1.1. Bài toán đặt ra ................................................................................................9 2.1.2. Ý nghĩa của ứng dụng ..................................................................................10 2.2. Môi trƣờng hệ thống ........................................................................................10 2.3. Yêu cầu chức năng ...........................................................................................10 2.4. Đặc tính ngƣời dùng.........................................................................................13 2.4.1. Quản lí hoạt động của sân bóng ...................................................................13 2.4.2. Quản lí tình trạng đặt lịch ............................................................................14 2.4.3. Quản lí dịch vụ.............................................................................................14 2.4.4. Quản lí nhân viên .........................................................................................14 2.4.5. Quản lí khách hàng ......................................................................................15 2.4.6. Quản lí Users: ..............................................................................................15 2.4.7. Quản lí hóa đơn ............................................................................................15 2.4.8. Quản lí thống kê...........................................................................................15 Chƣơng 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG .......................................16 3.1. Các actor và use-case trong hệ thống .............................................................16 3.1.1. Các Actor và vai trò Actor trong hệ thống ..................................................16 3.1.2. Các Use Case và vai trò Use Case trong hệ thống.......................................16 3.2. Sơ đồ use case ...................................................................................................17 3.2.1. Sơ đồ Use Case tổng quát (sơ đồ UC giữa Actor và UC) ...........................17 3.2.2. Mối quan hệ giữa UC và UC .......................................................................17 3.2.2.1. Phân rã 1 sơ đồ UCQuanLiHoatDongSan ...........................................17 3.2.2.2. Phân rã 2 sơ đồ UCDatLich ................................................................18 3.2.2.3. Phân rã 3 sơ đồ UCDichVu .................................................................18 3.2.2.4. Phân rã 4 sơ đồ UCNhanVien .............................................................19 3.2.2.5. Phân rã 5 sơ đồ UCKhachHang ..........................................................19 3.2.2.6. Phân rã sơ đồ UCUsers........................................................................20 3.2.2.7. Phân rã sơ đồ UCHoaDon ...................................................................20 3.2.2.8. Phân rã sơ đồ UCThongKe .................................................................20 3.2.3. Đặc tả Use Case ...........................................................................................21 3.2.3.1. Đặt tả UCQuản lí đăng nhập ...............................................................21 3.2.3.2. Chức năng quản lí hoạt động của sân ....................................................22 3.2.3.3. Chức năng quản lí đặt lịch (đặt lịch đá banh) .......................................26 3.2.3.4. Chức năng quản lí dịch vụ .....................................................................27 3.2.3.5. Chức năng quản lí khách hàng ..............................................................31 3.2.3.7. Chức năng quản lí User .........................................................................32 3.2.3.8. Chức năng quản lí hóa đơn ....................................................................34 3.2.3.9. Chức năng quản lí thống kê ...................................................................34 3.3. Xác định object, class, mối quan hệ giữa các class; vẽ sơ đồ class ..............35 3.3.1. Xác định Object và class..............................................................................35 3.3.2. Sơ đồ Class và mối quan hệ giữa các Class .................................................36 3.4. Biểu đồ tuần tự .................................................................................................36 3.4.1. Lược đồ tuần tự Use-case Đăng nhập ..........................................................36 3.4.2. Lược đồ tuần tự Use-case Thêm sân............................................................37 3.4.3. Lược đồ tuần tự Use-case Đổi sân ...............................................................37 3.4.4. Lược đồ tuần tự Use-case Thanh Toán ........................................................38 3.4.5. Lược đồ tuần tự Use-case Đặt lịch ..............................................................38 3.4.6. Lược đồ tuần tự Use-case Thêm dịch vụ .....................................................39 3.4.7. Lược đồ tuần tự Use-case Thêm nhân viên .................................................39 3.4.8. Lược đồ tuần tự Use-case Thêm khách hàng ..............................................40 3.4.9. Lược đồ tuần tự Use-case Thống kê ............................................................40 3.5. Biểu đồ hoạt động .............................................................................................41 3.5.1. Lược đồ hoạt động Use-case Đăng nhập .....................................................41 3.5.2. Lược đồ hoạt động Use-case Thêm sân .......................................................41 3.5.3. Lược đồ hoạt động Use-case Thanh Toán ...................................................42 3.5.4. Lược đồ hoạt động Use-case Đặt lịch ..........................................................42 3.5.5. Lược đồ hoạt động Use-case Thêm dịch vụ ................................................43 3.5.6. Lược đồ hoạt động Use-case Thêm gói dịch vụ ..........................................43 3.5.7. Lược đồ hoạt động Use-case Thêm nhân viên ............................................44 3.5.8. Lược đồ hoạt động Use-case Thêm khách hàng ..........................................44 3.5.9. Lược đồ hoạt động Use-case Thống kê .......................................................45 3.6. Biểu đồ trạng thái .............................................................................................45 3.6.1. Biểu đồ trạng thái của lớp Nhân viên ..........................................................45 3.6.2. Biểu đồ trạng thái của lớp Khách hàng .......................................................45 3.6.3. Biểu đồ trạng thái của lớp Sân bóng ............................................................46 3.6.4. Biểu đồ trạng thái của lớp Dịch vụ ..............................................................46 3.6.5. Biểu đồ trạng thái của lớp Hóa đơn .............................................................46 3.7. Đặc tả dữ liệu ....................................................................................................47 3.7.1. Sơ lược về cơ sở dữ liệu ..............................................................................47 3.7.2. Bảng thuộc tính ............................................................................................47 3.7.2.1. Thuộc tính của bảng Sân Bóng .............................................................47 3.7.2.2. Thuộc tính của bảng Đặt Lịch ...............................................................47 3.7.2.3. Thuộc tính của bảng Khách Hàng .........................................................48 3.7.2.4. Thuộc tính của bảng Nhân Viên ............................................................48 3.7.2.5. Thuộc tính của bảng Lương ..................................................................48 3.7.2.6. Thuộc tính của bảng Dịch Vụ ...............................................................49 3.7.2.7. Thuộc tính của bảng Gói Dịch Vụ ........................................................49 3.7.2.8. Thuộc tính của bảng Gói Dịch Vụ - Dịch Vụ .......................................49 3.7.2.9. Thuộc tính của bảng Hóa Đơn ..............................................................49 3.7.2.10. Thuộc tính của bảng Hóa Đơn – Hoạt Động .......................................49 3.7.3. Thể hiện cơ sở dữ liệu..................................................................................50 Chƣơng 4: CÀI ĐẶT HỆ THỐNG ........................................................................51 4.1. Công cụ sử dụng ............................................................................................51 4.2. Các giao diện chính ......................................................................................51 4.2.1. Giao diện Form Đăng nhập ......................................................................51 4.2.2. Giao diện Form Quản lí ............................................................................52 4.2.3. Giao diện Form Đặt lịch ...........................................................................53 4.2.4. Giao diện Form Dịch vụ ...........................................................................53 4.2.5. Giao diện Form Nhân viên .......................................................................54 4.2.6. Giao diện Form Khách hàng ....................................................................55 4.2.7. Giao diện Form Users...............................................................................55 4.2.8. Giao diện Form Thống kê ........................................................................56 4.2.9. Giao diện Form Hóa đơn ..........................................................................56 Phần 3. KẾT LUẬN VÀ KIẾN NGHỊ ..................................................................57 1. KẾT LUẬN .......................................................................................................57 1.1. Những vấn đề đạt được ...............................................................................57 1.2. Những vấn đề còn hạn chế ..........................................................................57 2. KIẾN NGHỊ......................................................................................................57 Phần 4. TÀI LIỆU THAM KHẢO ........................................................................58 1 Phần 1. MỞ ĐẦU 1.1. Lí do chọn đề tài Hiện nay, do nhu cầu giao lưu thể thao, tinh thần giải trí cao, các sân cỏ nhân tạo theo đó cũng được mở ra nhiều nhằm đáp ứng nhu cầu của một lượng lớn khách hàng, đặc biệt là giới trẻ. Mặt khác, các sân cỏ nhân tạo có số lượng thực đơn gồm các danh mục đồ ăn, đồ uống,… trong một ngày là mà số lượng khách hàng đến quán ngày một nhiều. Ngoài ra, công việc quản lí nhân viên, dịch vụ,…đều được lưu trữ trên giấy tờ, sổ sách nên rất mất thời gian, tốn kém nhân lực và tài nguyên, việc tính toán, thống kê thủ công dễ xảy ra sai sót, nhầm lẫn. Bên cạnh đó, khi có nhiều khách hàng cùng đặt sân, về phía nhà quản lí cần có tính toán , xếp lịch sao cho thời gian phục vụ là nhiều nhất để thu về lợi nhuận cao nhất. Do đó, việc ứng dụng thuật toán tối ưu để xây dựng một hệ thống quản lí nhằm xóa bỏ những phương thức lạc hậu, lỗi thời gây tốn kém về nhiều mặt nhưng phải mang lại hiệu quả cao hơn cho sân là việc làm cần thiết. Vì những lí do trên, tôi chọn đề tài “Xây dựng phần mềm quản lí dịch vụ cho thuê sân cỏ nhân tạo theo mô hình đa tầng”. 1.2. Mục tiêu của đề tài Xây dựng một chương trình quản lí dịch vụ cho thuê sân cỏ nhân tạo cho việc quản lí , tìm kiếm, thống kê, tại một sân cỏ một cách nhanh chóng, chính xác đạt hiệu quả cao nhất. 1.3. Đối tƣợng và phạm vi nghiên cứu Đối tượng nghiên cứu sử dụng công nghệ lập trình Netbean 8.2, SQL server 2014. Hệ thống thông tin quản lí sân cỏ nhân tạo hiện nay, phạm vi chỉ quản lí quá trình hoạt động sân với 20 sân, phân quyền truy nhập cho nhân viên, quản lí khách hàng. 1.4. Phƣơng pháp nghiên cứu - Sử dụng phương pháp điều tra để thu thập thông tin - Sử dụng phương pháp phân tích để trích lọc thông tin cần thiết 2 - Sử dụng phương pháp tổng hợp để thiết kế và xây dựng hệ thống 1.5. Lịch sử nghiên cứu Trong hệ thống sân cỏ hiện nay tại Tam Kỳ, chưa nhận thấy có phần mềm quản lý sân. Tất cả còn làm thủ công trên giấy tờ. 1.6. Đóng góp của đề tài Đề tài sẽ làm cho công tác quản lý trở nên đơn giản, hiệu quả hơn; nhờ đó tiết kiệm được nhân lực trong công tác quản lý sân. Tạo ra tính chuyên nghiệp trong quản lý, có thể mở rộng quy mô sân mà không phải thêm người quản lý. 1.7. Cấu trúc đề tài Đề tài chia làm 4 chương. Chương 1 nêu cơ sở lý thuyết của đề tài. Chương 2 khảo sát hiện trạng hệ thống thông tin quản lý sân cỏ nhân tạo và mô tả tổng thể hệ thống. Chương 3 phân tích, thiết kế chức năng và dữ liệu. Chương 4 cài đặt hệ thống. 3 Phần 2. NỘI DUNG NGHIÊN CỨU Chƣơng 1: CƠ SỞ LÍ THUYẾT 1.1. Tổng quan về ngôn ngữ lập trình java 1.1.1. Ngôn ngữ Java 1.1.1.1. Sơ lược về java Java là một ngôn ngữ lập trình hướng đối tượng và dựa trên các lớp. Khác vớ i phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi khởi động, Java được thiết kế để biên dị ch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi. 1.1.1.2. Khả năng của java Ngôn ngữ bậc cao. - Có thể được dùng để tạo ra các loại ứng dụng để giải quyết các vấn đề về số, xử lí văn bản, tạo ra trò chơi,... - Có các thư viện hàm hỗ trợ xây dựng giao diện (GUI) như AWT, Swing, … - Có các môi trường lập trình đồ họa như JBuilder, NetBeans, Eclipse, … - Có khả năng truy cập dữ liệu từ xa thông qua cầu nối JDBC - Hỗ trợ các lớp hữu ích, tiện lợi trong lập trình các ứng dụng mạng (Socket) cũng như truy xuất Web hay nhúng vào trong trang Web (Applet). - Hỗ trợ lập trình phân tán (Remote Method Invocation) cho phép một ứng dụng có thể được xử lí phân tán trên các máy tính khác nhau. - Lập trình trên thiết bị cầm tay (J2ME). - Xây dựng các ứng dụng trong môi trường xí nghiệp (J2EE).… 1.1.2. Java Swing trên công cụ hỗ trợ NetBeans 1.1.2.1. Java Swing Swing là một bộ công cụ tiện ích, là một phần của ngôn ngữ lập trình Java tổ ng thể. Widget là một yếu tố cá nhân của bất kỳ giao diện người dùng đồ họa, hoặ c giao diện. Swing hỗ trợ cho người dùng tạo ra các cửa sổ window, các layout cho phần mềm, tạo ra các control cho phép người dùng tương tác với phần mềm. 1.1.2.2. Java Swing chạy trên NetBeans NetBeans IDE là một công cụ hỗ trợ lập trình viết mã code miễn phí được cho là tốt nhất hiện nay, được sử dụng chủ yếu cho các lập trình viên phát triển Java tuy 4 nhiên phần mềm có dung lượng khá là nặng dành cho các máy cấu hình có RAM, CPU tương đối cao để vận hành. NetBeans IDE là môi trường phát triển tích hợp và cực kỳ cần thiết cho các lập trình viên, công cụ này có thể hoạt động tốt với rất nhiều nền tảng hệ điều hành khác nhau như Linux, Windows, MacOS,... là một mã nguồn mở cung cấp các tính năng cần thiết nhất nhằm tạo ra các ứng dụng web, thiết bị di động, desktop. Cũng giống như Eclipse vậy, NetBeans IDE hỗ trợ rất nhiều những ngôn ngữ lập trình như Python, Ruby, JavaScript, Groovy, C C + +, và PHP. Để có thể cài đặt được NetBeans IDE phải cài đặt và cấu hình sẵn JDK trong máy. NetBean IDE được chia thành nhiều gói khác nhau để người dùng có thể tải về từng phần, tiết kiệm dung lượng, tùy theo nhu cầu của mình. Giống với Notepad++, NetBean IDE có gợi ý cú pháp khá tốt, và còn nhiều tính năng khá thú vị như tự động căn chỉnh mã nguồn, Remote FTP, SVN …. Chính vì thế, nó được xem là môi trường phát triển không thể bỏ qua cho các lập trình viên. Nếu ai đang sử dụng NetBeans IDE có thể download thêm Notepad++ để tạo nên bộ đôi soạn thảo văn bản lập trình cực kỳ hiệu quả và thông minh. 1.1.3. Sơ lƣợc hệ quản trị cơ sớ dữ liệu SQL Server 1.1.3.1. Hệ thống ngôn ngữ SQL SQL, viết tắt của Structured Query Language (ngôn ngữ truy vấn có cấ u trúc), công cụ sử dụng để tổ chức, quản lí và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu. SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ. 1.1.3.2. Hệ thống quản lí cơ sở dữ liệu SQL Server SQL Server: SQL Server là một hệ thống quản lí cơ sở dữ liệ u (Relational DatabaseManagement System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Clientcomputer và SQL Server computer. Một RDBMS bao gồ m có databases và các ứng dụng dùng để quản lí dữ liệu và các bộ phận khác nhau trong RDBMS. Đây là một hệ quản trị cơ sở dữ liệu rất phổ biến. Nó là một hệ quản trị CSDL SQL mạnh và đầy đủ các tính năng, có thể chạy trên môi trường cơ sở dữ liệu rất lớn. SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting Services, Notification Services, Integration Services, Full Text Search Service…. 5 Các thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ dàng. Database Engine – Cái lõi của SQL Server Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng table và support tất cả các kiểu kết nối (data connection) thông dụng của Microsoft như: ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC). Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụng thêm các tài nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệ điều hành khi một user log off. Replication – Cơ chế tạo bản sao Report server cần phải được cập nhật thường xuyên để đảm bảo tính chính xác của các báo cáo. Lúc đó cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho dữ liệu ở 2 database được đồng bộ (synchronized). Integration Services (DTS) – Integration Services là một tập hợp các công cụ đồ họa và các đối tượng lập trình cho việc di chuyển, sao chép và chuyển đổi dữ liệu. Nếu bạn làm việc trong một công ty lớn trong đó data được chứa trong nhiều nơi khác nhau và ở các dạng khác nhau cụ thể như chứa trong Oracle, DB2 (của IBM), SQL Server, Microsoft Access….Chắc chắn sẽ có nhu cầu di chuyển data giữa các server này và không chỉ di chuyển bạn còn muốn định dạng nó trước khi lưu vào database khác, khi đó bạn sẽ thấy DTS giúp bạn giải quyết công việc trên dễ dàng. Analysis Services – Một dịch vụ phân tích dữ liệu rất hay của Microsoft Dữ liệu chứa trong database không có ý nghĩa gì không thể lấy được những thông tin hữu ích từ đó. Do đó Microsoft cung cấp cho bạn một công cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và hiệu quả bằng cách dùng khái niệm hình khối nhiều chiều và kỹ thuật “khai phá dữ liệu”. 6 Notification Services Dịch vụ thông báo là nền tảng cho sự phát triển và triển khai các ứng dụng tạo và gửi thông báo. Notification Services có thể gửi thông báo đến hàng ngàn người đăng ký sử dụng nhiều loại thiết bị khác nhau. Reporting Services Reporting Services bao gồm các thành phần server và client cho việc tạo, quả n lí và triển khai các báo cáo. Reporting Services cũng là nền tảng cho việc phát triể n và xây dựng các ứng dụng báo cáo. Full Text Search Service Dịch vụ SQL Server Full Text Search là một dịch vụ đặc biệt cho đánh chỉ mục và truy vấn cho dữ liệu văn bản không cấu trúc được lưu trữ trong các CSDL SQL Server. Đánh chỉ mục với Full Text Search có thể được tạo trên bất kỳ cột nào dựa trên dữ liệu văn bản. Sẽ rất hiệu quả cho việc tìm cách sử dụng toán tử LIKE trong SQL với trường hợp tìm văn bản. Service Broker Được sử dụng bên trong mỗi Instance, là môi trường lập trình cho việc các ứng dụng nhảy qua các Instance. Service Broker giao tiếp qua giao thức TCPIP và cho phép các khác nhau có thể được đồng bộ cùng nhau theo hướng trao đổi các. Service Broker chạy như một phần của bộ máy cơ sở dữ liệu, cung cấp một nền tảng truyền tin cậy và theo hàng đợi cho các ứng dụng SQL Server. 1.2. Mô hình 3 lớp (mvc) đơn giản 1.2.1. Mô hình MVC Model – View – Controller (MVC) là một mẫu thiết kế nhằm mục tiêu chia tách phần Giao diện và Code để dễ quản lí, phát triển và bảo trì. MVC chia ứng dụng phần mềm ra làm 3 phần có tương tác với nhau là Model (Dữ liệu), View (Giao diện), Controller ( Code điều khiển tương tác giữa Model và View cũng như nghiệp vụ (Business)). 7 Hình 1: Mô hình MVC 1.2.2. Định nghĩa các thành phần trong mô hình MVC Lớp View (Khung nhìn) Bao gồm các file viết bằng HTML, CSS, Javascript, JSP, thiết kế giao diện,... Chức năng là hiển thị giao diện người dùng và hiển thị kết quả trả về từ Model... Lớp Model (Mô hình) Mô hình các lớp java có nhiệm vụ + Nhận các yêu cầu từ View. + Thực thi các yêu cầu đó ( tính toán, kết nối CSDL…). + Trả về các giá trị tính toán cho View. Đồng bộ hóa giữa Khung nhìn (View) và Mô hình (Model). Tức là Controller sẽ xác định với một trang JSP này thì sẽ tương ứng với lớp java nào đó trong Model để xử lí nó và ngược lại, kết quả sẽ trả về trang jsp. 8 Lớp Controller Gồm file được viết bằng java “đặc biệt” có tên là Servlet. File java “đặc biệt” này có thể tiếp nhận các yêu cầu trực tiếp. Chức năng: Tiếp nhận yêu cầu và điều phối yêu cầu. 1.3. Lợi thế của mô hình 3 lớp 1.3.1. u điểm  Bảo mật tốt hơn: che dấu được mã nguồn, yêu cầu giao tiếp với lớp điều khiển.  Phân công tốt hơn, tính chuyên môn hóa cao: người đảm nhiệm thiết kế website sẽ thiết kế lớp Views (font-end) và web developer sẽ thiết kế lớp models, control (back-end).  Dễ nâng cấp và chỉnh sửa: Muốn sửa chữa giao diện thì sửa ở lớp view, muốn sửa chữa các chức năng thì sửa lớp model. 1.3.2. Hạn chế  Khó cài đặt hơn mô hình 1 lớp do mô hình 3 lớp phức tạp hơn mô hình 1 lớp rất nhiều.  Không phù hợp với trang web có quy mô nhỏ.  Chạy chậm hơn mô hình 1 lớp. 9 Chƣơng 2: KHẢO SÁT HIỆN TRẠNG VÀ MÔ TẢ TỔNG THỂ HỆ THỐNG 2.1. Khảo sát hiện trạng thực tế 2.1.1. Bài toán đặt ra Tại các sân bóng ở Tam Kỳ hiện nay thì loại hình kinh doanh dịch vụ cho thuê sân cỏ nhân tạo chưa được phổ biến mà lượng khách đến sân ngày càng tăng, để phục vụ đông đảo khách trong cùng một lúc được tốt hơn, chính xác hơn và nhanh chóng hơn thì sân bóng phải từng bước đưa tin học hóa vào các khâu quản lí. Đặc biệt là trong quản lí sân đang đá hay sân trống, công tác kế toán và quản lí dịch vụ. Bởi vì với công tác thủ công mà sân bóng đang thực hiện đã bộc lộ nhiều hạn chế sau: + Tra cứu thông tin về sân bóng, hàng hóa, nhân viên và khách hàng mất nhiều thời gian và nhiều khi không chính xác. + Lưu trữ thông tin về nhập xuất hàng hóa, nhân viên hay khách hàng đến sân về thu chi, lương nhân viên cần nhiều loại giấy tờ nên cồng kềnh và không đạt hiệu quả. + Cập nhật thông tin hàng ngày tốn nhiều thời gian và khó khăn trong việc thực hiện báo cáo thống kê, nhất là khi có sự việc đột xuất. Trước tình hình đó vấn đề đặt ra là xây dựng một hệ thống thông tin đáp ứng nhu cầu cơ bản sau: + Giảm khối lượng ghi chép nhằm lưu trữ thông tin. + Cập nhật dữ liệu nhanh chóng, chính xác và kịp thời. + Thống kê được số lượng sân đang đá hay sân trống, hàng hóa nhập xuất, thu chi và tình hình doanh thu của sân bóng. + Tự động in hóa đơn, in thống kê,... + Có khả năng lưu trữ thông tin lâu dài, đảm bảo truy vấn nhanh khi cần thiết. Xuất phát từ thực tiễn, với tâm huyết muốn đem lại sự tiện lợi và hiệu quả cao nhất trong việc quản lí, tôi xin giới thiệu một phần mềm quản lí sân cỏ nhân và nâng cao kết quả trong kinh doanh. 10 2.1.2. Ý nghĩa của ứng dụng + Theo dõi quá trình kinh doanh, hoạt động của sân một cách tổng quan, chi tiết,… + Nắm bắt mọi hoạt động của sân thông qua những ...

Trang 1

UBND TỈNH QUẢNG NAM

TRƯỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN

- -

ĐẶNG THỊ HOA

XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO

THEO MÔ HÌNH ĐA TẦNG

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC

Quảng Nam, tháng 4 năm 2018

Trang 2

UBND TỈNH QUẢNG NAM

TRƯỜNG ĐẠI HỌC QUẢNG NAM KHOA CÔNG NGHỆ THÔNG TIN

- -

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC

Tên đề tài:

XÂY DỰNG PHẦN MỀM QUẢN LÍ DỊCH VỤ CHO THUÊ SÂN CỎ NHÂN TẠO

THEO MÔ HÌNH ĐA TẦNG

Sinh viên thực hiện

Trang 3

LỜI CẢM ƠN

Sau chặng đường 4 năm học tập và rèn luyện dưới mái trường Đại học Quảng Nam, được sự chỉ bảo tận tình của các thầy cô, và sự giúp đỡ từ bạn bè, cùng những nỗ lực của bản thân, em thấy mình đã dần nâng cao được những kiến thức, kĩ năng, những kinh nghiệm sống cho bản thân Em sẽ tiếp tục cố gắng phấn đấu dùng những điều đã được dạy và tích lũy vận dụng vào thực tế để trở thành một người có ích cho xã hội

Em xin gửi lời cảm ơn đến ban lãnh đạo trường Đại Học Quảng Nam, các giảng viên khoa Công nghệ thông tin, các cô chú nhân viên đã tạo điều kiện thuận lợi và động viên em trong suốt thời gian ngồi trên ghế nhà trường để em học tập và làm việc thật tốt

Với lòng kính trọng và biết ơn sâu sắc, em xin được bày tỏ lời cảm ơn chân thành nhất đến thầy Dương Phương Hùng đã tận tình hướng dẫn và truyền đạt những kinh nghiệm quý báu cho em trong suốt quá trình thực hiện đề tài này

Cuối cùng, em xin gửi lời cảm ơn tới gia đình, bạn bè, những người đã quan tâm giúp đỡ và động viên, khuyến khích em trong thời gian qua để em hoàn thiện đề tài này

Tan Kỳ, tháng 4 năm 2018 Sinh viên thực hiện Đặng Thị Hoa

Trang 4

MỤC LỤC HÌNH ẢNH

Hình 1: Mô hình MVC 7

Hình 2: Môi trường hệ thống 10

Hình 3: Sơ đồ Use Case tổng quát 17

Hình 4: Sơ đồ mối quan hệ Use Case quản li hóa đơn 17

Hình 5: Sơ đồ mối quan hệ Use Case đặt lịch 18

Hình 6: Sơ đồ mối quan hệ Use Case dịch vụ 18

Hình 7: Sơ đồ mối quan hệ Use Case nhân viên 19

Hình 8: Sơ đồ mối quan hệ Use Case khách hàng 19

Hình 9: Sơ đồ mối quan hệ Use Case Users 20

Hình 10: Sơ đồ mối quan hệ Use Case hóa đơn 20

Hình 11: Sơ đồ mối quan hệ Use Case thống kê 20

Hình 12: Sơ đồ xác định Object và class 35

Hình 13: Sơ đồ Class và mối quan hệ giữa các Class 36

Hình 14: Lược đồ tuần tự Use-case Đăng nhập 36

Hình 15: Lược đồ tuần tự Use-case Thêm sân 37

Hình 16: Lược đồ tuần tự Use-case Đổi sân 37

Hình 17: Lược đồ tuần tự Use-case Thanh Toán 38

Hình 18: Lược đồ tuần tự Use-case Đặt lịch 38

Hình 19: Lược đồ tuần tự Use-case Thêm dịch vụ 39

Hình 20: Lược đồ tuần tự Use-case Thêm nhân viên 39

Hình 21: Lược đồ tuần tự Use-case Thêm khách hàng 40

Hình 22: Lược đồ tuần tự Use-case Thống kê 40

Hình 23: Lược đồ hoạt động Use-case Đăng nhập 41

Hình 24: Lược đồ hoạt động Use-case Thêm sân 41

Hình 25: Lược đồ hoạt động Use-case Thanh Toán 42

Hình 26: Lược đồ hoạt động Use-case Đặt lịch 42

Hình 27: Hình Lược đồ hoạt động Use-case Thêm dịch vụ 43

Hình 28: Lược đồ hoạt động Use-case Thêm gói dịch vụ 43

Hình 29: Lược đồ hoạt động Use-case Thêm nhân viên 44

Hình 30: Lược đồ hoạt động Use-case Thêm khách hàng 44

Hình 31: Lược đồ hoạt động Use-case Thống kê 45

Trang 5

Hình 32: Biểu đồ trạng thái của lớp nhân viên 45

Hình 33: Biểu đồ trạng thái của lớp khách hàng 45

Hình 34: Biểu đồ trạng thái của lớp sân bóng 46

Hình 35: Biểu đồ trạng thái của lớp dịch vụ 46

Hình 36: Biểu đồ trạng thái của lớp hóa đơn 46

Hình 37: Thuộc tính của bảng Sân Bóng 47

Hình 38: Thuộc tính của bảng Đặt Lịch 47

Hình 39: Thuộc tính của bảng Khách Hàng 48

Hình 40: Thuộc tính của bảng Nhân Viên 48

Hình 41: Thuộc tính của bảng Lương 48

Hình 42: Thuộc tính của bảng Dịch Vụ 49

Hình 43: Thuộc tính của bảng Gói Dịch Vụ 49

Hình 44: Thuộc tính của bảng Gói Dịch Vụ - Dịch Vụ 49

Hình 45: Thuộc tính của bảng Hóa Đơn 49

Hình 46: Thuộc tính của bảng Hóa Đơn – Hoạt Động 49

Hình 47: Cơ sở dữ liệu bảng dịch vụ 50

Hình 48: Giao diện Form Đăng nhập 51

Hình 49: Giao diện form quản lí 52

Hình 50: Giao diện form đặt lịch 53

Hình 51: Giao diện form dịch vụ 53

Hình 52: Giao diện form nhân viên 54

Hình 53: Giao diện form khách hàng 55

Hình 54: Giao diện form users 55

Hình 55: Giao diện form thống kê 56

Hình 56: Giao diện form hóa đơn 56

Trang 6

DANH MỤC BẢNG BIỂU

Bảng 1: Yêu cầu chức năng 10

Bảng 2: Các Actor và Use - Case trong hệ thống 16

Bảng 3: Các Use Case và vai trò Use Case trong hệ thống 16

Bảng 4: Đặc tả Use Case đăng nhập 21

Bảng 5: Use Case thêm sân 22

Bảng 6: Use Case đổi tên sân 23

Bảng 7: Use Case bắt đầu hoạt động cho sân 23

Bảng 8: Use Case đổi sân 24

Bảng 9: Use Case thanh toán 25

Bảng 10: Use Case thêm đặt lịch 26

Bảng 11: Use Case thêm dịch vụ 27

Bảng 12: Use Case thêm số lượng dịch vụ 29

Bảng 13: Use Case thêm gói dịch vụ 29

Bảng 14: Use Case thêm nhân viên 30

Bảng 15: Use Case thêm khách hàng 31

Bảng 16: Use Case đăng kí người dùng 33

Bảng 17: Use xem hóa đơn 34

Bảng 18: Use Case thống kê 35

Trang 7

MỤC LỤC

LỜI CẢM ƠN 1

Phần 1 MỞ ĐẦU 1

1.1 Lí do chọn đề tài 1

1.2 Mục tiêu của đề tài 1

1.3 Đối tượng và phạm vi nghiên cứu 1

1.4 Phương pháp nghiên cứu 1

1.5 Lịch sử nghiên cứu 2

1.6 Đóng góp của đề tài 2

1.7 Cấu trúc đề tài 2

Phần 2 NỘI DUNG NGHIÊN CỨU 3

Chương 1: CƠ SỞ LÍ THUYẾT 3

1.1 Tổng quan về ngôn ngữ lập trình java 3

1.1.1 Ngôn ngữ Java 3

1.1.1.1 Sơ lược về java 3

1.1.1.2 Khả năng của java 3

1.1.2 Java Swing trên công cụ hỗ trợ NetBeans 3

1.1.2.1 Java Swing 3

1.1.2.2 Java Swing chạy trên NetBeans 3

1.1.3 Sơ lược hệ quản trị cơ sớ dữ liệu SQL Server 4

1.1.3.1 Hệ thống ngôn ngữ SQL 4

1.1.3.2 Hệ thống quản lí cơ sở dữ liệu SQL Server 4

1.2 Mô hình 3 lớp (mvc) đơn giản 6

1.2.1 Mô hình MVC 6

1.2.2 Định nghĩa các thành phần trong mô hình MVC 7

1.3 Lợi thế của mô hình 3 lớp 8

Trang 8

2.3 Yêu cầu chức năng 10

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 16

3.1 Các actor và use-case trong hệ thống 16

3.1.1 Các Actor và vai trò Actor trong hệ thống 16

3.1.2 Các Use Case và vai trò Use Case trong hệ thống 16

3.2 Sơ đồ use case 17

3.2.1 Sơ đồ Use Case tổng quát (sơ đồ UC giữa Actor và UC) 17

3.2.2 Mối quan hệ giữa UC và UC 17

3.2.2.1 Phân rã 1 sơ đồ UC_QuanLiHoatDongSan 17

3.2.2.2 Phân rã 2 sơ đồ UC_DatLich 18

3.2.2.3 Phân rã 3 sơ đồ UC_DichVu 18

3.2.2.4 Phân rã 4 sơ đồ UC_NhanVien 19

3.2.2.5 Phân rã 5 sơ đồ UC_KhachHang 19

3.2.2.6 Phân rã sơ đồ UC_Users 20

3.2.2.7 Phân rã sơ đồ UC_HoaDon 20

3.2.2.8 Phân rã sơ đồ UC_ThongKe 20

3.2.3 Đặc tả Use Case 21

3.2.3.1 Đặt tả UC_Quản lí đăng nhập 21

3.2.3.2 Chức năng quản lí hoạt động của sân 22

3.2.3.3 Chức năng quản lí đặt lịch (đặt lịch đá banh) 26

3.2.3.4 Chức năng quản lí dịch vụ 27

3.2.3.5 Chức năng quản lí khách hàng 31

3.2.3.7 Chức năng quản lí User 32

3.2.3.8 Chức năng quản lí hóa đơn 34

Trang 9

3.2.3.9 Chức năng quản lí thống kê 34

3.3 Xác định object, class, mối quan hệ giữa các class; vẽ sơ đồ class 35

3.3.1 Xác định Object và class 35

3.3.2 Sơ đồ Class và mối quan hệ giữa các Class 36

3.4 Biểu đồ tuần tự 36

3.4.1 Lược đồ tuần tự Use-case Đăng nhập 36

3.4.2 Lược đồ tuần tự Use-case Thêm sân 37

3.4.3 Lược đồ tuần tự Use-case Đổi sân 37

3.4.4 Lược đồ tuần tự Use-case Thanh Toán 38

3.4.5 Lược đồ tuần tự Use-case Đặt lịch 38

3.4.6 Lược đồ tuần tự Use-case Thêm dịch vụ 39

3.4.7 Lược đồ tuần tự Use-case Thêm nhân viên 39

3.4.8 Lược đồ tuần tự Use-case Thêm khách hàng 40

3.4.9 Lược đồ tuần tự Use-case Thống kê 40

3.5 Biểu đồ hoạt động 41

3.5.1 Lược đồ hoạt động Use-case Đăng nhập 41

3.5.2 Lược đồ hoạt động Use-case Thêm sân 41

3.5.3 Lược đồ hoạt động Use-case Thanh Toán 42

3.5.4 Lược đồ hoạt động Use-case Đặt lịch 42

3.5.5 Lược đồ hoạt động Use-case Thêm dịch vụ 43

3.5.6 Lược đồ hoạt động Use-case Thêm gói dịch vụ 43

3.5.7 Lược đồ hoạt động Use-case Thêm nhân viên 44

3.5.8 Lược đồ hoạt động Use-case Thêm khách hàng 44

3.5.9 Lược đồ hoạt động Use-case Thống kê 45

3.6 Biểu đồ trạng thái 45

3.6.1 Biểu đồ trạng thái của lớp Nhân viên 45

3.6.2 Biểu đồ trạng thái của lớp Khách hàng 45

3.6.3 Biểu đồ trạng thái của lớp Sân bóng 46

3.6.4 Biểu đồ trạng thái của lớp Dịch vụ 46

3.6.5 Biểu đồ trạng thái của lớp Hóa đơn 46

3.7 Đặc tả dữ liệu 47

3.7.1 Sơ lược về cơ sở dữ liệu 47

3.7.2 Bảng thuộc tính 47

Trang 10

3.7.2.1 Thuộc tính của bảng Sân Bóng 47

3.7.2.2 Thuộc tính của bảng Đặt Lịch 47

3.7.2.3 Thuộc tính của bảng Khách Hàng 48

3.7.2.4 Thuộc tính của bảng Nhân Viên 48

3.7.2.5 Thuộc tính của bảng Lương 48

3.7.2.6 Thuộc tính của bảng Dịch Vụ 49

3.7.2.7 Thuộc tính của bảng Gói Dịch Vụ 49

3.7.2.8 Thuộc tính của bảng Gói Dịch Vụ - Dịch Vụ 49

3.7.2.9 Thuộc tính của bảng Hóa Đơn 49

3.7.2.10 Thuộc tính của bảng Hóa Đơn – Hoạt Động 49

3.7.3 Thể hiện cơ sở dữ liệu 50

Chương 4: CÀI ĐẶT HỆ THỐNG 51

4.1 Công cụ sử dụng 51

4.2 Các giao diện chính 51

4.2.1 Giao diện Form Đăng nhập 51

4.2.2 Giao diện Form Quản lí 52

4.2.3 Giao diện Form Đặt lịch 53

4.2.4 Giao diện Form Dịch vụ 53

4.2.5 Giao diện Form Nhân viên 54

4.2.6 Giao diện Form Khách hàng 55

4.2.7 Giao diện Form Users 55

4.2.8 Giao diện Form Thống kê 56

4.2.9 Giao diện Form Hóa đơn 56

Trang 11

Phần 1 MỞ ĐẦU 1.1 Lí do chọn đề tài

Hiện nay, do nhu cầu giao lưu thể thao, tinh thần giải trí cao, các sân cỏ nhân tạo theo đó cũng được mở ra nhiều nhằm đáp ứng nhu cầu của một lượng lớn khách hàng, đặc biệt là giới trẻ

Mặt khác, các sân cỏ nhân tạo có số lượng thực đơn gồm các danh mục đồ ăn, đồ uống,… trong một ngày là mà số lượng khách hàng đến quán ngày một nhiều Ngoài ra, công việc quản lí nhân viên, dịch vụ,…đều được lưu trữ trên giấy tờ, sổ sách nên rất mất thời gian, tốn kém nhân lực và tài nguyên, việc tính toán, thống kê thủ công dễ xảy ra sai sót, nhầm lẫn

Bên cạnh đó, khi có nhiều khách hàng cùng đặt sân, về phía nhà quản lí cần có tính toán, xếp lịch sao cho thời gian phục vụ là nhiều nhất để thu về lợi nhuận cao nhất

Do đó, việc ứng dụng thuật toán tối ưu để xây dựng một hệ thống quản lí nhằm xóa bỏ những phương thức lạc hậu, lỗi thời gây tốn kém về nhiều mặt nhưng phải mang lại hiệu quả cao hơn cho sân là việc làm cần thiết

Vì những lí do trên, tôi chọn đề tài “Xây dựng phần mềm quản lí dịch vụ cho thuê sân cỏ nhân tạo theo mô hình đa tầng”

1.2 Mục tiêu của đề tài

Xây dựng một chương trình quản lí dịch vụ cho thuê sân cỏ nhân tạo cho việc quản lí, tìm kiếm, thống kê, tại một sân cỏ một cách nhanh chóng, chính xác đạt

hiệu quả cao nhất

1.3 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu sử dụng công nghệ lập trình Netbean 8.2, SQL server 2014

Hệ thống thông tin quản lí sân cỏ nhân tạo hiện nay, phạm vi chỉ quản lí quá trình hoạt động sân với 20 sân, phân quyền truy nhập cho nhân viên, quản lí khách hàng

1.4 Phương pháp nghiên cứu

- Sử dụng phương pháp điều tra để thu thập thông tin

- Sử dụng phương pháp phân tích để trích lọc thông tin cần thiết

Trang 12

- Sử dụng phương pháp tổng hợp để thiết kế và xây dựng hệ thống

1.5 Lịch sử nghiên cứu

Trong hệ thống sân cỏ hiện nay tại Tam Kỳ, chưa nhận thấy có phần mềm quản lý sân Tất cả còn làm thủ công trên giấy tờ

1.6 Đóng góp của đề tài

Đề tài sẽ làm cho công tác quản lý trở nên đơn giản, hiệu quả hơn; nhờ đó tiết kiệm được nhân lực trong công tác quản lý sân Tạo ra tính chuyên nghiệp trong quản lý, có thể mở rộng quy mô sân mà không phải thêm người quản lý

1.7 Cấu trúc đề tài

Đề tài chia làm 4 chương Chương 1 nêu cơ sở lý thuyết của đề tài Chương 2 khảo sát hiện trạng hệ thống thông tin quản lý sân cỏ nhân tạo và mô tả tổng thể hệ thống Chương 3 phân tích, thiết kế chức năng và dữ liệu Chương 4 cài đặt hệ thống

Trang 13

Phần 2 NỘI DUNG NGHIÊN CỨU Chương 1: CƠ SỞ LÍ THUYẾT 1.1 Tổng quan về ngôn ngữ lập trình java

1.1.1 Ngôn ngữ Java

1.1.1.1 Sơ lược về java

Java là một ngôn ngữ lập trình hướng đối tượng và dựa trên các lớp Khác với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn thành mã máy hoặc thông dịch mã nguồn khi khởi động, Java được thiết kế để biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường thực thi

1.1.1.2 Khả năng của java

Ngôn ngữ bậc cao

- Có thể được dùng để tạo ra các loại ứng dụng để giải quyết các vấn đề về số, xử lí văn bản, tạo ra trò chơi,

- Có các thư viện hàm hỗ trợ xây dựng giao diện (GUI) như AWT, Swing, … - Có các môi trường lập trình đồ họa như JBuilder, NetBeans, Eclipse, … - Có khả năng truy cập dữ liệu từ xa thông qua cầu nối JDBC

- Hỗ trợ các lớp hữu ích, tiện lợi trong lập trình các ứng dụng mạng (Socket) cũng như truy xuất Web hay nhúng vào trong trang Web (Applet)

- Hỗ trợ lập trình phân tán (Remote Method Invocation) cho phép một ứng dụng có thể được xử lí phân tán trên các máy tính khác nhau

- Lập trình trên thiết bị cầm tay (J2ME)

- Xây dựng các ứng dụng trong môi trường xí nghiệp (J2EE).…

1.1.2 Java Swing trên công cụ hỗ trợ NetBeans

1.1.2.1 Java Swing

Swing là một bộ công cụ tiện ích, là một phần của ngôn ngữ lập trình Java tổng thể Widget là một yếu tố cá nhân của bất kỳ giao diện người dùng đồ họa, hoặc giao diện Swing hỗ trợ cho người dùng tạo ra các cửa sổ window, các layout cho phần mềm, tạo ra các control cho phép người dùng tương tác với phần mềm

1.1.2.2 Java Swing chạy trên NetBeans

NetBeans IDE là một công cụ hỗ trợ lập trình viết mã code miễn phí được cho

là tốt nhất hiện nay, được sử dụng chủ yếu cho các lập trình viên phát triển Java tuy

Trang 14

nhiên phần mềm có dung lượng khá là nặng dành cho các máy cấu hình có RAM, CPU tương đối cao để vận hành

NetBeans IDE là môi trường phát triển tích hợp và cực kỳ cần thiết cho các lập trình viên, công cụ này có thể hoạt động tốt với rất nhiều nền tảng hệ điều hành

khác nhau như Linux, Windows, MacOS, là một mã nguồn mở cung cấp các tính

năng cần thiết nhất nhằm tạo ra các ứng dụng web, thiết bị di động, desktop Cũng

giống như Eclipse vậy, NetBeans IDE hỗ trợ rất nhiều những ngôn ngữ lập trình

như Python, Ruby, JavaScript, Groovy, C / C + +, và PHP

Để có thể cài đặt được NetBeans IDE phải cài đặt và cấu hình sẵn JDK trong máy NetBean IDE được chia thành nhiều gói khác nhau để người dùng có thể tải về

từng phần, tiết kiệm dung lượng, tùy theo nhu cầu của mình

Giống với Notepad++, NetBean IDE có gợi ý cú pháp khá tốt, và còn nhiều tính

năng khá thú vị như tự động căn chỉnh mã nguồn, Remote FTP, SVN … Chính vì thế, nó được xem là môi trường phát triển không thể bỏ qua cho các lập trình viên Nếu ai đang sử dụng NetBeans IDE có thể download thêm Notepad++ để tạo nên bộ đôi soạn thảo văn bản lập trình cực kỳ hiệu quả và thông minh

1.1.3 Sơ lƣợc hệ quản trị cơ sớ dữ liệu SQL Server

1.1.3.1 Hệ thống ngôn ngữ SQL

SQL, viết tắt của Structured Query Language (ngôn ngữ truy vấn có cấu trúc),

công cụ sử dụng để tổ chức, quản lí và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu SQL là một hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ

1.1.3.2 Hệ thống quản lí cơ sở dữ liệu SQL Server

SQL Server: SQL Server là một hệ thống quản lí cơ sở dữ liệu (Relational DatabaseManagement System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Clientcomputer và SQL Server computer Một RDBMS bao gồm có databases và các ứng dụng dùng để quản lí dữ liệu và các bộ phận khác nhau trong RDBMS Đây là một hệ quản trị cơ sở dữ liệu rất phổ biến Nó là một hệ quản trị CSDL SQL mạnh và đầy đủ các tính năng, có thể chạy trên môi trường cơ sở dữ liệu rất lớn

SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting Services, Notification Services, Integration Services, Full Text Search Service…

Trang 15

Các thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ dàng

Database Engine

– Cái lõi của SQL Server

Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dưới dạng table và support tất cả các kiểu kết nối (data connection) thông dụng của Microsoft như: ActiveX Data Objects (ADO), OLE DB, and Open Database Connectivity (ODBC)

Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụng thêm các tài nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệ điều hành khi một user log off

Replication

– Cơ chế tạo bản sao

Report server cần phải được cập nhật thường xuyên để đảm bảo tính chính xác của các báo cáo Lúc đó cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho dữ liệu ở 2 database được đồng bộ (synchronized)

Integration Services (DTS)

– Integration Services là một tập hợp các công cụ đồ họa và các đối tượng lập trình cho việc di chuyển, sao chép và chuyển đổi dữ liệu

Nếu bạn làm việc trong một công ty lớn trong đó data được chứa trong nhiều nơi khác nhau và ở các dạng khác nhau cụ thể như chứa trong Oracle, DB2 (của IBM), SQL Server, Microsoft Access….Chắc chắn sẽ có nhu cầu di chuyển data giữa các server này và không chỉ di chuyển bạn còn muốn định dạng nó trước khi lưu vào database khác, khi đó bạn sẽ thấy DTS giúp bạn giải quyết công việc trên dễ dàng

Analysis Services

– Một dịch vụ phân tích dữ liệu rất hay của Microsoft

Dữ liệu chứa trong database không có ý nghĩa gì không thể lấy được những thông tin hữu ích từ đó Do đó Microsoft cung cấp cho bạn một công cụ rất mạnh giúp cho việc phân tích dữ liệu trở nên dễ dàng và hiệu quả bằng cách dùng khái niệm hình khối nhiều chiều và kỹ thuật “khai phá dữ liệu”

Trang 16

Notification Services

Dịch vụ thông báo là nền tảng cho sự phát triển và triển khai các ứng dụng tạo và gửi thông báo Notification Services có thể gửi thông báo đến hàng ngàn người đăng ký sử dụng nhiều loại thiết bị khác nhau

Reporting Services

Reporting Services bao gồm các thành phần server và client cho việc tạo, quản lí và triển khai các báo cáo Reporting Services cũng là nền tảng cho việc phát triển và xây dựng các ứng dụng báo cáo

Full Text Search Service

Dịch vụ SQL Server Full Text Search là một dịch vụ đặc biệt cho đánh chỉ mục và truy vấn cho dữ liệu văn bản không cấu trúc được lưu trữ trong các CSDL SQL Server Đánh chỉ mục với Full Text Search có thể được tạo trên bất kỳ cột nào dựa trên dữ liệu văn bản Sẽ rất hiệu quả cho việc tìm cách sử dụng toán tử LIKE trong SQL với trường hợp tìm văn bản

Service Broker

Được sử dụng bên trong mỗi Instance, là môi trường lập trình cho việc các ứng dụng nhảy qua các Instance Service Broker giao tiếp qua giao thức TCP/IP và cho phép các khác nhau có thể được đồng bộ cùng nhau theo hướng trao đổi các Service Broker chạy như một phần của bộ máy cơ sở dữ liệu, cung cấp một nền tảng truyền tin cậy và theo hàng đợi cho các ứng dụng SQL Server

1.2 Mô hình 3 lớp (mvc) đơn giản

1.2.1 Mô hình MVC

Model – View – Controller (MVC) là một mẫu thiết kế nhằm mục tiêu chia tách phần Giao diện và Code để dễ quản lí, phát triển và bảo trì MVC chia ứng dụng phần mềm ra làm 3 phần có tương tác với nhau là Model (Dữ liệu), View (Giao diện), Controller ( Code điều khiển tương tác giữa Model và View cũng như nghiệp

vụ (Business))

Trang 17

Hình 1: Mô hình MVC 1.2.2 Định nghĩa các thành phần trong mô hình MVC

Lớp View (Khung nhìn)

Bao gồm các file viết bằng HTML, CSS, Javascript, JSP, thiết kế giao diện, Chức năng là hiển thị giao diện người dùng và hiển thị kết quả trả về từ Model

Lớp Model (Mô hình)

Mô hình các lớp java có nhiệm vụ + Nhận các yêu cầu từ View

+ Thực thi các yêu cầu đó ( tính toán, kết nối CSDL…) + Trả về các giá trị tính toán cho View

Đồng bộ hóa giữa Khung nhìn (View) và Mô hình (Model) Tức là Controller sẽ xác định với một trang JSP này thì sẽ tương ứng với lớp java nào đó trong Model để xử lí nó và ngược lại, kết quả sẽ trả về trang jsp

Trang 18

Lớp Controller

Gồm file được viết bằng java “đặc biệt” có tên là Servlet File java “đặc biệt” này có thể tiếp nhận các yêu cầu trực tiếp

Chức năng: Tiếp nhận yêu cầu và điều phối yêu cầu

1.3 Lợi thế của mô hình 3 lớp

1.3.1 Ƣu điểm

 Bảo mật tốt hơn: che dấu được mã nguồn, yêu cầu giao tiếp với lớp điều khiển

 Phân công tốt hơn, tính chuyên môn hóa cao: người đảm nhiệm thiết kế website sẽ thiết kế lớp Views (font-end) và web developer sẽ thiết kế lớp models, control (back-end)

 Dễ nâng cấp và chỉnh sửa: Muốn sửa chữa giao diện thì sửa ở lớp view, muốn sửa chữa các chức năng thì sửa lớp model

1.3.2 Hạn chế

 Khó cài đặt hơn mô hình 1 lớp do mô hình 3 lớp phức tạp hơn mô hình 1 lớp rất nhiều

 Không phù hợp với trang web có quy mô nhỏ

 Chạy chậm hơn mô hình 1 lớp

Trang 19

Chương 2: KHẢO SÁT HIỆN TRẠNG VÀ MÔ TẢ TỔNG THỂ HỆ THỐNG

2.1 Khảo sát hiện trạng thực tế

2.1.1 Bài toán đặt ra

Tại các sân bóng ở Tam Kỳ hiện nay thì loại hình kinh doanh dịch vụ cho thuê sân cỏ nhân tạo chưa được phổ biến mà lượng khách đến sân ngày càng tăng, để phục vụ đông đảo khách trong cùng một lúc được tốt hơn, chính xác hơn và nhanh chóng hơn thì sân bóng phải từng bước đưa tin học hóa vào các khâu quản lí Đặc biệt là trong quản lí sân đang đá hay sân trống, công tác kế toán và quản lí dịch vụ Bởi vì với công tác thủ công mà sân bóng đang thực hiện đã bộc lộ nhiều hạn chế sau:

+ Tra cứu thông tin về sân bóng, hàng hóa, nhân viên và khách hàng mất nhiều thời gian và nhiều khi không chính xác

+ Lưu trữ thông tin về nhập xuất hàng hóa, nhân viên hay khách hàng đến sân về thu chi, lương nhân viên cần nhiều loại giấy tờ nên cồng kềnh và không đạt hiệu quả

+ Cập nhật thông tin hàng ngày tốn nhiều thời gian và khó khăn trong việc thực hiện báo cáo thống kê, nhất là khi có sự việc đột xuất

Trước tình hình đó vấn đề đặt ra là xây dựng một hệ thống thông tin đáp ứng nhu cầu cơ bản sau:

+ Giảm khối lượng ghi chép nhằm lưu trữ thông tin + Cập nhật dữ liệu nhanh chóng, chính xác và kịp thời

+ Thống kê được số lượng sân đang đá hay sân trống, hàng hóa nhập xuất, thu chi và tình hình doanh thu của sân bóng

+ Tự động in hóa đơn, in thống kê,

+ Có khả năng lưu trữ thông tin lâu dài, đảm bảo truy vấn nhanh khi cần thiết Xuất phát từ thực tiễn, với tâm huyết muốn đem lại sự tiện lợi và hiệu quả cao nhất trong việc quản lí, tôi xin giới thiệu một phần mềm quản lí sân cỏ nhân và nâng cao kết quả trong kinh doanh

Trang 20

2.1.2 Ý nghĩa của ứng dụng

+ Theo dõi quá trình kinh doanh, hoạt động của sân một cách tổng quan, chi tiết,…

+ Nắm bắt mọi hoạt động của sân thông qua những báo cáo thống kê trung thực cuối tuần, tháng Giảm thiểu thời gian, chi phí tiền bạc vì không phải thuê quá nhiều nhân công cho việc quản lí

+ Lợi nhuận rất cao khi sự chuyên nghiệp được đặt lên hàng đầu

2.2 Môi trường hệ thống

Hình 2: Môi trường hệ thống

2.3 Yêu cầu chức năng

Bảng 1: Yêu cầu chức năng

R1 Quản lí đăng nhập

R1.1 Đăng nhập vào hệ thống Hiện

R1.2 Đăng xuất khỏi hệ thống Hiện

Trang 21

hoạt động của sân

R2.3 Khai báo thuộc tính cho sân Hiện

R2.4 Bắt đầu hoạt động cho sân Hiện

R2.11 Tính tiền giờ của sân Ẩn

R2.12 Đổi màu icon khi sân hoạt động Ẩn

R2.13 Tự động khuyến mãi khi khách hàng đá đủ 10

R3.6 Tìm kiếm lịch đặt theo ngày đặt lịch Hiện

R3.7 Tìm kiếm lịch đặt theo tên khách hàng Hiện

R4.5 Xem thông tin dịch vụ Hiện

R4.6 Chuyển dịch vụ vào từng gói dịch vụ Hiện

R4.7 Xóa dịch vụ ra khỏi gói dịch vụ Hiện

R4.11 Cập nhật gói dịch vụ Hiện

Trang 22

R4.12 Xem thông tin gói dịch vụ Hiện

R4.13 Tự động tính số sản phẩm có trong kho khi nhập

R5.2 Tính lương nhân viên Hiện

R5.3 Ứng lương nhân viên Hiện

R5.5 Sửa thông tin nhân viên Hiện

R5.6 Cập nhật thông tin nhân viên Hiện

R5.9 Xem danh sách nhân viên có trong sân Hiện

R5.10 Xem công và lương của nhân viên Hiện

R5.11 Không thể xóa nhân viên khi nhân viên đang làm

R6.1 Thêm thông tin khách hàng Hiện

R6.2 Sửa thông tin khách hàng Hiện

R6.3 Xóa thông tin khách hàng Hiện

R6.4 Cập nhật thông tin khách hàng Hiện

R6.5 Xem thông tin khách hàng Hiện

R6.6 Xem số lượt đá của khách hàng Hiện

R6.7 Không thể xóa thông tin khách hàng đang hoạt

R7.2 Sửa thông tin người Hiện

Trang 23

2.4 Đặc tính người dùng

Người dùng hệ thống (hay người quản lí) được phép sử dụng các chức năng công cụ của toàn hệ thống, liên hệ nâng cấp sever, yêu cầu chỉnh sửa phần mền khi bị lỗi chương trình cụ thể như sau:

2.4.1 Quản lí hoạt động của sân bóng

Quản lí tất cả thông tin về sân bóng nhằm trợ giúp và cung cấp thông tin - Quản lí thông tin của sân: mã sân, tên sân, kiểu sân,…

- Quản lí tình trạng của sân đang đá hay còn trống, ngoài ra còn quản lí đổi sân khi khách yêu cầu

- Quản lí dịch vụ của sân khi khách gọi trong đó có thông tin của gói dịch vụ để dễ dàng quản lí

- Quản lí thanh toán hóa đơn khi kết thúc trận đá

Người quản lí có thể thêm sân, xóa, cập nhật sân hiện có và xem tình trạng hoạt động của sân

Khi thêm một sân thì hệ thống sẽ cung cấp cho sân mới một mã tự động tăng Sau khi thao tác thì sân sẽ lưu lại, phần mền sẽ kiểm tra tên sân, nếu trùng tên sân thì phần mềm sẽ báo lỗi Nếu tất cả hợp lệ thì phần mềm sẽ cập nhật thêm một sân mới

R7.3 Xóa thông tin người dùng Hiện

R7.4 Không thể xóa người dùng khi đăng nhập Ẩn

R7.5 Người dùng không có trong danh sách thì không

R8.1 Xem lịch sử hóa đơn Hiện

R8.2 Xem lịch sử chi tiết của từng hóa đơn HIện

R9 Quản lí thống kê

R9.1 Thống kê doanh thu theo tháng Hiện

R9.2 Thống kê doanh thu theo năm Hiện

R9.3 Thống kê chi tiết của tháng của năm cần thống kê Hiện

Trang 24

Khi người quản lí tra cứu sân thì phần mềm sẽ hiển thị các sân cần tra cứu và người quản lí có thể thao tác (thêm, xóa, sửa, làm tươi, đổi sân, đổi tên) trực tiếp trên sân đó

2.4.2 Quản lí tình trạng đặt lịch

Quản lí chi tiết lịch đặt sân của khách hàng

Khi khách hàng đến sân muốn đặt giờ đá thì người quản lí sẽ cung cấp thông tin sân đang hoạt động hay sân trống để khách hàng dễ dàng đặt lịch đá

Khi thêm khách hàng đặt giờ thì hệ thống sẽ cung cấp cho khách hàng một mã đặt lịch tự động Sau khi thao tác thì ngày, giờ được sẽ được lưu lại, phần mềm kiểm tra xem và báo lỗi Nếu hợp lệ thì phần mềm sẽ cập nhật giờ đá

Người quản lí có thể tra cứu danh sách đặt lịch đá bóng của sân thì phần mềm hiển thị cho người quản lí Ngoài ra, người quản lí có thể xóa, sửa và tìm kiếm lịch đặt sân

2.4.3 Quản lí dịch vụ

Quản lí thông tin của dịch vụ và gói dịch vụ (chuyển dịch vụ qua thành gói dịch): mã dịch vụ, mã gói dịch vụ, tên dịch vụ, tên gói dịch vụ, đơn giá, loại,

Khi thêm 1 dịch vụ (gói dịch vụ) mới thì hệ thống sẽ cung cấp một mã dịch vụ (mã gói dịch vụ) tự động tăng Khi nhập hàng thì hệ thống sẽ tự kiểm tra mã hàng còn thì cộng thêm vào còn nếu chưa có thì thêm mới vào kho hàng Ngược lại, nếu người quản lí xuất hàng thì hệ thống sẽ tự động trừ đi số lượng đã dùng

Khi người quản lí tra cứu dịch vụ (gói dịch vụ) thì phần mềm sẽ hiển thị các dịch vụ (gói dịch vụ) cần tra cứu người quản lí có thể thao tác ( xóa dịch vụ -gói dịch vụ, sửa dịch vụ- sửa gói dịch vụ)

2.4.4 Quản lí nhân viên

Quản lí tất cả thông tin về nhân sự của sân bóng:

- Quản lí thông tin nhân viên: mã nhân viên, tên nhân viên, giới tính - Quản lí sơ yếu lí lịch

- Quản lí công làm việc của nhân viên: Hệ thống cho phép người quản lí chấm công nhân viên như chấm công trên excel

- Quản lí lương của nhân viên: Khi nhân viên ứng tiền thì lúc tính lương hệ thống sẽ tự động cập nhật trừ lương của nhân viên đó

Trang 25

Người quản lí có thể thêm nhân viên, xóa nhân viên, tra cứu nhân viên, cập nhật nhân viên và xem danh sách nhân viên trình trạng làm việc cảu nhân viên

Khi thêm một nhân viên thì hệ thống sẽ cung cấp cho nhân viên một mã nhân viên tự động

Sau khi thao tác nhân viên sẽ lưu lại, phần mềm sẽ kiểm tra tên nhân viên, nếu

rỗng sẽ báo lỗi ngay, CMND phải đầy đủ 9 số,… Nếu tất cả hợp lệ thì phần mềm sẽ

cập nhật một nhân viên

Khi người quản lí tra cứu nhân viên thì phần mềm sẽ hiển thị các nhân viên cần tra cứu, người quản lí thao tác (thêm, xóa, sửa, cập nhật) trực tiếp trên đó

2.4.5 Quản lí khách hàng

- Quản lí thông tin khách hàng gồm: mã khách hàng, tên khách hàng,…

- Quản lí sơ yếu lí lịch của khách hàng

Hệ thống sẽ cung cấp cho khách hàng một mã khách hàng tự động tăng khi khách đến sân đá banh Sau khi thao tác khách hàng sẽ được hệ thống lưu lại, phần mềm kiểm tra Nếu tất cả hợp lệ thì phần mềm sẽ cập nhật một khách hàng

Ngoài ra, người quản lí có thể xóa, sửa, tìm kiếm khách hàng

2.4.6 Quản lí Users:

- Đối với quản lí User thì có các chức năng cơ bản như: thêm, sửa, xóa

- Ngoài ra, người quản lí User còn có quyền cho người dùng đăng ký User đăng nhập trên hệ thống

2.4.7 Quản lí hóa đơn

- Quản lí thông tin lịch sử của hóa đơn

- Quản lí thông tin chi tiết của từng hóa đơn

Trang 26

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 3.1 Các actor và use-case trong hệ thống

3.1.1 Các Actor và vai trò Actor trong hệ thống Bảng 2: Các Actor và Use - Case trong hệ thống

Admin Quản lí hệ thống

Người dùng Người dùng của hệ thống (người quản lí)

3.1.2 Các Use Case và vai trò Use Case trong hệ thống Bảng 3: Các Use Case và vai trò Use Case trong hệ thống

Đăng nhập Người dùng đăng nhập

Thêm sân Thêm 1 sân mới Đổi tên sân Đổi tên sân cho hợp lí

Đổi sân Đổi sân khi có yêu cầu của khách hàng

Thanh toán Thanh toán hóa đơn khi sân kết thúc trận đấu Thêm đặt lịch Thêm 1 lịch đặt sân mới khi có khách yêu cầu

Cập nhật danh sách đặt lịch Cập nhật 1 danh sách đặt lịch

Thêm gói dịch vụ Thêm thông tin 1 gói dịch vụ mới

Thêm nhân viên Thêm 1 nhân viên mới

Thêm khách hàng Thêm 1 khách hàng mới Thống kê doanh thu theo năm Thống kê doanh thu theo năm

Đăng ký người dùng Đăng ký 1 người dùng mới

Trang 27

3.2 Sơ đồ use case

3.2.1 Sơ đồ Use Case tổng quát (sơ đồ UC giữa Actor và UC)

Hình 3: Sơ đồ Use Case tổng quát 3.2.2 Mối quan hệ giữa UC và UC

3.2.2.1 Phân rã 1 sơ đồ UC_QuanLiHoatDongSan

Hình 4: Sơ đồ mối quan hệ Use Case quản li hóa đơn

Trang 28

3.2.2.2 Phân rã 2 sơ đồ UC_DatLich

Hình 5: Sơ đồ mối quan hệ Use Case đặt lịch

3.2.2.3 Phân rã 3 sơ đồ UC_DichVu

Hình 6: Sơ đồ mối quan hệ Use Case dịch vụ

Trang 29

3.2.2.4 Phân rã 4 sơ đồ UC_NhanVien

Hình 7: Sơ đồ mối quan hệ Use Case nhân viên

3.2.2.5 Phân rã 5 sơ đồ UC_KhachHang

Hình 8: Sơ đồ mối quan hệ Use Case khách hàng

Trang 30

3.2.2.6 Phân rã sơ đồ UC_Users

Hình 9: Sơ đồ mối quan hệ Use Case Users

3.2.2.7 Phân rã sơ đồ UC_HoaDon

Hình 10: Sơ đồ mối quan hệ Use Case hóa đơn

3.2.2.8 Phân rã sơ đồ UC_ThongKe

Hình 11: Sơ đồ mối quan hệ Use Case thống kê

Trang 31

3.2.3 Đặc tả Use Case

3.2.3.1 Đặt tả UC_Quản lí đăng nhập

 Đặc tả Use Case đăng nhập

- Mục đích: Đảm bảo và an toàn bảo mật hệ thống

- Mô tả: Người dùng khi muốn thao tác với hệ thống như đặt sân, quản lí nhân viên, quản lí dịch vụ,…phải đăng nhập vào hệ thống

- Tiền điều kiện: Người dùng đăng nhập vào hệ thống - Hậu điều kiện: Thông báo đăng nhập thành công/thất bài - Ri: R1.1, R1.2

- Trình tự thực hiện: Chú giải: A: Actor(tác nhân); S: System(hệ thống)

Bảng 4: Đặc tả Use Case đăng nhập

B4.1 A: Không nhập tên, Không nhập mật khẩu

S: Xuất thông báo lỗi: Yêu cầu nhập tên và mật khẩu B4.2 A: Không nhập tên, nhập mật khẩu

S: Xuất thông báo lỗi: Yêu cầu nhập tên đăng nhập B4.3 A: Nhập tên sai, nhập mật khẩu đúng

S: Xuất thông báo lỗi: Yêu cầu nhập lại tên đăng nhập B4.4 A: Nhập tên, không nhập mật khẩu

S: Xuất thông báo: Yêu cầu nhập nhập mật khẩu B4.5 A: Nhập tên đúng, nhập mật khẩu sai

S: Xuất thông báo: Yêu cầu nhập lại mật khẩu

Trang 32

3.2.3.2 Chức năng quản lí hoạt động của sân

 Use Case thêm sân

- Mục đích: Thêm sân mới vào hệ thống - Mô tả: Người dùng thêm sân vào hệ thống

- Tiền điều kiện: Người dùng đăng nhập thành công vào hệ thống

- Hậu điều kiện: Người dùng thêm sân thành công khi sử dụng hệ thống Ngược lại trạng thái của hệ thống không đổi

- Ri: R2.1

- Trình tự thực hiện:

Chú giải: A: Actor(tác nhân); S: System(hệ thống)

Bảng 5: Use Case thêm sân

B1 A: Người dùng di chuyển chuột tới thanh menu, chọn quản lí sân

B2 S: Hệ thống hiển thị Form quản lí sân

B3 A: Người dùng nhấn chuột phải (menu chuột phải) chọn thêm sân

B4 S: Hệ thống hiện ra một sân mới

B5 A: Người dùng thao tác với sân

B6 S: Danh sách sân được cập nhật lại màn hình

B7 UC kết thúc

 Use Case đổi tên sân

- Mục đích: Muốn đổi tên sân

- Mô tả: Mô tả người dùng đổi tên sân

- Tiền điều kiện: Người dùng đăng nhập thành công vào hệ thống

- Hậu điều kiện: Đổi tên sân thành công Ngược lại trạng thái của hệ thống

Trang 33

Bảng 6: Use Case đổi tên sân

B1 A: Người dùng di chuyển chuột tới thanh menu, chọn quản lí sân

B2 S: Hệ thống hiển thị Form quản lí sân và số sân trong hệ thống

B3 A: Người dùng nhấn nút đổi tên(hoặc menu chuột phải)

B4 S: Hệ thống xử lí và để chuột nhấp nháy

B5 A: Người dùng đặt lại tên cho sân

B6 S: Danh sách sân được cập nhật lại màn hình

B7 UC kết thúc

 Use Case bắt đầu hoạt động cho sân (Đặt sân)

- Mục đích: Biết được sân đang hoạt động

- Mô tả: Người dùng bắt đầu một trận đá khi khách hàng yêu cầu - Tiền điều kiện: Người dùng phải đăng nhập vào hệ thống

- Hậu điều kiện: Khai báo thành công hoạt động cho sân Ngược lại trạng thái của hệ thống không đổi

- Ri: 2.5

- Trình tự thực hiện:

Chú giải: A: Actor(tác nhân); S: System(hệ thống)

Bảng 7: Use Case bắt đầu hoạt động cho sân

B1 A: Người dùng chọn chức năng quản lí từ thanh menu

B2 S: Hệ thống cập nhật danh sách có trong hệ thống

B3

A: Người dùng chọn sân cần bắt đầu(sân có icon hình màu xanh), sau đó bấm chuột phải (từ menu chuột phải) chọn nút “bắt đầu”

S: - Hệ thống kiểm tra nếu sân chưa khai báo thuộc tính thì xuất thông báo: Vui lòng khai báo thuộc thính cho sân

- Còn sân đã khai báo thì chuyển qua bước 4

B4

- Form Đặt sân hiện ra(hệ thống tự cập nhật tên sân, giờ bắt đầu lấy giờ hiện tại) Người dùng bấm nút OK

Trang 34

B4.1 A: Không chọn thời gian đá, không nhân viên phục vụ, tên khách hàng(có thể ko chọn - khách vãng lai) , gói dịch vụ(có thể không chọn)

S: Xuất thông báo: Vui lòng chọn nhân viên phục vụ sân( thời gian đá mặc định ít nhất 30 phút)

B4.2 A: Chọn thời gian đá, chọn nhân viên phục vụ, tên khách hàng(có thể ko chọn - khách vãng lai) , gói dịch vụ(có thể không chọn) S: Sân đã chuyển sang trạng thái đang đá (icon có hình màu cam)

B5 S: Danh sách sân được cập nhật lại màn hình

B6 UC kết thúc

 Use Case đổi sân

- Mục đích: Đổi sân khi khách cảm thấy mặt sân bị bóc hay… - Mô tả: Đổi sân khi khách yêu cầu

- Tiền điều kiện: Đăng nhập thành công vào hệ thống

- Hậu điều kiện: Đổi sân thành công Ngược lại trạng thái của hệ thống không đổi

- Ri: R2.6

- Trình tự thực hiện:

Chú giải: A: Actor(tác nhân); S: System(hệ thống)

Bảng 8: Use Case đổi sân

B1 A: Người dùng nhấn chuột phải (menu hiện ra) chọn nút đổi sân

B2 S: Hệ thống xuất hiện Form đổi sân

B3 A: Người dùng chọn cùng kiểu sân

B4 S: Form cùng kiểu sân được cập nhật

B5 A: Người dùng chọn cùng đơn giá

B6 S: Form cùng đơn giá được cập nhật

B7

- Bấm nút thay đổi

A: Chưa chọn sân cần thay đổi

S: Hệ thống xuất thông báo: Vui lòng chọn sân cần đổi

Ngày đăng: 04/05/2024, 06:54

Tài liệu cùng người dùng

Tài liệu liên quan