Chatbox

Các bạn vui lòng dùng từ ngữ lịch sự và có văn hóa,sử dụng Tiếng Việt có dấu chuẩn. Chúc các bạn vui vẻ!
27/05/2014 21:05 # 1
vnttqb
Cấp độ: 13 - Kỹ năng: 8

Kinh nghiệm: 5/130 (4%)
Kĩ năng: 39/80 (49%)
Ngày gia nhập: 21/03/2011
Bài gởi: 785
Được cảm ơn: 319
Chuẩn hóa biểu đồ lớp theo mô hình Agile


 

Mô hình Agile đưa ra bởi Scott W. Ambler. Các quy tắc chuẩn hoá theo mô hình này như sau:

 

a. Dạng chuẩn 1 (1ONF - First Object Normal Form)

“Một lớp ở dạng chuẩn 1 nếu hành vi nào đó được yêu cầu bởi một thuộc tính - là một nhóm các thuộc tính đơn - được đóng gói trong chính lớp đó”

Ví dụ: Xét lớp Student trong hình 3.28, ta có thể thấy rằng nó cài đặt các hành vi thêm và xoá student khỏi seminar. Thuộc tính seminar là một nhóm các thông tin về seminar. Lớp này rõ ràng không gắn bó

Lớp Student được chuẩn hoá dạng 1ONF như hình 3.29. Bằng cách đóng gói các thuộc tính và hành vi của Seminar, ta đã tăng tính gắn bó của mô hình.

            Chuẩn hoá 1ONF tương đương với chuẩn hoá 1NF, với 1NF ta xoá sự lặp lại nhóm dữ liệu từ thực thể, và với 1ONF ta xoá sự lặp lại nhóm hành vi từ lớp

 

 

Student

studentNumber

name

address

phoneNumber

seminars

addSeminar()

dropSeminar()

printSchedule()

setProfessor()

setCourseName()

getSeminarLength()

Lớp Student ở dạng chuẩn OONF

 

Mô hình hướng đối tượng dạng chuẩn 1ONF

 

b. Dạng chuẩn 2 (2ONF - Second Object Normal Form)

“Một lớp ở dạng chuẩn 2 khi nó là 1ONF và hành vi chia sẻ cho nhiều hơn một  thể hiện của lớp được đóng gói trong chính lớp đó”

Ví dụ: Xét lớp Seminar ở hình 3.29. Nó cài đặt hành vi xử lý thông tin về course của seminar và về professor. Khi tên khoá học thay đổi, ta phải thay đổi cho mỗi seminar của khoá học. Hình 3.30 mô tả mô hình đối tượng dạng chuẩn 2ONF

 

Hình 3.30 Mô hình hướng đối tượng dạng chuẩn 2ONF

 

c. Dạng chuẩn 3 (3ONF - Third Object Normal Form)

            “Một lớp ở dạng chuẩn 3ONF khi nó là 2ONF và nó đóng gói chỉ một tập các hành vi gắn bó“. Ở hình 3.30 lớp Student đóng gói hành vi của sinh viên và địa chỉ. Bước đầu tiên ta tách lớp Student thành hai lớp, Student và Address. Điều này làm cho mô hình của bạn gắn bó và linh động hơn bởi vì có những sinh viên có nhiều địa chỉ. Tuy nhiên, lớp Address vẫn cần được chuẩn hoá. Có hành vi chỉ kết hợp chỉ với zip code. Ví dụ, dựa trên zip code có thể xác định thành phố và bang là đúng. Mô hình hướng đối tượng ở dạng chuẩn 3ONF mô tả ở hình 3.31. Tách lớp Address thành bốn lớp: Address, ZipCode, City, và State. Tất cả các chức năng của zip code được đóng gói, tăng tính gắn bó của mô hình. Và ta có thể dễ dàng truy vấn các địa chỉ theo các điều kiện khác nhau, tăng tính linh động của ứng dụng. Hơn nữa lớp Seminar cần cài đặt hành vi date range – nó có ngày bắt đầu, ngày kết thúc, và tính khoảng cách giữa hai ngày. Ta cần tách thêm lớp DateRange

 

Mô hình hướng đối tượng dạng chuẩn 3ONF

 



======================================================================================================

Cuộc đời là một dòng sông. Ai không bơi thì chết. 
 

Name: Tien (Tory) TRAN
Email: TranTien29@gmail.com


 
Copyright© Đại học Duy Tân 2010 - 2024