Hệ thống thông tin quản lý
Trang 1Phầ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Ý
Trang 2- Đượ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ý
Trang 3Chươ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
Trang 4I QUY TRÌNH THIẾT KẾ HTTT QUẢN LÝ
Mô hình hóa thực thể
Thiết kế giao diện người - máy Thiết kế phần mềm
Trang 5II 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
HTTT quản lý
Sơ đồ BFD
Sơ đồ DFD
MH thực thể
MH dữ liệu
Mô tả cấu trúc, nội dung
Trang 6II 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
Trang 7II MÔ HÌNH HÓA THỰC THỂ
Phòng Kế hoạch
Phòng Kế toán Tài chính
Phòng Đầu
tư - XDCB Phòng Kinh doanh – Tiếp thị
Trang 8II MÔ HÌNH HÓA THỰC THỂ
Trang 9II 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)
Trang 101 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ý:
Trang 111 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ể
Trang 121 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á…
Trang 131 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
Trang 141 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
Trang 15Mã khách hàng
Họ và tên Địa chỉ
Số tài khoản
Mã số thuế
Mã hàng hóa Tên hàng hóa Đơn vị tính Đơn giá
Thuộc tính định danh
Thuộc tính quan hệ
Thực thể Khách hàng
Thực thể Hàng hóa
Trang 16# Mã nhân
viên
Họ và tên Địa chỉ NR
Trang 171 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ể
Dep_Name, Dep_Age, Dep_Relation
#EmpID
Emp_Name Emp_Address
Emp_Skill
EMPLOYEE
Trang 182 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”…
Trang 192 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 R B A, B: Hai thực thể R : Quan hệ giữa A&B
X,Y: Kiểu q.hệ giữa A&B
X1,Y1
Biểu diễn mối quan hệ giữa hai thực thể
X2,Y2
Trang 202 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…
Trang 212 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
Trang 22- 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à
Trang 23a/ 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 R B A, B: Hai thực thể R : Quan hệ 1-1 giữa A&B
thể hiện sự liên kết mỗi cá thể của B với mỗi cá thể của A
Trang 24a/ 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
Mối quan hệ giữa hai thực thể Đọc giả và Sách
Trang 25a/ 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.
thể hiện sự liên kết một cá thể của B với một cá thể của A
AB
Trang 26a/ 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
Trang 27a/ 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
thể hiện sự liên kết một cá thể của B với nhiều cá thể của A
AB
Trang 28a/ 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
NMối quan hệ giữa hai thực thể
N
Sinh viênMôn
Trang 29b/ 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
Trang 30N
Quan hệ bậc 3
Trang 31b/ 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ể
Nhân dân
Quan hệ kết hôn trong xã hội
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 hôn
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
Kết hôn0,1
0,1
Trang 32b/ 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
Nhân viên
Ví dụ: Xét thực thể là Nhân viên của một
cơ quan Một nhân viên có thể phụ trách nhiều nhân viên khác, nhưng tại một thời điểm, một nhân viên chỉ chịu sự phụ
trách của một nhân viên – là người phụ trách - khác mà thôi.
Phụ trách 1
N
Trang 33b/ 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ể
Được cấu thành Sản phẩm
Quan hệ “Được cấu thành” trong
thực thể Sản phẩm
Ví dụ: Xét thực thể là Sản
phẩm, trong đó một sản phẩm được cấu thành từ một số sản phẩm và nó cũng có thể là thành phần của nhiều sản phẩm khác
N
N
Trang 34b/ 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ị
Siêu thị
Cung cấpN
N
N
Trang 35b/ Bậc của quan hệ
Quan hệ bậc 3:
Nhà cung cấp
Hàng hóa Chứa
N
Trang 36III THIẾT KẾ CÁC TỆP DỮ LIỆU
Trang 371 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
các
thực thể
Xác định quan hệ giữa các thực thể
Xác định các thuộc tính của thực thể, quan hệ
Xác định kiểu và bậc của quan hệ
Trang 381 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ệ.
Trang 391 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
Trang 401.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ệ
Trang 411.Xây dựng sơ đồ Quan hệ - Thực thể ERD
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
Bảng thực thể - quan hệ và thuộc tính
Trang 421 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
Trường ĐH Khoa
Sinh viên Lớp
Môn học 1
N
1
1 1
1
1
1 N N
N
N 1
N
N
N
Trang 432 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
Sơ đồ ERD
CSDL
các tệp dữ liệu
Trường khóa chính Trường mô tả 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…
Trang 442 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
Thuộc tính “Họ và tên”
Trường dữ liệu “Hovaten”
Th.tính định danh
(1a) Trường khóa chính (1b)
Dấu # và gạch chân dưới tên
(1a) #Mã cán bộ (1b)
#Macanbo
Th.tính mô tả (2a) Trường mô tả (2b) (2a) Địa chỉ (2b) Diachi
Trang 452 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
Trang 462 Thiết lập CSDL từ sơ đồ ERD
Tệp dữ liệu Cán bộ và quan hệ Vợ/Chồng
Trang 472 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
Trang 482 Thiết lập CSDL từ sơ đồ ERD
Tệp dữ liệu Nhân viên và quan hệ Phụ trách