Đồ án Xây dựng chương trình quản lý đăng ký tham gia hoạt động giải trí
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Xây dựng chương trình quản lý đăng ký tham gia hoạt động giải trí", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- do_an_xay_dung_chuong_trinh_quan_ly_dang_ky_tham_gia_hoat_do.pdf
Nội dung text: Đồ án Xây dựng chương trình quản lý đăng ký tham gia hoạt động giải trí
- Lời cảm ơn Trƣớc tiên em xin đƣợc bày tỏ sự trân trọng và lòng biết ơn đối với thầy giáo PGS.TS Nguyễn Văn Vỵ, giảng viên Bộ môn Công nghệ phần mềm – Khoa Công nghệ thông tin – Trƣờng Đại học Công nghệ - ĐHQGHN. Trong suốt thời gian học và làm đồ án tốt nghiệp, thầy đã dành rất nhiều thời gian quý báu để tận tình chỉ bảo, hƣớng dẫn, định hƣớng cho em trong việc nghiên cứu, thực hiện đồ án. Em xin đƣợc cảm ơn các thầy cô giáo Trƣờng Đại học Dân lập Hải phòng đã giảng dạy em trong quá trình học tập, thực hành, làm bài tập, đọc và nhận xét đồ án của em, giúp em hiểu thấu đáo hơn lĩnh vực mà em nghiên cứu, những hạn chế mà em cần khắc phục trong việc học tập, nghiên cứu và thực hiện đồ án. Hải Phòng, Tháng 11 năm 2014 Sinh viên Nguyễn Thành Duy
- MỤC LỤC Lời cảm ơn 1 MỤC LỤC 1 MỞ ĐẦU 3 DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU 3 CHƢƠNG 1: MÔ TẢ BÀI TOÁN VÀ MÔ HÌNH NGHIỆP VỤ CỦA TRUNG TÂM GIẢI TRÍ 2 1.1. GIỚI THIỆU VỀ TRUNG TÂM GIẢI TRÍ POWERBOWL 2 1.1.1. Mô hình tổ chức 2 1.1.2. Mô hình quản lý trung tâm 3 1.2. MÔ TẢ HOẠT ĐỘNG CỦA TRUNG TÂM GIẢI TRÍ 4 1.2.1. Mô tả bài toán 4 1.2.2. Biểu đồ tiến trình nghiệp vụ hoạt động chính của trung tâm 5 1.3. NHỮNG VẤN ĐỀ ĐẶT RA VÀ GIẢI PHÁP 7 1.3.1. Những vấn đề gặp phải 7 1.3.2. Các giải pháp cho các vấn đề ở trên 8 CHƢƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 9 2.1. MÔ HÌNH NGHIỆP VỤ 9 2.1.1 Bảng phân tích các yếu tố bài toán 9 2.1.2. Biểu đồ ngữ cảnh của hệ thống 10 2.1.3. Biểu đồ phân rã chức năng 10 2.1.4. Mô tả chi tiết chức năng sơ cấp 10 2.1.5. Danh sách hồ sơ dữ liệu đƣợc sử dụng 12 2.1.6. Ma trận thực thể - chức năng 12 2.2. SƠ ĐỒ LUỒNG DỮ LIỆU CÁC MỨC 13 2.2.1. Biểu đồ luồng dữ liệu mức 0 13 2.2.2 Biểu đồ luồng dữ liệu mức 1 14 2.3. THIẾT KẾ CƠ SỞ DỮ LIỆU 17 2.3.1. Bảng liệt kê các thuộc tính của các hồ sơ, tài liệu 17 2.3.2. Xác định các thực thể và thuộc tính 18 2.2.3. Xác định mối quan hệ giữa các thực thể 18 2.2.4. Mô hình liên kết thực thể (ER) 20 21 2.2.6. Sơ đồ liên kết của mô hình quan hệ 23 24 2.4. THIẾT KẾ GIAO DIỆN 27 2.4.1 Các giao diện nhập liệu 27 28
- 31 CHƢƠNG 3 : CƠ SỞ LÝ THUYẾT 33 3.1. PHÂN TÍCH THIẾT KẾ HỆ THỐNG HƢỚNG CẤU TRÚC 33 3.1.1. Quá trình phát triển của một hệ thống thông tin 33 3.1.2. Tiếp cận phát triển hệ thống thông tin định hƣớng cấu trúc 33 3.2. THIẾT KẾ CƠ SỞ DỮ LIỆU QUAN HỆ 35 3.2.1. Mô hình liên kết thực thể E-R 35 3.2.2. Mô hình cơ sở dữ liệu quan hệ 42 3.3. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL 45 3.4. NGÔN NGỮ LẬP TRÌNH PHP , HTML,CSS 46 3.4.1 ngôn ngữ HTML : 46 3.4.2 ngôn ngữ CSS : 46 3.4.3 ngôn ngữ PHP : 46 CHƢƠNG 4: CÀI ĐẶT CHƢƠNG TRÌNH 47 4.1. GIAO DIỆN CHÍNH 47 4.2. CÁC GIAO DIỆN CẬP NHẬT DỮ LIỆU 49 4.2.1. Giao diện cập nhật dịch vụ 49 4.2.2. Giao diện cập nhật loại ngày 49 4.2.3. Giao diện cập nhật khoảng giờ 50 4.2.4. Giao diện cập nhật nhân viên 50 4.2.5. Giao diện cập nhật thiết bị 51 4.2.6. Giao diện cập nhật loại khách 51 4.2.7. Giao diện cập nhật bảng giá 52 4.3. CÁC GIAO DIỆN XỬ LÝ DỮ LIỆU 52 4.2.1. Giao diện Bán vé dịch vụ 52 4.2.2. Giao diện Cập nhật sử dụng thiết bị 53 4.2.3. Giao diện Lập phiếu thanh toán: 53 4.2.4. Giao diện Lập hợp đồng: 54 4.2.4. Giao diện Đăng ký thành viên: 54 4.3. GIAO DIỆN LẬP BÁO CÁO: 55 KẾT LUẬN 56 TÀI LIỆU THAM KHẢO 57 PHỤ LỤC 58 1. Một số mẫu hồ sơ hiện đang đƣợc sử dụng trong trung tâm 58
- DANH MỤC HÌNH VẼ VÀ BẢNG BIỂU Số Tên của hình/bảng Trang Hình 1.1. Mô hình tổ chức của trung tâm 2 Hình 2.1.2. Biểu đồ ngữ cảnh của hệ thống 10 Hình 2.1.3. Biểu đồ phân rã chức năng của hệ thống 10 Hình 2.1.6. Ma trận thực thể chức năng 12 Hình 2.2.1: Biểu đồ luồng dữ liệu mức 0 13 Hình 2.2.2b. Biểu đồ luồng dữ liệu mức 1: Cung cấp dịch vụ 15 Hình 2.2.2c. Biểu đồ luồng dữ liệu mức 1: Báo cáo 16 Bảng 2.3.1: Phân tích dữ liệu 17 Bảng 2.3.2: Bảng các thực thể 18 Bảng 2.3.3: Bảng phân tích mối quan hệ 19 Hình 2.2.4 mô hình liên kết thực thể ER 20 Hình 2.2.6. Sơ đồ liên kết của mô hình quan hệ 23 Bảng 2.4.1a: Các giao diện nhập liệu 1 27 Bảng 2.4.1b: Các giao diện nhập liệu 2 27 Hình 2.4.2a. Biểu đồ luồng dữ liệu hệ thống: Tìm kiếm TT & đăng ký 28 Hình 2.4.2b. Biểu đồ luồng hệ thống tiến trình “Cung cấp dịch vụ” 29 Hình 2.4.2c. Biểu đồ luồng hệ thống tiến trình “ Báo cáo” 30 Bảng 2.4 Các giao diện xử lý 30 Bảng 2.4.3: Tích hợp các giao diện hệ thống 31 Hình 2.4.3b. Biểu đồ kiến trúc hệ thống các giao diện của chƣơng trình 32
- MỞ ĐẦU Hiện nay, tại các thành phố, do đời sống của dân cƣ ngày một cao, nhu cầu giải trí, thể dục, thể thao ngày một lớn. Nhiều nhà kinh doanh đã nắm bắt đƣợc nhu cầu này và đã mở nhiểu cơ sở dịch vụ với các trang thiết bị thích hợp để phục vụ khách hàng. Khi cơ sở càng phát triển, khách hàng ngày một đông, việc quản lý khách hàng theo cách thủ công gặp nhiều khó khăn: không theo dõi đƣợc khách hàng sử dụng dịch vụ, việc phân chia các trang thiết bị thiết bị vui chơi cho khách hàng không kịp thời, có sự chồng chéo. Đôi khi khách hàng không có thiết bị để sử dụng, nhƣng có những thiết bị để không. Làm sao đánh giá đúng nhu cầu của từng loại dịch vụ để có thể trang bị kịp thời, làm sao để phân phối thiết bị cho khách một cách phù hợp. Đồng thời còn cần thuê các nhà chuyên môn phù hợp để giúp đỡ khách hàng luyên tập và sử dụng các thiết bị. Để giải quyết vấn đề này chỉ có thể xây dựng các phần mềm trợ giúp cho ngƣời quản lý trong việc quản lý trang thiết bị cũng nhƣ phân phối khách hàng đúng chỗ, đúng phƣơng tiện. Đó là lý do đề tài “Xây dựng chương trình quản lý đăng ký tham gia hoạt động giải trí “ đƣợc chọn làm đề tài đồ án tốt nghiệp của tôi. Hệ thống chƣơng trình đƣợc phát triển theo hƣớng cấu trúc. Chƣơng trình đƣợc phát triển thành công có thể đƣợc áp dụng vào thực tiễn để trợ giúp việc quản lý các dịch vụ vui chơi giải trí một cách hiệu quả. Đặc biệt là cho phép tiết kiệm nhân công quản lý, nắm đƣợc nhu cầu sử dụng dịch vụ để mua sắm trang thiết bị kịp thời nhằm đáp ứng tốt nhất nhu cầu dịch vụ giải trí ngày một tăng của khách. Đồ án gồm 4 chƣơng: Chƣơng 1: Mô tả bài toán và mô hình nghiệp vụ của trung tâm giải trí : Trình bày nội dung bài toán thực tế đặt ra và tiến hành mô tả mô hình nghiệp vụ của trung tâm Chƣơng 2: Phân tích hệ thống và Thiết kế hệ thống . Tiến hành phân tích các hoạt động xử lý và cấu trúc dữ liệu, từ đó đặc tả yêu cầu xử lý và yêu cầu dữ liệu của bài toán. Chƣơng 3: Cơ sở lý thuyết : những cơ sở lý thuyết đƣợc vận dụng trong đồ án Chƣơng 4 Cài đặt chƣơng trình. Cuối cùng là kết luận và tài liệu tham khảo. 1
- CHƢƠNG 1: MÔ TẢ BÀI TOÁN VÀ MÔ HÌNH NGHIỆP VỤ CỦA TRUNG TÂM GIẢI TRÍ 1.1. GIỚI THIỆU VỀ TRUNG TÂM GIẢI TRÍ POWERBOWL 1.1.1. Mô hình tổ chức Trung tâm giải trí PowerBowl tại tầng 4 tòa nhà TD Plaza tại lô 20A - Đƣờng Lê Hồng Phong, phố Ngô Quyền, thành phố Hải Phòng. Lĩnh vực kinh doanh của trung tâm là chuyên cung cấp những dịch vụ giải trí cho khách hàng nhƣ bao gồm: bowling, billards , game, và khu vui chơi trẻ em. Kèm theo đó là các dịch vụ phụ trợ giúp khách hàng có thể tham gia giải trí một cách thoải mái và tiện lợi nhất. Mô hình tổ chức: Trung tâm gồm có một giám đốc, ngƣời quản lý và các bộ phận kinh doanh nghiệp vụ (hình 1.1) Giám Đốc Quản Lý Bộ phận bán Bộ phận dịch Bộ phận chăm hàng vụ sóc KH Hình 1.1. Mô hình tổ chức của trung tâm 2
- 1.1.2. Mô hình quản lý trung tâm Trong Trung tâm, nhiệm vụ và trách nhiệm của các thành viên và các bộ phận thành phần nhƣ sau: a. Giám đốc: chịu trách nhiệm trƣớc nhà nƣớc và pháp luật về những hoạt động của trung tâm (công ty). Giám đốc có quyền lợi và trách nhiệm nhƣ sau: − Là chủ tài khoản , quản lý việc sử dụng tài sản của trung tâm. − Ký duyệt các quyết định, hợp đồng của trung tâm. − Xây dựng kế hoạch dài hạn về phát triển trung tâm. b. Người quản lý: có nhiệm vụ quản lý toàn bộ hoạt động thƣờng ngày của trung tâm, giải quyết các vấn đề, thắc mắc của khách hàng, thống kê báo cáo cho giám đốc trung tâm. c. Bộ phận bán hàng Có nhiệm vụ: − Tƣ vấn khách hàng về các dịch vụ của trung tâm − Đăng ký hội viên cho khách hàng − Lập phiếu thanh toán cho khách hàng tham gia các dịch vụ giải trí − Lập báo cáo doanh thu hàng ngày cho quản lý d. Bộ phận dịch vụ Có nhiệm vụ: − Cung cấp các thiết bị cần thiết cho khách hàng tham gia các dịch vụ giải trí : giầy chơi bowling, gậy, bóng billards . và dịch vụ đồ uống. − Quản lý các trang thiết bị về số lƣợng, kiểm tra hiện trạng các thiết bị báo cáo ngƣời quản lý để lập kế hoạch sửa chữa thay thế bổ sung . e. Bộ phận Chăm sóc khách hàng Có nhiệm vụ: − Trực tiếp hỗ trợ khách hàng tham gia các dịch vụ billards, bowling, game, các em nhỏ trong khu vui chơi trẻ em (hƣớng dẫn sử dụng các dịch vụ ) khắc phục sự cố nếu có. 3
- − Tiếp nhận yêu cầu dịch vụ của khách hàng đang tham gia giải trí chuyển đến bộ phận bán hàng. 1.2. MÔ TẢ HOẠT ĐỘNG CỦA TRUNG TÂM GIẢI TRÍ 1.2.1. Mô tả bài toán Khách hàng đến trung tâm giải trí, sau khi đi thăm quan khách có thể tìm hiểu về các dịch vụ billards, bowling, khu vui chơi trẻ em, video game, game 5D (giá dịch vụ, hình thức thức sử dụng ) bằng cách liên hệ với nhân viên chăm sóc khách hàng ngay tại các bàn, tại địa điểm vui chơi hoặc tại quầy tiếp tân. Sau đó khách hàng có thể đăng ký làm thành viên của trung tâm và đăng ký sử dụng dịch vụ của trung tâm với các nhân viên bán hàng. Khách hàng sử dụng dịch vụ game sẽ mua các đồng xu video game (3500 vnđ/1xu) tại quầy bán hàng và sử dụng dịch vụ. Trong quá trình tham gia các trò chơi nếu khách hàng không hiểu cách chơi có thể liên hệ nhân viên chăm sóc khách hàng để đƣợc hƣớng dẫn. Tƣơng tự nhƣ vậy với dịch vụ game 5D, khách hàng sử dụng cần mua vé trƣớc cho mỗi lần chơi, giá vé sẽ đƣợc niêm yết trên bảng giá dịch vụ tại quầy tiếp tân theo từng khung giờ cụ thể hoặc khách có thể hỏi giá dịch vụ qua các nhân viên bán hàng. Khách hàng đăng ký dịch vụ khu vui chơi trẻ em sẽ mua vé tại quầy tiếp tân, giá vé cũng đƣợc bán theo từng khung giờ cụ thể. Nhân viên bán hàng sẽ kiểm tra số lƣợng trẻ em trong khu vui chơi nếu quá đông sẽ không tiếp nhận thêm khách (số lƣợng <= 20). Mỗi một trẻ em vào chơi sẽ đƣợc một ngƣời lớn vào cùng Khách hàng có nhu cầu sử dụng dịch vụ billards có thể liên hệ với nhân viên chăm sóc khách hàng tại các bàn, hoặc nhân viên bán hàng tại quầy tiếp tân với khung giá cố định (50.000 vnđ/1 giờ và thời gian chơi tối thiểu là 15 phút) . Khách hàng có nhu cầu sử dụng dịch vụ bowling liên hệ với nhân viên bán hàng tại quầy tiếp tân. Giá dịch vụ đƣợc quy định theo từng game (tối đa 1 giờ / 1game) và theo các khung giờ trên bảng giá dịch vụ. Với dịch vụ billards và bowling nhân viên bán hàng kiểm tra số lƣợng bàn đã đƣợc sử dụng, đặt trƣớc nếu còn bàn trống sẽ làm phiếu theo dõi dịch vụ cho khách hàng (số bàn, thời gian bắt đầu sử dụng dịch vụ, thời gian kết thúc, các dịch vụ sử dụng, số lƣợng, đơn vị tính , đơn giá, tổng tiền) và lƣu vào sổ theo 4
- dõi dịch vụ của khách hàng. Bộ phận dịch vụ sẽ dựa vào sổ này để cung cấp các dịch vụ khách hàng yêu cầu. Khi thanh toán khách hàng là hội viên xuất trình thẻ hội viên sẽ đƣợc giảm giá 20% với hội viên thƣờng, 30% với hội viên VIP. Khách hàng muốn đăng ký hội viên có thể đến quầy tiếp tân để đăng ký, cung cấp thông tin cá nhân bao gồm (họ tên, ngày sinh, số điện thoại) cho nhân viên trung tâm để làm thẻ hội viên. Hội viên có tổng tiền thanh toán sử dụng dịch vụ của trung tâm lớn hơn 5 triệu sẽ trở thành hội viên VIP và đƣợc hƣởng nhũng ƣu đãi của hội viên VIP. 1.2.2. Biểu đồ tiến trình nghiệp vụ hoạt động chính của trung tâm 5
- Bộ phận chăm sóc khách Bộ phận dịch Hồ sơ, dữ liệu liên Khách hàng Bộ phận bán hàng Lãnh đạo hàng vụ quan Giới thiệu Có nhu Bảng dịch vụ cầu giải trí dịch vụ bán vé Bảng dịch vụ dịch vụ Danh sách vé dv Đăng ký Danh sách thành thành viên cho kh viên Phân phối, hướng 0 1 dẫn sử dụng dv Danh sách trang thiết Kh Có vé bị DV sẵn 0 Hoàn thiện sàng thiết bị Đọc báo 1 cáo, ra quyết đinh Trạng thái sử dụng Ghi nhận sử thiết bị Lập phiếu tt dụng dịch vụ Phiếu thanh toán Thôi sử Kết thúc dịch Báo cáo dụng DV vụ, báo cáo 6
- 1.3. NHỮNG VẤN ĐỀ ĐẶT RA VÀ GIẢI PHÁP 1.3.1. Những vấn đề gặp phải Khi hoạt động, trung tâm gặp một số khó khăn sau đây: 1. Khi khách hàng mua xu hay phiếu sử dụng dịch vụ, thƣờng vào lúc đông, nhân viên bán hàng không biết đƣợc tình sử dụng dịch vụ lúc hiện thời: liệu có còn thiết bị để chơi không? số các em đang vui chơi có đông không? Liệu có thể bán vé để ngƣời sử dụng vào tiếp hay không? Trên thực tế, với khu vui chơi không lớn, ngƣời bán hàng phải ra chỗ vui chơi để quan sát hay phải yêu cầu ngƣời hƣớng dẫn dịch vụ xem thực tế rồi báo cáo lại, Việc làm thủ công này tốn rất mất thời gian. Nếu cứ bán vé thì làm cho khách phải chờ quá lâu hoặc có thể không đủ thời gian để chơi. 2. Vào những thời điểm khác nhau (trong ngày) hay những ngày khác nhau (trong tuần, tháng) việc sử dụng các loại dịch vụ có sự khác nhau. Trung tâm thực sự chƣa có các dữ liệu để có thể trang bị hoặc chuẩn bị các điều kiện để đáp ứng yêu cầu của khách một cách tốt nhất? 3. Chƣa có cách tổng hợp các dữ liệu về số ngƣời vui chơi mỗi loại và doanh thu từ mỗi loại hình dịch vụ tƣơng ứng. 4. Chƣa có kế hoạch để mở rộng khu vui chơi cũng nhƣ trang bị và sửa chữa kịp thời để đáp ứng yêu cầu tốt nhất của khách hàng. 5. Nhiều ngƣời còn chƣa biết đến trung tâm giải trí, việc đăng ký đến tận trung tâm cũng làm giảm lƣợng khách hàng 7
- 1.3.2. Các giải pháp cho các vấn đề ở trên Vấn đề Giải pháp tƣơng ứng 1. Không biết hiện trạng sử dụng Cần có phƣơng tiện cập nhật tình hình sử dịch vụ dụng dịch vụ tại mỗi điểm dịch vụ và hiển thị khi ngƣời bán hàng cần biết. 2. Không biết số liệu về sử dụng Cần có chƣơng trình để tự động việc tổng dịch vụ theo thời gian. hợp và phân tích dữ liệu theo các tiêu chí 3. Tổng hợp số liệu về sử dụng yêu cầu. dịch vụ và doanh thu chậm 4. Chƣa đáp ứng tốt yêu cầu dịch Cần phân tích dữ liệu và lập kế hoạch vụ thƣờng xuyên đáp ứng phù hợp với yêu cầu. 5. Nhiều ngƣời chƣa biết đến Cần xây dựng trang web để quảng bá trung tâm, việc đăng ký khó trung tâm và cho phép ngƣời dùng đăng khăn ký ở bất cứ nơi nào, vào bất kỳ thời gian nào có điều kiện. Tóm lại, cần xây dựng một chƣơng trình đƣợc thể hiện dƣới dạng một website để quản lý việc đăng ký và sử dụng dịch vụ của khách hàng 8
- CHƢƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1. MÔ HÌNH NGHIỆP VỤ 2.1.1 Bảng phân tích các yếu tố bài toán Chức năng: động từ +bổ ngữ Danh từ Nhận dạng Giới thiệu dịch vụ cho khách. Khách (tác nhân) Bán vé sử dụng dịch vụ T/tin dịch vụ Hồ sơ DL Đăng ký thành viên Danh sách Thành Hồ sơ DL viên Phân phối trang bị Danh sách trang Hồ sơ DL thiết bị Cập nhật trạng thái sử dụng t.bị Thông tin trạng thái Hồ sơ DL Lập phiếu thu Phiếu thu Hồ sơ DL Lập báo cáo gửi lãnh đạo Báo cáo hồ sơ DL Các bộ phận (tác nhân) Lãnh đạo (tác nhân) Từ phân tích trên, ta có các (tác nhân) tham gia vào hệ thống bao gồm: 1. Ngƣời dân (Khách) - những ngƣời đến sử dụng dịch vụ giải trí 2. Bộ phận thực hiện các chức năng của trung tâm để phục vụ khách 3. Lãnh đạo ngƣời nhận báo cáo từ các nhân viên và ra quyết định quản lý cho nhân viên. Các bộ phận xử lý hồ sơ Trong các (tác nhân) trên, các bộ phận chức năng của trung tâm thực hiện các chức năng của hệ thống để phục vụ khách hàng, nên theo định nghĩa không phải tác nhân của hệ thống. Chỉ có ngƣời dùng dịch vụ (Khách) và lãnh đạo là những tác nhân tƣơng tác với hệ thống. Ta có thể biểu diễn biểu đồ ngữ cảnh của hệ thống nhƣ cho trong hình 2.1.2 9
- 2.1.2. Biểu đồ ngữ cảnh của hệ thống t.tin nhu cầu giải trí 0 Thông tin dịch vụ t.tin yêu cầu báo cáo bản vụđăng ký TV HỆ THỐNG Lãnh Các quyết định đạo KHÁCH t.tin y.cầu DV CUNG CẤP DỊCH VỤ Báo cáo Phiếu t.toán GIẢI TRÍ Hình 2.1.2. Biểu đồ ngữ cảnh của hệ thống 2.1.3. Biểu đồ phân rã chức năng : Hệ thống cung cấp dịch vụ giải trí 1. Tìm kiếm &Đăng ký 2. Cung cấp dịch vụ 3. Báo cáo 1.1 Giới thiệu thông 2.1. Bán vé sử 3.1. Lập báo cáo tin dịch vụ dụng dịch vụ 1.2. Đăng ký thành 2.2. Phân phối sử viên dụng dịch vụ 1.3. Lập hợp đồng 2.3. Cập nhât trạng sử dụng dịch vụ thái sử dụng t.bj 2.4. Lập phiếu thanh toán Hình 2.1.3. Biểu đồ phân rã chức năng của hệ thống 2.1.4. Mô tả chi tiết chức năng sơ cấp 1.1. Giới thiệu thông tin dịch vụ Khi khách đến trung tâm, khách tìm các tài liệu, tranh ảnh hay các bảng giới thiệu về trung tâm, bao gồm các trò chơi giải trí khác nhau. Cách tham gia 10
- chơi, giá cả và cả chính sách khuyến mại ƣu đãi. Khách cũng có thể nắm đƣợc thông tin này qua bộ phận bán hàng có nhân viên giới thiệu 1.2. Đăng ký thành viên trung tâm Sau khi đã nghe giới thiệu, khách có thể đăng ký là thành viên của trung tâm và sẽ đƣợc cấp thẻ thành viên. Khi là thành viên, ngƣời tham gia chơi sẽ đƣợc những ƣu đãi về giá dịch vụ. 1.3. Lập hợp đồng sử dụng dịch vụ Sau khi đăng ký thành viên, khách hàng có thể đăng ký sử dụng dịch vụ tại trung tâm giải trí bằng cách lập hợp đồng sử dụng dịch vụ với nhân viên của trung tâm. 2.1. Bán vé sử dụng dịch vụ Khi tham gia dịch vụ, khách phải mua vé chơi. Với một số trò chơi, chỉ với vé chơi là có thể sử dụng ngay dịch vụ tùy theo giá trị của vé. Một số dịch vụ, khách phải đƣợc phân chia sử dụng thiết bị( nhƣ Billards, bowling,game5d) 2.2. Phân phối sử dụng dịch vụ Khi có vé trong tay, ngƣời chơi đƣa vé cho nhân viên chăm sóc khách hàng phụ trách, nhân viên sẽ phân phối trang bị hay vị trí để ngƣời chơi sử dụng. Trong trƣờng hợp chƣa có phƣơng tiện rỗi thì phải chờ. 2.3. Cập nhật thông tin sử dụng dịch vụ Sau khi đã phân phối trang thiết bị cho ngƣời chơi, thì nhân viên chăm sóc cần ghi lại thời gian trang thiết bị đƣợc ngƣời chơi sử dụng vào sổ ghi trạng thái sử dụng dịch vụ. 2.4. Lập phiếu thanh toán sử dụng dịch vụ. Sau khi phân phối dịch vụ, nhân viên chăm sóc lập phiếu thanh toán và thu tiền của ngƣời chơi. 3. Lập báo cáo . Cuối mỗi thời gian (sau một ca hay một ngày, một tuần) ngƣời quản lý phải lập báo cáo cho lãnh đạo về tình hình cung cấp dịch vụ cũng nhƣ doanh thu trong thời gian đó 11
- 2.1.5. Danh sách hồ sơ dữ liệu đƣợc sử dụng Các dữ liệu thu thập đƣợc từ khảo sát ban đầu bao gồm : a. Bảng dịch vụ b. Danh sách thành viên c. Hợp đồng dịch vụ d. Danh sách trang thiết bị e. Danh sách vé dịch vụ f. Trạng thái sử dụng thiết bị g. Phiếu thanh toán h. Báo cáo 2.1.6. Ma trận thực thể - chức năng Các thực thể dữ liệu a. Bảng dịch vụ b. Danh sách thành viên c. Hợp đồng dịch vụ d. Danh sách trang thiết bị e. Danh sách vé dịch vụ f. Trạng thái sử dụng thiết bị g. Phiếu thanh toán h. Báo cáo Các chức năng a b c d e f g h 1. Tìm kiếm & đăng ký R U C 2. Cung cấp dịch vụ R R R R C U C 3. Lập báo cáo R R R C Hình 2.1.6. Ma trận thực thể chức năng 12
- 2.2. SƠ ĐỒ LUỒNG DỮ LIỆU CÁC MỨC 2.2.1. Biểu đồ luồng dữ liệu mức 0 Từ biểu đồ ngữ cảnh, biểu đồ phân rã chức năng và ma trận thực thể chức năng ta triển khai xây dựng đƣợc biểu đồ tiến trình nghiệp vụ của hệ thống ở mức 0 sau đây (hình 2.2.1): Tt yêu cầu d.vụ Tt nhu cầu giải tri tt dịch vụ KHÁCH Vé dịch vụ Tt thành viên Tt hợp đồng Phiếu t.toán a Bảng dịch vụ 1.0 2.0 Tìm kiếm b Ds thành viên Cung cấp &đăng ký dịch vụ c Hợp đồng dv e Ds vé dịch vụ f TT sử dụng t.bị d Ds trang thiết bị g Phiếu t.toán h Báo cáo Tt yêu cầu báo cáo 3.0 LÃNH ĐẠO báo cáo Hì Báo cáo Hình 2.2.1: Biểu đồ luồng dữ liệu mức 0 13
- 2.2.2 Biểu đồ luồng dữ liệu mức 1 a. Biểu đồ luồng dữ liệu tiến trình 1.0: Tìm kiếm tt &đăng ký thông tin thành viên t.tin d.vụ giải trí KHÁCH Tt nhu Tt yêu cầu đăng ký cầu giải trí 1.2 1.1 a Dịch vụ Đăng ký Giới thiệu thành viên thông tin dịch b Thành viên vụ c Hợp đồng dv 1.3 Thông tin khách Lập hợp đồng sử KHÁCH dụng dịch vụ hợp đồng dich vụ Hình 2.2.2a. Biểu đồ luồng dữ liệu mức 1: Tìm TT & đăng ký 14
- b. Biểu đồ luồng dữ liệu tiến trình 2.0 : Cung cấp dịch vụ giải trí Vé sử dụng dịch vụ Khách hàng Vé sử dụng dịch vụ Tt yêu cầu dịch vụ Tt thiết bị dùng 2.2 2.1 Bán vé sử a Bảng dịch vụ Phân phối sử dụng dịch vụ dụng dịch vụ b Ds thành viên Bộ phận Bộ phận e Ds vé dịch vụ d Ds trang thiết bị Tt thiết g phiếu T.toán bị dùng f TT sử dụng t.bị 2.3 2.4 c Hợp đồng dv Cập nhật tt sử Lập phiếu h dụng thiết bị thanh toán Bộ phận Bộphận Phiếu thanh .toán KHÁCH Hình 2.2.2b. Biểu đồ luồng dữ liệu mức 1: Cung cấp dịch vụ 15
- c. Biểu đồ luồng dữ liệu tiến trình 3.0 : Báo cáo f TT sử dụng t.bị g Phiếu t.toán e Bảng vé dịch vụ 3.1 Lập Báo cáo Bộphận h Báo cáo y.cầu báo báo cáo cáo LÃNH ĐẠO Hình 2.2.2c. Biểu đồ luồng dữ liệu mức 1: Báo cáo 16
- 2.3. THIẾT KẾ CƠ SỞ DỮ LIỆU 2.3.1. Bảng liệt kê các thuộc tính của các hồ sơ, tài liệu Bảng 2.3.1: Phân tích dữ liệu Tên hồ sơ và thuộc tính Thuộc tính viết gọn a. Bảng dịch vụ Mã dịch vụ madv Tên dich vụ tendv Mô tả dịch vụ motadv Đơn vị tính donvidv Loại ngày tenloaingay Khoảng thời gian tenkhoanggio Đơn giá dongia b. Danh sách Thành viên Mã thành viên (số thẻ) matv Họ tên thành viên tentv Địa chỉ diachitv Điện thoại dienthoaitv Ngày cấp ngaycap c. Danh sách trang thiết bị Mã thiết bị matb Tên thiết bị tentb Số ngƣời chơi socho Ngày sử dụng ngaysd Ngày sửa cuối cùng ngaysc d. Danh sách vé dịch vụ Số vé sove Ngày mua ngaymua Số tiền sotien Tên dịch vụ tendv e. Trang thái sử dụng thiêt bi Thiết bị sử dụng maTB Thời gian sử dụng thoigian Đang dùng Ban g. phiếu TT Số phiếu thanh toán sophieutt Loại khách loaikhach 17
- Ngày thanh toán ngayTT Tên dịch vụ hàng hóa tendv Số lƣợng soluong Thành tiền thanhtien Tổng tiền tongtien Tiền phải trả tientra Ngƣời lập Nguoilap(nhanvien) h. Hợp đồng dịch vụ Số hợp đồng Sohd Tên thành viên tentv Dịch vụ sử dụng tendv Thời hạn thoihan Trang thiết bị sử dụng thietbi Thời gian sử dụng trong ngày thơigian Tiền đặt cọc tiendatcoc Ngày ký ngayky Ngƣời ký nguoiky (nhanvien) Đã thanh toán thanhtoan 2.3.2. Xác định các thực thể và thuộc tính Bảng 2.3.2: Bảng các thực thể Thuộc tính tên Thực thể Thuộc tính và định danh gọi tendv DICHVU madv, tendv, motadv, donvidv, socho tenloaingay LOAINGAY tenloaingay tenkhoanggio KHOANGGIO tenkhoanggio tentv THANHVIEN matv, tentv, diachitv, dienthoaitv tennv NHANVIEN manv, tennv, địachinv, đienthoainv tentb THIETBI matb, tentb, socho, vitri, ngaysd, ngaysua loaikhach KHACH loaikhach 2.2.3. Xác định mối quan hệ giữa các thực thể 18
- Bảng 2.3.3: Bảng phân tích mối quan hệ Động từ và câu hỏi Mối quan hệ Động từ: có giá Các thực thể Các thuộc tính Cái gì? DICHVU Vào thứ mấy? LOAINGAY Giờ nào? KHOANGGIO Giá bao nhiêu? dongia Động từ: Mua Ai mua? KHACH Mua cái gì? VE Vào ngày nào? NGAY Bao nhiêu tiền? sotien Động từ: Sử dụng Ai sử dụng? KHACH Sử dụng cái gì? THIETBI Khi nào? tugio dengio Đang dùng? ban Động từ: thanh toán thanh toán với ai? KHACH Ai thanh toán? NHANVIEN Về cái gì? DICHVU khi nảo? ngaytt Bao nhiêu? soluong thanhtien tongtien tienphaitra Nhập bằng cách nào? sophieutt Động từ: ký hợp đồng Ai ký ? THANHVIEN Về cái gì? DICHVU Dùng cái gì? THIETBI Ký với ai? NHANVIEN Bao lâu? thoihan Vào giờ nào? thoigiansd Đặt cọc bao nhiêu? tiendatcoc Khi nào? ngayky Bằng cách nào? sohd 19
- 2.2.4. Mô hình liên kết thực thể (ER) tenloaingay dongia tenkhoanggio LOAINGAY COGIA KHOANGGIO tendv madv donvidv DICHVU motadv sotb ngaytt manv ngayky tennv soluong sophieutt sohd thoihan THANH NHANVIEN KY HD TOAN tongtien điachinv thoigiansd tongtien thanhtien dienthoaiN tienphaitra V matv tentv loaikhach sotien điachiTV THANHVIEN KHÁCH MUA VÉ ngaycap dienthoaitv sove tugio dengio ngaymua M SỬ ngaythang DUNG ban maTB tenTB THIETBI socho ngaysd ngaysc Hình 2.2.4 mô hình liên kết thực thể ER 20
- 2.2.5. M a. Chuyển các thực thể thành các quan hệ : 1. DICHVU madv tendv donvidv motadv sotb : 2. NHANVIEN manv tennv diachinv dienthoainv : 3. LOAINGAY tenloaingay : 4. KHOANGGIO tenkhoangio : 5. THIETBI matb tentb socho ngaysd ngaysc : 6. KHACH loaikhach : 7. THANHVIEN matv tentv diachitv dienthoaitv ngaycap 21
- b. Chuyển các mối quan hệ thành các quan hệ Mối quan hệ thành quan hệ: 8. BANGGIA madv tenloaingay tenkhoanggio dongia Mối quan hệ thành quan hệ: 9. VEDICHVU sove loaikhach manv ngaymua sotien Mối quan hệ thành quan hệ: 10. TRANGTHAITB maTB loaikhach ngaythang tugio dengio ban Mối quan hệ thành quan hệ: 12. HOPDONG sohd matv madv manv ngayky thoihan thoigiansd tiendatcoc Mối quan hệ thành quan hệ: 13. PHIEUTT sophieutt manv loaikhach ngaytt tongtien tienphaitra madv soluong thanhtien Trong các quan hệ trên, có những quan hệ còn chứa thuộc tính lặp, tức là chƣa phải chuẩn 1. Vì vậy cần phải chuẩn hóa chúng. Chuẩn hóa quan hệ PHIEUTT ta đƣợc hai quan hệ sau : 13. PHIEUTT sophieutt manv loaikhach ngaytt tongtien tienphaitra 22
- 14.DONGPHIEU sophieutt madv soluong thanhtien 2.2.6. Sơ đồ liên kết của mô hình quan hệ Hình 2.2.6. Sơ đồ liên kết của mô hình quan hệ 23
- 2.2.7 1. table : DICHVU K madv char 10 tendv varchar 30 donvidv char 12 motadv char 60 sotb int 2.table : NHANVIEN manv char 10 tennv varchar 30 diachinv char 60 dienthoainv char 12 3.Table: LOAINGAY tenloaingay Ngày thƣờng Thứ bảy Chủ nhật Ngày lễ Tất cả các ngày tenloaingay = (varchar, cỡ: 20) 4.Table: KHOANGGIO tenkhoanggio 9:30-14:00 14:00-18:00 18:00-24:00 tenkhoanggio = (varchar, cỡ: 20) 24
- 5.table : THIETBI matb char 15 tentb varchar 30 socho int ngaysd date ngaysc date 6. table : LOAIKHACH loaikhach Vãng lai Thanh viên Thanh viên VIP loaikhach = (varchar, cỡ: 20) 7.table :THANHVIEN matv char 10 tentv varchar 30 diachitv char 60 dienthoaitv char 12 ngaycap date 7.table : BANGGIA madv char 10 tenloaingay varchar 20 Khóa chính tenkhoanggio varchar 20 Khóa chính dongia int 25
- 8.table : VEDICHVU sove char 10 loaikhach varchar 20 Khóa ngoại manv char 10 Khóa ngoại ngaymua date sotien int 9.table : TRANGTHAITB matb char 15 chính loaikhach varchar 20 Khóa chính ngaythang date tugio time dengio time ban Yes/No 10.table : HOPDONG sohd nchar 10 matv nchar 10 Khóa ngoại madv nchar 10 Khóa ngoại manv nchar 10 Khóa ngoại ngayky date thoihan char 12 thoigiansd char 12 tiendatcoc int 11.table : PHIEUTT sophieutt char 10 ngaytt date manv char 10 Khóa ngoại loaikhach char 20 Khóa ngoại tongtien int tienphaitra int 26
- 12.table : DONGPHIEU sophieutt nchar 10 Khóa chính madv nchar 10 soluong int thanhtien int 2.4. THIẾT KẾ GIAO DIỆN 2.4.1 Các giao diện nhập liệu a - các thực thể dƣới đây: DICHVU LOAINGAY KHQANGGIO NHANVIEN THIETBI THANHVIEN g. Nhap LOAIKHACH Bảng 2.4.1a: Các giao diện nhập liệu 1 b nhập liệu - mối quan hệ dƣới đây: =BANGGIA = PHIEUTT =HOPDONG k. =VEDICHVU l. =TRANGTHAITB Bảng 2.4.1b: Các giao diện nhập liệu 2 27
- 2.4.2. thực hiện các xử lý Để xác định các giao diện nhằm thực hiện các xử lý ta cần xét các biểu đồ luồng dữ liệu mà ở đó có các chức năng xử lý đƣợc tiến hành. Với những chức năng đòi hỏi có sự tƣơng tác của con ngƣời để thực hiện việc xử lý thì cần có giao diện tƣơng tác tƣơng ứng. a. Để xác định các biểu đồ luồng hệ thống, trong các biểu đồ luồng dữ liệu mức cuối (mức thấp nhất) ta thay các hồ sơ dữ liệu bằng các tệp dữ liệu có chứa các thuộc tính của nó. Sau đó xét các chỉ giữ lại những tiến trình xử nào đƣợc thực hiện trên máy, bỏ qua các tiến trình làm thủ công (ngƣời làm, không cần đến máy). Biểu đồ đó là biểu đồ hệ thống. Trong biểu đồ này, nếu tiến trình nào cần có sự tƣơng tác của con ngƣời với máy thì cần có giao diện : Tìm kiếm& đăng ký t.tin d.vụ giải trí thông tin thành viên KHÁCH Tt nhu Tt yêu cầu đăng ký cầu giải trí 1.2 1.1 Đăng ký Giới thiệu BANGGIADV thành viên SX thông tin dịch vụ khách THANHVIEN DICHVU U HOPDONG NHANVIEN 1.3 Thông tin khách Lập hợp đồng sử KHÁCH dụng dịch vụ hợp đồng dich vụ nhânviên Cả ba tiến trình đều cần xử lý trên máy Hình 2.4.2a. Biểu đồ luồng dữ liệu hệ thống: Tìm kiếm TT & đăng ký 28
- : Cung cấp dịch vụ Vé sử dụng dịch vụ Vé sử dụng dịch vụ Khách hàng Tt yêu cầu dịch vụ Tt thiết bị dùng 2.1 2.2 VEDICHVU Bán vé sử Phân phối sử dụng dịch vụ dụng dịch vụ Nhân vien LOAIKHACH Nhân viên BANGGIADV PHIEUTT THIETBI Tt thiết DONGPHIEU bị dùng DICHVU TRANGTHAITB 2.4 2.3 Lập phiếu Cập nhật tt sử thanh toán HOPDONG dụng thiết bị Bộphận Nhân viên Phiếu thanh .toán KHÁCH Ngoài tiến trình 2.2 phân phối sử dụng dịch vụ (do nhân viên thực hiện) các tiến trình khác đều cần đƣợc xử lý trên máy Hình 2.4.2b. Biểu đồ luồng hệ thống tiến trình “Cung cấp dịch vụ” 29
- : B DICHVU PHIEUTT VEDICHVU 3.1 Lập Báo cáo CACBAOCAO Bộphận Tt y.cầu các báo báo cáo cáo LÃNH ĐẠO Tiến trình này cần đƣợc thực hiện trên máy Hình 2.4.2c. Biểu đồ luồng hệ thống tiến trình “ Báo cáo” b. Dựa trên các biểu đồ hệ thống, ta xem các tiến trình nào đƣợc thực hiện trên máy và cần có ngƣời tham gia (tức là không tự động hoàn toàn) thì khi đó cần có một giao diện (xử lý) để ngƣời tƣơng tác với máy thực hiện chức năng đó, và ta có một giao diện xử lý tƣơng ứng: m Giới thiệu ttdv” n Đăng ký thành viên” o. “Lập hợp đồng sử dụng dv” p Bán vé sử dụng dv” q Cập nhật tt sử dụng t.bị” r. Giao diện xử lý “Lập phiếu thanh toán” s Bảng 2.4 Các giao diện xử lý 30
- 2.4.3 chính a . m. Giới thiệu TTDV 8 LOAINGAY n. Đăng ký thành viên LOAINGAY 9 KHOANGGIO o. Lập hợp đồng sd dv KHOANGGIO 10 NHANVIEN p. Bán vé sử dụng DV NHANVIEN 11 THIETBI q.Cập nhật tt sử dụng THIETBI 12 t.bị THANHVIEN r.Lập phiếu thanh toán g LOAIKHACH 13 g. Nhap LOAIKHACH s. 14 BANGGIA m. Giới thiệu TTDV 1 PHIEUTT f/n. Đăng ký T.VIEN 2 HOPDONG j/o. Lập hợp đồng sd dv 3 k. VEDICHVU k/p. Bán vé sử dụng DV 4 l. l/q. Cập nhật tt sử dụng 5 TRANGTHAITB TB i/r. Lập phiếu TT 6 s 7 Bảng 2.4.3: Tích hợp các giao diện hệ thống 31
- b. biểu đồ kiến trúc hệ thống Truy cập hệ 3 1 2 Cung cấp dịch vụ Tìm kiếm 0 nhật DL ban đầu 0 0 0 0 7 1.1 1 2.1 4 3.1 Giới thiệu thông Bán vé sử dụng tin dịch vụ dịch vụ 3 2 3.2 8 1.2 2 Cập nhật dịch 2.2 5 vụ hàng hóa Cập nhật tt sử 3 Đăng ký thành viên dụng thiết bị 1 2 3.3 9 Cập nhật các 3 loại ngày 1.3 2.3 6 lập hợp đồng sử 3 Lập phiếu thanh dụng dịch vụ toán 1 3.4 10 2 Cập nhật các khoảng giờ 3 3.5 11 Cập nhật nhân viên 3 3.6 12 Cập nhật thiết bị 13 3 3.7 13 Cập nhật loại khách 3 3.8 14 Cập nhật bảng giá 3 Hình 2.4.3b. Biểu đồ kiến trúc hệ thống các giao diện của chƣơng trình 32
- CHƢƠNG 3 : CƠ SỞ LÝ THUYẾT 3.1. PHÂN TÍCH THIẾT KẾ HỆ THỐNG HƢỚNG CẤU TRÚC 3.1.1. Quá trình phát triển của một hệ thống thông tin Quá trình phát triển một HTTT kể từ khi nó sinh ra đến khi nó tàn lụi đƣợc gọi là vòng đời phát triển hệ thống. Gồm các pha chủ yếu (theo mô hình thác nƣớc): Khởi tạo và Lập kế hoạch, phân tích, thiết kế, triển khai, vận hành và bảo trì Ý tƣởng - Chia thành các bƣớc, mỗi bƣớc có sản phẩm riêng của nó - Thực hiện lần lƣợt từng bƣớc, xong bƣớc này mới chuyển sang bƣớc sau - Đảm bảo chuyên môn hoá, hình thức hoá quá trình trực hiện 3.1.2. Tiếp cận phát triển hệ thống thông tin định hƣớng cấu trúc - Là một bƣớc phát triển tiếp tục của định hƣớng dl - Cải tiến cấu trúc chƣơng trình dựa trên cơ sở Modul hóa để dễ theo dõi, quản lý và bảo trì. - Ƣu điểm: - Làm giảm sự phức tạp (nhờ chia nhỏ, modul hóa) - Tập trung vào ý tƣởng (vào logic, kiến trúc trƣớc khi thiết kế) 33
- - Chuẩn mực hóa (theo các phƣơng pháp, các công cụ đã cho) - Hƣớng tƣơng lai (kiến trúc tốt, modul hóa dễ bảo trì) - Giảm bớt tính nghệ thuật trong thiết kế (phát triển hệ thống phải tuân thủ một tiến trình xác định với các quy tắc và phƣơng pháp đã cho). - Quy trình khi phân tích thiết kế theo phương pháp hướng cấu trúc 1. Khảo sát và thu thập thông tin : _ Khái quát cơ sở _ Các phƣơng pháp sử dụng trong khảo sát _ Những nhận định đánh giá _ Phát biểu bài toán _ Biểu đồ hoạt động 2. Xây dựng mô hình nghiệp vụ : – Xây dựng biểu đồ ngữ cảnh hệ thống – Xây dựng biểu đồ phân rã chức năng – Mô tả chi tiết các chức năng lá – Danh sách các hồ sơ dữ liệu sử dụng (đƣa ra các mẫu hồ sơ gốc thu thập đƣợc) – Ma trận thực thể chức năng 3. Mô hình hoá quá trình xử lý – Xây dựng biểu đồ luồng mức 0 – Xây dựng các biểu đồ luồng mức i (i 1) – Xây dựng biểu đồ ER – Mô hình quan hệ 4. Thiết kế _ Thiết kế các modul chƣơng trình (biểu đồ luồng hệ thống) – Thiết kế CSDL dạng vật lý – Thiết kế các giao diện 34
- -Giao diện chính -Các giao diện cập nhật dữ liệu 3.2. THIẾT KẾ CƠ SỞ DỮ LIỆU QUAN HỆ 3.2.1. Mô hình liên kết thực thể E-R Các thành phần cơ bản của mô hình ER a.Thực thể và thuộc tính Đối tƣợng đƣợc trình bày trong mô hình ER là thực thể. Thực thể là một “vật” trong thế giới thực, có sự tồn tại độc lập. Một thực thể có thể là cụ thể, tức là chúng ta có thể cảm nhận đƣợc bằng các giác quan, hoặc có thể là trừu tƣợng, tức là cái mà chúng ta không cảm nhận đƣợc bằng các giác quan nhƣng có thể nhận biết đƣợc bằng nhận thức. Một cái ô tô, một nhân viên, là những thực thể cụ thể. Một đơn vị công tác, một trƣờng học là những thực thể trừu tƣợng. Mỗi một thực thể có các thuộc tính, đó là các đặc trƣng cụ thể mô tả thực thể đó. Ví dụ, một thực thể Nhânviên đƣợc mô tả bằng Họtên, Tuổi, Địachỉ, Lƣơng của nhân viên đó. Một thực thể cụ thể sẽ có một giá trị cho mỗi thuộc tính của nó. Ví dụ, nhân viên nv1 có các giá trị cho các thuộc tính Họtên, Tuổi, Địachỉ, Lƣơng của nó là “ Lê Vân”, 32, “Hà nội”, 500000. Các giá trị thuộc tính mô tả mỗi thực thể sẽ trở thành một phần chính của các dữ liệu sẽ đƣợc lƣu giữ trong cơ sở dữ liệu. Trong mô hình ER có mặt nhiều kiểu thuộc tính: thuộc tính đơn, thuộc tính phức hợp, thuộc tính đơn trị, thuộc tính đa trị, thuộc tính đƣợc lƣu trữ, thuộc tính suy diễn đƣợc, thuộc tính có giá trị không xác định, thuộc tính phức tạp. Thuộc tính đơn là thuộc tính không thể phân chia ra đƣợc thành các thành phần nhỏ hơn. Ví dụ, thuộc tính Tuổi của một nhân viên là một thuộc tính đơn. 35
- Thuộc tính phức hợp là thuộc tính có thể phân chia đƣợc thành các thành phần nhỏ hơn, biểu diễn các thuộc tính cơ bản hơn với các ý nghĩa độc lập. Ví dụ, thuộc tính Họtên của thực thể nhân viên có thể phân chia thành các tính Họđệm và Tên. Giá trị của một thuộc tính là sự kết hợp kết hợp các giá trị của các thuộc tính thành phần tạo nên nó. Việc phân chia một thuộc tính phức hợp thành các thuộc tính đơn tùy thuộc vào hoàn cảnh cụ thể. Những thuộc tính có giá trị duy nhất cho một thực thể cụ thể gọi là các thuộc tính đơn trị. Ví dụ, Họtên là một thuộc tính đơn trị của thực thể nhân viên, mỗi nhân viên có một họ tên duy nhất. Trong một số trƣờng hợp, một thuộc tính có thể có một tập giá trị cho cùng một thực thể. Những thuộc tính nhƣ vậy gọi là thuộc tính đa trị. Ví dụ, thuộc tính Bằngcấp của một ngƣời. Một ngƣời có thể không có bằng cấp nào, ngƣời khác có thể có một bằng, ngƣời khác nữa có thể có nhiều bằng. Nhƣ vậy, các ngƣời khác nhau có thể có một số giá trị khác nhau cho thuộc tính Bằngcấp. Thuộc tính Bằngcấp là một thuộc tính đa trị. Thuộc tính đƣợc lƣu trữ là các thuộc tính mà giá trị của nó đƣợc nhập vào khi cài đặt cơ sở dữ liệu. Trong một số trƣờng hợp, hai hay nhiều thuộc tính có giá trị liên quan đến nhau. Ví dụ, thuộc tính Tuổi và thuộc tính Ngàysinh của một ngƣời. Với một ngƣời cụ thể, ta có thể tính tuổi của anh ta bằng cách lấy năm hiện tại trừ đi năm của Ngàysinh. Thuộc tính mà giá trị của nó có thể tính đƣợc thông qua giá trị của các thuộc tính khác gọi là thuộc tính suy diễn đƣợc. Các giá trị không xác định (null values): Trong một số trƣờng hợp, một thực thể cụ thể có thể không có các giá trị áp dụng đƣợc cho một thuộc tính. Ví dụ, thuộc tính Sốđiệnthoại của thực thể nhân viên sẽ không có giá trị đối với các nhân viên không có số điện thoại. Trong trƣờng hợp nhƣ vậy, ta phải tạo ra một giá trị đặc biệt gọi là giá trị không xác định (null). Giá trị không xác định đƣợc tạo ra khi một thuộc tính có giá trị không áp dụng đƣợc hoặc khi không biết. Các thuộc tính phức tạp: Là sự kết hợp của các thuộc tính phức hợp và đa trị. b.Kiểu thực thể, tập thực thể, khóa và tập giá trị Các kiểu thực thể và các tập thực thể: Một cơ sở dữ liệu thƣờng chứa những nhóm thực thể nhƣ nhau. Ví dụ, một công ty thuê hàng trăm nhân viên và lƣu giữ những thông tin tƣơng tự liên quan đến mỗi nhân viên. Các thực thể nhân viên này chia sẻ các thuộc tính giống nhau nhƣng mỗi thực thể có các giá trị riêng cho các thuộc tính đó. Một kiểu thực thể là một tập hợp các thực thể có 36
- các thuộc tính nhƣ nhau. Một kiểu thực thể trong cơ sở dữ liệu đƣợc mô tả bằng tên và các thuộc tính. Vídụ: NHÂNVIÊN (Họtên, Tuổi, Lƣơng), CÔNGTY (Tên, Địađiểm, Giámđốc). Một tập hợp các thực thể của một kiểu thực thể cụ thể trong cơ sở dữ liệu tại một thời điểm đƣợc gọi là một tập thực thể, nó thƣờng đƣợc tham chiếu đến bằng cách sử dụng tên của kiểu thực thể. Ví dụ, NHÂNVIÊN vừa dùng để chỉ một kiểu thực thể, vừa để chỉ tập hợp hiện tại của tất cả các thực thể nhân viên trong cơ sở dữ liệu. Hình 2-2 minh họa các kiểu thực thể NHÂNVIÊN, CÔNGTY và các tập thực thể tƣơng ứng. Một kiểu thực thể đƣợc biểu diễn trong lƣợc đồ ER nhƣ là một hộp hình chữ nhật có chứa tên kiểu thực thể. Các thuộc tính đƣợc đặt trong các hình ô van và đƣợc nối với các kiểu thực thể bằng các đƣờng thẳng. Các thuộc tính phức hợp cũng đƣợc nối với các thuộc tính thành phần của nó bằng đƣờng thẳng. Các thuộc tính đa trị đƣợc hiển thị trong các hình ô van đúp (hình 2-3). Một kiểu thực thể mô tả một lƣợc đồ (hoặc một mục đích) cho một tập các thực thể chia sẻ cùng một cấu trúc. Tập hợp các thực thể của một kiểu thực thể cụ thể đƣợc nhóm vào một tập thực thể và đƣợc gọi là một thể hiện của một kiểu thực thể. Kiểu thực thể và tập thực thể 37
- Thuộc tính khóa của một kiểu thực thể: Một ràng buộc quan trọng trên các thực thể của một kiểu thực thể là khóa. Một kiểu thực thể thƣờng có một thuộc tính mà các giá trị của nó là khác nhau đối với mỗi thực thể tiêng biệt trong một tập thực thể. Thuộc tính nhƣ vậy gọi là thuộc tính khóa và các giá trị của nó có thể dung để xác định từng thực thể một cách duy nhất. Ví dụ, thuộc tính Tên của kiểu thực thể CÔNGTY là khóa của kiểu thực thể đó vì mỗi thực thể công ty có một tên duy nhất. Đôi khi, nhiều thuộc tính kết hợp với nhau tạo thành một khóa, nghĩa là tổ hợp các giá trị của các thuộc tính này phải khác nhau đối với mỗi thực thể. Trong trƣờng hợp nhƣ vậy ta có một thuộc tính khóa phức hợp. Chú ý rằng khóa phức hợp phải tối thiểu, nghĩa là tất cả các thuộc tính thành phần phải có mặt trong thuộc tính phức hợp để thỏa mãn tính chất duy nhất. Trong biểu đồ đồ họa của mô hình ER, thuộc tính khóa đƣợc biểu diễn bằng cách gạch ngang dƣới tên của nó (hình 2-3). Khi chỉ ra rằng một thuộc tính là khóa của một kiểu thực thể nghĩa là tính chất duy nhất nêu trên phải đƣợc thỏa mãn đối với đối với mỗi mở rộng của kiểu thực thể. Nhƣ vậy, ràng buộc khóa cấm hai thực thể bất kỳ có giá trị cho thuộc tính khóa nhƣ nhau tại cùng một thời điểm. Đó là một ràng buộc trên tất cả các thể hiện của thực thể. Ràng buộc khóa cũng nhƣ các ràng buộc sẽ đƣợc giới thiệu về sau đƣợc lấy ra từ các ràng buộc của “thế giới nhỏ” của cơ sở dữ liệu. Một kiểu thực thể có thể có nhiều hơn một thuộc tính khóa. Ví dụ, nếu một công ty có một mã số duy nhất và một tên duy nhất thì các thuộc tính Mãsốcông ty và Têncôngty đều là các thuộc tính khóa. Một kiểu thực thể cũng có thể không có khóa. Một thực thể không có khóa đƣợc gọi là kiểu thực thể yếu. Biểu diễn kiểu thực thể và các thuộc tính 38
- Miền giá trị của các thuộc tính: Mỗi thuộc tính đơn của một kiểu thực thể đƣợc kết hợp với một miền giá trị. Đó là một tập các giá trị có thể gán cho thuộc tính này đối với mỗi thực thể riêng biệt. Các miền giá trị không hiển thị trong các sơ đồ ER. Một cách toán học, một thuộc tính A của kiểu thực thể E có tập giá trị V có thể đƣợc định nghĩa nhƣ là một hàm từ E vào tập hợp lực lƣợng P(V) của V: A: E → P(V). Ta ký hiệu giá trị của thuộc tính A đối với thực thể e là A(e). Định nghĩa ở trên đúng cho các thuộc tính đơn trị, đa trị và thuộc tính không xác định. Một giá trị không xác định đƣợc biểu diễn bằng một tập rỗng. Với các thuộc tính đơn trị, A(e) là một giá trị đơn cho thực thể e. Các thuộc tính đa trị không có các hạn chế trên A(e). Với một thuộc tính phức hợp A, tập giá trị V là tích Đề các của P(V1)x P(V2)x .xP(Vn), trong đó V1, V2, , Vn là tập các giá trị cho các thành phần đơn của A. c.Kiểu liên kết, tập liên kết và các thể hiện Một kiểu liên kết R giữa n kiểu thực thể E1, E2, , En xác định một tập liên kết giữa các thực thể của các kiểu đó. Cũng nhƣ các kiểu thực thể và tập thực thể, một kiểu liên kết và tập liên kết tƣơng ứng với nó cũng có tên chung là R. Một cách toán học, tập liên kết R là một tập hợp các thể hiện liên kết ri , i = 1,2, trong đó mỗi ri liên kết n thực thể riêng biệt e1, e2, , en và mỗi một thực thể ej trong ri là một thành phần của kiểu thực thể Ej , 1≤ j ≤ n. Nhƣ vậy, một kiểu liên kết R là một quan hệ toán học trên E1, E2, , Enhoặc có thể định nghĩa nhƣ là một tập con của tích Đề các E1 x E2 x x En. Mỗi kiểu thực thể E1,E2, , En đƣợc gọi là tham gia vào kiểu liên kết R, và tƣơng tự, mỗi thực thể riêng biệt e1, e2, , en đƣợc gọi là tham gia vào thể hiện liên kết ri = ( e1,e2, ,en). Một cách không hình thức, mỗi thể hiện liên kết ri trong R là một sự kết hợp của các thực thể, mỗi thực thể thuộc về một kiểu thực thể tham gia vào liên kết. Mỗi liên kết ri nhƣ vậy diễn đạt một sự kiện rằng các thực thể tham gia trong ri có mối quan hệ với nhau theo một cách nào đó ở trong thế giới thực. Ví dụ, trong thực tế, các nhân viên làm việc cho các đơn vị, nhƣ vậy, có một kiểu liên kết liên kết làm việc cho, liên kết giữa kiểu thực thể NHÂNVIÊN và kiểu thực thể ĐƠNVỊ. 39
- Trong sơ đồ ER, kiểu liên kết đƣợc biểu diễn bằng một hình thoi nối trực tiếp với các hình chữ nhật biểu diễn các kiểu thực thể tham gia vào liên kết. Hình 2-4 minh họa kiểu liên kết và thể hiện liên kết. a) Kiểu liên kết b) Thể hiện liên kết Kiểu liên kết và thể hiện liên kết d.Cấp liên kết, tên vai trò và kiểu liên kết đệ quy Cấp của một kiểu liên kết là số các kiểu thực thể tham gia vào kiểu liên kết đó. Một kiểu liên kết có thể có cấp 1, cấp 2, cấp 3, . Ví dụ, kiểu liên kết giữa kiểu thực thể NHÂNVIÊN và kiểu thực thể ĐƠNVỊ là một kiểu liên kết cấp 2. Kiểu liên kết giữa kiểu thực thể MÔNHỌC với chính nó là một kiểu liên kết cấp 1. Đôi khi chúng ta có thể coi một kiểu liên kết nhƣ một thuộc tính của một kiểu thực thể. Ví dụ, nếu kiểu thực thể NHÂNVIÊN có thuộc tính Đơnvị để chỉ ra tên đơn vị mà nhân viên làm việc cho, thì thuộc tính Đơnvị biểu thị một kiểu liên kết. Nói cách khác, một thuộc tính của một kiểu thực thể hoặc có chức năng biểu thị một đặc trƣng của kiểu thực thể, hoặc có chức năng biểu thị một kiểu liên kết giữa kiểu thực thể đó với các kiểu thực thể khác. Các thuộc tính biểu thị một kiểu liên kết có thể đơn trị hoặc đa trị tuỳ theo bản chất của mối liên kết. 40
- Các tên vai trò và các kiểu liên kết đệ quy: Mỗi một kiểu thực thể tham gia vào một kiểu liên kết có một vai trò cụ thể trong liên kết. Tên vai trò dùng để chỉ rõ vai trò của các thực thể của kiểu thực thể tham gia liên kết, nó giúp đỡ việc giải thích ý nghĩa của liên kết. Ví dụ, trong kiểu liên kết NHÂNVIÊN ĐƠNVỊ, vai trò của các thực thể của kiểu thực thể NHÂNVIÊN là nhân viên hoặc công nhân còn vai trò của các thực thể của kiểu thực thể ĐƠNVỊ là đơn vị hoặc nơi thuê công nhân. Nếu các kiểu thực thể tham gia vào kiểu liên kết là khác nhau thì tên vai trò là hoàn toàn không cần thiết bởi vì có thể sử dụng tên các kiểu thực thể làm tên vai trò. Tuy nhiên, trong một số trƣờng hợp, một kiểu thực thể có thể tham gia vào một kiểu liên kết với các vai trò khác nhau. Trong những trƣờng hợp nhƣ vậy, tên vai trò trở nên cần thiết để phân biệt ý nghĩa của mỗi sự tham gia. Các kiểu liên kết nhƣ vậy gọi là kiểu liên kết đệ quy. Ví dụ, trong số các nhân viên làm việc cho một đơn vị, có các nhân viên đƣợc phân công giám sát các nhân viên khác. Nhƣ vậy sẽ có một kiểu liên kết giữa các thực thể của kiểu thực thể NHÂNVIÊN: NHÂNVIÊN NHÂNVIÊN. Kiểu thực thể NHÂNVIÊN tham gia hai lần vào kiểu liên kết , một lần với vai trò ngƣời giám sát, một lần với vai trò ngƣời bị giám sát. e.Các ràng buộc trên các kiểu liên kết Các kiểu liên kết thƣờng có một số ràng buộc để hạn chế số các tổ hợp có thể của các thực thể có thể tham gia trong tập hợp liên kết tƣơng ứng. Các ràng buộc này đƣợc xác định từ tình trạng của thế giới thực mà kiểu liên kết biểu diễn. Ví dụ, nếu công ty có quy chế là một nhân viên chỉ làm việc cho một đơn vị thì chúng ta phải mô tả ràng buộc này trong lƣợc đồ. Có hai loại ràng buộc chính: tỷ số lực lƣợng và sự tham gia. Tỷ số lực lượng: Tỷ số lực lƣợng cho một kiểu liên kết chỉ ra số các thể hiện liên kết mà một thực thể có thể tham gia. Với các kiểu liên kết cấp 2, có thể có các tỷ số lực lƣợng 1:1, 1:N, và M:N. Một kiểu liên kết có tỷ số lực lƣợng 1:1 giữa hai kiểu thực thể A và B có nghĩa là trong kiểu liên kết đó, một thực thể của kiểu A chỉ liên kết với một thực thể của kiểu B và ngƣợc lại, một thực thể của kiểu B chỉ liên kết với một thực thể của kiểu A. Tỷ số lực lƣợng 1:N có nghĩa là một thực thể của kiểu A có thể liên kết với nhiều thực thể của kiểu B nhƣng một thực thể của kiểu B chỉ liên kết với một thực thể của kiểu A. Trong kiểu liên kết có tỷ số lực lƣợng M:N, mỗi thực thể của kiểu A có thể liên kết với nhiều thực 41
- thể của kiểu B và ngƣợc lại, mỗi thực thể của kiểu B có thể liên kết với nhiều thực thể của kiểu A. Trong biểu diễn của lƣợc đồ ER, các tỷ số lực lƣợng đƣợc biểu diễn bằng cách ghi 1, N, M trên các hình thoi biểu diễn kiểu liên kết . Tỷ số lực lƣợng của các kiểu liên kết Các ràng buộc tham gia và sự phụ thuộc tồn tại: Ràng buộc tham gia chỉ ra rằng có phải sự tồn tại của một kiểu thực thể phụ thuộc vào một kiểu thực thể khác thông qua một kiểu liên kết hay không. Có hai kiểu ràng buộc tham gia: ràng buộc tham gia toàn bộ và ràng buộc tham gia bộ phận. Tham gia toàn bộ nghĩa là tất cả các thực thể của kiểu thực thể phải tham gia vào kiểu liên kết còn tham gia bộ phận nghĩa là chỉ một bộ phận các thực thể của kiểu thực thể tham gia vào kiểu liên kết. Ví dụ, xét kiểu liên kết NHÂNVIÊN ĐƠNVỊ. Trong thực tế, mỗi đơn vị phải có một ngƣời quản lý (là một nhân viên) nhƣng không phải nhân viên nào cũng quản lý một đơn vị. Nhƣ vậy, sự tham gia của các thực thể đơn vị vào kiểu liên kết là toàn bộ còn sự tham gia của các thực thể nhân viên vào kiểu liên kết là bộ phận. Sự tham gia toàn bộ còn đƣợc gọi là sự phụ thuộc tồn tại. Trong lƣợc đồ ER, sự tham gia toàn bộ đƣợc biểu thị bằng đƣờng nối đôi từ kiểu thực thể đến kiểu liên kết. 3.2.2. Mô hình cơ sở dữ liệu quan hệ a.Miền thuộc tính, quan hệ Một miền D là một tập hợp các giá trị nguyên tử, điều đó có nghĩa là mỗi giá trị trong miền là không thể phân chia đƣợc trong phạm vi mô hình quan hệ. Để đặc tả một miền, ngƣời ta chỉ ra một tên, một kiểu dữ liệu và khuôn dạng dữ liệu. Một số ví dụ về định nghĩa miền: 42
- . Họ tên: Tập hợp các dãy chữ cái có độ dài <= 30. . Tuổi: Tập các số nguyên nằm trong khoảng từ 1 đến 80. . Giới tính: Tập hợp gồm hai giá trị “Nam”, “Nữ”. Một lược đồ quan hệ R , ký hiệu R (A1,A2 An) đƣợc tạo nên từ một tên quan hệ R và một danh sách các thuộc tính A1,A2 An. Dom(Ai) là miền giá trị của Ai. Cấp của một quan hệ là số các thuộc tính của lƣợc đồ quan hệ của nó. b. Các ràng buộc miền : Các ràng buộc miền : Các ràng buộc miền chỉ ra rằng giá trị của mỗi thuộc tính A phải là giá trị nguyên tử thuộc miền giá trị Dom(A) Một siêu khóa SK chỉ rõ một ràng buộc về tính duy nhất , phát biểu rằng không có hai bộ khác nhau trong một trạng thái r của R có cùng một giá trị SK. Ràng buộc khóa và ràng buộc trên các giá trị không xác định (null) : với hai bộ khác nhau bất kỳ t1 và t2 trong một trạng thái quan hệ r của R chúng ta có ràng buộc là t1[SK] ≠ t2[SK]. c. Cơ sở dữ liệu quan hệ : Một lược đồ cơ sở dữ liệu quan hệ S là tập hợp các lƣợc đồ quan hệ S = {R1,R2 .Rn } và một tập các ràng buộc toàn vẹn. Một cơ sở dữ liệu quan hệ DB của S là một tập hợp các trạng thái quan hệ DB = {r1,r2 .rn} sao cho mỗi ri là một trạng thái của Ri và sao cho các trạng thái quan hệ ri thoả mãn các ràng buộc toàn vẹn chỉ ra trong tập các ràng buộc toàn vẹn. d. Các loại ràng buộc toàn vẹn : Ràng buộc toàn vẹn thực thể đƣợc phát biểu là: khoá chính phải luôn luôn có giá trị xác định, nghĩa là không đƣợc phép có giá trị null Ràng buộc toàn vẹn tham chiếu đƣợc phát biểu là: một bộ giá trị trong một quan hệ có liên kết đến một quan hệ khác phải liên kết đến một bộ giá trị tồn tại trong quan hệ đó 43
- e. Chuyển đổi mô hình E-R thành mô hình quan hệ : Bước 1. Với mỗi kiểu thực thể thông thƣờng E trong lƣợc đồ ER, hãy tạo một quan hệ R chứa mọi thuộc tính đơn của E .Với các thuộc tính phức hợp, chỉ lấy các thuộc tính thành phần đơn của nó. Chọn một trong các thuộc tính khoá của E làm khoá chính cho R. Nếu khoá đƣợc chọn của E là phức hợp (gồm nhiều thuộc tính) thì tập các thuộc tính đơn đó sẽ cùng nhau tạo nên khoá chính của R Bước 2. Với mỗi kiểu thực thể yếu W trong lƣợc đồ ER cùng với kiểu thực thể chủ E , hãy tạo một quan hệ R chứa tất các các thành phần đơn (hoặc các thành phần đơn của các thuộc tính phức hợp) của W nhƣ là các thuộc tính của R. Đƣa các thuộc tính khoá chính của các quan hệ tƣơng ứng với kiểu thực thể chủ làm khoá ngoài của R. Các thuộc tính này sẽ xác định kiểu liên kết của W . Khoá chính của R là một tổ hợp của khoá chính của các quan hệ tƣơng ứng với kiểu thực thể chủ và khoá bộ phận của kiểu thực thể yêu W nếu có Bước 3. Với mỗi kiểu liên kết 1:1 R trong lƣợc đồ ER, hãy xác định các quan hệ S và T tƣơng ứng với các kiểu thực thể tham gia trong R. Hãy chọn một trong các quan hệ, chẳng hạn S , và đƣa khoá chính của T vào làm khoá ngoài trong S . Tốt nhất là chọn S là một kiểu thực thể tham gia toàn bộ vào R. Đƣa tất các các thuộc tính đơn (hoặc các thành phần đơn của các thuộc tính phức hợp) của kiểu liên kết 1:1 R vào làm các thuộc tính của S Bước 4. Với mỗi kiểu liên kết hai ngôi R kiểu 1 : N , hãy xác định quan hệ S biểu diễn kiểu thực thể tham gia ở phía N của kiểu liên kết. Đƣa khoá chính của quan hệ T biểu diễn kiểu thực thể tham gia vào R ở phía 1 vào làm khoá ngoài trong S . Làm nhƣ vậy là vì mỗi thực thể cụ thể của phía N đƣợc liên kết với nhiều nhất là một thực thể cụ thể của phía 1 của kiểu liên kết. Đƣa các thuộc tính đơn (hoặc các thành phần đơn của các thuộc tính phức hợp) của kiểu liên kết 1 : N vào làm các thuộc tính của S Bước 5. Với mỗi kiểu liên kết N : M hai ngôi R, hãy tạo ra một quan hệ mới S để biểu diễn R. Đƣa các khoá chính của các quan hệ biểu diễn các kiểu thực thể tham gia vào làm khoá ngoài của SA. Tổ hợp các khoá chính đó sẽ tạo nên khoá chính của S . Đƣa tất cả các thuộc tính đơn (hoặc các thành phần đơn của các thuộc tính phức hợp) của kiểu liên kết N : M vào làm các thuộc tính của S . Chú ý rằng ta không thể biểu diễn một kiểu liên kết N : M bằng một thuộc 44
- tính khoá ngoài đơn giản trong một trong các quan hệ tham gia (nhƣ đã làm với các kiểu liên kết 1 : 1 và 1 : N ) vì tỷ số lực lƣợng N : M Bước 6. Với mỗi thuộc tính đa trị A, hãy tạo ra một quan hệ mới R. Quan hệ R này sẽ chứa một thuộc tính tƣơng ứng với A cộng với thuộc tính khoá K của quan hệ biểu diễn kiểu thực thể hoặc kiểu liên kết có thuộc tính là A làm khoá ngoài của R. Khoá chính của R là một tổ hợp của A và K . Nếu thuộc tính đa trị là phức hợp thì chúng ta chỉ đƣa vào R các thành phần đơn của nó Bước 7. Với mỗi kiểu liên kết n ngôi R, trong đó n > 2, hãy tạo ra một quan hệ S để biểu diễn R. Đƣa các khoá chính của các quan hệ biểu diễn các kiểu thực thể tham gia vào làm khoá ngoài của S . Đƣa tất cả các thuộc tính đơn (hoặc các thành phần đơn của các thuộc tính phức hợp) của kiểu liên kết n-ngôi vào làm thuộc tính của S . Khoá chính của S thƣờng là một tổ hợp các khoá chính của các quan hệ biểu diễn các kiểu thực thể tham gia. Tuy nhiên, nếu ràng buộc lực lƣợng trên một kiểu thực thể E nào đó tham gia vào R là 1 thì khoá chính của S không đƣợc chứa thuộc tính khoá ngoài tham chiếu đến quan hệ E tƣơng ứng với kiểu thực thể E. 3.3. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL MySQL là một phần mềm quản trị cơ sở dữ liệu mã nguồn mở, đƣợc tích hợp sử dụng chung với apache và PHP. MySQL là một phần mềm quản trị cơ sở dữ liệu dạng server-based, nó quản lý dữ liệu thông qua các cơ sở dữ liệu, mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL có cơ chế phân quyền ngƣời sử dụng riêng, mỗi ngƣời dùng có thể đƣợc quản lý một hoặc nhiều cơ sở dữ liệu khác nhau, mỗi ngƣời dùng có một tên truy cập và mật khẩu tƣơng ứng để truy xuất tới cơ sở dữ liệu. Trong thực tế hiện nay, có rất nhiều hệ quản trị cơ sở dữ liệu đƣợc dùng để quản lý dữ liệu cho website nhƣ Oracle, MsSQL, nhƣng do MySQL là mã nguồn mở, các doanh nghiệp sẽ không mất chi phí bản quyền và có thể phát triển để phục vụ cho việc kinh doanh của họ nên MySQL đang đƣợc rất nhiều website thƣơng mại điện tử của các doanh nghiệp vừa và nhỏ sử dụng. 45
- 3.4. NGÔN NGỮ LẬP TRÌNH PHP , HTML,CSS 3.4.1 ngôn ngữ HTML : HTML, viết đầy đủ là Hyper Text Markup Language – ngôn ngữ đánh dấu siêu văn bản, là ngôn ngữ nền tảng của Web. HTML mô tả cách thức dữ liệu đƣợc hiển thị trên trình duyệt thông qua các tập ký hiệu đánh dấu, thƣờng gọi là tag, hoặc “thẻ HTML”. Khi một trang web đƣợc tải về trình duyệt, trình duyệt sẽ căn cứ trên các tag HTML để định dạng nội dung hiển thị. Trong thực tế hiện nay, có rất nhiều ngôn ngữ dùng để trình bày một website tĩnh nhƣ XHTML, XML, hay các phiên bản HTML2,3,4,5 nhƣng chúng còn khá mới mẻ với các lập trình viên và những ƣu điểm của chúng chƣa thể hiện sự vƣợt trội so với HTML 3.4.2 ngôn ngữ CSS : CSS (viết đầy đủ là Cascading Style Sheets) là các tập tin định kiểu theo tầng, đƣợc dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ HTML, XHTML, XML CSS giúp hạn chế tối thiểu việc làm rối mã HTML của trang web bằng các thẻ quy định kiểu dáng (chữ đậm, chữ in nghiêng, chữ có gạch chân, chữ màu, ), khiến mã nguồn của trang Web đƣợc gọn gàng hơn, tách nội dung của trang Web và định dạng hiển thị dễ dàng cho việc cập nhật nội dung. 3.4.3 ngôn ngữ PHP : PHP (Personal Home Page) là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu đƣợc dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. PHP rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do đƣợc tối ƣu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và java, dễ học và thời gian xây dựng sản phẩm tƣơng đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập trình web phổ biến nhất thế giới. Thẻ “ ” sẽ đánh dấu cho sự bắt đầu và sự kết thúc của phần mã PHP qua đó máy chủ biết để xử lý và dịch mã cho đúng. Đây là một điểm khá tiện lợi của PHP giúp cho việc viết mã PHP trở nên khá trực quan và dễ dàng trong việc xây dựng phần giao diện ứng dụng HTTP. 46
- CHƢƠNG 4: CÀI ĐẶT CHƢƠNG TRÌNH 4.1. GIAO DIỆN CHÍNH 47
- 4.2. CÁC GIAO DIỆN CẬP NHẬT DỮ LIỆU 4.2.1. Giao diện cập nhật dịch vụ 4.2.2. Giao diện cập nhật loại ngày 49
- 4.2.3. Giao diện cập nhật khoảng giờ 4.2.4. Giao diện cập nhật nhân viên 50
- 4.2.5. Giao diện cập nhật thiết bị 4.2.6. Giao diện cập nhật loại khách 51
- 4.2.7. Giao diện cập nhật bảng giá 4.3. CÁC GIAO DIỆN XỬ LÝ DỮ LIỆU 4.2.1. Giao diện Bán vé dịch vụ 52
- 4.2.2. Giao diện Cập nhật tt sử dụng thiết bị 4.2.3. Giao diện Lập phiếu thanh toán: 53
- 4.2.4. Giao diện Lập hợp đồng sử dụng dịch vụ: 4.2.4. Giao diện Đăng ký thành viên: 54
- 4.4. GIAO DIỆN LẬP BÁO CÁO: 55
- KẾT LUẬN Trong đồ án này, hệ thống Xây dựng chương trình quản lý đăng ký, tham gia hoạt động giải trí trên nền web đã đƣợc xây dựng. Đây là loại chƣơng trình nhằm trợ giúp hoạt động quản lý của một cơ sở dịch vụ giải trí nhằm trợ giúp việc quảng bá và quản lý điều hành hoạt động giải trí trong điều kiện cơ sở ngày càng đƣợc mở rộng cả về quy mô và khách hàng. Không có chƣơng trình thì sẽ đòi hỏi phải sử dụng nhiều nhân lực, và cho dù nhiều ngƣời thì khả năng đáp ứng nhu cầu của khách không thể kịp thời và hiệu quả. Đồ án đã thực hiện đƣợc nhiệm vụ đề ra và đạt đƣợc các kết quả sau : − Mô tả đầy đủ và chính xác hoạt động nghiệp vụ của bài toán, qua đó làm rõ các yêu cầu của bài toán đặt ra. − Áp dụng phƣơng pháp phân tích thiết kế hƣớng cấu trúc để phân tích và thiết kế hệ thống trên nền web. Bản thiết kế là đầy đủ và chi tiết, đảm bảo chất lƣợng để dễ dàng chuyển sang chƣơng trình. − Tiến hành lựa chọn môi trƣờng phát triển, tiến hành lập trình và cài đặt hệ thống. Hệ thống bƣớc đầu đã đƣợc thử nghiệm với một số dữ liệu và cho kết quả chấp nhận đƣợc. Hệ thống có thể đƣa vào thử nghiệm và ứng dụng. Hạn chế của hệ thống chƣơng trình : Do thời gian hạn chế, một số chức năng thiết kế chƣa đƣợc triển khai đầy đủ. Các giao diện chƣa đạt đƣợc tính thân thiện cao. Một số yêu tố về an toàn bảo mật hệ thống chƣa đƣợc xem xét. Hƣớng hoàn thiện : − Bổ sung đầy đủ các chức năng đã thiết kế. − Hoàn thiện hệ thống giao diện cho tiện dụng. − Tăng cƣờng các yếu tố an toàn bảo mật của hệ thống. − Đƣa hệ thống vào ứng dụng thử nghiệm trong thực tế. 56
- TÀI LIỆU THAM KHẢO 1. Nguyễn Văn Vỵ, Giáo trình Phân tích và thiết kế các hệ thống thông tin, NXB Giáo dục Việt nam, Hà nội, 2010. 2. Nguyễn Văn Vỵ, Nguyễn Việt Hà. Giáo trình kỹ nghệ phần mềm, NXB Giáo dục Việt nam, 2009 57
- PHỤ LỤC 1. Một số mẫu hồ sơ hiện đang được sử dụng trong trung tâm 58