Upload
minda
View
68
Download
0
Embed Size (px)
DESCRIPTION
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Ý. Chương 3 THIẾT KẾ HTTT QUẢN LÝ. Thiết kế HTTT quản lý: - PowerPoint PPT Presentation
Citation preview
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 1
Phần 2XÂY DỰNG HỆ THỐNG THÔNG TIN
QUẢN LÝ
CHƯƠNG 2: PHÂN TÍCH HTTTCHƯƠ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 2
Chương 3THIẾ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 3
Chương 3THIẾ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 4
I. QUY TRÌNH THIẾT KẾ HTTT QUẢN LÝ
Các tài liệu đã thu được trong quá trình phân
tích HTTT
Sơ đồ BFD
Sơ đồ DFD
Thiết kế HTTT QL
Mô hình hóathực thể
Thiết kế giao diện người - máy
Thiết kế phần mềm
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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.
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 dữ liệu
Mô tả chức năng của HT
Mô tả các xử lý trên
dữ liệu
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 7
II. MÔ HÌNH HÓA THỰC THỂ
Các
dòng
thông tin
trong
tổ chức
Phòng Hành chính Tổng
hợp
Phòng Tổ chức Cán bộ
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ị
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 8
II. MÔ HÌNH HÓA THỰC THỂ
Mô hình
CSDL
trong
tổ chức
Phòng Hành chính – Tổng hợp
Phòng Tổ chức Cán bộ
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ị
Cơ sở dữ liệu
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 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 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 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 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 15
1. Mô hình thực thể
Các dạng thuộc tính
Số hóa đơn
Mã khách hàng
Mã hàng hóa
Số lượng
Thành tiền
Tổng tiền
Bằng chữ
Ph.thức th.toán
Mã 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ệ
Thuộc tính mô tả
Th.tính thứ sinh
Thuộc tính lặp
Thực thể Hóa đơn
Thực thể Khách hàng
Thực thể Hàng hóa
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 định danh
Th.tính lặp
#...
#Mã nhân viên
Họ và tên
Địa chỉ NR
Kỹ năng
NHÂN VIÊN
Ví dụ về thực thể “Nhân viên”
…
Th.tính quan hệ
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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ể.
Dep_Name, Dep_Age,
Dep_Relation
#EmpID
Emp_Name
Emp_Address
Emp_Skill
EMPLOYEE
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 BRA, B: Hai thực thể R : Quan hệ giữa A&BX,Y: Kiểu q.hệ giữa A&BX1,Y1
Biểu diễn mối quan hệ giữa hai thực thể
X2,Y2
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 Môn học
Lần thi
THI
Điểm
1 1NN
Thực thể quan hệ “Thi”
Mã SV Mã MH
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 BRA, B: Hai thực thể R : Quan hệ 1-1 giữa A&BX, Y có thể có giá trị 0 hoặc 1
X,1
Biểu diễn mối quan hệ 1-1 giữa hai thực thể A&B
Y,1
thể hiện sự liên kết mỗi cá thể của A với mỗi cá thể củ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
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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ả SáchĐọc0,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 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 BR1
Biểu diễn mối quan hệ 1-N giữa hai thực thể A&B
N
thể hiện sự liên kết một cá thể của A với nhiều cá thể của B
thể hiện sự liên kết một cá thể của B với một cá thể của A
A
B
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 hàng Hóa đơnCó1
Mối quan hệ giữa hai thực thể Khách hàng và
Hóa đơn
N
Khách hàng
Hóa đơn
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 BRN N
thể hiện sự liên kết một cá thể của A với nhiều cá thể của B
thể hiện sự liên kết một cá thể của B với nhiều cá thể của A
A
B
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 viên Môn họcHọcN
Mối quan hệ giữa hai thực thể Sinh viên và Môn học
N
Sinh viên
Môn học
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 30
b/ Bậc của quan hệ
A
Quan hệ bậc 1
R1
X
Y
A BR2X
Quan hệ bậc 2
Y
A B
C
R3N
NN
N
Quan hệ bậc 3
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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ể.
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ôn
0,1
0,1
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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.
Nhân viên
Quan hệ Phụ trách trong cơ quan
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
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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ể.
Đượccấ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
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 Hàng hóa
Siêu thị
Cung cấpN
NN
N
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 35
b/ Bậc của quan hệ
Quan hệ bậc 3:Nhà cung cấp
Hàng hóaChứaN N
Biến đổi quan hệ bậc 3 thành quan hệ bậc 2
Kho hàng
Gửi hàng
N
Siêu thị
Chuyển đếnN
N
N
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 địnhcá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ệ
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 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 41
1.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
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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
Trường ĐH
Khoa
Sinh viênLớp
Môn học1
N
1
1
1
1
1
1
N
N
N
N1
N
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 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.
Sơ đồ ERD
CSDL
cáctệ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…
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 bằng tiếng Việt, có dấu
Tên viết bằng tiếng Việt, không dấu hoặc tiếng Anh
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
Th.tính quan hệ (3a)
Trường quan hệ (3b)
Gạch chân dưới tên(3a) Mã vợ chồng (3b) Mavochong
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 46
2. Thiết lập CSDL từ sơ đồ ERD
#Macanbo Hovaten … Mavochong
A001 Nguyễn Văn A … B005
… … … …
B005 Lê Thị B … A001
… … … …
Tệp dữ liệu Cán bộ và quan hệ Vợ/Chồng
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 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 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 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 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 …
QL01 Đỗ Văn An …
QL02 Vũ Ngọc Thu …
QL03 Lê Xuân Hà …
… … …
#MaphongCT TenphongCT … MaTP
PCT01 Tổ chức CB … QL02
PCT02 Kế toán … QL01
PCT03 Kế hoạch- ĐT … QL03
… … … …
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 55
2. Thiết lập CSDL từ sơ đồ ERD
Các tệp dữ liệu Lophoc và Sinhvien
#MaLH TenLH …
D07QT1 D07QTKD1 …
D07QT2 D07QTKD2 …
C08QT C08QTKD …
… … …
#MaSV HovatenSV … MaLH
QT0015 Lê Thu Hà … D07QT1
QT0037 Vũ Văn Nam … D07QT1
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 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 57
2. Thiết lập CSDL từ sơ đồ ERD
Tệp dữ liệu mô tả thực thể 1
Tệp dữ liệu mô tả thực thể 2
Tệp dữ liệu mô tả quan hệ
Các trường mô tả 2
Trường khóa chính
2
Các trường mô tả 1
Trường khóa chính
1
Các trường mô tả
Trường quan hệ 1
Trường quan hệ 2
Trường khóa chính của tệp
QH
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 59
Tệp dữ liệu Monhoc
2. Thiết lập CSDL từ sơ đồ ERD
Tệp dữ liệu Sinhvien#MaSV HovatenSV …
QT0015 Lê Thu Hà …
QT0037 Vũ Văn Nam …
QT0174 Trần Đình Chiến …
QT0185 Bùi Thu Thanh …
… … …
#MaMH TenMH …
CB01 Toán cao cấp …
QT05 Kinh tế vi mô …
CB12 Lịch sử Đảng …… … …
Tệp dữ liệu SVMH
MaSV MaMH Lanthi Diemthi
QT0015 CB01 1 8 …
QT0037 CB01 1 9 …
QT0174 CB12 2 6 …
QT0185 QT05 1 9 …… … … … …
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 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:
<Số hóa đơn> → <Tên khách hàng>
<Số hóa đơn> và <Tên hàng hóa> → <Tiền mua hàng>
Ứ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 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ể
“chưa được chuẩn hóa”
Thực thể có dạng
chuẩn 1 (1NF)
Thực thể có dạng
chuẩn 2 (2NF)
Q.tắc k.tra thứ hai
Q.tắc k.tra thứ ba
Thực thể có dạng
chuẩn 3 (3NF)
Q.tắc k.tra thứ nhất
Quá trình chuẩn hóa dữ liệu
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 64
3. Chuẩn hóa dữ liệu
Thựcthểbanđầu
Thực thể có dạng
chuẩn hoàntoàn
(3NF)
rà soát và loại các th.tính thứ sinh hoặc
không quan trọng
Thực thể
“chưa được chuẩn hóa”
Quá trình chuẩn hóa
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 65
3. Chuẩn hóa dữ liệu
Thực thể có dạng1NF
Q.tắc k.tra thứ nhất:Có th.tính lặp không?
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 danh, kết hợp với th.tính định danh của thực thể gốc tạo thành một khóa.
Không có th.tính lặp
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 66
3. Chuẩn hóa dữ liệu
Thực thể có dạng2NF
Q.tắc k.tra thứ hai:Xuất phát từ 1NF, k.tracác th.tính không phải là khóa đều phụ thuộc hàm vào toàn bộ khóa chính?
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, - lấy bộ phận của khóa làm th.t. đ.danh cho thực thể mới, - gán một cái tên phù hợp.
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 67
3. Chuẩn hóa dữ liệu
Thực thể có dạng3NF
Q.tắc k.tra thứ ba:Xuất phát từ 2NF, k.trakhông được tồn tại sự
phụ thuộc bắc cầu giữa các thuộc tính
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ể: - thực thể thứ nhất chứa quan hệ A và B, - thực thể thứ hai chứa quan hệ B và C.
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 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 69
HÓA ĐƠN BÁN HÀNGSố: 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 đồngTổng tiền thanh toán: 12.705.000 đồngViế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 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 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ách chúng ra thành danh sách con- gán một tên - tìm một th.t đ.danh - kết hợp với th.t đ.d của thực thể gốc tạo thành một khóa
Tên hàng hóa, Đơn vị tính, Đơn giá, Số lượng
Hàng mua
Mã HH
Mã HH, Số hóa đơn
Số hóa đơn
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 72
3. Chuẩn hóa dữ liệu
Sau khi chuẩn hóa mức 1, ta được 2 thực thể:
Số HĐ
Mã KH
Họ tên KH
Địa chỉ KH
Số TK
Mã số thuế
Ph.th
th.t.
Ngày bán
Ng. bán
Ng. mua
Số HĐ Mã HH Tên HH Đơn vị tính
Đơn giá Số lượng
Hóa đơn
Hàng mua
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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
Mã KH → Họ và tên KH, Địa chỉ KH, Số tài khoản, Mã số thuế
Khách hàng
Số hóa đơn
Trong thực thể “Hóa đơn” có các thuộc 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 - lấy bộ phận của khóa → th.t. đ.d cho thực thể mới - gán một cái tên phù hợp
Mã KH
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 đơnMã KH Ph.thức thanh toánNgày bánNgười bánNgười mua
#Mã KH Họ và tên KH Địa chỉ KHSố tài khoảnMã số thuế
Số hóa đơnMã hàng hóaSố lượng
#Mã hàng hóaTê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 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 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 77
3. Chuẩn hóa dữ liệu
Thực thể “Khách hàng – Người phụ trách”
Mã KH Họ tên KHHọ tên người bán
hàngĐại lý
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 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ã KH
Họ tên KHHọ tên người
bán hàng
231 Trần Đình Chiến Lê Ngọc Hà
179 Nguyễn Mai Hoa Lê Ngọc Hà
167 Lê Kim Nhung Nguyễn Văn Nam
106 Vũ Thúy Hòa Nguyễn Văn Nam
370 Phan Thu Thủy Hoàng Văn Hải
… … …
#Họ tên người bán hàng
Đại lý
Lê Ngọc Hà Đống Đa
Lê Ngọc Hà Đống Đa
Nguyễn Văn Nam Cầu Giấy
Nguyễn Văn Nam Cầu Giấy
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 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 80
V. XÂY DỰNG PHẦN MỀM TRONG HTTT QUẢN LÝ
Thiết kế phần mềm
Mua các phần mềm có sẵn
X/đ mục đích, yêu cầu của PM
Thiết kế giải thuật
Chọn ngôn ngữ lập trình
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
Có thể mua nếu đáp ứng khoảng 80% khối lượng công việc
Hai phương
án
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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
Các module (program) chức năng
Phần mềm tổng thể
Các module không thuộc chức năng
Tương ứng với các tiến trình trong sơ đồ DFD
sửa lỗi, phân quyền, tối ưu hóa hệ thống
…
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 83
1. Thiết kế phần mềm
Quản lý hóa đơn
Ví dụ về thiết kế giải thuật từ đỉnh xuống
1. Cập nhật
1.1.Nhập dữ liệu
1.2. Xem dữ liệu
1.3. Sửa dữ liệu
3. Tổng hợp
3.1. Theo tháng
3.2. Theo quý
3.3. Theo năm
2. Tìm kiếm
2.1. Theo mã KH
2.2. Theo mã HH
2.3. Theo PTTT
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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
Prog1Nhap HSCB
Prog2CapnhatHSCB
Prog3Luong
CB
Prog4Daotao
CB
Quản lý nhân sự
Quản lýHSCB
Quản lý kho hàng Quản lý bán hàng
Prog5NhapNVL
Prog7Xuat NVL
Prog9Thop HTK
Prog6NhapHD
Prog8Giatri SP
Prog10Dubao
TT
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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 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 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 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 89
1. Nội dung thông tin của các giao diện
Forms HTTTQL ReportsDữ liệu vào Dữ liệu ra
Form ReportDữ liệu vào Dữ liệu ra
NXử lý hay tiến trình
trong sơ đồ DFD
NXử lý hay tiến trình
trong sơ đồ DFD
Giao diện
www.ptit.edu.vn Giảng viên: Lê Thị Ngọc Diệp 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ý khoMã 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 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 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 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 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 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ụ.