Tổng quan các vẫn đê nghiên cứu Trong một tiên trình phát triển phần mềm, ở giải đoạn thiệt Rẻ chúng ta cần dưa ra các ai pháp thoa mãn các yêu cau đã xác định trong giải đoạn trực mẫu
Trang 1
DAL HOC QUOC GIA HA NỘI
NGHIEN CUU MO HINH PHAT TRIEN PHAN MEM THEO DINH HUONG SU DUNG LAI
(Báo cáo tổng hợp đề tải nghiên cứu khoa học cấp DHQGHN)
Trang 2MUC LUC
1 Phin mo dau 2
La Giat Uhieh ahi cht Qe lcvesnccveswenvcnassanenonenncemacanerseeousees 2 1.2 Danh sich những người tham gía thực hiện đề tải 2
FH t(((ia 3
2.2 Tong quan cae van dé nghién cit cee ceneeeeeeee ` 3.3 Địa điểm, thời gian và phương pháp nghiên cứu : se F 2.4 Nội dụng và kết quả nghiên cửu
3.4.1 Mẫu thiết kế và vấn đề sử dụng mẫu trong phát triển phần miềm 7 3.4.2, Tiên trình phát triển phần mềm định hưởng mẫu s22 10 2.4.3 Nay dung thư viên mẫu thiết kế với OWL (Ontology Web Language) 29 3.4.4, Hệ thống hỗ trợ lưu trữ và truy vấn mẫu thiết kế 35 2.5 Thảo luận AO 2.6 Ket ludn va Kien ngh 40
A Tài liệu tiếng VIỆU Uae ENTE 42
B Tải liệu tiếng Anh 42
Trang 3
POAD ' Pattern Oriented Analysis and Design
OWL “Ontology Web Language
‘Xtensi nsible Man kay 0 Lang ge Si hema L
1.2 Danh sach phinhong người tham gia thực: hiện đề tài
Trang 41.3 Báo cáo đề tài
Cơ quan chủ trì: Đại học Quốc giá Hà Nội
Co quan thực hiện: Dại học Công nghệ
Chủ nhiệm đề tài: Th§, Vũ Diệu Hương
Can bo tham gia thực
3 TT] Nguyễn Ngọc Bảo - ~~ TNCS Khoa CNTT- DH Công Nghệ —
4 Dang Vict Ding KS | Trung tam nghiên cứu và phat
triển Công nghệ phan mém — DH |
| - Công Nghệ
Kết quá đảo tạo: 02 khóa luận tốt nghiệp Dai hoe
1 Sinh viên: Lê Thị Thanh Thảo
Căn bộ hướng dẫn: ThS Vũ Diệu Hương, PGS TS Nguyễn Văn Vy lên để tài: N
lên cửu công cụ hỏ trợ tự dong trong sử dụng lại mẫu thiết kế
ke str dung OWL)
(phan OWL va xay dung Ontology vé mau U
2 Sinh viên: Đính Minh Anh
Củn bộ hướng dẫn: Th Vũ Diệu Hương, PGS TS Nguyễn Văn Vy lên đề tài: Nghiên cứu công cụ hỗ trợ tự động trong sử dụng lại mẫu thiết kế (phan OWL-QL và nghiên cứu hệ thông truy vấn mẫu thiết kế theo OWL-QI,) Kết quá khoa học và Công nghệ
Tom tat noi dung và kết quả nghiên cứu
~- Tim hiểu về mau thiết kề, các hoạt động căn thực hiện với máu thiết kế, vận đề
sử dụng mẫu thiết kế trong phát triển phần mềm,
Nghiên cứu quy trình phát triển phản mềm định hướng mẫu thiết kế
~- Tìm hiểu về ngôn ngữ OWWL và phương pháp xây dựng thư viện mẫu thiết kế sử dung OWL
Trang 5Cac
mẫu thiết Rẻ cho việc thư nghiệm, đạnh phí,
Em hiểu ngôn ngữ truy vấn mẫu thiết kể và khao sắt các công cụ hỗ trợ uy vẫn Củc thành viên của Để tài (thuộc Bồ món Công nghệ phần mềm) đã có kiến thức
và KỆ năng thực hành một phương pháp phát triển phần mềm mới
bài bảo khoa học đã công bố trong phạm vỆ để tái
Vũ Diệu Hương Nguyễn Văn ý, “Từng quan về máu thiết Kế và văn đề áp dụng
máu trong phát triển phần mộ” Hội nghị Khoa học về một số vấn đề thời sự trong công nghệ thông 0n và ứng dụng toán học (TMath'06) được tô chức tại Học viên Kỹ thuật Quần sự, Hà Nội, tháng TỔ năm 2006, tr.287-290
Trang 61.4 Project Report
Project name: Sry on a reuse oricnted software development model
Project code: QC.06.05
Duration: — From 06/2006 to 05 2007
Management Organization: Victnam National University
Performing Organization: College of Technology
Project leader: Vu Dieu Huor
Project team member:
MSe
Nguyên Ngọc Bao ‘BAL | College of Technology
| Dany Viet Dung j Eng | College of Technology
“Dinh Minh Anh “BAL College of Technology SỐ
e Thị Thành Thao — BAL ˆ | College of Technolog
3, Student: Dinh Minh Anh
Advisors: MSe Vu Dieu Huong, Asso.Prof Dr Nguyen Van Vy
Titile: Study on an design pattern query system
4 Student: Le Thi Thanh Thao
Advisors: MSe Vu Dieu Huong, Asso.Prof, Dr Nguyen Van Vy
Title: Study on an design pattern query system
Scientific results:
The summary of content and research results:
- Collect design patterns
- Study on the Design Pattern Oriented Software Development Process (ROAD)
- Design and implement the Design Pattern Library (of about 23 design patterns) using OWL
- Study on an design pattern query system
- Provides more experiences in software development for members in projects Papers supported by project:
- Design Patterns and reusing Design Patterns in software development Vu Dieu Huong, Nguyen Van Vy The 4th Conference on Information Technology and Mathematics (ITMath 06), Oct 2006, Ha Noi, p 287-290
Trang 72 Phan néi dung chinh
sự dụng lại từ rất sớm trong vòng đời phát triển phần mềm, Mẫu thiết kế giúp cho việc
sự dụng lại rong các phá thiết bởi Vì nó cũng cấp một bảng từ vựng chung cho thiết kế, Nó còn cũng cấp những phương thức dé hiểu các thiết kế và là những khôi xây dựng đã được các chuyên giá thiết kế kiếm chứng từ nhiều ứng dụng phức tạp khác nhau,
Số lượng mẫu thiết kế ngày cảng ting lên, phục vụ cho nhiều loại ting dụng phần mềm Khác nhau nhưng việc sử dụng mẫu trong thực tế vẫn còn nhiều hạn chế do nhiều nguyên nhân, chẳng hạn như không thu thập dược nhiều mẫu, khó hiệu giải pháp của mẫu, khó thích nghỉ mẫu với hệ t thống mới Nghiên cứu các phường pháp giúp tăng cường sử dụng lại mẫu thiết kế trong phát triển phan mềm là vô cùng cả ân thiết,
2.2 Tổng quan các vẫn đê nghiên cứu
Trong một tiên trình phát triển phần mềm, ở giải đoạn thiệt Rẻ chúng ta cần dưa ra các
ai pháp thoa mãn các yêu cau đã xác định trong giải đoạn trực
mẫu thiết kế thông thường, đến giải đoạn thiết kế, chúng ta bắt đầu hoạt động tìm kiếm
- Với cách sử dụng
các mẫu phù hợp và nêu tìm dược thì thực hiện áp dụng giải pháp của các mẫu này {[1][10] Có một cách tiếp cận khác, đó là áp dụng tiến trình phát triển phần mềm định bướng mẫu thiết kế (Design Pattern Oriented Analysis and Design Process - POAD) Theo tién trinh nay, ngay tir giai doan phân tích chúng ta đã định hướng đề xác định và
phân tích yêu cầu của hệ thống sao cho có thể tìm được tôi đã số lượng mẫu thiết kế đệ
áp dụng ở bước sau và việc tìm kiểm dược thực hiện ngày từ giải đoạn phân tích này
Như vậy, khả năng sử dụng mẫu thiết kế sẽ cao hơn so với cách tiếp cận trước,
Để tìm kiếm và lựa chọn mẫu, trước hết chúng ta so sanh van dé ta dang gặp với các
van dé ma các mẫu có thể giải quyết sau đó chọn ra mẫu phù hợp Nếu các mẫu được
nó tạ và lưu trừ trong các tải liệu, chúng tà thực hiện hai việc này hoàn toàn thủ công,
° các mẫu được mô tả và lưu trữ trong cúc cơ sở dữ liệu, việc
Trang 8Để tài tập trung vào mô hình phát triển phần mềm thea POAD (để tạng cường khả năng sự dụng mãu) rong đó có sự hồ ở của thự viên máu thiết Rẻ va cong cu truy van
máu thiết Rẻ, Trong thứ viện, các máu tết Kế dược đặc ta với đặc trưng ngữ nghĩa sự dung OWL (Ontology Web Language) Mô tạ và lưu trừ mẫu theo phương pháp này cung cap kha nang tray van mau theo nett nghia dé im Kiểm mẫu chính xác họn, số mia cin tua chon it hen và đã có các công cụ hồ trợ úy văn mẫu, piúp tặng tính tự
động trong việc tìm Kiểm và lựa chọn mẫu, Ngoài ra, phương pháp này con ho tre chia
Sợ các mu trên môi trường ẢVeh, đây là yếu tô quan trong làm thuận tiện cho các hoạt dong cua POAD
2.3 Địa điểm, thòi gian và phương pháp nghiên cứu
«— Đẻ tài thực hiện trong một năm từ thắng 06/2006 dến tháng 05/2007 tại Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Trường Đại học Công nghệ
e Thu thiap va khao sat các nội dụng liên quan từ Internet và các cơ quan đôi tác trong cùng lĩnh vực công nghệ phần mềm
¢ Ket hop nghién cuu cong nghệ và lý thuyết,
« V6 chite seminar, tham gia cde hor nghi, hoi thao én quan dén linh vue céng nghệ phần mềm
2.4 Nội dung và kết quả nghiên cứu
2.4.1 Mẫu thiết kế và vấn đề s i dung miu trong phat triển phần mềm
a Mau
heo dịnh nghĩa của Christopher Alexander: "Một mẫu mô tả một vấn dễ xay ra lặp di lặp lại và mô tả phần cốt lỗi của giải pháp cho van de do, chung ta co thé str dung lai giải pháp đã có hàng triệu lân” |3]
Nói chúng, một mẫu mô tà một vận để thường xảy ra trong phát triển phần mềm và mỗ
tà giải pháp cho vận để dó theo cách có thể dùng lại được, Các mẫu là phương tiện truyền bà trí thức và kinh nghiệm, từ những người giàu kinh nghiệm đến những người thiểu kinh nghiệm mới bất đâu
Thông thường một mẫu dược thể hiện với 4 yêu tô chính:
- Tên mầu: cụm từ ngân, cho phép tham chiêu đến mẫu
Trang 9
- Giải pháp cho văn để: mô tà các veu tô tạo nên thiết Kể, các môi quan hệ, trách nhiệm Và sự cộng tác tiểu chúng
- Ket quai: fa cae ket qua cua vice ap dung mau
dung lai Cac giai doan trong vo
dor phat tien cua miu bao
đối màu được thực hiện lập dị lập lại Vì vậy, mẫu sẽ dược cái tiên liên tục vũ dược Kiểm định trong quả trình sử dụng lại ở thục te
Nhờ đó, các mẫu ngày cảng có chất lượng cao
Mẫu cũng có nhiều loại khác nhau, bạo góm: mẫu phần tích, mẫu thiết kẻ, mẫu triển Khiu, Trong nghiên cứu này, chúng tôi tập trung vào các màu thiết Kể,
mô tả các mô hình kiến trúc khái quát của các thành phần phân mem, giai quyet van de
là các mầu hỗ trợ cho các hoạt động thiết kế phần mềm Chúng,
Tên mẫu: Creator
Van đề: Ai có trách nhiệm tạo ra một thể hiện mới của một lớp? Giải pháp: Lớp B có trách nhiệm tạo ra một thê hiện mới của lớp A nêu một
| trong các diều kiện dưới đây thỏa mãn:
| 1 Bla mot tap hop cic dối tượng A (B và A có mỗi quan hệ
2 Behtra cae doi tuong A (B va A co mỗi quan hé contain)
| 3 B lưu lại các thể hiện của các doi tuong A
Mẫu thiết kế đóng vai trò quan trọng trong tiên trình phát triên phan mém va dem lại rất nhiều lợi ích:
- Giải quyết các vấn đẻ thiết kế với giải pháp có chất lượng
-Cung cấp bộ từ vựng chung cho nha thiết kế đẻ giao tiếp làm tài liệu và tìm hiểu những hướng thiết Kẻ khác nhau
-Mẫu thiết kế hỗ trợ tải sử dụng kiến trúc và mô hình thiết ké phan mem theo quy mô lớn
- Áp dụng mẫu một cách hiệu qua còn có thê hồ trợ tốt cho tiến hành bảo trì vì người phát triển năm bat Kiên trúc hệ thông nhành hơn
-Củc mẫu thiết Kế hỗ trợ khá năng thích nghĩ cáo, Không phụ thuộc ngôn ngữ lập
Ñ
Trang 10trình, công nghệ hoặc các nên tìng lớn nhữ NET hay PEE
Để thủ dược những lợi ích trên, tụ phát thực hiện thông nhất các hoạt động hồ trợ cho phát triển phản mềm sự dụng mu thiết Kế, bạo nốm;
bl Khai phá - Thu thập màu
Hoạt động Tắm tài liệu mẫu duc sói là khát phú mẫu, Các tác giá có Kinh nghiệm làm
việc trong các dự án thực tế, từ các văn để đã gặp trong các dự án thực tế và giải pháp
› hình thành một màu thiết kẻ, Những máu mới sẽ được dura ra xem Net
b.2 Phân loại mâu
Mẫu được phân loại theo nhiều tiêu chí khác nhau, trong đó phỏ biến nhất là cách phân loại của nhóm GangO/Four(GOF)|2]: theo muc dịch sử dụng và theo phạm ví ứng dụng (tham khảo phần phụ lục) Ngoài ra, mầu có thê được nhóm vào theo lĩnh vực áp dụng như nhóm mẫu dành cho các hệ thông thời gian thực, nhóm mẫu được sử dụng
trong Java, nhóm mẫu được sử dụng trong các phần mềm truyền thong Phân chia n
au thành các danh mục một cách hợp lý sẽ giúp cho hoạt động tìm kiểm mẫu de dang hon
Người sử dụng chỉ cần tìm những mẫu yêu câu theo danh mục thích hợp mà không cân phải xem xét toàn bộ tập hợp mẫu
mô tạ và lưu trữ bằng cơ sở đữ liệu đè người ding có thể tìm mẫu bằng cách truy van
cơ sở đữ liệu sử dụng SQL (ngôn ngữ truy v an lựa chọn) Tuy nhiên, mục tiêu của
chúng ta vẫn là tìm một phương pháp lưu trữ mà hồ trợ việc tìm kiểm và sử dụng mẫu theo cách tự động hoá ở mức độ cao,
b.4 Tìm kiểm mâu theo tinh huong
Trước đây, Khi cần tìm kiểm mẫu người sử dụng phải đọc, tìm hiểu các vấn đề trên, so sành chúng với tình huông cụ thể của mình và tự tim ra mẫu thích hợp Hiện nay, cùng với sự phát triển của các ngôn ngữ thẻ hiện mẫu, công cụ tô chức lưu từ mẫu, các
Trang 11
phần của hệ thông chính lì các đòi tượng, Các nhà thiết Rẻ gặp nhiều khó Khăn
trong việc Xác định các đói tượng sao cho đam báo dược tính đóng gói, mịn,
mềm deo val ti su đụng Các màu thiết kẻ hồ trợ xác định các đôi tượng phù họp
+ Quyết định Kích cờ của các đôi tượng: Các mẫu hỗ trợ việc xác định đôi tượng phan chía đổi tượng để thủ được các đối tượng với Kích thước nhỏ hơn (cúc thành phân công tác)
Dae ta các to điện đôi tượi (object interface): Cae mau thiết kế giúp định nghĩa các piao điện bí cách nhận ra các yêu tổ chính và các loại dữ liệu chính
rong các phần dưới đây, chúng tôi sẽ trình bảy tiến trình phát triển phần mềm định hướng sự dụng mẫu thiết kế và một cách tiếp cận để mô tả và lưu trữ mẫu sử dụng ngôn ngữ OWL và truy vấn mẫu trong kho theo các đặc trưng mẫu ở đạng ngữ nghĩa hoặc theo cú pháp của ngôn ngữ truy vẫn OWVL-QL, với sự hỗ trợ của các công cụ truy vấn,
2.4.2 Tiến trình phát triển phần mềm định hướng mẫu
3 lỗi của POAD là
Mục tiêu của POAD Tà sử dụng tôi da số lượng mẫu thiết kế va tăng hiệu quả sử dụng
ạc trưng ing cường sử dụng mu thiết kế để xây dựng hệ thông mẫu thiết kế trong phát triển phần mềm
Chany toi chia POAD thành 2 giải đoạn chính;
© Phan tich, bao gom cae bude:
Trang 12Thiết kế, báo gốm các buộc
~ Nây dựng mô hình mức mẫu
- Nay dung mo hinh thé hiện mẫu
- Nay dung mô hình mức máu chỉ tiết
vực này, Ngoài ra, quá trình phân tích còn dựa trên thư viện mẫu (chúng tôi sẽ đề cậ ap chỉ tiết hơn vẻ thự viện mẫu trong phần sau)
Giai doạn phân tích bạo gốm các hoạt động chính sau:
©S_ Năm bắt các yêu cầu đề xác định các vận để cần giải quyết và phân chía ứng dụng thành một tập các thành phản logic (logic component)
©_ Làm quen với thư viện mẫu đề biết dưo
có các màu gì đang tôn tại
o Tim va lấy ra các mẫu ứng viên theo cách tự động
©_ Lựa chọn các mẫu từ tập mẫu ứng viên dễ sử dụng trong tiên trình thiết kẻ
Trang 13Phần tich trong giai doan nay Không cần an Hing den eae chi tiết bên trong máu,
Phân tích
yêu câu
Ứng viên màu được chọn
bia
ai đoạn phần tích
Hinh 1:
b.1, Năm bắt yêu cầu
Nục đích của bước này là xác định các vêu cầu về chức năng của ứng dụng xác định các văn đẻ cần giải quyết, xác định các thành phan Ic
ric cua ứng dụng, Các thành phần
này sẽ được sử dung tro
ở quá trình quyết dinh các mẫu phù hợp de thiết kế ứng dụng
© Mie dink cae caste dung (use case) va cdc think phan tare thi ca sir dung
Trang 14Vim kiếm các chúc nắng mà ứng dụng cần cúng cấp, sau dó khái quát thành van de ean
sự dụng thông qua các chuối sự kiến chính, các ngoại lệ và môi quản hệ giữa các phần
te logic cua he thong Khi thực thị các cá sử dụng, O buộc này, chúng ta cùng cần xác
định rõ thành phần logie (logical component) hay thanh phan khát niệm (coneccpiual component) nao thure thi cae ca su dung kim co so: cho thiết kế kiến trúc ở giải doạn sau
thông là ở đây chúng ta phan chia trách nhiệm của các thành phần sao cho có thể tìm
ra dược tôi đụ các mẫu thiết Kẻ cũng cấp giải pháp để thực thí trách nhiệm của các
sai quyết, Khí đã xác định được tập
chức năng cần được trợ giúp và văn đề cần được
cúc văn đề cần giải quyết, chúng ta xác định các thành phan logic sé duge str dung dé giải qukết các vấn để đỏ và làm thỏa mẫn các yêu cầu của ứng dụng Chúng ta cũng gọi các thành phân này là "các gói Ahat ức
s) hay các thành
* (conceptual pac
Trang 15phan Khái 012m Cúc thuật ngữ ““hất niềm” Và "ogc” được dùng ở đầy Vi các thành phần này Không tên tú trên thục tế, chúng Tà các thành phần từ Không gian các văn đề
thành phản löeie để giải quyết các vận đề dò
«— Giản thích nhiệm cho các thành phản
€ phần trước chúng ta đã định nghĩa mỗi thành phần tường ứng với một cả sự dụng hạy một chức năng mà hệ thong hỗ trợ Tuy nhiên, cùng có thê cùng cấp một vải chức năng trong một thành phản Khi dò thành phần da nhiệm có thê hỗ trợ cho nhiều hơn một ca sử dụng, Mặc dù thành phần có thẻ hỗ trợ nhiều chức nang và thuộc tính của
ứng dụng nhưng thông thường đơn chức năng sẽ dẻ định nghĩa các vấn để và cho phép
lập nhóm trong các giải doạn sau,
Chẳng hạn như việc xem Xét các yêu cầu được phát biêu cho hệ thông điều khiến phản hội, Nhà phần tích có thé ghi nhận một vải ca sử dụng như những thành phần diều phối
va dicu khién thiết bị, “phản hỏi" lại những thay đối do được khi theo dõi thiết bị S
là thích hợp hơn nếu xử lí từng sự kiện đó như những ca sử dụng hoặc chức năng tách biệt và giải quyết từng vấn dẻ tách biệt, Điều này làm tiện lợi cho tiến trình lựa chọn
ác định được các thành mau trong các hoạt động tiếp theo, Sau hoạt động này, ta 3
phần từ không gian vận để mã tạ gần các trách nhiệm màng tính chức năng cho chúng, Trong gi đoạn phân tích của POAAD chúng ta quan tâm nhiều hơn đến nhiệm vu dau tiên là xác định các thành phần và chức năng của chúng Những chức năng này được định nghĩa trong thành phẫn Chúng tạ thường dự doàn quá trình lựa chọn mẫu băng cách xác định những đáp ứng cần thiết mà mỗi mẫu cụ thể cần cúng cấp để thực hiện thanh phan
San phâm của bước này là tập các thành phân hay các gói (packages) và các c
trình phân tích phải năm được các vẫn đề, các thành phan va các chức năng của nó
© Nên chía các hệ thông lớn thành nhóm các hệ thông con (subsystem) hay các gói
Trang 16dụng trong thiết Rẻ ứng dụng, Hoạt động nay dược thực hiện dựa trên thứ viện mẫu có
+ yêu cầu đã xác định ở trên tị tìm và lựa chọn ra các mẫu phù hợp các
GoF [2] dược sử dụng rất nhiều trong phát triển ứng dụng hướng đôi tượng, Cúc máu nay gom Observer, Strategy va Factory Cac mau trong thư viện được xép vào từng
lĩnh vực dựa vào tính chất và phạm vi sue dung cua no [9]
s1 đoạn sau, tạ nên thực hiện cae bude:
© Lam quen mau
Tàm quen mẫu là quá trình mà nhờ nó nhà phân tích tự làm quen với các mẫu dang ton tại có trong thư viện, xem có những văn để nào mà các mẫu có giải pháp và tìm hiệu
sơ hộ các giải pháp đó,
Thao tac lam quen mẫu bao gồm việc lưới qua đạnh mục các mẫu dược lưu trong thư viện để hiệu vẻ chức năng và cách sử dụng của các mẫu dé Dieu này giúp ích rất nhiều cho việc tìm ra giải pháp cho các van de a đang có Tuy vậy cần tránh việc tìm hiểu quá sâu về cách thức các mẫu giải quyết vẫn đề, Trong giải đoạn này vấn dé quan trong là cái gì có thê sử dụng lại chứ không phái là sử dụng lại như thể nào Các tài liệu mẫu thường mang rất nhiều thông tin như: chức năng của mẫu, cách thức
tiết vào cầu trúc, các thành phần của mẫu
Kết quả của thao tác này không phải là những công cụ cụ thể mà là những hiểu biết thủ
c mẫu đã từi tự vận để ta gặp
được vẻ œ:
ử được ti quyết các vận để tương
Những kiện thức này giúp tạ xác định các
sử dụng để ø
phải trong khi phân tích yêu cầu ứng dụng
thành phần có thẻ được thực hiện bằng cách sử dụng các mẫu trong thư viện mau Khi thục hiện thao tác làm quen mẫu trong POAD nên chú ý tới một số điểm sau:
Không nên đọc toàn bộ thư viện mẫu, Mục tiêu của i doan này không phái là
phân tích toàn bộ các mẫu trong thư viện mà là tập trung vào việc phân tích các
1 dể và xác định các thành phần có thể cũng cấp giai pháp cho các vấn dễ đó,
Trang 17trong giải đoạn tiếp theo Tà lựa chọn m
Vim va lay ra gon hài thao tác chính:
2 navigation: luot qua toan bộ hệ thông tài nguyên
o matching: Va chon nhitng tii nguyen fen quan den van de ean git quyet Navigation pha thude vao cach thite to chue va luu ttt mau chang han nhur ta sé lya chon ngau nlién ting phan cua thu vign mau dé vem xet neu mau được lưu trừ theo các Khôi
Wứrching Tà Kiểm tra và xác dịnh các mẫu có thẻ đưa vào đánh sách ứng viên Hai điệu Kiện cơ bạn để một mẫu có rong danh sách ứng viên là mẫu đỏ phái liên quản đến một Khia cạnh nào đó của vận để cần giải quyết và mẫu đó có thể được lựa chọn (trong
bước sau), Chúng tạ có thể sự dụng hai điều kiện này đề phân biệt những mầu phù hợp
- Không phù hợp điều chính phạm vì ứng viên và dưa ra danh sách Kết quả ứng viên Các phương pháp, kĩ thuật lưu trữ và lấy ra các mẫu ứng viên là rất phong phú và da đạng, Trong phần sau, chúng tôi sẽ giới thiệu chỉ tiết về một phương pháp lưu trừ và
lấy ra các mẫu ứng viên trên môi trường ẢÝch,
Lưu Ý- Luôn luôn cập nhật thư viện mẫu băng cách Kiểm trà tài liệu mẫu thiết kề mới hang nam Có thể có nhiều mẫu tốt rất hữu ích cho phương pháp POAD
Sản phẩm cuối cùng cửa thao tác này là tập các mẫu ứng viên Thao tác tiếp theo sẽ
dựa trên kết quả này để chọn ra các mẫu thiết Kẻ sử dụng trong giải đoạn thiết kế
© Laura chon ment
Mục dịch của thao tác này là lựa chọn các mẫu thực hiện được mọi chức nâng của các thành phần mà được xác định từ yêu cầu cua ứng dụng Các mẫu này sẽ dược sử dụng trong giải đoạn thiết kế của phương pháp POAD
Sau bước tim va lay 1 mẫu, chúng ta có dành sách các mẫu ứng viên mà ở đó có thê
có nhiều mẫu cũng cấp nhiều giải pháp khác nhau cho cùng một vấn đề, Nhiệm vụ của bước lựa chọn mẫu chính là tìm giải pháp phù hợp nhất để giải quyết từng vận dễ đã
xúc định Quả trình lựa chọn mẫu là quá trình ghép giải pháp (mẫu thiết kế) với vấn dễ
mì trách nhiệm cho các thành phần khái niềm
GioE đã đưa ra một số để xuất trong văn để lựa chọn mẫu trong dụnh mục 23 mẫu của
họ [2] Những để xuất này dựa trên Két qua thục nghiếm và lập luận của người thiết kế
Trang 18quen màu, tìm và lây ra mẫu
Sản phẩm củu quả trình này là tập các mẫu duoc sự dụng đẻ thiết Rẻ ứng dụng,
thao tác, chúng tạ cần thực hiện lấp di lap lại các thao tác tror
tích dựu trên số lượng vũ chất lượng các mẫu thiết kẻ hiện có đề đạt dược mục tiêu là
sử dụng lại tôi đã các mẫu thiết kẻ trong quá trình phát triển mỗi ứng dụng, Kết quá của giái đoạn phần tích là tập các mẫu dược lựa chọn để sử dụng trong thiết kẻ ứng đụng, Mỗi mẫu dược lựa chọn giải quyết một vấn đề trong lĩnh vực ứng dụng Tài
liệu là vêu tổ quan trọng dược tạo ra trong quả trình phân tích, chúng bạo gồm:
© Cac thành phan thict ke (design component) duce dẫn xuất từ yêu củu của ứng dụng
o Chức năng của các thành phần này
©_ Các mẫu dược lựa chọn đẻ cầu trúc các thành phần
o Cae van đề được giải quy ét bởi các mẫu lựa chọn và những lập luận sau khi chọn
các mẫu này dễ giải quyết © van dé cu the
liên đấy chúng tôi đã khái quát những nhiệm vụ căn bản của quả trình phan tích mà
âu vào kĩ thuật sử dụng trong từng hoạt động năm bắt yêu cầu và tìm kiếm mẫu thiết kế, Dối với hoạt dong nam bat yeu cầu, chúng tạ nên tham khảo hướng dẫn
ay dựng mô hình ca sử dụng
của phương pháp phân tích thiết kế hướng dói tượng đề x
và xác định các thành phần thực thị các ca sử dụng, Đối với hoạt động tìm kiểm mẫu thiết kế, chúng tạ phải dựa trên thứ viện mẫu báo gồm số lượng và chất lượng của các thư viện, cách thức tô chức lưu trừ mầu và cách thức tìm kiểm lẫy ra các
ây dựng thư viên mẫu và
mau tror
niu tir thu vic
một số công cụ hỗ trợ sử dụng thứ viện mẫu Trong phan 2.4.3, chúng tôi sẽ giới thiệu
1ï đoạn phân tích của tiên trình
ì máu, Hiện nây đã có một số phương pháp )
một phương pháp xây dụng thư viện mẫu hỗ trợ cho ø
Sở đỏ mức mẫu mô tả môi quan hệ
7
© Nay dụng
| _D/ 192 |
Trang 19Nây dụng sơ dỗ thể hiển nấu mô tạ môi quản hệ giữa các phan tu cua ede mau nay vài các phản từ của vác màu khác
Nếy dựng mồ hình mức máu chỉ tiết
Lam mịn thiết Kế (Xây dụng sơ đồ lốp của ứng dụn
Biêu đỗ lớp của Hình 3: Các bước trong đoạn thiết Rẻ
Trang 20
Dau vio của bước này là tp các máu có khả nàng cũng cấp các chức năng theo yêu
tế hiện cúc thao tác sau:
cầu của người sử dụng Tú cần tÌ
© fae vac the hen cua man
lrên có xơ các tài liệu mô tạ mẫu, tà đội chiếu môi màu với các trường hợp sử dụ
trong thực tẻ, từ đỏ tiện hành định danh máu theo hai bước: thú nhất xác định tên
dung cu the (dinh danh) cua mau va lou của mẫu, tên này sẽ được sử dụng trong suốt
quả trình thiết Rẻ, Thứ hài là gân các thuật ngữ ứng dụng cụ thể cho các thành phan bên trong của mau, các thuật ngũ này cũng được sử dụng trong suốt quá trình thiết ke chỉ tiệt,
máu theo các vấn để này Tỉ
giải quyết, đo đồ các tên này phần biết các mẫu vào các thiết kẻ ứng dụng cụ thẻ Loại của máu là tên phô biên của mẫu được đẻ cập trong tài liệu mẫu, là tên mà nhiều người thiết Kể cũng sự dụng để gọi mầu đó
Để mình họa chúng tà xét ví dụ sự dụng phương pháp POAD dé thiết kế hệ thôi
mẫu Observe trong thiết Kẻ ứng dụng Ta tiên hành dịnh danh mẫu n
là Observe vi day là tên phô biến của mẫu [2] còn tên ứng dụng cụ thẻ của mẫu được xúc định như sau: do mẫu cũng cấp chức năng giám sat (observe) su thay doi của cảm
biển (sensor) nên tạ có thể đặt tên ứng dụng cu the cua mau là SensorObserve, Như vay ta co thé nói thiết RỂ ứng dụng có sử dụng mẫu có định danh là SensorObserve loại Obs
danh cua mau 1a dé phan biệt các mẫu trong mo hình thiết
thông phản hột ở trên, qua phần tích thấy rằng cần sử dụng mẫu Observe để theo dõi giá trí dâu vào của hệ thông, Trong trường hợp này thiết kẻ ứng dụng có thể chứa một
c thiết kế hệ thông phản hồi chứa mẫu khúe có định danh là InputObserve Như vậ
đồng thời hai mẫu có định danh là SensorObserve và InputObserve thuộc cũng một loại Observe, Do đó à rất bình thường nêu thiết Rẻ ứng dụng chứa nhiều định danh
19
Trang 21
thông phần hỏi ð trên, người the tr dụng mâu InpurObserve thude loai Observe đề vim sat dau vào của hệ thông, ngoại ra củn sự dụng máu FonvardStrateev thuốc loại
| Strat để cũng cấp tỉnh mềm đeo trong điều hank he thong, Khi sae dinh quan he
è được sử dụng dễ kích
gat hab mau tren ta thay răng dấu ra của mẫu InputOhserve
hoạt sự diều Khiến hệ thông túc là đâu ra của mẫu InputObserve chính là dâu vào của máu PofxurdStrateev hày có một quần hệ phụ thuộc từ mẫu InputObserve đến mẫu EorvardStrate
so Phú! triển các hiên do mức màu
Irong suốt quá tình định dành mẫu và sắc định quan hệ giữa các mẫu định danh người thiết kẻ có thê phát triển sơ đò mức mẫu, sơ đỏ này thể hiện các định danh máu niữa chúng, Chúng ta sự dụng mô hình MT, để biều điền sơ đồ mức mẫu
vũ quan hệ
Với ví dụ hệ thống phản hỏi ở trên, thiết Kẻ của hệ thông này có sử dụng hai mẫu là InputObserve thuộc loại Observe và FopvardS0atesy thuộc loại Stateev quan hệ giữa hai mẫu này là đầu ra mẫu InpdtObserve sử dụng lâm đầu vào của mẫu EorwardStrateev, hình 3 là một phần sơ dò mức mẫu thẻ hiện quan hệ này,
Người thiết Rẻ có thể xây dựng sơ dò mức mẫu cho toàn bộ ứng dụng hoặc xây dựng,
sơ dỗ mức mẫu cho từng hệ thông con hoặc từng khung làm việc
se 2 T Aft be ‘ Badin andi be ytd Sản phẩm của giải đoạn này là sơ dỗ mức mẫu của ứng dụng hoặc của môi hệ thông
con hay khung làm việc
Trong một vài trường hợp người thiết Kế có thể thấy một số mẫu đã được lựa chọn
ir dung trong sơ đồ mức
trong giải đoạn phân tích không phủ hợp hoặc Không được
mẫu, khi do cần liên hệ với người phân tích để kiểm tra và dựa ra quyết định đối với những mẫu này,
3, Nay dung mo hinh thé hign mau
Mục đích của giải doạn này là phần tích quan hệ giữa các dinh danh mau và xác định quản hệ giữa các phản từ của chúng,
20
Trang 22Quan hé phu thuộc giữa các mẫu đã dược de cập ở trên chính là mình họa của môi gaan he mot mau sự dựng các mẫu khác, Với mô hình thiết Kế ở mức thấp hon cua tn
Để thuộc giữa hai mẫu này, trước hét tì xắc định thê hiện của hai mẫu, Mẫu InputObserve
hình 3 Mẫu InputObserve sự dụng mau ForwardStratess am rõ hơn quan hệ phụ
thuộc loại Observe có thế hiện Hà hai phương thức Update) và Notify Mau
EonvardStrateey có thể hiện là lớp ContexL Trong ứng dụng này, Khi giá tị đầu vào
Update của mẫu InputObsexe phải sử dụng thể hiệ
EorwardStrateex, Như vậy thể hiện LpdateO đã Kết nội với thể hiện Context thể hiện quan hệ phụ thuộc, Hình 4 mình họa sơ đỗ thể hiện mức mẫu của ví dụ đơn giản này Choy rang wong vi dụ trên thể hiện NoHÄQ của mẫu InputObserve không tham gia vào hình thành quan hệ phụ thuộc piữa hai máu trên, có thể nộ sẽ tham gia tạo quan hệ
giữa mẫu InputObserve với mẫu khác trong thiết kế ứng dụng
Hinh 4 Một ví dụ đơn gián cho biểu đỗ thê hiện mức mẫu
Trang 23oS Làm mịn thiết kế
Trang 24
rong bước này, chúng tì tao ra bicu do top cua dng dung sur dur
chỉ tiết đã tạo ra ở bước trước, Trone tiên trình thiết Kế, nhà thiết kế đã năm bất được những chỉ tiết bên trong của mẫu thiết kế dược chọn, Chỉ tiệt này sẽ hữu ich trong mọi hoat dong cua bude lam mịn thiết ke
Bước làm mịn thiết kế có bà thao tác chính: Thẻ hiện phần bên trong máu, ở độ chúng
tạ thêm bản chất của ứng dụng cụ thế vào thiết kẻ bên trong của các mâu, Phát triển các biểu đo lớp, ở đó chúng tạ xây dựng biếu đỗ lếp bạn đầu của ứng dụi
thiết Áế, ở đó chúng tạ chỉ tiết hoa bicu do lop cua ung dung
© Thế hiện phản bến trong mu
Mục dích của thao tác này là tạo một thê hiện của ứng dụng cụ thể của mẫu khi sử
ø biểu đồ mức mẫu chỉ tiết
-Lăm lộ ra mô hình biểu đỗ lớp bên trong của mỗi mẫu thiết kế tại biểu đỏ mức mẫu chỉ tiết,
- Đôi tên lớp bên trong của mỗi mẫu cho phù hợp với môi trường thiết kế ứng dung Chúng ta chọn tên cho phần tham eia mẫu sao cho có ý nghĩa trong ngữ cảnh của ứng dụng
- Gắn tên ứng dụng cụ thể cho các phương thức và tác vụ trong mỗi lớp mẫu,
Tả xét một ví dụ cụ thê về sử dụng PO.VD để phát triển thiết kế ứng dụng của hệ thông điều khiến phản hồi, Trong ứng dụng này, chúng tả giá thiết dữ liệu đọc từ thiết bị
Trang 25Thiet Kế biều do lop cua mau DirorOBserver được cho trong hình 0(á), Trong mẫu Observer lop tru tong Subject brew chen giáo điện trưu tượng cho thành phan quan sat va cae lop ConcreteSubicets biêu điện sự triển khái cụ thẻ của giao diện chủ thê
observer là một lợp xử lý lỗi khi sơ sành đừ liệu phản hỏi từ thiết bị với đầu vào cho ưước, Ví thể, nhà thiết Kế có thể xem vét việc đôi tên lớp Conerete Observer thành ErrorObserver hay lop Error như ong hình 6(b), Chủ š it)
observerS
observerState Notify |{t )
Hinh 6, Biểu diện các phần bên trong của thể hiện ErroObsever
(a) Thẻ hiện gốc (b) Thể hiện ứng dụng cụ thé
K
phép những nhà thiệt Kế mẫu phân biệt những phân cô định chúng cho tat ca cae mau
è thừa là một cơ chế chung được sử dụng trong biểu đồ lớp của mẫu Kế thừa cho
và những phần linh hoạt dược cái biến trong quá trình thể hiện mẫu của ứng dụng đã cho Do đó chúng ta thầy „ hầu hết các mẫu biểu đỗ lớp đều có một hoặc nhiều
thé và trừu tượng, Những lớp trừu tượng chỉ cũng cấp giao điện và vì thể nó đơn thuần
là lớp trừu tượng hay giao điện Chúng cũng có thê được dùng để cùng cấp sự thực thì mặc định cho một vải phương thức thường được sử dụng bởi bất kỉ lớp con nào
Nou
Trang 26$ lớp trữu tường nào cần
Trong hoạt động thể hiện mẫu, nhà thiết Kế cần xác định nhữt
op con cu the diay cho chúng, Khi lóp trừu tượng đơn thuận là triển Khái và nhữi
„ nhà thiết Rẻ cần liến kết nọ với một lớp thực hiện giao điện này, Thê
mot giao die
hiện này gọi là đã được triển khai bảng Cúc thực hiện” Hai kỳ thuật này rất phố biến trong công đồng hướng đối tượng và dược sự dụng trong POAD đề thê hiện phản thiết
kẻ bên trong mỗi thẻ hiện của mẫu, Sự thế hiện bằng hai kỹ thuật này giống như việc
mo rong ma khong can dat hú tên
® — Phat wien bien do lop ban hii
Mục đích của bước này là để phát triển bicu do lop cua tng dung khi str dung bicu do lớp của các thẻ hiện cua mau
Biểu đỗ mức mẫu chỉ tiết nắm bắt các môi quản hệ giữa các thể hiện của mẫu thông qua môi quan hệ phụ thuộc giữa các giáo diện màu, Để có thê nội thiết kế bên trong
bên trong của một thẻ hiện của mẫu khác, nhà
của mẫu với thiết k
cua mat the hie
an lần vết từng giao điện mẫu đến phần bên trong mẫu mà nó triển khai hoặc
Hình 7: Truy gió điện đến thực thí bên rong
Ví dụ xét các thẻ hiện mẫu FeedForwardStraterey và ErrorObserver của ứng dụng điều Khiên phản hồi đã được tháo luận ở phần trước, Sau khi thê hiện những chì tiết
bên trong của môi thẻ hiện của máu này (Không báo gốm ở đây), nhà thiết kế lan vet
từ giao điện đến các lớp bên trong của ứng dụng cụ thẻ trong biểu đồ mức mẫu chỉ tiết
yeo mot lop-giao dién duge got la Context,
của ứng dụng cụ thẻ, FeedForwardStraterg
và EtrrorObserver có một phương thire-giao điện gọi là Update) Lớp giao diện
dỗ
Trang 27cua the Comtext dược thục hiện khi sự dụng lếp Controller, đó chính là lớp bên trong hiện mẫu FeedlerwvardStratel Gino điện pdateO được thực hiện Khí sử dụng lớp
IrrtorObserver, đó chính Tà lớp bền trong của thẻ hiện máu EarorObserver, Hình § mình họa biêu đó mức mẫu chỉ tiết của ứng dụng cụ thể đối với hài màu này Dường
đút nẹt được sử dụng để nói giao diện với thiết Kế bên trong của thể hiện máu
Để phát triển sơ dỏ lớp tử biểu dỗ mức mẫu chỉ tiệt của ứng dung cu thé, chúng ta phải
Ta các thành
lăn vét tất ca các môi quan hệ giữa các giao điện máu đến các quan hệ g
ä xác định được các môi quan hệ
phần bên trong mẫu, Trong phá này, nhà thiết kẻ d
giữu các giao điện mẫu trong pha thiết kế, Những mối quan hệ nảy được biểu diễn
UpdateO được lân vết đến lớp EirorObserver trong thể hiện mau ErrorObserver: va giao điện Context được lân vét đến lép Controller trong thẻ hiện mau FeedForward Suatergy, Bay giờ nhà thiết kế sử dụng môi quan hệ giữa các thể hiện của mẫu này và
an vết giữa giao điện va phan bên trong mẫu để thiết lập một mỗi quan hệ
Trang 28san hin eho thict ke dng dung Nhimeg bicu
an phẩm của hoạt dong nas he
đó lốp này chưa chỉ tiết Chúng biểu điện một sự chép nội của thiết Kẻ bên trong của các thẻ hiện mẫu Tiếp theéo đây, chúng 1à sẽ chỉ tiết hóa biêu đó lóp này,
© Chi tict hoa biểu do lúp cua ứng dụng
Mục dịch của bước này là để tôi tú hoa biếu do lop bạn đâu mã chúng ta đã phát triển
hếp nói long leo các thể hiện của mẫu, Kết qua là thiết Rẻ
Biểu đó lốp bạn dâu là sự
có thể có lúp trưu tượng được sao lập (xuất hiện nhiều thể hiện của cùng một lớp trưu tượng) hoặc rất nhiều lớp vớt những trách nhiệm đơn giản, Trong hoạt động nà chúng ta sử dụng cách rút gọn, hợp nhất và nhóm gộp cúc bước để tôi ưu hoá thiết ke -Ruit gon
Trong qua trinh thiết kế, nhà thiết kế có thê tạo ra nhiều thé hiện của cùng một loại mẫu Từ cùng một loại mau co thé dược thể hiện ra thành một hoặc một vài thê hiện của mẫu, Những lớp trừu tức oai mau do sé được thể hiện hơn một lần Nều nhà thiết kế Không thay đôi bất kì phản từ nào của các lớp trừu tượng này, thiệt kế bạn
dâu sẽ chứa những bản sao các lớp trừu tượng từ một vải thể hiện ¢
a cùng một loại mẫu đó, Ví dụ, xét ứng dụng điều khiến phản hồi mà chúng ta da thao luận ở trên, Nhà thiết kế sử dụng hai thể hiện của mẫu là SensorObserver và ErrorObserver của cùng một mẫu Observer như một cơ chế dé điều khiến sự thay dồi trong thiết bị và diều khiến những thay đôi trong dữ liệu phần hỏi, Mẫu Observer có hai lớp trừu tượng: Observer va Subject Vi thẻ, thiết kế của ứng dụng phản hồi sẽ bao gồm hai lóp trừu
a hai lớp trừu tượng màng tén Subject
tượng mạng tên Observer
điện nên xuất hiện một lần trong, moi thiết kẻ
được nhận biết trong những lớp ứng dụng cụ thê, Sau đó nhà thiết kế sử dụng một lớp
để mô tả cho những bản sao trừu tú khác, Ví dụ, nhà thiết kế có thể sử dụng một
lớp trừu tượng Observer để mô tả cả ‘hai lớp trừu tượng Observer trong ví dụ mẫu SensorObserver và ErrorObserver Việc rút gọn tương tự có thẻ được sử dụng cho lớp triru tuong Subject Hinh 9 minh hoa cho thict kế mẫu của ví dụ mẫu SensorObserver,
orObserver và thiết ke sau khí đã rút gọn và bỏ một sò
thiết kế mẫu cho ví dụ mẫu
Trang 29Cau trúc thiết kế của các mẫu có thê chứa các lớp với các trách nhiệm đơn giản Một vải mẫu thiết kế chứa các lớp sử dụng dễ chuyên tiếp một thông điệp tới lớp khác bên trong cầu trúc mẫu Những lớp này không có nhiều ý nghĩa sử dụng Chúng cần tiên hành các chức năng Khác trong ửng dụng bên cạnh chức năng mà chúng cung cấp như các thành viên tham gia bên trong cầu trúc thiết kế của mẫu đó,
Thay cho viée sử dụng lớp đơn gian với những trách nhiệm tâm thường người thiết kế
ở phá này có thể xem xét việc sử dụng một lớp đề triển khai trách nhiệm và vai trò của
: › „ Apa fsck caine 4 3 e8 3 TR ili thành phần tham giá từ nhiều hơn một thể hiện mẫu Hợp nhất (hay nhóm gop) là tiễn trình mà theo đó người thiết kế xác định một lớp triên khai các vai trò của các thành phan tham gia từ nhiều hơn một thẻ hiện mẫu
œ6 Tổng kết
Trong phần nay, chúng tạ đã mình họa tính ap dung dược của tiên trình POAD đề phát triển các khung làm việc thiết kế, Các khung làm việc thiết kế được phát triển khi sử dụng POAD được gọi là Khung làm việc hướng mẫu
28
Trang 30Cae hoat dong bén trong phá thiết Kể tp trung vào tộc tạo ra mô hình biêu dò lớp cho
Bất dâu với việc biểu đồ lớp tôi ưu và với các khung nhìn hướng mẫu của thiết kế được phát triển theo phương pháp luận PO.VD, người thiết kế có the phân tích sâu hơn
lại, Khi tiên hành phần tích thiết kê, việc sử dụng các biếu đồ tuần tự - ví dụ, e
phải được phản ảnh trong,
quản hệ giữa các lớp - có thê thay đối, Những thay đôi nà
các biểu đỗ mức mẫu Một môi trường phát triển dược yêu cầu để hỗ trợ các bước POAD và duy trì tính nhất quán giữa các mô hình thiết kế, Các bước thiết kế chỉ tiết hơn tuân thủ các kỹ thuật hướng đôi tượng truyện thông băng cách xác định các chỉ
ic khia canh hành vì của các lớp và các chế tác thiết kê khác
a, Khái niệm Ontology
“Mot ontology dink nghĩa các từ vựng và các khải niềm được sử dụng đề mồ ta và biển diễn trong mọt miền trì thức "{LIỊ
một miền trí thức Một miễn trí thức là các vấn để xung quanh một chủ đề nào đó Ví dụ: y học quản lý
sự thê hiện của các hoạt động Ví dụ, mô tì trong lình vực sửa chữa 6 tô:
- Cae the loai xe (xe mui kin xe thể thao, .)
- Cae thé loai dong co (gasoline diesel điện dong co lai)
- Hang sản xuat (Ford, General Motor Chevrolet, Nissan, Honda, Volvo, Volkswagen )
3U
Trang 31-— Những bộ phận tạo thành se jones co he thong phanh hé thong lam tanh, hé thong acl than xe vũ các tỉnh chất của các bộ phận (một động cơ dung tich 4.6 8, 12 cylinder)
b OWL
b.1 Giới thiệu
OAVL là một ngôn ngữ định nghĩa và khơi tạo các web ontology Một ontology được
- dựng bằng OWL gồm các mô tà về các lớp, các thuộc tính và các thể hiện
(instanee) của một miền trí thức [3]
OWL co tinh mo, tức là, các mô tà của các tài nguyên không bị giới hạn trong một tệp tin hay mot pham vi cu the nao, Mot lop Cl ban dau dau được định nghĩa trong ontology c6 tén 1a O1, no co thé durge mo rong trong nhicu ontology khac b.2 Cau trie cia OWL ontology
© Khong gian tén (Namespace) Ss
Các không gian tên được viết như các URI va két thic bing
mot ontology VỀ rượu, có không gian tên là: hp:/NAVW.AW
“rdfS:comment> Văn bản giải thich </rdfs:comment>
b.3 Cae phan nv co ban ctia Ontology
© Cae lap (class)
Lop là thanh phan co ban nhat trong mot OWL ontology Trong OWL, méi mét lop là mot the hi¢n cua lop owl:Chass
30
Trang 32
Xuất rượu) như sau; ZowbCliss THẾ HD Winery? +
© Cae ca thé (dndividuals)
Để bộ sung cho các lớp, tạ tiếp tục mô tạ các thành viên (thế hiện) của chúng, Ví dụ
*CentralCoastRegion” là tên một vùng sạn xuất rượu cụ thể, Do đó, nó phải là một cá thẻ của lớp Region: =Recgion rdÈlD "CentrilCoastRegion”
Ví dụ
nteaer Thude tinh *hasAge’ là thuộc tính kiêu dữ liệu Nó liên kết cá thé Matthew voi mot s6 nguyên (xsd:imteger) có giá trị "2
Matthew Gemma Thuộc tính "hasS¡ster` là một thuộc tính kiếu đối tượng Nó liên kết cá the Matthew va
ca the Gemma Matthew co chi gai 1a Gemma
€ Sử dụng OWL, để xây dựng Ontolosy về mẫu thiết kế
ẻ dược mô tả bói các đặc trưng chính sau: tên máu, sự phân loại
ng ứng
Mỗi một mẫu thiết kế
mẫu, mục dịch của mẫu, tên gọi khác (nẻu có), lý do phát triên mẫu, khả
Trang 33Patterns, co eae thude tinh nh
+ nameOfPattem (tiên của niàu)
alseKnownAs (tên gọi khúc của niệu, nêu có)
hasClassifieaHons đoại của mẫu): Kiểu Instance co domain 1a lop Patterns va range 1a lop Pattern Catalogs da gia ti, Moi thé hién trong
lop Patterns chi co quan he hasClassifications voi the hign trong lop Pattern Catalogs
+ intent (mue dich cua mau)
+ motivation (ly do phat tren mau)
+ hasParticipants (các thành phản tham gia vào mẫu): kiểu Instance co domain 1a lop Pattems va rar
+ consequences (cdc kết qua dat được)
+ applicability (khả năng ứng dụng của mẫu)
+ hasRelatedPatterns (các máu liên quan): kiêu Instance có domain và
range déu 1a lop Patterns, da gid tri, Moi thể hiện trong lớp Patterns chỉ
có quan hệ hasRelatedPatterns với thê hiện trong chính lớp Patterns + knownUses (ví dụ về các ứng dụng thực tế đã sử dụng mẫu) PatrernCatalog, voi cdc thuộc tỉnh:
+ nameO!PatternCatalog (tên của nhóm mẫu); kiểu Sưing, đơn giá trị, + intent (mue dich eta thanh phan mau): kiéu String don gid tri + isClassificationOf (1a phân loại của mau .): kiéu Instance co domain 1a lop Pattern_Catalogs va range là lớp Patterns, da giả trị
Participants, \6p các thành phần mẫu, với các thuộc tỉnh:
+ nameOfParieipant (tên của thành phần mẫu
Trang 34
Protege: 1a mot phan mem micn phic oid nvuon mo, Protege cung cap cho cong dong người đụng khap the gidv mot ho cone cude say dame cde mo hinh mien va eae tng dụng tri thie vot ontology Prot dược phát triển tại đại học Stanford, California,
hp; protcpe.sinmford.cdu/dlow nload rele:
BeCNE,
Protége được thiết kế chuyên biệt cho tiên trình phát triển ontology No due sit dung
đề tri, thiết kế và lưu trữ các ontology dược thê hiện bằng OWL,
trong cầu trúc mẫu và môi quan hệ giủ
trực quan của DPLIb
Hinh 10 Mot mo hinh wire quan vé DPLib
Trong hình trên, các lớp (các cá thể của các lớp) được mỏ tạ băng các hình chữ nhật có chú thích tên lớp (tên cá thể), Môi quan hệ
Trang 35teed the nhin trye quan cu the ve ting phan ty cua Ontology va mor quan he gitra các phần tử này
Ă©Ÿ Triển khúi và khai thác DPLib
© fat DPLIb len mang tai dia chi RL ha định san
De co thé phat tnén DPLib ngày cảng phone phú về số lượng và chất lượng các mẫu thiết Kẻ, chúng tú tận dụng uu di¢m cua OWL Tà ngôn ngữ để xây dung Ontolo: thẻ chỉa sẽ trên mạng, Khí xây dung DPLib ta can chi ra dia chi URL ma ta s lên mạng ở bước này
«— Cụp nhật và khai thác DPEth
ở tải hồ
Chúng tạ có thể cập nhật và tìm kiểm các mầu từ DPLib theo một trong hai cách: Cách 1: Tại DPLib về máy tính cá nhân và tích họp vào công cụ Protége Protége
Cach 2: Ching ta khai thắc trực tiếp các mẫu từ trên mạng, Theo cách này chúng tạ cần triển khai hệ thông hỗ trợ lưu trữ và truy vẫn mẫu trong đó sử dụng cả công cụ cập nhật và Ông cụ truy
84
Trang 36cả những mẫu thiết Kể mít chúng tạ đã tạo rà hoặc thủ thập được để làm phong phú và
tl chật lượng của DPLTb, Chúng tú có thế xây dụng nhiều Ontol khác nhìu vẻ
mau
dong fant quen man, tine va tay ra vi mot trot
phái được cập nhật thường xuyên đẻ số lượng mẫu được sử dụng là tôi da
[rong điệu Kiện hiện tại, chúng ta có thể khái thác DPLTb theo cách một đã trình bảy ở trên, Nhưng đề thực hiện đề đàng thao tác Jira choi mẫu và tiết kiêm chỉ phí cũng như tầng hiệu qua cua thao tác Miva chọn máu thì danh sách mẫu ứng viên thụ được sau thao tác tìm và lấy ra phải đủ nhỏ và sắt với các vấn đề cần giải quyết và đó là ưu điểm của cách thứ hai
a OWL-QL (Ontology Web Language — Query Language)
OWL-QL là ngôn ngữ truy vẫn cho OWL ontology OWL-QL được giới thiệu như là ngôn ngữ, giao thức chuận cho tác nhân truy van (may khach - client) va tae nhan tra lời (máy chủ - server) sử dụng để tạo nên hộp thoại truy vắ n= tra loi trên các cơ Sở trì thức/omoloey được thê hiện bang OWL Trong đó các đối tượng nhận tín và các đổi tượng truyền tin có thể chuyên các câu truy vận và trả lời thông qua Internet OWL-
QL, cũng cấp sự mô tả chính thức vẻ các môi quan hệ ngữ nghĩa giữa các truy vẫn đáp
án và các cơ sở trí thức được sử dụng đề sinh ra đáp ấn, Nhóm nghiên cứu về OWWL-
Ol thuộc trường Dại học Stanford = - California’ - Hoa Ky