Tải bản đầy đủ (.pdf) (33 trang)

Bài giảng Thiết kế cơ sở dữ liệu: Chương 1 - ThS. Trần Quang Hải Bằng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.28 MB, 33 trang )

THIẾT KẾ CƠ SỞ DỮ LIỆU
( MHT09.3)

Chương 1: Các khái niệm cơ bản



Quy trình phát triển hệ thống
Lựa chọn và lập
kế hoạch hệ
thống
Phân tích hệ
thống

Triển khai và vận
hành hệ thống

Thiết kế hệ thống

Thiết kế giao diện
Thiết kế CSDL



Chương 1 - Khái niệm cơ bản về TKCSDL

2


Nội dung
Review về quan hệ và chuẩn hóa


Thiết kế CSDL mức quan niệm
Thiết kết CSDL mức logic
Thiết kế CSLD mức vật lý



Chương 1 - Khái niệm cơ bản về TKCSDL

3

Review Quan hệ & Chuẩn hóa
Mơ hình dữ liệu quan hệ
– Dữ liệu được trình bày như các bảng có liên quan với
nhau.
– Mỗi quan hệ là 1 bảng 2 chiều gồm các hàng và cột
– Một quan hệ được là có cấu trúc cao khi:
• Sự dư thừa dữ liệu mở mức tối thiểu và cho phép người
dùng nhập, chỉnh sửa và xóa các bản thi mà khơng làm
mất đi tính nhất quán của dữ liệu



Chương 1 - Khái niệm cơ bản về TKCSDL

4


Review Quan hệ & Chuẩn hóa
Quan hệ nào có cấu trúc cao?




Chương 1 - Khái niệm cơ bản về TKCSDL

5

Review Quan hệ & Chuẩn hóa
Chuẩn hóa (Normalization):
– Là quy trình biến đổi những cấu trúc dữ liệu phức tạp
thành những cấu trúc dữ liệu ổn định và đơn giản
– Kết quả của q trình chuẩn hóa là quan hệ có cấu trúc
cao



Chương 1 - Khái niệm cơ bản về TKCSDL

6


Review Quan hệ & Chuẩn hóa
Ví dụ trước khi chuẩn hóa



Chương 1 - Khái niệm cơ bản về TKCSDL

7

Review Quan hệ & Chuẩn hóa

Ví dụ sau khi chuẩn hóa



Chương 1 - Khái niệm cơ bản về TKCSDL

8


Các dạng chuẩn
Dạng chuẩn 1 (1NF)
– Khơng có thuộc tính đa trị (tồn bộ thuộc tính là đơn)

Dạng chuẩn 2 (2NF)
– Khơng có thuộc tính phụ thuộc 1 phần vào khóa chính
(mọi thuộc tính khơng phải khóa đều được xác định bởi
thuộc tính khóa)

Dạng chuẩn 3 (3NF)
– Khơng chứa thuộc tính phụ thuộc bắc cầu vào khóa
(Các thuộc tính khơng phải là khóa chính khơng phụ
thuộc lẫn nhau)

Kết quả sau dạng chuẩn 3:
– Tất cả các thuộc tính khơng phải là khóa đều phụ thuộc
hồn tồn vào khóa chính


Chương 1 - Khái niệm cơ bản về TKCSDL


9

Phụ thuộc hàm
Quá trình chuẩn hóa được tiến hành dựa trên việc
phân tích các phụ thuộc hàm
Phục thuộc hàm (functional dependency) là một
dạng quan hệ đặc trưng giữa 2 thuộc tính. Với một
quan hệ cho trước, thuộc tính B được gọi là phụ
thuộc hàm vào thuộc tính A nếu với mọi giá trị hợp lệ
của A thì xác định duy nhất giá trị của thuộc tính B
Sự phụ thuộc hàm của B vào A ký hiệu là: A → B



Chương 1 - Khái niệm cơ bản về TKCSDL

10


Chuyển về dạng chuẩn 2
Một quan hệ đã đạt 2NF nếu thỏa mãn 1 trong các
điều kiện sau:
– ĐK1: Khóa chính chỉ gồm 1 thuộc tính duy nhất
– ĐK2: Trong quan hệ khơng tồn tại thuộc tính khơng
phải khóa chính
– ĐK3: Mọi thuộc tính khơng phải khóa chính đều phụ
thuộc đầy đủ vào khóa chính

Chuyển quan hệ thành dạng 2NF
– Phân rã quan hệ thành các quan hệ mới sử dụng thuộc

tính có thể xác định các thuộc tính khác
– Thuộc tính xác định thuộc tính khác trở thành khóa
chính của quan hệ mới


Chương 1 - Khái niệm cơ bản về TKCSDL

11

Ví dụ chuyển về dạng 2NF
Quan hệ EMPLOYEEE2
– EMPLOYEE2(Emp_ID, Name, Dept, Salary, Course,
Date_Completed)

Phụ thuộc hàm trong quan hệ này là:
– Emp_ID → Name, Dept, Salary
– Emp_ID, Course → Date_Completed

Chuyển về dạng chuẩn 2
– EMPLOYEE1(Emp_ID, Name, Dept, Salary)
– EMP_COUSE(Emp_ID, Course, Date_Completed)



Chương 1 - Khái niệm cơ bản về TKCSDL

12


Ví dụ khác chuyển về 2NF

THI

SINHVIEN

Monthi

Giaovien

Monthi

MaSV

TenSV

Diachi

Diem

3

A

3

11

Lan

X


8

4

B

3

12

Ha

Y

6

4

12

Ha

Y

6

5

11


Lan

X

7

5

13

Tu

Z

2

5

4

C

MaSV → TenSV, Diachi
11
Lan
X
7
Monthi, MaSV → TenSV, Diachi, Diem

KETQUATHI

SINHVIEN
MaSV

TenSV

Diachi

11

Lan

X

12

Ha

Y

13

Tu

Z



Monthi

MaSV


Diem

3

11

8

3

12

6

4

11

7

4

12

6

5

11


7

5

13

2

Chương 1 - Khái niệm cơ bản về TKCSDL

13

Chuyển về dạng 3NF
Một quan hệ ở dạng chuẩn ba nếu nó ở dạng chuẩn
2 và khơng có phụ thuộc hàm nào giữa hai (hay
nhiều) thuộc tính khơng phải khóa chính
Chuyển về dạng chuẩn 3:
– Phân rã quan hệ thành 2 quan hệ sử dụng thuộc tính
quyết định



Chương 1 - Khái niệm cơ bản về TKCSDL

14


Ví dụ chuyển về dạng 3NF
Quan hệ SALES

– SALES(Customer_ID, Customer_Name, Saleperson,
Region)
Thỏa mãn 2NF

Phụ thuộc hàm
– Customer_ID → Customer_Name, Saleperson, Region
– Saleperson → Region

Dưa về dạng 3NF
– SALES1(Customer_ID, Customer_Name, Saleperson)
– SPERSON(Saleperson, Region)



Chương 1 - Khái niệm cơ bản về TKCSDL

15

Dạng chuẩn Boyce-Codd
Định nghĩa:
– Lược đồ quan hệ R với tập phụ thuộc hàm F được gọi là ở
dạng chuẩn Boyce-Codd (BCNF) nếu X→A đúng trên R thì
X là một siêu khóa

Nhận xét
– Một lược đồ quan hệ R đã ở dạng BCNF thì cũng đạt dạng
chuẩn 3NF

Ví dụ:
– Xét lược đồ quan hệ R(CSZ) với tập phụ thuộc hàm

F={CS→Z, Z→C}
– Áp dụng thuật tốn tìm khóa sẽ có 2 khóa là SC và SZ như
vậy R có mọi thuộc tính đều là thuộc tính khóa
đạt chuẩn
3NF
– Nhưng R khơng đạt BCNF vì tồn tại PTH Z→C trong đó Z
khơng phải là 1 siêu khóa.


Chương 1 - Khái niệm cơ bản về TKCSDL

16


Phân rã lược đồ quan hệ
Phân rã bảo tồn thơng tin
– Cách kiểm tra phân rã có bảo tồn thơng tin ?

Phân rã bảo toàn Phụ thuộc hàm
– Cách kiểm tra phân rã có bảo tồn PTH ?



Chương 1 - Khái niệm cơ bản về TKCSDL

17

Phân rã lược đồ quan hệ
Xét quan hệ
MaSV


TenSV

Diachi

Malop

Tenlop

11

Lan

X

CNA1

Cử nhân A1

12

Hải

Y

CNA1

Cử nhân A1

13




Z

CNA2

Cử nhân A2

Các phụ thuộc hàm:
- MaSV→TenSV, Diachi, Malop
- Malop → Tenlop
Khóa của quan hệ là: MaSV

Nhận xét:
– Quan hệ trên đạt 2NF
– Chưa đạt 3NF vì thuộc tính Tenlop phụ thuộc bắc cầu
vào khóa



Chương 1 - Khái niệm cơ bản về TKCSDL

18


Phân rã lược đồ quan hệ
Thực hiện phân rã quan hệ đã cho
MaSV


TenSV

Diachi

Malop

Tenlop

11

Lan

X

CNA1

Cử nhân A1

12

Hải

Y

CNA1

Cử nhân A1

13




Z

CNA2

Cử nhân A2

SINHVIEN
LOP

MaSV

TenSV

Diachi

Malop

11

Lan

X

CNA1

Malop

Tenlop


12

Hải

Y

CNA1

CNA1

Cử nhân A1

13



Z

CNA2

CNA2

Cử nhân A2

Cả 2 quan hệ mới đều đạt BCNF



Chương 1 - Khái niệm cơ bản về TKCSDL


19

Phân rã bảo tồn thơng tin
Định nghĩa:
– Lược đồ quan hệ R (với tập PTH F) được phân rã
thành các lược đồ R1, R2,….,Rk được gọi là phân rã
bảo tồn thơng tin nếu với mỗi quan hệ r của R thỏa F
chúng ta có:
r = πR1(r) * πR2(r)*….*



πRk(r)

Chương 1 - Khái niệm cơ bản về TKCSDL

20


Phân rã bảo tồn thơng tin
Kiểm tra xem 1 phân rã có bảo tồn thơng tin?
– Input:
• Lược đồ R với tập thuộc tính U = {A1, A2, …., An}
• Tập phụ thuộc hàm F
• Phân rã ρ = {R1, R2, …, Rk}

– Output:
• Khẳng định ρ là phân rã có mất mát thơng tin hay khơng?




Chương 1 - Khái niệm cơ bản về TKCSDL

21

Phân rã bảo tồn thơng tin
Kiểm tra xem 1 phân rã có bảo tồn thơng tin?
– Phương pháp:
• Bước 1: Lập 1 bảng n cột và k hàng. Cột j ứng với thuộc tính Aj
Hàng i ứng với lược đồ Ri. Ở vị trí (i, j) ta điền:
+ aj nếu Aj thuộc Ri
+ bij nếu Aj khơng thuộc Ri

• Bước 2: Xét lặp đi lặp lại mỗi phụ thuộc hàm f = X→ Y trong F
cho đến khi khơng cịn sự thay đổi nào trong bảng.
Ở mỗi lần xét X→Y ∈ F ta tìm tất cả những hàng giống nhau ở tất cả
các cột cho thuộc tính X. Nếu thấy 2 hàng như thế thì làm cho 2 hàng
này giống nhau ở các cột cho thuộc tính Y.
Khi làm cho 2 ký hiệu bằng nhau nếu 1 trong 2 ký hiệu là aj thì ký
hiệu kia đặt lại thành aj; nếu 1 trong 2 ký hiệu là bij và bkj thì làm
bằng nhau bằng ký hiện nào cũng được.
Cuối cùng nếu xuất thu được 1 hàng a1, a2,…,an thì kết luận
phân rã đó bảo tồn thơng tin. Ngược thì thì KHƠNG BẢO
TỒN


Chương 1 - Khái niệm cơ bản về TKCSDL

22



Phân rã bảo tồn thơng tin
Xét ví dụ khi nãy
– R(MaSV, TenSV, Diachi, MaLop, TenLop) với tập phụ
thuộc hàm F = {f1, f2} trong đó:
f1 = MaSV → TenSV, Diachi, MaLop
f2 = MaLop → Tenlop
– Phân rã ρ = {R1, R2} với
R1(MaSV, TenSV, Diachi, MaLop)
R2(MaLop, Tenlop)
– Kiểm tra xem phân rã trên có bảo tồn thơng tin
khơng?



Chương 1 - Khái niệm cơ bản về TKCSDL

23

Phân rã bảo tồn thơng tin
Bước 1: Lập bảng khởi đầu
R

MaSV

TenSV

Diachi


Malop

Tenlop

R1

a1

a2

a3

a4

b15

R2

b21

b22

b23

a4

a5

Bước 2: lần lượt xét các phụ thuộc hàm X→Y
– Xét f1 = MaSV→TenSV, DiaChi, Malop

Rõ ràng trong 2 dịng ở bảng trên khơng có dịng nào giống nhau ở cột
MaSV nên khơng làm gì
– Xét f2 = MaLop→Tenlop
Ở cột Malop có 2 hàng giống nhau nên ta biến cột tên lớp thành giống
nhau (ưu tiên biến thành a5)
R

MaSV

TenSV

Diachi

Malop

Tenlop

R1

a1

a2

a3

a4

a5

R2


b21

b22

b23

a4

a5

– Vậy ρ là phân ra bảo toàn thông tin


Chương 1 - Khái niệm cơ bản về TKCSDL

24


Phân rã bảo tồn thơng tin
Bài tập ví dụ khác:
– Cho R = ABCDE với tập PTH F = {A→C, B→C, C→D,
DE→C, CE→A}; phân rã ρ = {R1, R2 ,R3,R4,,R5} với:
R1=AD; R2=AB; R3=BE; R4=CDE; R5=AE
– Kiểm tra xem ρ có phải là phân rã bảo tồn thơng tin
khơng?

Giải:
– Bảng khởi đầu




Chương 1 - Khái niệm cơ bản về TKCSDL

25

Phân rã bảo tồn thơng tin
Giải ví dụ (tiếp)
– Xét A → C
– Xét B→ C

ρ LÀ PHÂN RÃ BẢO
– Xét C→D

TOÀN THƠNG TIN

– Xét DE→C và CE→A khơng có gì thay đổi


Chương 1 - Khái niệm cơ bản về TKCSDL

26


Phân rã bảo tồn thơng tin
Đối với trường hợp phân rã thành 2 lược đồ thì ta có
thuật tốn đơn giản hơn:
Phân rã ρ= {R1(U1), R2(U2)} của R(U) không mất
thông tin đối với tập PTH F nếu và chỉ nếu:
– (U1 ∩ U2) → (U1 - U2) ∈ F+, hoặc

– (U1 ∩ U2) → (U2 - U1) ∈ F+.



Chương 1 - Khái niệm cơ bản về TKCSDL

27

Phân rã lược đồ quan hệ
Phân rã bảo tồn thơng tin
– Cách kiểm tra phân rã có bảo tồn thơng tin ?

Phân rã bảo tồn Phụ thuộc hàm
– Cách kiểm tra phân rã có bảo toàn PTH ?



Chương 1 - Khái niệm cơ bản về TKCSDL

28


Phân rã bảo tồn PTH
Phân rã bảo tồn thơng tin là bắt buộc
Phân rã bảo toàn PTH là phân rã mà ta có thể suy ra
tập PTH của quan hệ gốc từ các hình chiếu của nó
Định nghĩa hình chiếu của tập PTH
– Hình chiếu của tập PTH F trên một tập các thuộc tính U
ký hiệu là πu(F) là tập các PTH X→Y thuộc F+ sao cho
XY⊆ U


Định nghĩa phân rã bảo toàn PTH
– Phân rã ρ bảo toàn tập phụ thuộc hàm F nếu hợp của
tập tất cả các PTH trong các hình chiếu của F trên các
lược đồ con là tương đương với F
– Gọi Fi = πRi (F) và G = F1∪ F2 ∪ …..∪Fk thì G≡F


Chương 1 - Khái niệm cơ bản về TKCSDL

29

Phân rã bảo tồn PTH
Ví dụ:
– Quan hệ TKB(PhongHoc, GioHoc, MonHoc).
• Mỗi mơn học chi được bố trí vào 1 phịng học duy nhất
do đó ta có PTH M→P
• Mỗi mơn học có thể bố trí ở những giờ khác nhau và với
1 phịng học và giờ học cụ thể thì ta biết được Mơn học
đó là mơn gì. Vì vậy: PG → M

– Thực hiện phân rã (P,G,M) thành (G, M) và (P, M)
• Kiểm tra bảo tồn thơng tin ?
• Kiểm tra tính bảo tồn PTH ?



Chương 1 - Khái niệm cơ bản về TKCSDL

30



Phân rã bảo tồn PTH
Ví dụ: phân rã bảo tồn PTH nhưng khơng bảo tồn
thơng tin
– R(A,B,C,D) và F = {A→B, C→D}
– ρ = { R1(AB), R2(CD) }
– Kiểm tra bảo tồn PTH:
• F1 = πAB(F) = {A→B}
• F2 = πCD(F) = {C→D}
• Rõ ràng G = ∪Fi là tương đương với F nên phân rã trên
bảo toàn PTH



Chương 1 - Khái niệm cơ bản về TKCSDL

31

Phân rã bảo toàn PTH
Phương pháp kiểm tra phân rã bảo tồn PTH
– Input:
• Phân rã ρ (R1, R2, …., Rk)
• Tập phụ thuộc hàm F

– Output:
• Khẳng định ρ có bảo tồn PHT hay khơng?

– Phương pháp:
• Với mỗi PTH X→Y ∈ F

Z := X

While (Có thay đổi với Z) do
Z := Z ∪ ((Z∩Ri)+ ∩ Ri) /*Bao đóng lấy ứng với F*/
Nếu Y ⊆ Z thì kết luận “X→Y ∈ G+”

• Nếu mọi PTH X→Y ∈ F đều thuộc G+ thì G≡F hay phân
rã ρ bảo toàn PTH


Chương 1 - Khái niệm cơ bản về TKCSDL

32


Phân rã bảo tồn PTH
Ví dụ kiểm tra phân rã bảo toàn PTH
– R(ABCD) với tập F = {A→B, B→C, C→D, D→A}
– Phân rã ρ = {AB, BC, CD}
– Kiểm tra xem ρ có bảo tồn PTH khơng?



Chương 1 - Khái niệm cơ bản về TKCSDL

33

Quy trình phát triển hệ thống
Lựa chọn và lập
kế hoạch hệ

thống
Phân tích hệ
thống

Triển khai và vận
hành hệ thống

Thiết kế hệ thống

Thiết kế giao diện
Thiết kế CSDL



Chương 1 - Khái niệm cơ bản về TKCSDL

34


Quy trình phát triển hệ thống
Mơ hình doanh nghiệp (lược đồ E-R chỉ với các thực thể)
Mơ hình dữ liệu mức quan niệm (ERD với các thực thể trong dự án
cụ thể)

Lựa chọn và lập kế
hoạch hệ thống

Phân tích hệ thống

Triển khai và vận

hành hệ thống

Thiết kế hệ thống

• Mơ hình dữ liệu mức quan niệm (ERD với các thực
thể và thuộc tính)

• CSDL và các định nghĩa file (mã lệnh cụ thể cho từng
DBMS)




• Mơ hình dữ liệu mức logic (thể hiện các quan hệ)
• Thiết kế CSDL và file mức vật lý (tổ chức file)



Chương 1 - Khái niệm cơ bản về TKCSDL

35

Thiết kế CSDL

Thiết kế mức
quan niệm



Thiết kế CSDL

mức Logic

Thiết kế CSDL
mức vật lý

Chương 1 - Khái niệm cơ bản về TKCSDL

36


Quy trình thiết kế tổng thể
1. Lựa chọn mơn hình vòng đời phát triển hệ thống
2. Xác định các tham số hệ thống
3. Định nghĩa các tiến trình
4. Xây dựng mơ hình dữ liệu khái niệm
5. Chuẩn bị lược đồ CSDL
6. Thiết kế giao diện người dùng



37

Chương 1 - Khái niệm cơ bản về TKCSDL

Mơ hình vịng đời phát triển hệ thống
Mơ hình thác nước

Phân tích

– Là mơ hình cổ điển

– Quá trình phát triển gồm

Thiết kế

Lập kế hoạch và
dự thảo ngân sách

7 pha như hình bên

Xây dựng
hệ thống

– Tại mỗi pha được giả định có đầy đủ
thơng tin

Phân phối

– Mơ hình này thích hợp với các hệ thống lớn



Thử
nghiệm

Chương 1 - Khái niệm cơ bản về TKCSDL

Kết thúc
dự án

38



Mơ hình vịng đời phát triển hệ thống
Mơ hình xốy ốc (Spiral)
– Các pha của quá trình phát triển được lặp lại theo 1
chu kỳ là một vịng xốy ốc
– Thích hợp với các hệ thống vừa và nhỏ
Phân tích
Thiết kế
Phân phối

Thử nghiệm

Xây dựng

Phân tích
Lập kế hoạch & dự
thảo ngân sách

Thiết kế

Khởi
đầu
dự án

Lập kế hoạch & dự
thảo ngân sách

Kết
thúc

dự án

Xây dựng

Thử nghiệm
Phân phối



Chương 1 - Khái niệm cơ bản về TKCSDL

39

Mơ hình vịng đời phát triển hệ thống
Mơ hình làm mẫu
– Xuất phát từ một dự án phần mềm đã được xây dựng
hoàn thiện, ta phát triển các dự án phần mềm có u
cầu tương tự ở những khía cạnh nào đó
Yêu cầu từ
khách hàng
– Cho khách hàng sử dụng phần
mềm đã có để thu thập yêu
cầu của dự án mới
Tạo bản mẫu
Dùng thử/kiểm tra
bản mẫu
– Thích hợp với các dựa án đủ nhỏ




Chương 1 - Khái niệm cơ bản về TKCSDL

40


Quy trình thiết kế tổng thể
1. Lựa chọn mơn hình vòng đời phát triển hệ thống
2. Xác định các tham số hệ thống
3. Định nghĩa các tiến trình
4. Xây dựng mơ hình dữ liệu khái niệm
5. Chuẩn bị lược đồ CSDL
6. Thiết kế giao diện người dùng



Chương 1 - Khái niệm cơ bản về TKCSDL

41

Xác định các tham số hệ thống
Ở pha này, người thiết kế cần:
– Xác định được mục tiêu của toàn bộ hệ thống
– Thiết lập các tiêu chuẩn của hệ thống. Đó là các tiêu
chuẩn dùng để đánh giá trong suốt quá trình thiết kế,
vận hành của dự án, đánh giá sự thành công hay thất
bại của dự án.
– Xác định phạm vi của hệ thống; các yêu cầu phải đạt
được của dự án.




Chương 1 - Khái niệm cơ bản về TKCSDL

42


Xác định tham số hệ thống
Xác định mục tiêu của hệ thống
– Cần trả lời câu hỏi “Tại sao cần phải tự động hóa hệ
thống hiện tại?”
• Có phải để nâng cao tốc độ xử lý cơng việc?
• Để tăng độ chính xác? để giảm chi phí?
• Để cải thiện vị trí của cơng ty trên thị trường? để hỗ trợ
người quản lý trong việc tìm kiếm, xử lý thơng tin, lập kế
hoạch?, …

– Cần định lượng các mục tiêu
• Khơng nên đưa ra các mục tiêu chung chung
• Khơng phải bất kỳ mục tiêu nào cũng có thể định lượng
được
xây dựng các tiêu chuẩn phù hợp để đánh giá
• Các mục tiêu phải ổn định để thiết lập các tiêu chuẩn
đánh giá và sẵn sàng cho các công đoạn tiếp theo của
quá trình thiết kế


Chương 1 - Khái niệm cơ bản về TKCSDL

43


Xác định tham số hệ thống
Thiết lập các tiêu chuẩn của hệ thống
– Mỗi tiêu chuẩn cần tương ứng với một hoặc một số
mục tiêu
– Nếu mục tiêu nào khơng gắn được với một tiêu chuẩn
với nó thì xem như người thiết kế chưa hiểu đủ các yêu
cầu của khách hàng
– Các tiêu chuẩn là những đích nhỏ cần đạt được cho
một mục tiêu lớn hơn
– Các tiêu chuẩn cần được định lượng rõ ràng
– Khi thiết kế đạt được tiêu chuẩn thì hệ thống được xem
là hồn thành, khơng cần làm thêm điều gì nữa



Chương 1 - Khái niệm cơ bản về TKCSDL

44


Xác định tham số hệ thống
Xác định phạm vi của hệ thống
– Xác định các chức năng trong phạm vi dự án
– Dự án phần mềm sẽ thực hiện những chức năng nhất
định không phải là mọi thứ
– Đánh giá được tỷ lệ chi phí / lợi nhuận của mỗi chức
năng có kế hoạch thiết kế phù hợp




Chương 1 - Khái niệm cơ bản về TKCSDL

45

Quy trình thiết kế tổng thể
1. Lựa chọn mơn hình vịng đời phát triển hệ thống
2. Xác định các tham số hệ thống
3. Định nghĩa các tiến trình
4. Xây dựng mơ hình dữ liệu khái niệm
5. Chuẩn bị lược đồ CSDL
6. Thiết kế giao diện người dùng



Chương 1 - Khái niệm cơ bản về TKCSDL

46


Định nghĩa các tiến trình
Tiến trình là một tập của một hoặc nhiều tác vụ
(task) rời rạc cùng thực hiện một hoạt động có ý
nghĩa của tổ chức.
Một tác vụ (task) là một hành động rời rạc, là một
bước thực hiện của tiến trình.
Ví dụ:
– Tiến trình “Xử lý đơn đặt hàng của khách” bao gồm các tác vụ:






Nhận đơn đặt hàng
Kiểm tra thẻ thanh toán của khách
Kiểm tra kho hàng
Giao hàng cho khách

– Tiến trình “Tìm SĐT của khách hàng” chỉ bao gồm một tác vụ là chính tiến
trình đó.

Phân biệt giữa một tác vụ và một hoạt động đơi
khi rất khó. Ranh giới giữa chúng khơng rõ ràng.
Để quyết định là tác vụ hay là hoạt động phải dựa
vào khơng gian bài tốn


Chương 1 - Khái niệm cơ bản về TKCSDL

47

Định nghĩa các tiến trình
Xác định các tiến trình hiện tại của hệ thống
– Thu thập yêu cầu từ khách hàng
– Định danh tác vụ

Phân tích các tiến trình



Chương 1 - Khái niệm cơ bản về TKCSDL


48


Thu thập yêu cầu từ khách hàng
Khảo sát hệ thống bằng phỏng vấn KH. Mục tiêu là thu
được quy trình nghiệp vụ và các hồ sơ
Hướng KH tập trung vào nghiệp vụ hệ thống
Phải có sự chuẩn bị câu hỏi trước
Câu hỏi dạng mở, kết hợp với câu hỏi dạng đóng khi cần
Cần chuẩn bị các thiết bị hỗ trợ: máy ghi âm, camera, …
Sau phỏng vấn cần xác nhận lại các câu trả lời của KH
Cần giúp khách hàng thấy được các yêu cầu hiện tại hệ
thống cần đáp ứng và các yêu cầu tiềm năng trong tương
lai



Chương 1 - Khái niệm cơ bản về TKCSDL

49

Công việc sau khảo sát
Dữ liệu thu được trong khảo sát còn ở dạng thô, tản
mạn
Các công việc sau khảo sát:
– Xử lý sơ bộ kết quả: xem xét, hồn thiện tài liệu:
• Phân loại, trích rút, tổng hợp
dữ liệu đầy đủ, chính
xác, gọn gàng, dẽ kiểm tra và theo dõi

• Phát hiện chỗ thiếu để bổ xung, chỗ sai khơng logic để
sửa
• Xây dựng các bảng mơ tả chi tiết tài liệu.
• Là quá trình lặp

– Tổng hợp kết quả: tổng hợp theo xử lý & tổng hợp theo
dữ liệu



Chương 1 - Khái niệm cơ bản về TKCSDL

50


×