Chuẩn hóa cơ sở dữ liệu

Một phần của tài liệu Styles of software architecture (Trang 48 - 54)

VI. Q6: Database design

4. Chuẩn hóa cơ sở dữ liệu

- Dạng chuẩn 1NF

380 + Mọi giá trị thuộc tính của quan hệ đều ở dạng nguyên tố.

381 + Khơng có thuộc tính đa trị.

383 ProductlD 384 Color Price 385 1 yellow386 brown, $15 387 2 388 red, green$13 389 3 390 blue, orange$11 391

392 Bạn có thể muốn giải quyết vấn đề này bằng cách tách dữ liệu đó thành các

cột

bổ sung, nhưng điều đó cũng trái với quy tắc: một bảng có các nhóm thuộc tính lặp lại hoặc có liên quan chặt chẽ sẽ khơng đáp ứng dạng thơng thường đầu tiên. Ví dụ: bảng dưới đây khơng tn thủ

393Products

394Colorl

395Color2

396Color3

397Price

398 Thay vào đó, hãy chia dữ liệu thành nhiều bảng hoặc nhiều bản ghi cho đến

khi

mỗi ô chỉ chứa một giá trị và khơng có cột thừa. Tại thời điểm đó, dữ liệu được cho là nguyên tử, hoặc được chia nhỏ thành kích thước hữu ích nhỏ nhất. Đối với bảng trên, bạn có thể tạo một bảng bổ sung được gọi là “Chi tiết sản phẩm” sẽ khớp các sản phẩm cụ thể với doanh số bán hàng. Khi đó “Sản phẩm” sẽ có mối quan hệ 1: m với “Chi tiết sản phẩm”.

399 - Dạng chuẩn 2NF

400 + Là chuẩn 1NF

401 + Tất cả các khóa dự bị đều có một thuộc tính

403 + Khơng tồn tại thuộc tính khơng khóa mà phụ thuộc hàm một phần vào một khóa dự bị của R.

404 Mỗi thuộc tính phải hồn tồn phụ thuộc vào tồn bộ khóa chính. Điều đó có

nghĩa là mỗi thuộc tính nên phụ thuộc trực tiếp vào khóa chính, thay vì gián tiếp thơng qua một số thuộc tính khác.

405 Ví dụ: thuộc tính “tuổi” phụ thuộc vào “ngày sinh” mà lần lượt phụ thuộc vào

“studentID” được cho là có phụ thuộc hàm một phần và bảng chứa các thuộc tính này sẽ khơng đáp ứng được dạng chuẩn thứ hai.

406 Hơn nữa, một bảng có khóa chính được tạo thành từ nhiều trường vi phạm

dạng

chuẩn thứ hai nếu một hoặc nhiều trường khác khơng phụ thuộc vào mọi phần của khóa.

407 Do đó, một bảng có các trường này sẽ khơng đáp ứng được dạng bình thường

thứ hai, vì thuộc tính “Product name” phụ thuộc vào “Product ID” chứ không phụ thuộc vào số đơn đặt hàng:

• Order number (primary key) • Product ID (primary key) • Product name

408- Dạng chuẩn 3NF

409 + Là chuẩn 2NF

410 + Khơng có thuộc tính khơng khóa nào phụ thuộc hàm bắc cầu vào khóa của

R.

Dạng chuẩn thứ ba (3NF) bổ sung vào các quy tắc này yêu cầu rằng mọi cột khơng phải khóa phải độc lập với mọi cột khác. Nếu việc thay đổi một giá trị trong một cột khơng phải là khóa làm cho một giá trị khác thay đổi, thì bảng đó khơng đáp ứng dạng chuẩn thứ ba.

Chẳng

412 Order 413 Price 414 Tax 415 14325 416 $40.99 417$2.0 5 418 14326 419 $13.73 420 $.69 421 14327 422 $24.15 423$1.2 424

VII. Q7: Interface design (principles...)

> Giao diện người dùng là giao diện ứng dụng giao diện người dùng mà người

dùng tương tác để sử dụng phần mềm. Người dùng có thể thao tác và điều khiển

phần mềm cũng như phần cứng bằng giao diện người dùng. Ngày nay, giao diện

người dùng được tìm thấy ở hầu hết mọi nơi mà cơng nghệ kỹ thuật số tồn tại,

ngay từ máy tính, điện thoại di động, ô tô, máy nghe nhạc, máy bay, tàu thủy, v.v.

> Giao diện người dùng là một phần của phần mềm và được thiết kế theo cách

nó dự kiến sẽ cung cấp cho người dùng cái nhìn sâu sắc về phần mềm. Giao diện người dùng cung cấp nền tảng cơ bản cho sự tương tác giữa người và máy

tính.

> Giao diện người dùng có thể là đồ họa, dựa trên văn bản, dựa trên âm thanh-

video, tùy thuộc vào sự kết hợp phần cứng và phần mềm cơ bản. Giao diện người dùng có thể là phần cứng hoặc phần mềm hoặc kết hợp cả hai.

> Phần mềm trở nên phổ biến hơn nếu giao diện người dùng của nó là:

- Hấp dẫn

- Đáp ứng trong thời gian ngắn

- Rõ ràng để hiểu

- Nhất quán trên tất cả các màn hình giao diện

- Giao diện dịng lệnh

- Giao diện đồ họa người dùng

Một phần của tài liệu Styles of software architecture (Trang 48 - 54)

Tải bản đầy đủ (DOCX)

(61 trang)
w