Quản lý dự án hệ thống thông tin - Chương 3: Thiết kế HTTT quản lý

ppt 95 trang vanle 2220
Bạn đang xem 20 trang mẫu của tài liệu "Quản lý dự án hệ thống thông tin - Chương 3: Thiết kế HTTT quản lý", để 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:

  • pptquan_ly_du_an_he_thong_thong_tin_chuong_3_thiet_ke_httt_quan.ppt

Nội dung text: Quản lý dự án hệ thống thông tin - Chương 3: Thiết kế HTTT quản lý

  1. Phần 2 XÂY DỰNG HỆ THỐNG THÔNG TIN QUẢN LÝ CHƯƠNG 2: PHÂN TÍCH HTTT CHƯƠNG 3: THIẾT KẾ HTTT QUẢN LÝ CHƯƠNG 4: CÀI ĐẶT VÀ KHAI THÁC HTTT QUẢN LÝ www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 1
  2. Chương 3 THIẾT KẾ HTTT QUẢN LÝ Thiết kế HTTT quản lý: - Sau khi có Báo cáo kết quả phân tích HTTT – kết quả của giai đoạn đầu tiên trong quá trình xây dựng HTTT quản lý của một tổ chức - Được sự phê duyệt của các cấp lãnh đạo có thẩm quyền Nội dung Chương 3: nghiên cứu quy trình và các nguyên tắc thiết kế HTTT quản lý. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 2
  3. Chương 3 THIẾT KẾ HTTT QUẢN LÝ Các nội dung chính: I. Quy trình thiết kế HTTT quản lý II. Mô hình hóa thực thể III. Thiết kế các tệp dữ liệu từ sơ đồ Quan hệ - Thực thể IV. Chuẩn hóa dữ liệu V. Thiết kế phần mềm hoặc lựa chọn phần mềm trên thị trường VI. Thiết kế giao diện người - máy www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 3
  4. I. QUY TRÌNH THIẾT KẾ HTTT QUẢN LÝ Các tài liệu đã Mô hình hóa thu được trong thực thể quá trình phân tích HTTT Thiết kế Thiết kế HTTT QL phần mềm Sơ đồ BFD Thiết kế giao diện Sơ đồ DFD người - máy www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 4
  5. II. MÔ HÌNH HÓA THỰC THỂ Là cách thứ hai tiếp cận HTTT với các tên gọi: Mô hình hóa thực thể, Mô hình hóa dữ liệu hoặc Phân tích dữ liệu logic. Phương pháp luận: các kỹ thuật phân tích dữ liệu và các kỹ thuật phân tích quá trình. Sơ đồ Mô tả chức MH thực Mô tả năng của HT BFD HTTT thể cấu trúc, Sơ đồ quản lý MH dữ nội dung dữ liệu Mô tả các DFD liệu xử lý trên dữ liệu www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 5
  6. II. MÔ HÌNH HÓA THỰC THỂ Phân tích dữ liệu là phương pháp xác định: - các đơn vị thông tin cơ sở, gọi là thực thể (Entity) - mối quan hệ giữa chúng. Phân tích dữ liệu logic là: - xem xét chính các thực thể và cơ chế vận hành của chúng, - tìm phương pháp tốt nhất để mọi thành phần dữ liệu sẽ được lưu trữ một lần trong toàn bộ HTTT - tạo điều kiện truy cập thuận lợi nhất cho mọi người có nhu cầu www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 6
  7. II. MÔ HÌNH HÓA THỰC THỂ Các dòng Phòng Hành chính Phòng Tổ chức thông tin Tổng hợp Cán bộ trong tổ chức Phòng Kế toán Phòng Kế Tài chính hoạch Phòng Đầu tư Phòng Kinh doanh - XDCB – Tiếp thị www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 7
  8. II. MÔ HÌNH HÓA THỰC THỂ Mô hình Phòng Hành chính – Phòng Tổ chức CSDL Tổng hợp Cán bộ trong tổ chức Phòng Kế toán - Cơ sở Phòng Kế Tài chính dữ liệu hoạch Phòng Đầu tư Phòng Kinh doanh - XDCB – Tiếp thị www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 8
  9. II. MÔ HÌNH HÓA THỰC THỂ Mô hình thực thể hay Mô hình dữ liệu logic (hay Sơ đồ tiêu chuẩn) được xây dựng bằng bốn kiểu khối tương ứng với bốn khái niệm logic chính: - Thực thể (Entity) - Cá thể (Instance) - Thuộc tính (Attribute) - Quan hệ (Relation) www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 9
  10. 1. Mô hình thực thể a/ Thực thể - lớp các đối tượng có cùng đặc tính chung mà người ta muốn quản lý thông tin về nó. Ví dụ: thực thể “NHÂN VIÊN” dùng để chỉ những người nhân viên làm việc trong tổ chức, họ có các đặc tính chung cần quản lý: - mã nhân viên, - tên gọi, - ngày sinh, - công việc chuyên môn www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 10
  11. 1. Mô hình thực thể Trong thực tế có rất nhiều loại thực thể khác nhau: - Thực thể xác thực: mô tả cho các đối tượng hữu hình - Thực thể chức năng: mô tả cho mục đích, chức năng, hoặc nhiệm vụ của con người, thiết bị trong hệ thống hoặc tổ chức - Thực thể sự kiện: mô tả cho sự kiện hoặc biến cố - Thực thể quan hệ: mô tả quan hệ giữa các đối tượng. Đây là một quan hệ có thêm dữ liệu riêng tạo thành thực thể. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 11
  12. 1. Mô hình thực thể b/ Cá thể: là một đối tượng cụ thể trong thực thể. Ví dụ: Nguyễn Văn A là một cá thể của thực thể Sinh viên; Tivi Sony là một cá thể của thực thể Hàng hóa c/ Thuộc tính: là các đặc trưng riêng của tất cả các đối tượng trong thực thể. Ví dụ: thực thể Sinh viên có các thuộc tính là Mã sinh viên, Họ và tên sinh viên, Ngày sinh, Địa chỉ, Trường, Khoa, Khóa học, Lớp học Thực thể Hàng hóa có các thuộc tính là Mã hàng hóa, Tên hàng hóa, Đơn vị tính, Đơn giá www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 12
  13. 1. Mô hình thực thể Các loại thuộc tính phổ biến: - Thuộc tính định danh (hay còn gọi là khóa): là một hay tổ hợp của một số thuộc tính mà giá trị của nó được xác định một cách duy nhất đối với mỗi cá thể của một thực thể. - Thuộc tính mô tả: để làm rõ tính chất và cung cấp thông tin về các cá thể của thực thể. Giá trị của các thuộc tính này có thể trùng nhau với các cá thể khác nhau. Các thuộc tính mô tả chỉ được xuất hiện trong một và chỉ một bảng của CSDL mà thôi. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 13
  14. 1. Mô hình thực thể Các loại thuộc tính phổ biến: - Thuộc tính quan hệ: giá trị của nó cho phép xác định mối quan hệ giữa cá thể của thực thể này với cá thể của thực thể kia. Nó giống với thuộc tính mô tả thông thường trong bản thân thực thể chứa nó nhưng ở trong một thực thể khác thì nó là một thuộc tính định danh. - Thuộc tính lặp: có thể nhận nhiều hơn một giá trị. - Thuộc tính thứ sinh: giá trị của nó có thể tính toán hoặc suy luận từ các thuộc tính khác. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 14
  15. 1. Mô hình thực thể Thực thể Khách hàng Các dạng Thực thể thuộc tính Hóa đơn Mã khách hàng Số hóa đơn Thuộc tính định danh Họ và tên Mã khách hàng Địa chỉ Thuộc tính Mã hàng hóa Số tài khoản lặp Số lượng Thuộc tính Mã số thuế Thành tiền quan hệ Th.tính thứ sinh Tổng tiền Thực thể Bằng chữ Hàng hóa Ph.thức th.toán Mã hàng hóa Thuộc tính mô tả Tên hàng hóa Đơn vị tính Đơn giá www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 15
  16. 1. Mô hình thực thể Các ký pháp dùng để biểu diễn thực thể trên sơ đồ # Thực thể Thuộc tính Th.tính Th.tính Th.tính định danh lặp quan hệ Họ và tên Địa chỉ NR #Mã nhân Kỹ năng Ví dụ về thực thể viên NHÂN VIÊN “Nhân viên” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 16
  17. 1. Mô hình thực thể Cùng với khái niệm thuộc tính lặp còn có nhóm lập lại: là nhóm gồm nhiều thuộc tính lặp (liên quan nhau về ý nghĩa) của một thực thể. Emp_Name Emp_Address #EmpID Emp_Skill Dep_Name, EMPLOYEE Dep_Age, Dep_Relation www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 17
  18. 2. Mối quan hệ giữa các thực thể - Trong thực tế, các thực thể không tồn tại độc lập mà có quan hệ mật thiết với nhau. - Quan hệ ở đây là mối liên kết giữa một hoặc nhiều thực thể để chỉ ra sự liên quan về nội dung và ý nghĩa giữa các cá thể trong các thực thể. Ví dụ: mối quan hệ giữa khách hàng và một hóa đơn, mối quan hệ giữa một sản phẩm và một nhà cung cấp sản phẩm. Quan hệ “Mỗi Sinh viên học nhiều Môn học” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 18
  19. 2. Mối quan hệ giữa các thực thể Biểu diễn mối quan hệ trên mô hình thực thể: - hình thoi bên trong ghi tên quan hệ, - các đoạn thẳng nối từ hình thoi với các hình chữ nhật ghi tên các thực thể. A, B: Hai thực thể A R B R : Quan hệ giữa A&B X ,Y X1,Y1 2 2 X,Y: Kiểu q.hệ giữa A&B Biểu diễn mối quan hệ giữa hai thực thể www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 19
  20. 2. Mối quan hệ giữa các thực thể Mối quan hệ tự nhiên giữa các thực thể tồn tại ở nhiều dạng: ♦ Mối quan hệ giữa hai thực thể A và B có thể được mô tả bằng một thuộc tính quan hệ ở một thực thể, thuộc tính này là thuộc tính định danh ở thực thể kia. Ví dụ: Quan hệ “Mỗi sinh viên thuộc một lớp học”: + Thực thể “Sinh viên” có các thuộc tính: #Mã Sinh viên, Họ và tên, , Mã Lớp học + Thực thể “Lớp học” có các thuộc tính: #Mã Lớp học, Khóa học, Ngành, Khoa www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 20
  21. 2. Mối quan hệ giữa các thực thể ♦ Mối quan hệ giữa hai thực thể có những thuộc tính riêng, tạo thành một thực thể quan hệ . Ví dụ: “Mỗi sinh viên sau mỗi lần thi một môn học sẽ có một điểm xác định cho lần thi đó”. Có 2 thực thể “Sinh viên” và “Môn học” quan hệ “Thi” liên kết 2 thực thể này. Sinh viên THI Môn học 1 N N 1 Mã SV Lần thi Điểm Mã MH Thực thể quan hệ “Thi” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 21
  22. a/ Các kiểu quan hệ Có ba kiểu quan hệ chính được sử dụng dưới các dạng đơn giản nhất của Mô hình thực thể: - Quan hệ Một – Một - Quan hệ Một – Nhiều - Quan hệ Nhiều – Nhiều Ba kiểu này liên quan tới mỗi cá thể của một thực thể không liên kết hoặc có liên kết với một hoặc nhiều cá thể của chính nó hoặc của các thực thể khác. Đầu tiên - xét trường hợp mối quan hệ giữa hai thực thể A và B www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 22
  23. a/ Các kiểu quan hệ ♦ Quan hệ Một – Một: Người ta nói thực thể A có quan hệ 1-1 với thực thể B nếu mỗi cá thể của thực thể A hoặc là không liên kết hoặc là liên kết với chỉ một cá thể của thực thể B và ngược lại, mỗi cá thể của thực thể B hoặc là không liên kết hoặc là liên kết với chỉ một cá thể của thực thể A. A, B: Hai thực thể A B X,1 R Y,1 R : Quan hệ 1-1 giữa A&B X, Y có thể có giá trị 0 hoặc 1 thể hiện sự liên kết mỗi thể hiện sự liên kết mỗi cá thể của B với mỗi cá cá thể của A với mỗi cá thể của A thể của B Biểu diễn mối quan hệ 1-1 giữa hai thực thể A&B www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 23
  24. a/ Các kiểu quan hệ ♦ Quan hệ Một – Một: Ví dụ: Mỗi độc giả tại một thời điểm chỉ được đọc một quyển sách và mỗi cuốn sách có thể không có ai đọc hoặc có người đọc thì chỉ có một người đọc mà thôi. Độc giả Đọc Sách 0,1 1 Mối quan hệ giữa hai thực thể Đọc giả và Sách www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 24
  25. a/ Các kiểu quan hệ ♦ Quan hệ Một – Nhiều (1-N): Người ta nói thực thể A có quan hệ 1-N với thực thể B nếu mỗi cá thể của thực thể A liên kết với nhiều cá thể của thực thể B và mỗi cá thể của thực thể B chỉ liên kết với một cá thể của thực thể A. A B A 1 R N thể hiện sự liên kết một thể hiện sự liên kết một cá thể của A với nhiều B cá thể của B với một cá cá thể của B thể của A Biểu diễn mối quan hệ 1-N giữa hai thực thể A&B www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 25
  26. a/ Các kiểu quan hệ ♦ Quan hệ Một – Nhiều: Ví dụ: Xét mối quan hệ giữa 2 thực thể Khách hàng và Hóa đơn. Một khách hàng có thể có nhiều hóa đơn mua hàng, nhưng trong mỗi hóa đơn chỉ ghi tên của một khách hàng. Khách Khách hàng Có Hóa đơn hàng 1 N Mối quan hệ giữa hai thực thể Hóa Khách hàng và Hóa đơn đơn www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 26
  27. a/ Các kiểu quan hệ ♦ Quan hệ Nhiều – Nhiều (N-N): Người ta nói thực thể A có quan hệ N-N với thực thể B nếu mỗi cá thể của thực thể A liên kết với nhiều cá thể của thực thể B và mỗi cá thể của thực thể B liên kết với nhiều cá thể của thực thể A. Khái niệm “nhiều cá thể” ở đây có thể là 0, 1 hay nhiều cá thể. A A R B N N thể hiện sự liên kết một thể hiện sự liên kết cá thể của A với nhiều B một cá thể của B với cá thể của B nhiều cá thể của A www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 27
  28. a/ Các kiểu quan hệ ♦ Quan hệ Nhiều – Nhiều (N-N): Ví dụ: Xét mối quan hệ giữa thực thể Sinh viên và thực thể Môn học. Một sinh viên học nhiều môn học và mỗi môn học có nhiều sinh viên tham gia học tập. Sinh Sinh viên Học Môn học N N viên Mối quan hệ giữa hai thực thể Môn Sinh viên và Môn học học www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 28
  29. b/ Bậc của quan hệ Bậc của quan hệ chỉ số lượng thực thể tham gia vào quan hệ đó. - Quan hệ bậc 1 là quan hệ của một cá thể với các cá thể khác thuộc cùng một thực thể. - Quan hệ bậc 2 là quan hệ giữa 2 thực thể. Đây là quan hệ thường gặp trong thực tế. - Quan hệ bậc 3 trở lên được gọi quan hệ bậc cao. Người ta đã chứng minh được rằng mọi quan hệ bậc cao đều biến đổi được về quan hệ bậc 2. Trong mỗi bậc quan hệ đều tồn tại các kiểu quan hệ như đã trình bày ở trên. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 29
  30. b/ Bậc của quan hệ X A R3 B N A R1 N Y Quan hệ bậc 1 NN C A B Quan hệ bậc 3 R2 X Y Quan hệ bậc 2 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 30
  31. b/ Bậc của quan hệ Quan hệ bậc 1 ♦ Kiểu quan hệ 1-1, quan hệ bậc 1: một cá thể không có quan hệ hoặc chỉ quan hệ với một cá thể khác thuộc cùng một thực thể. 0,1 Ví dụ: Tình trạng hôn nhân của mỗi người có thể là độc thân hoặc Kết Nhân dân đã kết hôn. hôn 0,1 Nếu người đó đã kết hôn thì chỉ được kết hôn với duy nhất một người khác. Quan hệ kết hôn trong xã hội www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 31
  32. b/ Bậc của quan hệ ♦ Kiểu quan hệ 1-N, quan hệ bậc 1: Trong cùng một thực thể, có hai loại cá thể, loại thứ nhất: mỗi cá thể có quan hệ với nhiều cá thể, loại thứ hai: mỗi cá thể chỉ có quan hệ với duy nhất một cá thể khác mà thôi. Ví dụ: Xét thực thể là Nhân viên của 1 một cơ quan. Một nhân viên có thể phụ Nhân viên Phụ trách nhiều nhân viên khác, nhưng tại trách một thời điểm, một nhân viên chỉ chịu N sự phụ trách của một nhân viên – là người phụ trách - khác mà thôi. Quan hệ Phụ trách trong cơ quan www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 32
  33. b/ Bậc của quan hệ ♦ Kiểu quan hệ N-N, quan hệ bậc 1: một cá thể đều có quan hệ với nhiều cá thể khác thuộc cùng một thực thể. N Ví dụ: Xét thực thể là Sản phẩm, trong đó một sản phẩm Sản phẩm Được cấu thành được cấu thành từ một số sản N phẩm và nó cũng có thể là thành phần của nhiều sản Quan hệ “Được cấu thành” trong phẩm khác. thực thể Sản phẩm www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 33
  34. b/ Bậc của quan hệ Quan hệ bậc 2 (xem các slide từ 23 đến 28) Quan hệ bậc 3: Ta xét 3 thực thể là Nhà cung cấp, Hàng hóa và Siêu thị. Quan hệ được xét là nhà cung cấp cung cấp hàng hóa cho các siêu thị. Nhà cung cấp Cung cấp Hàng hóa N N NN Siêu thị Quan hệ bậc 3 giữa Nhà cung cấp, Hàng hóa và Siêu thị www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 34
  35. b/ Bậc của quan hệ Quan hệ bậc 3: Nhà cung cấp N Gửi hàng N Kho hàng Chứa Hàng hóa N N N Chuyển đến N Siêu thị Biến đổi quan hệ bậc 3 thành quan hệ bậc 2 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 35
  36. III. THIẾT KẾ CÁC TỆP DỮ LIỆU TỪ SƠ ĐỒ QUAN HỆ - THỰC THỂ Để thiết kế các tệp dữ liệu từ sơ đồ Quan hệ - Thực thể, chúng ta phải thực hiện theo 2 bước: 1. Xây dựng sơ đồ Quan hệ - Thực thể ERD (Entity Relation Diagram) 2. Thiết lập cơ sở dữ liệu từ sơ đồ Quan hệ - Thực thể www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 36
  37. 1. Xây dựng sơ đồ Quan hệ - Thực thể ERD Sau khi đã nghiên cứu các thực thể và mối quan hệ giữa các thực thể, chúng ta có thể xây dựng Sơ đồ Quan hệ - Thực thể ERD. Các bước xây dựng Sơ đồ ERD: Xác định Xác định Xác định các Xác định các quan hệ thuộc tính kiểu và thực thể giữa các của thực thể, bậc của thực thể quan hệ quan hệ www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 37
  38. 1. Xây dựng sơ đồ Quan hệ - Thực thể ERD 1. Xác định các thực thể- nên chọn danh từ để đặt tên cho thực thể 2. Xác định quan hệ giữa các thực thể. Tên của quan hệ thường được diễn tả bằng động từ để chỉ các hành động, sự kiện liên kết 3. Xác định các thuộc tính của thực thể và quan hệ. Tên các thuộc tính thường là danh từ - kết hợp với một số ký hiệu: - Thuộc tính định danh (Khóa): #Tên thuộc tính - Thuộc tính quan hệ: Tên thuộc tính QH - Riêng đối với thực thể quan hệ: Khóa được tạo thành từ hai thuộc tính quan hệ ở hai thực thể (Thuộc tính QH 1, Thuộc tính QH 2) 4. Xác định kiểu và bậc cho mỗi quan hệ. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 38
  39. 1. Xây dựng sơ đồ Quan hệ - Thực thể ERD Ví dụ: Bộ GD&ĐT tổ chức khảo sát các trường Đại học. Mỗi trường Đại học có nhiều Khoa, mỗi Khoa có nhiều Bộ môn, mỗi Bộ môn có nhiều Giảng viên. Để nâng cao chất lượng đào tạo, các trường quy định mỗi giảng viên chỉ giảng một môn học, mỗi môn học chỉ do một giảng viên phụ trách. Tại các trường, mỗi Khoa đều quản lý nhiều lớp, mỗi lớp có nhiều Sinh viên. Mỗi sinh viên phải học nhiều môn học, mỗi Môn học có nhiều Sinh viên tham gia. Hãy vẽ sơ đồ Quan hệ - Thực thể (ERD) để làm cơ sở thiết kế sơ đồ cấu trúc dữ liệu nhằm quản lý trường đại học. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 39
  40. 1.Xây dựng sơ đồ Quan hệ - Thực thể ERD Dựa vào nội dung của báo cáo khảo sát, ta xác định được: ♦ Các thực thể: Trường, Khoa, Bộ môn, Giảng viên, Môn học, Lớp, Sinh viên. ♦ Mối quan hệ giữa các thực thể: - Giữa Trường và Khoa thể hiện bằng “Mã trường” ở thực thể “Khoa”, - Giữa Khoa và Bộ môn thể hiện bằng “Mã khoa” ở thực thể “Bộ môn” - Giữa Sinh viên và Môn học có những thuộc tính riêng là “Lần thi”, “Điểm thi” nên cần tạo thêm một thực thể quan hệ “Sinh viên – Môn học” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 40
  41. 1.Xây dựng sơ đồ Quan hệ - Thực thể ERD Bảng thực thể - quan hệ và thuộc tính Thực thể Thuộc tính Trường #Mã trường, Tên trường, Đơn vị chủ quản Khoa #Mã khoa, Tên khoa, , Mã trường Bộ môn #Mã bộ môn, Tên bộ môn, , Mã khoa Giảng viên #Mã giảng viên, Họ tên GV, Ngày sinh, Địa chỉ, , Mã bộ môn Môn học #Mã môn học, Tên môn học, SoDVHT, , Mã giảng viên Lớp #Mã lớp, Tên lớp, Mã khoa Sinh viên #Mã sinh viên, Họ và tên SV, Ngày sinh, Địa chỉ, , Mã lớp SVMH Mã sinh viên, Mã môn học, Lần thi, Điểm thi www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 41
  42. 1. Xây dựng sơ đồ Quan hệ - Thực thể ERD Tiếp tục xác định kiểu và bậc của quan hệ → vẽ sơ đồ ERD Hệ đào tạo Bộ môn Giảng viên 1 1 N N N 1 1 1 Trường ĐH N Khoa Môn học 1 1 N N Lớp Sinh viên 1 N N Sơ đồ quan hệ - thực thể để quản lý trường đại học www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 42
  43. 2. Thiết lập cơ sở dữ liệu (CSDL) từ sơ đồ Quan hệ - Thực thể (ERD) Việc thiết lập CSDL thực chất là xác định các tệp dữ liệu có liên quan đến nhau để phục vụ cho công tác quản lý của một tổ chức. CSDL Trường khóa chính Sơ đồ các Trường mô tả ERD tệp dữ liệu Trường quan hệ Lưu ý: - không đi sâu nghiên cứu về cách tạo lập các tệp dữ liệu - chỉ nghiên cứu thủ tục xây dựng các tệp dữ liệu nhằm đảm bảo tính chuẩn hóa theo nghĩa thông tin không thiếu, không thừa, không được trùng lặp www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 43
  44. 2. Thiết lập CSDL từ sơ đồ ERD Sự khác nhau về tên gọi các thành phần thuộc thực thể và tệp dữ liệu Thực thể Tệp dữ liệu Ký hiệu/ Ví dụ Thuộc tính Trường (Field) Tên có thể viết Tên viết bằng tiếng Thuộc tính “Họ và tên” bằng tiếng Việt, Việt, không dấu Trường dữ liệu “Hovaten” có dấu hoặc tiếng Anh Th.tính định danh Trường khóa chính Dấu # và gạch chân dưới tên (1a) (1b) (1a) #Mã cán bộ (1b) #Macanbo Th.tính mô tả (2a) Trường mô tả (2b) (2a) Địa chỉ (2b) Diachi Th.tính quan hệ Trường quan hệ Gạch chân dưới tên (3a) (3b) (3a) Mã vợ chồng (3b) Mavochong www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 44
  45. 2. Thiết lập CSDL từ sơ đồ ERD Phương pháp thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Một của quan hệ bậc 1: ta tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Nếu cá thể X có quan hệ với cá thể Y thì giá trị trường quan hệ của X được xác định duy nhất bằng giá trị của trường khóa chính của Y. Ví dụ: Xét thực thể “Cán bộ” với quan hệ “Là vợ/chồng”. Ta tạo một tệp “Canbo” với trường khóa chính là #Macanbo, các trường mô tả là Hovaten, Ngaysinh, Diachi, ; trường quan hệ Mavochong. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 45
  46. 2. Thiết lập CSDL từ sơ đồ ERD Tệp dữ liệu Cán bộ và quan hệ Vợ/Chồng #Macanbo Hovaten Mavochong A001 Nguyễn Văn A B005 B005 Lê Thị B A001 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 46
  47. 2. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ 1-N của quan hệ bậc 1: ta tạo một tệp dữ liệu duy nhất, xác định trường khóa chính, trường mô tả và trường quan hệ. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính. Ví dụ: Xét thực thể “Nhân viên” với quan hệ “Phụ trách”. Ta tạo một tệp “Nhanvien” với trường khóa chính là #Manhanvien, các trường mô tả là Hovaten, Ngaysinh, Diachi, ; trường quan hệ Maphutrach. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 47
  48. 2. Thiết lập CSDL từ sơ đồ ERD Tệp dữ liệu Nhân viên và quan hệ Phụ trách #Manhanvien Hovaten Ngaysinh Maphutrach A001 Nguyễn Văn An B002 Lê Thanh Bình H004 H004 Trần Thu Hà A001 H012 Vũ Ngọc Hoa H004 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 48
  49. 2. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ N-N của quan hệ bậc 1: ta tạo hai tệp dữ liệu, một tệp mô tả thực thể, một tệp mô tả quan hệ. - Đối với tệp thực thể: xác định trường khóa chính, trường mô tả. - Đối với tệp quan hệ: xác định trường quan hệ, trường mô tả. Giá trị của trường quan hệ được xác định không duy nhất từ giá trị của trường khóa chính của tệp thực thể. Ví dụ: Xét thực thể “Sản phẩm” với quan hệ “Được cấu thành từ”. Ta tạo hai tệp: - Tệp “Sanpham” với các trường #MaSP, TenSP, Donvitinh, Dongia. - Tệp “Quanhe” với các trường MaSP, MaSPNL; Soluong. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 49
  50. 2. Thiết lập CSDL từ sơ đồ ERD Các tệp Sanpham và tệp Quanhe #MaSP TenSP Donvitinh Dongia Lm02 Lúa mạch Bm01 Bột mỳ Ba05 Bánh mỳ MaSP MaSPNL Soluong Bm01 Lm02 5 Ba05 Bm01 1 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 50
  51. 2. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Một của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ có thể thuộc tệp này hoặc tệp kia. Cả hai trường hợp thông tin thu được đều như nhau. Ví dụ: Xét hai thực thể là “Trưởng phòng” và “Phòng công tác” với quan hệ “Lãnh đạo”. Ta tạo hai tệp theo hai trường hợp sau: - Tr.hợp 1: Tệp “Phongcongtac” chứa trường quan hệ là MaTP - Tr.hợp 2: Tệp “Truongphong” chứa trường quan hệ là MaphongCT www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 51
  52. 2. Thiết lập CSDL từ sơ đồ ERD Các tệp dữ liệu Truongphong và Phongcongtac (Trường hợp 1) #MaTP HovatenTP #MaphongCT TenphongCT MaTP QL01 Đỗ Văn An PCT01 Tổ chức CB QL02 QL02 Vũ Ngọc Thu PCT02 Kế toán QL01 QL03 Lê Xuân Hà PCT03 Kế hoạch- ĐT QL03 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 52
  53. 2. Thiết lập CSDL từ sơ đồ ERD Các tệp dữ liệu Truongphong và Phongcongtac (Trường hợp 2) #MaTP HovatenTP MaphongCT QL01 Đỗ Văn An PCT02 QL02 Vũ Ngọc Thu PCT01 QL03 Lê Xuân Hà PCT03 #MaphongCT TenphongCT PCT01 Tổ chức CB PCT02 Kế toán PCT03 Kế hoạch- ĐT www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 53
  54. 2. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Một – Nhiều của quan hệ bậc 2: ta tạo hai tệp dữ liệu mô tả hai thực thể. Xác định trường khóa chính, trường mô tả cho mỗi tệp. Trường quan hệ bắt buộc phải thuộc tệp tương ứng với thực thể đầu “Nhiều”, giá trị của nó được xác định từ các giá trị của trường khóa chính của tệp tương ứng với thực thể đầu “Một”. Ví dụ: Xét hai thực thể là “Lớp học” và “Sinh viên” với quan hệ “Có/ Thuộc”. Ta tạo hai tệp dữ liệu: “Lophoc” và “Sinhvien”, trong tệp “Sinhvien” có trường quan hệ là MaLH. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 54
  55. 2. Thiết lập CSDL từ sơ đồ ERD Các tệp dữ liệu Lophoc và Sinhvien #MaLH TenLH #MaSV HovatenSV MaLH D07QT1 D07QTKD1 QT0015 Lê Thu Hà D07QT1 D07QT2 D07QTKD2 QT0037 Vũ Văn Nam D07QT1 C08QT C08QTKD QT0174 Trần Đình Chiến D07QT2 QT0185 Nguyễn Thu Thanh D07QT2 QT0291 Trần Thanh Bình C08QT www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 55
  56. 2. Thiết lập CSDL từ sơ đồ ERD ♦ Kiểu quan hệ Nhiều – Nhiều của quan hệ bậc 2: ta tạo ba tệp dữ liệu, hai tệp mô tả hai thực thể, tệp thứ ba mô tả quan hệ giữa hai thực thể đó. - Đối với hai tệp tương ứng với hai thực thể: xác định trường khóa chính, trường mô tả. - Đối với tệp thứ ba – tệp quan hệ: Hai trường quan hệ được xác định từ giá trị của hai trường khóa chính tương ứng với hai tệp thực thể. Tổ hợp của cả hai trường quan hệ này sẽ là trường khóa chính của tệp quan hệ. Sau đó xác định các trường mô tả của tệp quan hệ này. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 56
  57. 2. Thiết lập CSDL từ sơ đồ ERD Các trường Tệp dữ liệu Tệp dữ liệu Các trường mô tả 1 mô tả thực thể 1 mô tả thực thể 2 mô tả 2 Trường khóa Trường khóa chính 1 chính 2 Trường quan hệ 1 Trường quan hệ 2 Tệp dữ liệu Trường khóa chính Các trường mô tả quan hệ của tệp QH mô tả www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 57
  58. 2. Thiết lập CSDL từ sơ đồ ERD Ví dụ: Xét hai thực thể “Sinh viên”, “Môn học” và quan hệ “Sinh viên và Môn học”. Quan hệ này là quan hệ N-N với các thuộc tính riêng là lần thi và điểm thi. Từ đó, ta tạo 3 tệp dữ liệu: - Tệp Sinhvien với trường khóa chính là #MaSV, các trường mô tả là Hovaten, - Tệp Monhoc với trường khóa chính là #MaMH, các trường mô tả là TenMH, - Tệp SVMH với trường khóa chính là tổ hợp của 2 trường quan hệ: MaSV, MaMH; các trường mô tả là Lanthi, Diemthi. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 58
  59. 2. Thiết lập CSDL từ sơ đồ ERD Tệp dữ liệu Monhoc #MaMH TenMH Tệp dữ liệu Sinhvien CB01 Toán cao cấp QT05 Kinh tế vi mô #MaSV HovatenSV CB12 Lịch sử Đảng QT0015 Lê Thu Hà QT0037 Vũ Văn Nam QT0174 Trần Đình Chiến MaSV MaMH Lanthi Diemthi QT0185 Bùi Thu Thanh QT0015 CB01 1 8 QT0037 CB01 1 9 QT0174 CB12 2 6 Tệp dữ liệu SVMH QT0185 QT05 1 9 www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 59
  60. 3. Chuẩn hóa dữ liệu a/ Khái niệm chuẩn hóa dữ liệu: - là quá trình rà soát tất cả các danh sách thuộc tính của các thực thể, áp dụng một tập các quy tắc phân tích để chuyển chúng thành dạng sao cho: + Tối thiểu việc lặp lại, tránh dư thừa thông tin. + Không có khóa chính nào bị rỗng. + Không để xảy ra tình trạng một thuộc tính chưa được hiểu rõ hoặc hiểu theo nhiều nghĩa khác nhau. - Quá trình chuẩn hóa được thực hiện dựa trên khái niệm “phụ thuộc hàm” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 60
  61. 3. Chuẩn hóa dữ liệu b/ Khái niệm phụ thuộc hàm: “Thuộc tính B phụ thuộc hàm vào thuộc tính A, viết là A → B nếu với mỗi giá trị của A tương ứng với một giá trị duy nhất của B”. Nói cách khác tồn tại một ánh xạ từ tập hợp các giá trị của A đến tập hợp các giá trị của B. Trong một thực thể, mỗi thuộc tính đều phụ thuộc hàm vào khóa (một thuộc tính hoặc hai hay nhiều hơn nữa các thuộc tính khác - tạo thành bộ khóa). www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 61
  62. 3. Chuẩn hóa dữ liệu b/ Khái niệm phụ thuộc hàm: Ví dụ: Xét thực thể “Hóa đơn” với các thuộc tính Số hóa đơn, Tên khách hàng, Tên hàng hóa, Tiền mua hàng. Ta thấy có các sự phụ thuộc hàm sau đây: → và → Ứng với mỗi giá trị của khóa → một bộ giá trị duy nhất của các thuộc tính còn lại. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 62
  63. 3. Chuẩn hóa dữ liệu c/ Các dạng chuẩn và quá trình chuẩn hóa dữ liệu: Thực Thực Thực Thực thể thể có thể có thể có “chưa Q.tắc k.tra Q.tắc k.tra Q.tắc k.tra dạng dạng dạng được thứ nhất thứ hai thứ ba chuẩn chuẩn chuẩn chuẩn 1 (1NF) 2 (2NF) 3 (3NF) hóa” Quá trình chuẩn hóa dữ liệu www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 63
  64. 3. Chuẩn hóa dữ liệu Thực Thực thể có Thực thể rà soát và loại các dạng thể “chưa Quá trình th.tính thứ sinh hoặc chuẩn ban được chuẩn hóa không quan trọng hoàn đầu chuẩn toàn hóa” (3NF) www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 64
  65. 3. Chuẩn hóa dữ liệu Nếu có th.tính lặp: - tách chúng ra thành danh sách con, - gán một tên, - tìm một th.tính định Thực Q.tắc k.tra thứ nhất: danh, kết hợp với th.tính thể có Có th.tính lặp không? định danh của thực thể dạng gốc tạo thành một khóa. 1NF Không có th.tính lặp www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 65
  66. 3. Chuẩn hóa dữ liệu Nếu có th.tính chỉ phụ thuộc vào một phần của khóa: - tách thành thực thể mới, Q.tắc k.tra thứ hai: - lấy bộ phận của khóa làm Xuất phát từ 1NF, k.tra th.t. đ.danh cho thực thể mới, Thực các th.tính không phải là - gán một cái tên phù hợp. thể có khóa đều phụ thuộc hàm dạng vào toàn bộ khóa chính? 2NF Các th.tính không phải là khóa phụ thuộc hàm toàn bộ vào khóa www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 66
  67. 3. Chuẩn hóa dữ liệu Nếu có sự phụ thuộc bắc cầu A→ B→ C thì tách chúng ra làm 2 thực thể: Q.tắc k.tra thứ ba: - thực thể thứ nhất chứa quan Xuất phát từ 2NF, k.tra hệ A và B, Thực không được tồn tại sự - thực thể thứ hai chứa quan thể có phụ thuộc bắc cầu hệ B và C. dạng giữa các thuộc tính 3NF Không có sự phụ thuộc bắc cầu giữa các th.tính www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 67
  68. 3. Chuẩn hóa dữ liệu Ví dụ 1: Chúng ta cần thiết kế các tệp dữ liệu để quản lý các hóa đơn bán hàng. Bước 1: Xác định các thông tin liên quan như danh sách khách hàng, danh mục hàng hóa, phiếu xuất kho Bước 2: Liệt kê tất cả các thuộc tính liên quan đến hóa đơn bán hàng, xác định các thuộc tính lặp (R) và thuộc tính thứ sinh (S). Đặt tên cho thực thể ban đầu là “Hóa đơn” với các thuộc tính sau: Số hóa đơn, Liên số, Mã KH, Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế, Ph.thức thanh toán, Stt (R), Tên hàng hóa (R), Đơn vị tính (R), Đơn giá (R), Số lượng (R), Thành tiền (R) & (S), Tổng cộng (S), Thuế VAT (S), Tổng tiền thanh toán (S), Viết bằng chữ (S), Ngày bán, Người bán, Người mua. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 68
  69. HÓA ĐƠN BÁN HÀNG Số: 123/HĐ Liên số: 2 Mã khách hàng: A045 Họ và tên khách hàng: Nguyễn Văn Anh Địa chỉ khách hàng: Học viện Công nghệ BCVT Số tài khoản: 011001432 Mã số thuế: 0100684378082 Phương thức thanh toán: Tiền mặt Stt Tên hàng hóa Đơn vị tính Đơn giá Số lượng Thành tiền 1 Máy in Laser Chiếc 4.500.000 1 4.500.000 2 Máy in HP Chiếc 2.350.000 3 7.050.000 Tổng cộng 11.550.000 Thuế VAT: 1.155.000 đồng Tổng tiền thanh toán: 12.705.000 đồng Viết bằng chữ: Mười hai triệu bảy trăm linh năm nghìn đồng./. Ngày 18 tháng 5 năm 2009 Người mua Người bán V.Anh K.Liên www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 69
  70. 3. Chuẩn hóa dữ liệu Bước 3: - Loại bỏ các thuộc tính thứ sinh (Thành tiền, Tổng cộng, Thuế VAT, Tổng tiền thanh toán, Viết bằng chữ) - Loại bỏ các thuộc tính ít có ý nghĩa trong quản lý (Liên số, Stt). Ta còn lại các thuộc tính sau: Số hóa đơn, Mã KH, Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế, Ph.thức thanh toán, Tên hàng hóa (R), Đơn vị tính (R), Đơn giá (R), Số lượng (R), Ngày bán, Người bán, Người mua. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 70
  71. 3. Chuẩn hóa dữ liệu Bước 4: a) Thực hiện chuẩn hóa mức 1 (1NF): áp dụng quy tắc kiểm tra thứ nhất Có th.tính lặp: Tên hàng hóa, Đơn vị tính, - tách chúng ra thành Đơn giá, Số lượng danh sách con - gán một tên Hàng mua - tìm một th.t đ.danh Mã HH - kết hợp với th.t đ.d của thực thể gốc tạo Số hóa đơn thành một khóa Mã HH, Số hóa đơn www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 71
  72. 3. Chuẩn hóa dữ liệu Sau khi chuẩn hóa mức 1, ta được 2 thực thể: Hóa đơn Số Mã Họ tên Địa chỉ Số Mã số Ph.th Ngày Ng. Ng. HĐ KH KH KH TK thuế th.t. bán bán mua Hàng mua Số HĐ Mã HH Tên HH Đơn vị Đơn giá Số tính lượng www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 72
  73. 3. Chuẩn hóa dữ liệu Bước 4: b) Thực hiện chuẩn hóa mức 2 (1NF): áp dụng quy tắc kiểm tra thứ hai Trong thực thể “Hóa đơn” có các thuộc tính chỉ phụ Mã KH → Họ và tên KH, Địa chỉ thuộc vào một phần của KH, Số tài khoản, Mã số thuế khóa: - tách thành thực thể mới - lấy bộ phận của khóa → Số hóa đơn Mã KH th.t. đ.d cho thực thể mới - gán một cái tên phù hợp Khách hàng www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 73
  74. 3. Chuẩn hóa dữ liệu Sau khi chuẩn hóa mức 2, ta được 4 thực thể: Hóa đơn Khách hàng Hàng mua Hàng hóa #Số hóa đơn #Mã KH Số hóa đơn #Mã hàng hóa Mã KH Họ và tên KH Mã hàng hóa Tên hàng hóa Ph.thức thanh toán Địa chỉ KH Số lượng Đơn vị tính Ngày bán Số tài khoản Đơn giá Người bán Mã số thuế Người mua www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 74
  75. 3. Chuẩn hóa dữ liệu Bước 4: c) Thực hiện chuẩn hóa mức 3 (3NF) 4 thực thể trên không có sự phụ thuộc bắc cầu giữa các thuộc tính → thỏa mãn yêu cầu của chuẩn hóa mức 3. Bước 5: Xây dựng các tệp dữ liệu tương ứng với 4 thực thể đã được chuẩn hóa. HOADON: #Sohoadon, MaKH, Phthucthanhtoan, Ngayban, Nguoiban, Nguoimua KHACHHANG: #MaKH, HovatenKH, ĐiachiKH, Sotaikhoan, Masothue HANGMUA: Sohoađon, MaHH, Soluong HANGHOA: #Mahanghoa, Tenhanghoa, Đonvitinh, Đongia www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 75
  76. 3. Chuẩn hóa dữ liệu Ví dụ 2: Công ty Văn phòng phẩm Hồng Hà có hệ thống đại lý ở các quận trên địa bàn Thành phố Hà Nội. Mỗi quận có một đại lý, mỗi đại lý có duy nhất một người phụ trách bán hàng và ngược lại mỗi người bán hàng chỉ phụ trách duy nhất một đại lý. Mỗi khách hàng bán lẻ lấy hàng ở một đại lý. Nếu chúng ta xây dựng thực thể “Khách hàng – Người phụ trách” như sau thì sẽ có sự phụ thuộc bắc cầu giữa các thuộc tính: (1) Mã KH → Họ tên KH, Họ tên người bán hàng, Đại lý (2) Họ tên người bán hàng → Đại lý Ta có: Mã KH → Họ tên người bán hàng → Đại lý www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 76
  77. 3. Chuẩn hóa dữ liệu Thực thể “Khách hàng – Người phụ trách” Họ tên người bán Mã KH Họ tên KH Đại lý hàng 231 Trần Đình Chiến Lê Ngọc Hà Đống Đa 179 Nguyễn Mai Hoa Lê Ngọc Hà Đống Đa 167 Lê Kim Nhung Nguyễn Văn Nam Cầu Giấy 106 Vũ Thúy Hòa Nguyễn Văn Nam Cầu Giấy 370 Phan Thu Thủy Hoàng Văn Hải Hai Bà Trưng www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 77
  78. 3. Chuẩn hóa dữ liệu Để xóa bỏ phụ thuộc bắc cầu → chia bảng thành 2 bảng nhỏ: #Mã Họ tên người #Họ tên người Họ tên KH Đại lý KH bán hàng bán hàng 231 Trần Đình Chiến Lê Ngọc Hà Lê Ngọc Hà Đống Đa 179 Nguyễn Mai Hoa Lê Ngọc Hà Lê Ngọc Hà Đống Đa 167 Lê Kim Nhung Nguyễn Văn Nam Nguyễn Văn Nam Cầu Giấy 106 Vũ Thúy Hòa Nguyễn Văn Nam Nguyễn Văn Nam Cầu Giấy 370 Phan Thu Thủy Hoàng Văn Hải Hoàng Văn Hải Hai Bà Tr. “Khách hàng – Người phụ trách” “Người phụ trách – Đại lý” www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 78 Hai thực thể mới không có các thuộc tính bắc cầu nên đều ở dạng chuẩn 3.
  79. 4. Trộn các bảng quan hệ Sau khi thực hiện chuẩn hóa, một số bảng quan hệ và dữ liệu có thể bị dư thừa vì cùng mô tả cho một đối tượng giống nhau. Trộn các bảng quan hệ là gộp các loại dữ liệu cùng chung chức năng mô tả cho một đối tượng nào đó vào trong một bảng. Ví dụ: GIANGVIEN1(#MaGV, Hovaten, Namsinh, Quequan, Diachi) GIANGVIEN2(#MaGV, Trinhdo, Hocham, Hocvi) → GIANGVIEN (#MaGV, Hovaten, Namsinh, Quequan, Diachi, Trinhdo, Hocham, Hocvi) www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 79
  80. V. XÂY DỰNG PHẦN MỀM TRONG HTTT QUẢN LÝ X/đ mục đích, yêu cầu của PM Hai Thiết kế giải thuật phương án Thiết kế Chọn ngôn ngữ lập trình phần mềm Viết chương trình Thử nghiệm chương trình Biên soạn tài liệu hướng dẫn Mua các phần Có thể mua nếu đáp ứng khoảng 80% mềm có sẵn khối lượng công việc www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 80
  81. 1. Thiết kế phần mềm - Cần một đội ngũ chuyên gia, kỹ thuật viên cấp cao, am hiểu lĩnh vực quản lý và thông thạo các kỹ thuật sáng chế PM Phần Các module Các module mềm (program) không thuộc chức năng tổng chức năng thể Tương ứng sửa lỗi, phân với các tiến quyền, tối ưu trình trong sơ hóa hệ thống đồ DFD www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 81
  82. 1. Thiết kế phần mềm a/ Thiết kế giải thuật - xác định các module, vị trí và mối quan hệ giữa chúng trong toàn bộ HTTT quản lý cần thiết kế. - Phương pháp thiết kế giải thuật cơ bản của trường phái lập trình cấu trúc: + Thiết kế từ đỉnh xuống (Top down design) + Thiết kế từ dưới lên (Bottom up design) + Kết hợp cả hai www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 82
  83. 1. Thiết kế phần mềm Ví dụ về thiết kế giải thuật từ đỉnh xuống Quản lý hóa đơn 1. Cập nhật 2. Tìm kiếm 3. Tổng hợp 1.1.Nhập dữ liệu 2.1. Theo mã KH 3.1. Theo tháng 1.2. Xem dữ liệu 2.2. Theo mã HH 3.2. Theo quý 1.3. Sửa dữ liệu 2.3. Theo PTTT 3.3. Theo năm www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 83
  84. 1. Thiết kế phần mềm Ví dụ về thiết kế giải thuật từ dưới lên Quản lý doanh nghiệp Quản lý nhân sự Quản lý kho hàng Quản lý bán hàng Quản lý Prog3 Prog4 Prog5 Prog7 Prog9 Prog6 Prog8 Prog10 HSCB LuongC Daotao Nhap Xuat Thop Nhap Giatri Dubao B CB NVL NVL HTK HD SP TT Prog1 Prog2 Nhap CapnhatH HSCB SCB www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 84
  85. 1. Thiết kế phần mềm b/ Ngôn ngữ thiết kế PM Căn cứ: - lĩnh vực ứng dụng tổng quát, - môi trường hoạt động của PM, - độ phức tạp của thuật toán và cấu trúc chương trình - tri thức của cán bộ phát triển PM Các thế hệ phát triển ngôn ngữ lập trình: - Thứ nhất: tiêu biểu là hợp ngữ. - Thứ hai: FORTRAN, COBOL, BASIC - Thứ ba: ALGOL, PASCAL, MODULA – 2, C, C++ www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 85
  86. 2. Lựa chọn PM trên thị trường Lợi ích: - Giá thành thấp hơn sơ với thiết kế phần mềm mới - Có thể cài đặt vào các phần cứng khác nhau - Có độ tin cậy tương đối cao - Có miền sử dụng rộng rãi. Bất lợi: - Không có tính mềm dẻo, khó bảo hành - Không có lời giải đầy đủ cho các bài toán đặt ra. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 86
  87. VI. THIẾT KẾ GIAO DIỆN NGƯỜI - MÁY Mục đích: tạo ra một sự giao tiếp thân thiện giữa người sử dụng và máy tính Yêu cầu: dễ sử dụng, tốc độ đảm bảo, có độ chính xác cao, dễ kiểm soát, dễ phát triển Chức năng: - Giữ an ninh - Lọc bỏ dữ liệu không cần thiết - Mã hóa và giải mã các thông điệp. - Phát hiện và sửa lỗi - Lưu trữ tạm thời dữ liệu - Chuyển đổi dữ liệu sang khuôn mẫu cần thiết www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 87
  88. 1. Nội dung thông tin của các giao diện Mẫu nhập liệu (Forms) là tài liệu chứa một số dữ liệu đã được định trước và các chỗ trống để điền thêm dữ liệu vào đó. Báo cáo (Reports) là tài liệu chứa dữ liệu đã được xác định sẵn dùng để xem. Sự trợ giúp: tiện ích trợ giúp, chức năng trợ giúp, thông báo gợi ý, phát hiện và sửa lỗi www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 88
  89. 1. Nội dung thông tin của các giao diện Dữ liệu vào Forms HTTTQL Reports Dữ liệu ra Giao diện N Xử lý hay tiến Report Dữ liệu ra Dữ liệu vào Form trình trong sơ đồ DFD www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 89
  90. 2. Các kiểu thiết kế giao diện người - máy a/ Thiết kế đối thoại (hỏi – đáp): trên màn hình sẽ xuất hiện các câu hỏi (hoặc các dấu nhắc) để người sử dụng điền vào. Ví dụ: Hệ thống quản lý kho Mã kho: . Mã hàng: Chọn một trong các nhóm sau đây: DM: Hàng dệt may TP: Hàng thực phẩm VPP: Văn phòng phẩm Chọn một trong các chức năng sau đây: N: Nhập mới S: Sửa dữ liệu E: Kết thúc www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 90
  91. 2. Các kiểu thiết kế giao diện người - máy b/ Thiết kế thực đơn: bảng liệt kê các chức năng của hệ thống hoặc các phương án (câu trả lời) để người sử dụng tùy chọn. Ví dụ: www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 91
  92. 2. Các kiểu thiết kế giao diện người - máy c/ Thiết kế các biểu tượng: nháy chuột vào biểu tượng để chọn chức năng. Ví dụ: www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 92
  93. 2. Các kiểu thiết kế giao diện người - máy d/ Thiết kế kiểu điền mẫu: các biểu mẫu có các phần trống để nhập dữ liệu. Ví dụ: www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 93
  94. CÂU HỎI ÔN TẬP CHƯƠNG 3 1. Trình bày quy trình thiết kế HTTT quản lý. 2. Khái niệm thực thể và các loại thuộc tính. Cho ví dụ cụ thể. Dùng các ký pháp để biểu diễn thực thể và các thuộc tính theo ví dụ. 3. Phân biệt khái niệm kiểu quan hệ và bậc quan hệ. Nêu các kiểu quan hệ và bậc quan hệ, cho ví dụ cụ thể và biểu diễn bằng sơ đồ với từng trường hợp. 4. So sánh sơ đồ quan hệ - thực thể (ERD) với sơ đồ chức năng kinh doanh (BFD) và sơ đồ luồng dữ liệu (DFD). 5. Các bước xây dựng sơ đồ ERD. 6. So sánh khái niệm thực thể và tệp dữ liệu. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 94
  95. CÂU HỎI ÔN TẬP CHƯƠNG 3 7. Nêu phương pháp thiết lập CSDL từ sơ đồ ERD. 8. Khái niệm chuẩn hóa dữ liệu. 9. Các dạng chuẩn và quá trình chuẩn hóa dữ liệu. Cho ví dụ minh họa. 10. Ưu và nhược điểm của việc thiết kế phần mềm mới và mua phần mềm có sẵn trên thị trường. 11. So sánh phương pháp thiết kế phần mềm từ đỉnh xuống (Top down design) và từ dưới lên (Bottom up design). Cho ví dụ minh họa. 12. Trình bày các phương pháp thiết kế giao diện và cho ví dụ. www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 95