ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÁO CÁO MÔN HỌC
BIỂU DIỄN TRI THỨC VÀ ỨNG DỤNG
ĐỀ TÀI:
ONTOLOGY TIẾP CẬN ĐỂ TỰ ĐỘNG PHÂN TÍCH SỰ TƯƠNG
TÁC VÀ CỘNG TÁC TRONG HỆ THỐNG PHẦN MỀM NHÓM
Giảng viên : PGS.TS ĐỖ VĂN NHƠN
Học viên thực hiện : ĐÀM THANH LONG
Mã số học viên : CH1101020
TP.HCM 2012
MỤC LỤC
I. GIỚI THIỆU
Hơn thập kỷ qua, sự gia tăng của hệ thống phần mềm nhóm [28] rằng cho phép quá trình
xử lý cộng tác giữa các thành viên trong một tổ chức xã hội. Các hệ thống phần mềm
nhóm phổ biến nhất là cho phép giao tiếp giữa các người dùng như (forum, chat, mạng xã
hội…). Tuy nhiên, những năm gần đây thấy rằng một sự gia tăng của nhiều hệ thống
phần mềm nhóm phức tạp nó cho phép một nhóm người dùng thực hiện các xử lý cộng
tác điều này dẫn đến việc giải quyết những vấn đề hoặc thực hiện các nhiệm vụ. Ví dụ về
các kiểu hệ thống phần mềm nhóm, định hướng với hoạt động giải quyết vấn đề bao gồm
PSEEs (Process-Sensitive Software Engineering Environments), cho phép một đội ngũ
phát triển phần mềm làm việc cộng tác vào giải quyết các nhiệm vụ bên trong của một
chu kỳ phát triển phần mềm [17]; hệ thống quản lý công việc cho phép các quy trình công
việc giữa những đơn vị khác nhau của một tổ chức kinh doanh thực hiện các dự án toàn
cầu [45]; hoặc hệ thống CSCL (Computer Supported Collaborative Learning) cho phép
một nhóm sinh viên kết hợp cùng thực hiện giải quyết các nhiệm vụ học tập do giáo viên
đề xuất [13].
Song song với việc bùng nổ trong sử dụng hệ thống phần mềm nhóm, một lĩnh vực
nghiên cứu được gọi là phân tích sự tương tác và cộng tác [11] được đưa ra. Lĩnh vực này
được khám phá như làm thế nào để mô tả công việc nhóm được thực hiện bởi người dùng
với các đối tượng khác nhau, chẳng hạn như phát hiện các thiếu sót trong phần mềm
nhóm, cần được sửa chửa bởi các nhà phát triển hệ thống; cải tiến thông tin có sẳn cho
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 2
mỗi người dùng có liên quan đến hoạt động của các thành viên khác hay cho phép các
đánh giá bên ngoài hoặc các nhà phân tích kiểm tra phát triển quá trình cộng tác. Để thực
hiện kiểu phân tích này, một chu kỳ gồm ba giai đoạn được dùng theo sau [12]. (i) quan
sát, nắm bắt các hành động thực hiện bởi các người dùng phần mềm nhóm và lưu trữ các
sản phẩm hoặc các dụng cụ tạo ra để giải quyết các vấn đề hoặc hoàn thành các nhiệm
vụ; (ii) trừu tượng, trong đó tính toán các chỉ số phân tích [10], tức là các biến mô tả các
khía cạnh của công việc nhóm (vd: cộng tác, giao tiếp) hoặc sản phẩm được phát triển
(vd: kích cở, chất lượng) và (iii) can thiệp, trong đó dùng các chỉ số phân tích để tăng
cường làm việc nhóm theo mục tiêu phân tích ví dụ, phần mềm nhóm tương thích các
nhu cầu cần thiết của người dùng hoặc một đánh giá gồm các xử lý công việc cho người
dùng.
Phân tích các hoạt động cộng tác truyền thống với mục đích xác định hiệu quả nhất của
việc cộng tác [14]. Cùng với sự ra đời của hệ thống phần mềm nhóm, nhằm nổ lực để xác
định mối quan hệ giữa loại xử lý cộng tác (kích thước của nhóm, thời gian vào công
việc…) và chất lượng của các kết quả [6]. Tuy nhiên, điều đó khó để đề xuất một quy
trình xử lý tổng quát mà có thể áp dụng được cho mỗi thiết lập cộng tác. Với lý do này,
một số phương thức cho việc đánh giá cộng tác đã được đề xuất [3] và người đánh giá
hoặc các nhà phân tích nên chọn phương thức phù hợp nhất trên mỗi thiết lập cộng tác.
Có vài phương pháp phân tích thường không tự động và chẳn hạn, họ yêu cầu phỏng vấn
với những người dùng phần mềm nhóm để thu được những ý kiến [2]. Ở đây chúng tôi đề
xuất một khung phân tích có thể cấu hình bởi các nhà phát triển phần mềm để thực hiện
một phân tích gồm thiết lập cộng tác tự động.
Kinh nghiệm của chúng tôi trong lĩnh vực phân tích tương tác và cộng tác [12] thấy rằng
các tiến trình trợ giúp người dùng phần mềm nhóm cải tiến kinh nghiệm hợp tác của họ.
Một trong những lợi ích của việc phân tích tiến trình đã được nghiên cứu dựa trên quan
điểm người dùng phần mềm nhóm, đề xuất của chúng tôi là nhằm mục đích đơn giản các
yêu cầu của nhà phát triển để tạo ra các hệ thống phần mềm hỗ trợ các phân tích này. Bên
cạnh đó cho phép các nhà phát triển phần mềm xây dựng một hỗ trợ tính toán để tự động
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 3
các phân tích tương tác và cộng tác một cách dễ dàng hơn, bài viết này đề xuất một
khuôn khổ Ontology mà các khái niệm dựa trên một mức độ trừu tượng cao, hoạt động
cộng tác được hỗ trợ bởi phần mềm nhóm và các giai đoạn phân tích chu kỳ (quan sát,
can thiệp và trừu tượng). Nhiệm vụ của Ontology là khái niệm được các thành phần tham
gia vào phân tích tương tác và cộng tác (chỉ số phân tích, can thiệp…) và xác định ngữ
nghĩa. Tuy nhiên đó là sự cần thiết để tạo một hỗ trợ tính toán cụ thể điều này cho phép
các nhà phát triển phần mềm thực hiện các phân tích (suy luận ra các chỉ số, thực hiện
việc can thiệp…) trong một thiết lập cụ thể. Để làm được điều này trong bài viết mô tả
một cơ sở hạ tầng công nghệ cho phép các nhà phát triển thực hiện tiến trình phân tích
này bằng những mô hình cụ thể. Vậy các Ontology là một phần công việc xác định các
thành phần tham gia vào phân tích tương tác và cộng tác. Từ đó cần thiết để giải quyết
một siêu mô hình mà biểu diễn tính toán có cấu trúc gồm phân tích sự tương tác và cộng
tác.
Bài viết này bao gồm sáu phần bổ sung, phần 2 đưa ra các kiến nghị liên quan đến khái
niểm của việc phân tích tương tác và cộng tác, một số đã được dùng như là một cơ sở để
xây dựng khung Ontology. Phần 3 mô tả đề xuất Ontology về các khái niệm phân tích sự
tương tác và cộng tác. Phần 4 mô tả một đề xuất cơ sở mô hình để tạo ra một hệ thống tự
động thực hiện phân tích các tiến trình tương tác và cộng tác. Phần 5 thảo luận một
trường hợp nghiên cứu trong khuôn khổ làm việc được dùng để thiết lập một tiến trình
phân tích trong SPACE-DESIGN [18]. Phần 6 đánh giá khung đã được trình bày, thảo
luận tính hợp lệ của khái niệm đề xuất và công nghệ hỗ trợ cho việc thực hiện phân tích.
Cuối cùng phần 7 mô tả rút ra kết luận và bài học kinh nghiệm từ công việc được phát
triển và đề xuất hướng tiếp theo.
II. NHỮNG CÔNG TRÌNH LIÊN QUAN
Một số công trình đề xuất khung khái niệm cho các mô hình và hệ thống phát triển phần
mềm nhóm [22, 35, 37, 39, 50]. Mặt dù họ không giải quyết phân tích sự tương tác và
cộng tác, chỉ đưa ra các khái niệm cơ bản có liên quan đến cộng tác (công cụ phần mềm
nhóm, người dùng, nhóm làm việc…) điều đó thì nên đưa tài khoản trong các tác vụ phân
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 4
tích. Ngôn ngữ OWL được dùng rộng rải trong Ontonlogy hơn nữa ngôn ngữ này được
hỗ trợ bởi công cụ WebProtege điều này cho phép người dùng xây dựng các Ontology
cộng tác chẳng hạn, khái niệm của Noguera[42] bằng cách biểu diễn một Ontology trong
OWL, hệ thống cộng tác sử dụng các khái niệm quan trọng (vai trò, quy tắc, giao thức…)
và trọng tâm của sự cộng tác là xảy ra trong các tổ chức xã hội phức tạp bao gồm nhiều
nhóm làm việc. Mặt dù Ontology này kiến nghị không giải quyết tự động phân tích của
sự cộng tác, có thể có ích, ví dụ nhận diện các hành động được hỗ trợ bởi hệ thống phần
mềm nhóm chính vì thế các hoạt động đó cần được phân tích. Trình bày của Duque [19]
xử lý của Ontology này là dùng bắt nguồn từ các log file với thông tin rằng hành động
người dùng mô tả phải được phân tích. Hơn nữa trong trường hợp phân tích này không có
khả năng thực hiện một cách tự động bởi vì sự hỗ trợ của Ontology không bao gồm hết
các tiến trình phân tích này. Liu [38] không khái quát hết hệ thống phần mềm nhóm
nhưng định nghĩa một Ontogly khái quát nguồn tri thức được chia sẽ trong doanh nghiệp
ảo. Những tài nguyên chia sẽ là những thành phần trung tâm trong một tổ chức phức tạp
và luôn được dùng bởi hệ thống phần mềm nhóm.
Gangemi [25] đề xuất sử dụng các mô hình Ontology của một chuỗi hoạt động rằng
người dùng phần mềm nhóm nên thực hiện để đạt được mục đích của vấn đề. Khái niệm
này cho phép một quá trình phân tích bởi vì nó có thể xác định mức độ người dùng theo
sau giới hạn chuỗi các hoạt động. Gallardo [23] xác định khái quát mục tiêu đạt được
thông qua mô hình thiết kế cộng tác. Khái niệm này là mô hình ngôn ngữ UML. Trong
trường hợp này các mục tiêu được chỉ rỏ bằng một tập các yêu cầu ràng buộc. Các hạn
chế hay ngăn cấm trên các quy trình làm việc cộng tác hoặc giải pháp cuối cùng để thực
hiện vấn đề (số lượng tối đa của các thành phần, cấm sử dụng một công cụ cụ thể…).
Các yêu cầu xác định những thuộc tính rằng tiến trình cộng tác hay giải pháp cộng tác
phải đạt được mục tiêu (giải pháp cộng tác bao gồm thuộc tính cụ thể chỉ nhận diện duy
nhất đến các thành phần, nghĩa vụ tham gia bình phẩm giải thích giải pháp được xây
dựng ). Các mô hình khái niệm hóa thông tin nâng cao nhận thức, mô tả hoạt động trong
hệ thống phần mềm nhóm, giúp ích cho việc đánh giá phân tích bởi vì thông tin nhận
thức sẽ làm nhiều thông tin phong phú từ quan điểm việc nghiên cứu đánh giá sự cộng
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 5
tác diễn ra thế nào. Geenberg và Tam [49] thiết kê một lý thuyết khung trong đó xác định
thông tin nào phải xử lý để mô tả những thay đổi được thực hiện người dùng phần mềm
nhóm trong các công việc chi tiết. Babic [4] đi sâu vào khái niệm của nhận thức với một
Ontology nhằm diễn đạt được tiến trình xử lý cộng tác như một hoạt động nơi mà người
tham gia tương tác thông qua việc tính toán hoặc khái niệm trong giải quyết các vấn đề.
Vì vậy phương pháp này được bao quát gồm kết quả vận dụng (thêm thành phần mới,
thay đổi một thành phần…) tiêu tốn của phương pháp được đề xuất [32,36] nhằm cung
cấp nhận thức về sự thiết lặp tương tác trực tiếp giữa các thành viên ( trả lời một câu hỏi,
thay đổi một vai trò trong nhóm ). Vieira [51] làm phong phú về nhận thức với sự diễn
đạt gồm các ngữ cảnh trong mỗi hành động xãy ra. Thông tin theo ngữ cảnh này bao gồm
sự mô tả của nhóm người dùng và vai trò mà người dùng tham gia vào bên trong nhóm.
Gallardo [24] không chỉ tạo một Ontology mà các khái niệm nhận thức gồm hệ thống
cộng tác nhưng họ cũng đề xuất dựa trên một phương thức mô hình để phát triển cơ chế
phần mềm nhằm cung cấp nâng cao nhận thức thông tin. Hơn nữa họ không được tiếp
cận phát triển của sự cộng tác và cơ chế phân tích sự tương tác.
Có một số khung khái niệm khác mà đặc biệt nói lên phân tích sự tương tác và cộng tác.
Họ xác định rằng định nghĩa và các thành phần có liên quan mà cho phép đặt tả các hoạt
động của người dùng theo mục đích phân tích. Như vậy Pedrinaci [43] khái niệm hóa các
tiến trình, nguồn lực và các đối tượng mà nên phân tích để đặt tả các quy trình kinh
doanh trong một môi trường chuyên nghiệp. Barros [9] đã được thiết lập một khung sườn
Ontology dựa trên các khái niệm lý thuyết hoạt động [37] và được diễn tả trong XML.
Ontology này chứa đựng một các phương thức phân loại có sẳn cho việc phân tích để xử
dụng nhằm mục đích nào đó (để phân tích các hoạt động trong việc chia sẽ không gian
làm việc, để phân tích sự tương tác giữa người dùng…). Một khái niệm khác đươc được
chấp nhận [30] với khuôn khổ khái niệm đặc biệt mà thiết lập các quan hệ giữa một số
hình thức được hỗ trợ bởi hệ thống CSCL và các loại hoạt động của người dùng, tiếp tục
trong lĩnh vực hệ thống CSCL, Daradoumis [16] đề xuất một tập các phương thức gồm
phân tích dữ liệu và khai thác E-learning.
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 6
Nhìn lại các khuôn khổ khái niệm, quan sát thấy rằng một lượng đáng kể các đề xuất
nhằm giải quyết các hệ thống khái niệm của phần mềm nhóm, các quy trình giải quyết
vấn đề về cộng tác và nhận thức thông tin. Mặt dù có các khuôn khổ không thực sự giải
quyết các khái niệm về phân tích sự tương tác và cộng tác mà chúng bao gồm các yếu tố
mà cho phép suy luận ra các thành phần chính tham gia vào quy trình giải quyết vấn đề
cộng tác được hỗ trợ bằng phần mềm nhóm và vì thế thiết bị này nên đưa vào một tài
khoản cho việc phân tích các tác vụ. Về các khuôn khổ phân tích sự tương tác và cộng tác
đang hướng đến một kiểu phân tích cụ thể (ví dụ như dựa trên hoạt động lý thuyết, nhằm
thiết lặp mô hình hoạt động, nhằm tính toán một tập cụ thể về các chỉ số phân tích). Do
đó đề xuất của nhóm sau này khái niệm hóa một kiểu phân tích mà việc đề xuất không
được trình bày môt cách khái quát để hướng dẫn các nhà phát triển tự động hóa và các
phân tích phù hợp thông qua một quy trình cộng tác cụ thể. Vì vậy một nhu cầu rõ ràng
cho việc bao gồm khung Ontology để giúp các nhà phát triển trong việc khái niệm hóa
của sự cộng tác và quy trình giải quyết vấn đề với sự hỗ trợ tính toán cho sự phát triển
của hệ thống phân tích. Trong phần tiếp theo người viết mô tả khung sườn Ontology để
phân tích các hoạt động cộng tác được hỗ trợ bằng phần mềm nhóm.
III. NỀN TẢNG ONTOLOGY CHO SỰ PHÂN TÍCH TƯƠNG TÁC VÀ
CỘNG TÁC
Hiện tại, Ontology được dùng trong nhiều lĩnh vực khác nhau (công nghệ phần mềm, cơ
sở dữ liệu, công nghệ tri thức…) và cho các mục đích khác nhau (xử lý ngôn ngữ tự
nhiên, web ngữ nghĩa, thương mại điện tử…). Trong thời đại gia tăng mô hình Ontology,
Jasper và Uschold [31] cung cấp một đặt tả Ontology nhằm cho phép các ứng dụng trong
nhiều lĩnh vực mới. Theo các tác giả “một Ontology có sự đa dạng nhiều hình thức,
nhưng nhất thiết nó phải bao gồm một số điều khoản về từ vựng, và một số đặt điểm kỹ
thuật. Điều này bao gồm các định nghĩa và chỉ số của các khái niệm có liên quan qua lại
được áp đặt có cấu trúc trên các lĩnh vực và hạn chế giải thích về từ ngữ”.
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 7
Trong lĩnh vực công nghệ phần mềm và cơ sở dữ liệu, biểu đồ UML được dùng như là
một kỹ thuật của mô hình Ontology [46]. Một trong những lý do sử dụng biểu đồ UML
trong việc xây dựng Ontology gồm có: sơ đồ UML được hiểu một cách dễ hơn và được
dùng với người dùng mà chưa từng làm việc trên Ontology; có một tiêu chuẩn biểu diễn
hình ảnh cho biểu đồ UML; có hàng loạt công cụ hỗ trợ mô hình biểu đồ UML. [5,15,34]
một phương pháp đề xuất cụ thể làm thế nào dùng biểu đồ UML cho mô hình Ontology.
Theo Gomez-Perez [27] mặt dù các kỹ thuật dựa trên UML không có nghĩa là xây dựng
Ontology cụ thể, chúng có thể hiệu quả cho các mô hình Ontology không chính thống bởi
vì chúng cung cấp một miền tri thức có cấu trúc và hạn chế về nội tại. Tuy nhiên Gomez-
Perez [27] nhấn mạnh rằng mô hình tri thức có thể coi như một Ontology nếu được sự
đồng thuận giữa khoa học và biểu diễn tri thức. Guizzardi [29] chỉ ra rằng biểu đồ UML
có thể dùng như là một ngôn ngữ để thể hiện một lĩnh vực của mô hình khái niệm. Các
tác giả định nghĩa một tập các hướng dẫn để thiết kế Ontology tìm ra các mô hình khái
niệm dùng biểu đồ UML. Nên lưu ý rằng đề xuất [26] tự động chuyển các Ontology
UML chi tiết thành OWL. Do đó Ontology đề xuất dưa trên ngôn ngữ UML có thể dùng
lại bằng chi tiết OWL. Tiếp đó các tiền đề, những khái niệm về Ontology cho phân tích
sự tương tác và cộng tác là một phần được rút trích từ hợp nhất khái niệm được mô tả
trong phần 2 và cũng từ kinh nghiệm trong việc phân tích sự tương tác và cộng tác
[12,19]. Để thực hiện nhiệm vụ được nêu và định nghĩa các điều khoản trong khuôn khổ
Ontology , lưu ý các điều khoản xác định ngữ nghĩa của mỗi ngôn ngữ tự nhiên, liên
quan đến phân loại và mô tả các điều khoản, chúng tôi sử dụng một ký hiệu bán chính
thức bao gồm sơ đồ UML. Các khái niệm và các quan hệ được tổ chức thành 2 Ontology:
Ontology của việc cộng tác và Ontology phân tích sự tương tác-cộng tác. Trước tiên các
thành phần khái niệm Ontology tham gia vào quy trình giải quyết vấn đề cộng tác được
hỗ trợ bằng phần mềm nhóm. Phân tích thứ 2 các khái niệm hóa Ontology theo 3 giai
đoạn (quan sát, trừu tượng, can thiệp) của chu kỳ phân tích sự tương tác và cộng tác
trong hệ thống phần mềm nhóm được trình bày ở trên. Ontology phân tích sự tương tác
và cộng tác gồm thông tin khái niệm bằng Ontology cộng tác vì các phân tích được xử lý
thông tin về sự cộng tác. Tuy nhiên viêc cộng tác Ontology có ích cho việc các đề xuất
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 8
không liên quan đến phân tích tương tác và cộng tác (chẳng hạn như mô hình xử lý cộng
tác, phân loại các hoạt động được hỗ trợ bằng một hệ thống phần mềm nhóm…) vì lý do
này mà Ontology cộng tác và Ontology tương tác-cộng tác được biểu diễn như các
Ontology riêng biệt.
III.1. Ontology cộng tác
Ontogloy này được tạo thành 3 Ontology con (hình 1). (ii) quá trình cộng tác của
Ontology con được thực hiện bởi người dùng (ii) những vấn đề khái niệm Ontology con
và các vấn đề được được đặt tả phải giải quyết bởi người dùng hoặc phải nỗ lực đạt được
mục tiêu và (iii) khái niệm lĩnh vực ứng dụng Ontology con gồm các thành phần mà
người dùng có thể thao tác đưa ra hoặc cũng giải quyết vấn đề.
Quá trình cộng tác Ontology con là một quá trình bao gồm giải quyết một tập các vấn đề
mục tiêu bằng việc xây dựng một tập các giải pháp kết quả mà đó là nhiệm vụ của lĩnh
vực ứng dụng (hình 1).
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 9
Hình 1: việc cộng tác Ontology
Mô hình Ontology bao gồm khái niêm tác vụ như là một đơn vị nhỏ của quá trình cộng
tác để giải quyết một tập con của mục tiêu các vấn đề. Hơn nữa một nhiệm vụ có thể chia
thành nhiều nhiềm vụ con thay vì một dự án hoặc quá trình cộng tác có thể lặp kế hoạch
bằng cách thực hiện chia ra những thứ bật của công việc.Điều này được gọi là một tiếp
cận Breakdown Structure [44] trong quá trình cộng tác được chia riêng biệt trong từng
mục công việc. Các nhiệm vụ này được giám sát một cách dễ dàng. Trong trường hợp
quá trình cộng tác không bao gồm một dự án lớn chẳng hạn như xử lý nhanh các tình
huống có cấu trúc trong một số nhiệm vụ nhỏ (chia các ý tưởng chung, phân loại các ý
tưởng…) đó là cách để thực hiện cộng tác có tổ chức [33]. Khuôn khổ Ontology liên quan
đến hoạt động lý thuyết (ví dụ: bao gồm môt phần ngữ cảnh của quá trình cộng tác, các
công cụ được sử dụng để thực hiện các nhiệm vụ). Đối với việc này quy trình cộng tác
của Ontlogy con gồm các công cụ bao gồm trong hệ thống phần mềm nhóm mà người sử
dụng dùng để giải quyết các nhiệm vụ. Nhóm người dùng sử dụng các cộng cụ được cung
cấp bởi hệ thống phần mềm nhóm để thực hiện các hoạt động nào đó, được đề xuất bằng
mô hình kép [7, 8] có thể đóng góp vào sự tương tác xã hội (hoạt động xã hội) hoặc đề
đưa ra kết quả giải pháp (thực hiện giải quyết vấn đề). Hơn nữa mô hình Ontology phân
loại các hoạt động giải quyết vấn đề (liên quan đến sự tương tác với kết quả giải pháp)
phương tiện hoạt động (là sự thay đổi kết quả các giải pháp) và hành động nhận thức
(không làm thay đổi các tình trạng kết quả giải pháp, nhưng có liên quan đến nhận thức
bên ngoài, thông tin lưu trữ ). Các hoạt động xã hội được phân lớp trong giao tiếp (khi
đó một thông điệp được trao đổi qua lại giữa các thành viên) và phương thức liên quan
đến hành động (không có một đối thoại giữa các thành viên nhưng hành động này được
góp phần vào tiến trình cộng tác). Mặt khác theo đề xuất [51], thông tin ngữ cảnh của
tiến trình cộng tác nên bao gồm một phần của tổ chức, với lý do này mà tiến trình cộng
tác của Ontology con bao gồm một phần khái niệm mà xác định các thành phần gồm
nhóm người dùng tham gia vào giải quyết các nhiệm vụ khác nhau khi họ thực hiện các
hoạt động. Trong quá trình cộng tác được thực hiện bởi một tổ chức mà việc xây dựng
kết quả giải pháp đáp ứng được yêu cầu người dùng, những nhiệm vụ này được xem là
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 10
khá quan trọng và phải được hoàn thành trước. Với lý do đó mà nhiệm vụ phải được kết
hợp nhằm tránh hạn chế khi bắt đầu hoặc kế thúc công việc. Theo khái niệm này một
nhóm bao gồm các nhóm nhỏ khác làm việc với nhau và đưa ra các quy trình làm việc
chung với nhau.
Miền ứng dụng của các Ontology con có các thành phần mà những người tham gia các
hoạt động cộng tác có thể thao tác để xây dựng giải quyết các vấn đề mục tiêu (xem hình
1). Miền ứng dụng được biểu diễn bằng các khái niệm trung tâm (các thực thể) được kết
nối bằng các liên kết (kết hợp) cả hai, thực thể và kết hợp chứa các thuộc tính được định
nghĩa bằng trạng thái của họ ví dụ các kỹ thuật lĩnh vực ứng dụng có thể được định như
là một tập thực thể (cổng logic như: and, or ) được kết nối bằng các kết hợp được truyền
tín hiệu từ cổng này đến cổng khác.
Mục tiêu chính của giải quyết Ontology con là để xác định một khái niệm mà trong đó
các đặc tả và kết quả của quy trình cộng tác được định nghĩa (xem hình 1). Trong một số
trường hợp, một mục tiêu phức tạp được định nghỉa như là một thành phần gồm nhiều
mục tiêu. Theo cách tiếp cận được đề xuất [42] quy trình kết hợp được định nghĩa bằng
một tập các luật được thiết lập chứa hành vi của người dùng hệ thống phần mềm nhóm
giữ vai trò nhất định những gì trong đó. Cụ thể là mỗi mục tiêu được định nghĩa là một
tập các luật được đặc tả mà phải thực hiện cả 2 quy trình cộng tác và kết quả giải pháp.
Mỗi luật liên quan đến một khía cạnh công cụ phần mềm nhóm hoặc những yếu tố thuộc
về một ứng dụng được dùng. Các luật gồm những mô hình Ontology không những chỉ rõ
các chuỗi hoạt động mà còn cho phép giải quyết thành công các mục tiêu, nhưng theo
phương pháp tiếp cận [23] để xác định nhiệm vụ và cấm thì phải được thực hiện trong
quy trình cộng tác. Mục tiêu chính của quy trình cộng tác là người dùng đưa ra một giải
pháp cụ thể giải quyết tất cả các mục tiêu. Đôi khi cũng có thể biết đến như là giải pháp
lý tưởng của quy trình cộng tác thuận lợi, ví dụ như trong môi trường học nơi mà người
thầy đưa ra giải pháp tốt nhất của một vấn đề cho sinh viên giải quyết. Tuy nhiên đó
thường không phải là một giải pháp tốt trong môi trường chuyên nghiệp. Điều này nói lên
rằng các công ty luôn cố gắng tạo ra tập các giải pháp tốt để đáp ứng nhu cầu kinh doanh
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 11
của họ. Mặc dù vậy công ty luôn có một vài tính năng mà giải pháp lý tưởng phải được
đáp ứng, ví dụ như nó không thể bao gồm hết một lượng lớn gồm các thành phần của lĩnh
vực ứng dụng bởi vì chúng rất đắt tiền. Trong những trường hợp các luật cho phép một
trong những tính năng cụ thể nên được hoàn thành. Một luật có 2 trường hợp gồm
Hạn chế: là một giới hạn hay ngăn cấm để ưu tiên trong quá trình giải quyết các vấn đề
mục tiêu ví dụ như một hạn chế cụ thể rằng một phần cứng của một máy tính cá nhân
không thể có nhiều hơn 2 con chip vì giá thành cao.
Yêu cầu: cần xác định nhiệm vụ hoặc cần thiết xác định người dùng phần mềm nhóm
nào nên giải quyết ưu tiên. Yêu cầu có thể mô tả các thuộc tính của các yếu tố hoặc riêng
bản thân nội tại, ví dụ: một yêu cầu xác định rằng người dùng cần phải xây dựng một giải
pháp kết quả đưa ra chính xác của 5 thành phần ứng dụng.
Hơn thế nữa mỗi luật cần bao nhiêu giá trị tham chiếu và cho phép đánh giá đầy đủ trên
đó (ví dụ: giá trị số xác định thời gian tối đa cho phép dùng một công cụ phần mềm
nhóm hay số lượng các thành phần có thể tạo ra một giải pháp kết quả). Cuối cùng vấn
đề mục tiêu Ontology con là giải pháp lý tưởng như là một sản phẩm giải quyết các đề
xuất và đáp ứng được tất cả các yêu cầu hạn chế.
Bảng 1: khái niệm việc cộng tác của Ontology theo bản chữ cái
Khái niệm Mô tả Ontology con
Hoạt động Đơn vị của việc cộng tác (thêm một thành phần được chia sẽ trên bang, gởi
một thông điệp trong cuộc trò chuyện…)
Quy trình cộng tác
Liên đới Kết nối giữa các thực thể Miền ứng dụng
Thuộc tính Giải trị mô tả của một thực thể hoặc liên đới Miền ứng dụng
Hành động nhận thức Là tương tác kết quả giải pháp nhưng không được điều chỉnh Quy trình cộng tác
Tiến trình cộng tác Tiến trình cộng tác giửa người dùng cùng giải quyết vấn đề mục tiêu Quy trình cộng tác
Hoạt động giao tiếp Cho phép trao đổi thông điêp giữa người dùng Quy trình cộng tác
Hạn chế Giới hạn hoặc ngăn cấm các công việc cộng tác hoặc chiết xuất ra kết quả Vấn đè mục tiêu
Miền Thiết lặp các yếu tố cài đặt và liên đới cho phép đưa ra giải pháp để giải quyết
vấn đề. Người dùng được thực hiện các thao tác trên yếu tố miền để xây dựng
các giải pháp.
Miền ứng dụng
Thực thể Các khái niệm trọng tâm của một ứng dụng miền mà có thể cài đặt và kết nối
với miền khác
Miền ứng dụng
Nhóm Thiết lập người dụng vào cùng một quá trình cộng tác Quy trình cộng tác
Phần mềm nhóm Hệ thống công nghệ mà hỗ trợ làm nhóm làm việc Quy trình cộng tác
Ý kiến giải pháp Miền ứng dụng giải quyết các mục tiêu và thay vì đáp ứng được tất cả các luật
đề xuất
Vấn đề mục tiêu
Thực hiện công cụ Thực hiện để thay đổi kết quả giải pháp Quy trình cộng tác
Loai thực hiện Hoạt động được phân loại Quy trình cộng tác
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 12
Luật Điều kiện thực hiện để giải quyết các vấn đề mục tiêu Vấn đề mục tiêu
Mục tiêu vấn đề Đây là một khái niệm trừu tượng nó mô tả thế nào của một quy trình kết hợp
và mô tả các giải pháp lý tưởng
Vấn đề mục tiêu
Giao thức quan hệ Hoạt động điều phối quy trình cộng tác mà không cần thiết lập một đối thoại
giữa người dùng (yêu cầu truy cập để chia sẽ khoản làm việc, tán thành một đề
xuất…)
Quy trình cộng tác
Hành động giải pháp Hoạt động tương tác với giải pháp kế quả Quy trình cộng tác
Yêu cầu Nhiệm vụ hoặc cần phải thực hiện đầy đủ bởi quy trình cộng tác của sản phẩm Vấn đề mục tiêu
Vai trò Được giao trách nhiệm cho người dùng Vấn đề mục tiêu
Giai đoạn Xác định thời gian giới hạn của cộng tác và thành phần nhóm người dùng Quy trình cộng tác
Hoạt động xã hội Cảm nhận bởi các thành thiên của nhóm làm việc nhưng không tương tác với
giải pháp kết quả
Quy trình cộng tác
Kết quả giải pháp Ví dụ của miền ứng dụng được xây dựng bởi người dùng để giải quyết một vấn
đề nào đó
Quy trình cộng tác
Tác vụ Quy trình công tác nhỏ để giải quyết tập con của các vấn đề mục tiêu Quy trình cộng tác
Công cụ Công cụ gồm trong phần mềm nhóm để hỗ trợ thực hiện một số hoạt động Quy trình cộng tác
Người dùng Tham gia vào quy trình cộng tác Quy trình cộng tác
(Bảng 1) thu thập các khải niệm làm việc cộng tác Ontology (hình 1) với một mô tả về
ngữ nghĩa.
III.2. Ontology phân tích sự tương tác và cộng tác
Ontology tạo thành 3 Ontology con (hình 2): (i) quan sát quy trình của Ontology con để
thấy được những thông tin từ hai việc phát triển cộng tác và kết quả của các giải pháp, (ii)
trừu tượng hóa khái niệm Ontology con quy trình suy luận gồm phân tích các chỉ số và
(iii) sự can thiệp của Ontology con các thủ tục mà sử dụng kết quả phân tích, các chỉ số
phân tích, cải thiện việc kết hợp bằng các hoạt động phù hợp
Ontology con quan sát nắm bắt các quy trình và mô hình các hoạt động diễn ra suốt quá
trình cộng tác và kết quả của các giải pháp. Mục tiêu của Ontology con quan sát là kết
hợp, trong quá trình phân tích, các tiếp cận [36] để nắm bắt khái niệm và mô hình hóa
gồm các hoạt động được thực hiện bởi người dùng phần mềm nhóm và [4] xem xét đưa
ra kết quả giải pháp từ việc cộng tác. Với điều này tiến trình quan sát (xem hình 2) thông
tin nhận được từ tất cả các hoạt động được thực hiện trong suốt quy trình cộng tác.
Những thông tin này được dùng để xây dựng mô hình hoạt động mà gồm các mô tả được
đặc tả trong mỗi hoạt động. khi một hoạt động tương tác với các sản phẩm được xây
dựng bên dưới, mô hình hoạt động kèm theo một biểu diễn của sản phẩm (mô hình sản
phẩm). Sau khi nắm bắt được quy trình và mỗi mô hình hoạt động kết thúc, người quan
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 13
sát gửi những mô hình để cập nhật, việc này được đưa vào lưu trữ trong nhật ký. Như vậy
có các hoạt động biểu diễn liên tục và quy trình kết hợp của các sản phẩm.
Quy trình của Ontology con trừu tượng là suy ra một tập những chỉ số phân tích các đặc
tả của tiến trình cộng tác và kết quả giải pháp tổng quát được tạo ra bởi người dùng (xem
hình 2). Khái niệm theo sau là một cách tiếp cận giống như [16], trong đó gồm các
phương pháp để suy các chỉ số phân tích cộng tác. Tuy nhiên khái niệm cộng tác
Ontology con của chúng tôi từ mức độ trừu tượng cao và không bao gồm các phương
pháp mức độ thấp hay các kỹ thuật để tính toán hoặc suy luận ra các chỉ số phân tích cụ
thể. Đặc biệt Ontology con trừu tượng thông tin được chọn lọc trong giai đoạn quan sát
như đầu vào (Intput) và đưa ra các chỉ số đặt trưng cho cả 2 quá trình làm việc được phát
triển bởi người dùng nhóm phần mềm và kết quả đầu ra (Output) vì thế cho phép họ được
phân tích. Một chỉ số phân tích được thiết lặp bởi các giá trị cụ thể mà có thể xảy ra bằng
mục địch của nó. Các chỉ số định lượng chỉ có thể đưa ra giá trị số, các chỉ số định tính
không thể đưa ra giá trị số. Ví dụ như một chỉ số chi phí mà đếm được các thành phần
trong lĩnh vực ứng dụng được sử dụng để xây dựng một sản phầm (đây là mục tiêu) và có
3 giá trị rời rạc (thấp, trung, cao). Một tập những chỉ số có thể được dùng để suy ra một
chỉ số mới. Chỉ số mới này là chỉ số bậc cao bởi vì nó dựa vào các chỉ số khác. Bởi vì
chúng không chỉ dựa vào các chỉ số khác, các chỉ số bậc thấp được tính toán đơn giản
trong việc xử lý thông tin được lưu trữ trong nhật ký.
Sự can thiệp của Ontology con là một quá trình bao gồm các chỉ số suy luận với mục tiêu
cuối cùng của việc cải thiện việc cộng tác. Để xây dựng Ontology con này, đề xuất [12]
làm cơ sở, trong đó đưa ra 6 chiều để đặc tả mỗi sự can thiệp. (i) khi có sự can thiệp diễn
ra (ii) các điều kiện để thi hành các sự can thiệp (iii) hình thức của sự can thiệp (tương
thích giao diện người dùng, hiển thị lời khuyên…) (iv) mục tiêu của sự can thiệp (v) nơi (
đưa ra sự chia xẻ, diễn đàn…) trong đó can thiệp thực hiện và (vi) thông tin dùng để xen
vào ( giá trị của các chỉ số, nội dụng của một thông điệp tư vấn…). Theo 6 chiều thì
Ontology con tạo nên khái niệm của nó (xem hình 2) cụ thể là khi các cơ chế được cải
thiện thì quá trình cộng tác cần được kích hoạt (điều này thường xác định các loại hoạt
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 14
động hoặc xác định thời gian trôi qua). Các điều kiện cần thiết để can thiệp trong hoạt
động cộng tác thường bao gồm kiểm tra những giá trị của các chỉ số phân tích; chi tiết kỹ
thuật (hình thức) làm thế nào can thiệp vào trong quá trình cộng tác (hiển thị lời khuyên,
thay đổi không gian làm việc, tương thích với giao diện người dùng…);
Hình 2: cộng tác và tương tác của Ontology
Đối tượng người dùng nhận các hành động can thiệp; các địa điểm hay cộng cụ từ hệ
thống phần mềm nhóm nơi mà sự can thiệp sẽ được thực thi; và văn bản can thiệp với
những thông tin cần thiết để can thiệp. Bảng 2 thu thập các khái niệm của Ontology phân
tích sự tương tác và cộng tác với một mô tả ngữ nghĩa, theo thứ tự bảng chữ cái.
IV. CÔNG NGHỆ HỖ TRỢ FRAMEWORK
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 15
Chúng tôi trình bày công việc để khái niệm về phân tích sự tương tác và cộng tác trong
hệ thống phần mềm nhóm. Thời điểm này chúng tôi tiếp cận những thách thức của khái
niệm này để tự động thực hiện các quy trình phân tích (hình 3) trình bày các chức năng
chính của một hệ thống phân tích được đồng bộ hóa với một hệ thống phần mềm nhóm.
Chúng tôi phân biệt giữa 4 giai đoạn trong việc đồng bộ hóa. Giai đoạn đầu tiên là người
dùng truy cập vào hệ thống phần mềm nhóm và bắt đầu một phiên làm việc; chổ này sẽ
tự động thông báo đến hệ thống phân tích để bắt đầu quy trình phân tích. Giai đoạn thứ 2
những người dùng thực hiện các hành động của họ trong hệ thống phần mềm nhóm
truyền đạt thông tin mô tả mỗi hành động (tên hành động, người dùng thực hiện nó). Khi
hành động được thực hiện kết quả của giáp pháp là kết quả của việc thực hiện hành
động…) để hệ thống phân tích. Giai đoạn thứ 3 thông tin này được phân tích bằng hệ
thống phân tích để suy luận thành các chỉ số và xác định sự can thiệp. Giai đoạn thứ 2 và
3 là một phần trong suốt tiến trình kết hợp. Trong giai đoạn thứ 4 người dùng hoàn thành
hoạt động cộng tác và tình trạng này được giao tiếp bởi phần mềm nhóm để hệ thống
phân tích.
Bảng 2: Các khái niệm về phân tích sự tương tác và cộng tác Ontology, theo thứ tự chữ
cái
Khái niệm Mô tả Ontology con
Trừu tượng Quá trình ghi lại dữ liệu log vào Input và đưa ra các chỉ số để phân tích quy trình
kết hơp và cho ra các giải pháp Output
Trừu tượng
Mô hình hoạt động Một hoạt động xảy ra trong mô hình Quan sát
Ký hiệu Biến mô tả một vài khía cảnh của các hoạt động được thực hiện như: thời gian, loại
hoạt động, tên người dụng của việc thực hiện nó….
Quan sát
From Sự can thiệp thường liên quan về việc cung cấp thông tin trong form tư vấn, đề
nghị hoặc trực quan các chỉ số phân tích, tuy nhiên sự can thiệp của form khác (để
đáp ứng giao diên của phần mềm nhóm, tạo các công cụ kết hợp mới có sẳn ) có
thể được cụ thể
Can thiệp
Chỉ số Biến đặc tả một vài thuộc tính gồm quy trình cộng tác hoặc kết quả giải pháp Trừu tượng
Sự can thiệp Tiến trình để cải tiến quá trình cộng tác được phát triển bằng người dùng phần mềm
nhóm
Can thiệp
Nhật ký (log) Nơi lưu trữ với các mô hình hoạt động và các sản phẩm được tạo bằng quá trình
cộng tác
Quan sát
Theo dõi Quá trình ghi lại và các hoạt động được thực hiện với nhau của các sản phẩm Quan sát
Vị trí Công cụ, không gian làm việc hoặc khu vực hệ thông phần mềm nhóm nới mà sự
can thiệp diễn ra
Can thiệp
Sản phầm mô hình Biểu diễn cho một kết quả sản phẩm từ quy trình cộng tác Quan sát
Mục đích Xác định khía cạnh được phân tích bởi các chỉ số báo (phân chia các tác vụ, số
lượng công việc thực hiện…)
Trừu tượng
Định tính Giá trị hằng số mà indicator thay đổi Trừu tượng
Định lượng Số giá trị mà indicator thay đổi Trừu tượng
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 16
Can thiệp văn bản Văn bản gồm các thông tin cần để thực hiện các can thiệp Can thiệp
Trigger Gồm xảy ra một hoạt động hoặc hết hạn một thời gian cụ thể từ bắt đẩu của quá
trình cộng tác, gọi thực thị một cơ chế can thiệp
Can thiệp
Cập nhật Tiến trình lưu trữ hoạt động được thực hiện bởi người dùng, bao gồm cả mô hình
kết quả sản phầm của tiến trình cộng tác
Quan sát
Mục tiêu người dùng Những người tham gia của tiến trình cộng tác nhận sự can thiệp Can thiệp
Giá trị Mỗi chỉ số có một giá trị hoặc giá trị định lượng cho việc giả thích chính nó Trừu tượng
Hình 3: Giao tiếp giữa phần mềm nhóm và hệ thống phân tích
Hệ thống phân tích phải được thiết lập bởi các nhà phát triển để xác định các hành động
cần được phân tích, các chỉ số phân tích như thế nào cần được tính toán và những can
thiệp nào cần được thực hiện. Hơn nữa nhà phát triển phần mềm nên sửa đổi hệ thống
phần mềm nhóm để giao tiếp với hệ thống phân tích và hỗ trợ các biện pháp can thiệp.
Để làm được điều này, phần sau sẽ mô tả một mô hình dựa trên cách tiếp cận để thực
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 17
hiện quá trình quan sát của hoạt động người dùng, suy ra các chỉ số phân tích và cuối
cùng thiết lập các biện pháp can thiệp.
IV.1. Mô hình tiếp cận để thực hiện một quá trình phân tích
Theo truyền thống, phát triển phần mềm từ việc mô tả các cấu trúc của mô hình và hành
vi của hệ thống được xây dựng. Hiện nay, mô hình phát triển MDD/MDE (Model-Driven
Development/Model-Driven Engineering) xem xét các mô hình phần mềm không chỉ là
mô tả các yếu tố nhưng cũng như các thành phần tính toán mà xử lý để tự động hóa hệ
thống phần mềm [41]. Nhóm quản lý đối tượng [47] đề xuất một kiến trúc nơi mà các mô
hình được biểu diễn một mức độ trừu tượng cao. Sau đó họ đang dần chuyển đổi thành
nhiều mô hình cụ thể với mức độ trừu tượng thấp hơn và chi tiết hơn. Cuối cùng phần
mềm cần thiết được tạo ra để đáp ứng yêu cầu người dùng. Hình 4, minh họa các mức độ
của kiến trúc này.
Tầng cao nhất của kiến trúc là metametamodelling. Một ngôn ngữ metametamodelling
gồm các thành phần cơ bản để xác định một ngôn ngữ (các lớp hoặc khái niệm, quan hệ
giữa họ…) như vậy, ngôn ngữ Ecore bao gồm các thành phần sau.
Eclass: được dùng để biểu diễn lớp metamodel. Lớp biểu diễn là một yếu trọng tâm hoặc
khái niệm trong một lĩnh vực. Mỗi trường hợp có tên, không hoặc nhiều thuộc tính và
không hoặc nhiều tham chiếu.
EAttribute: được dùng để biểu diễn một thuộc tính của metamodel. Các thuộc tính được
xác định bởi một tên và một kiểu dữ liệu.
EReference: được dùng để biểu diễn cho các lớp là nguồn hay kết hợp mục tiêu. Mỗi kết
hợp có môt tên, một thuộc tính bool để chỉ tham chiếu đến nơi biểu diễn, và một con trỏ
đến lớp biểu diễn.
EDataType: biểu điễn kiểu dữ liệu thuộc tính, một kiểu dữ liệu có thể nguyên (integer,
real, ) hoặc tương đương với một kiểu đối tượng ( string, date, )
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 18
Hình 4: tầng mô hình kiến trúc
Kiến trúc tầng M2 (hình 4) là tầng Metamodelling. Một metamodel được định nghĩa rõ
ràng trong một giá trị mô hình gồm mô hình ngôn ngữ nhất định [48]. Trong trường hợp
này nhiệm vụ của metamodelling được xác định bằng ngôn ngữ Ecore, mô hình cấu trúc
được biểu diễn, một tiến trình phân tích cho việc này cấu trúc metamodel được biểu diễn
các thành phần chính tham gia vào phân tích tương tác và cộng tác và các khái niệm
trong mô hình Ontology trước đó. Tại thời điểm này đó là lý do tại sao chúng tôi không
dùng các Ontology hình thức mà có thể tự động hóa các quy trình và do đó cho phép
chúng tôi tránh được việc tính toán metamodel được tạo ra, lưu ý rằng một đề xuất
Ontology trình bày ở đây là một đề xuất toàn diện các khái niệm về phân tích sự tương
tác và cộng tác từ một mức trừu tượng cao và không đề xuất cụ thể các kỹ thuật toán học
hoặc trí tuệ nhân tạo để tính toán các chỉ số phân tích. Vì vậy đề nghị tiếp cận ở đây
không theo cách tiếp cận Ontology DOLCE [40] trong đó miền biểu diễn được giới hạn
đến các đối tượng cụ thể mà không có trượng hợp và thực thể phổ biến nào mà bản thân
chúng không được tổ chức và đặc tả. Đề xuất của chúng tôi là một Ontology tổng quát ví
dụ: không hạn chế tự do của các nhà phát triển để chọn kỹ thuật suy luận và những chỉ số
phù hợp nhất trong mỗi trường hợp. Vì vậy nó cần xác định các metamodel tính toán làm
phong phú mô hình Ontology với kỹ thuật để tính toán phân tích các chỉ số.
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 19
Đây cũng yêu cầu lý do tại sao chúng tôi không trực tiếp đề cập đến thiết kế của các
metamodel, những Ontology trước đó thiếu. Aßmann [1] lý giải cho quyết định này bằng
tập luật mà các Ontololy đóng một vai trò quan trọng trong kiến trúc metamodelling để
thực hiện môt yêu cầu phân tích cho phép chúng tôi biết được những thành phần trong
mô hình. Các Ontology là một giá trị kết quả bởi vì họ cung cấp nội dung khái niệm và
ngữ nghĩa trong miền lĩnh vực về phân tích sự tương tác và cộng tác trong hệ thống phần
mềm nhóm. Nếu không có công việc trước đó, thì khó biết được những thành phần nào
cần được tính toán để thực hiện phân tích.
Tầng kiến trúc M1 (xem hình 4) là mức độ mô hình hóa. Một mô hình được trình bày một
phần thực và một điển hình của metamodel. Trong đề xuất của chúng tôi, các mô hình
biểu diễn cho một phần thực sự tham gia vào quy trình phân tích sự tương tác và cộng
tác. Để kích hoạt các tác vụ gồm mô hình định nghĩa theo các metamodel, khung sườn
bao gồm miền cụ thể ngôn ngữ (DSLs). DSL được chế tác bằng công cụ xử lý cho phép
những nhà phát triển phần mềm mô hình hóa trong phân tích sự tương tác và cộng tác.
Những công cụ xử lý đã được xây dựng bằng cách dùng mô hình khung Eclipse (EMF)
trong những tính năng nổi bật bao gồm hỗ trợ cụ thể cho các metamodels Ecore và thực
thi các công cụ xử lý cho phép cài đặt các mô hình tương ứng.
Framework gồm DSLs để mô hình hóa miền ứng dụng, các vấn đề mục tiêu, quan sát và
giai đoạn can thiệp [20, 21]. DSL quan sát gồm các yếu tố để xác định các hoạt động và
phân loại theo nguyên tắc của các hoạt động được đề xuất trong quy trình Ontololgy con.
Framework gồm 2 DSLs để mô hình giai đoạn trừu tượng, đầu tiên cho phép mô hình hóa
các quy trình để tính toán chỉ số định lượng và thứ 2 cho phép mô hình hóa để suy ra các
chỉ số định lượng. Các hoạt động định lượng có 3 kiểu dựa vào thông tin định lượng của
chúng: (i) thời gian dành cho người dụng phần mềm nhóm thực hiện một số hoạt động
hay số lần xuất hiện. (ii) số lượng các loại cụ thể của các thành phần miền ứng dụng được
dùng trong xây dựng sản phẩm và (iii) số lượng luật gồm vấn đề mục tiêu được thực hiện
hoặc chưa thực hiện (hình 5) trình bày một ví dụ về sự trừu tượng hóa định lượng bằng
công cụ phù hợp. Các công cụ của famework gồm dãy cộng cụ nơi mà nhà phát triển có
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 20
thể chọn lựa các yếu tố để khởi tạo lớp metamodel (hình 5) cho thấy nhà phát triển có thể
xác định các chỉ số định lượng, đếm số lần xuất hiện của một hoạt động cụ thể hay thời
gian để thực hiện, tên các hoạt động, những người tham gia các hoạt động, vài trò người
dùng thực hiện các hoạt động và công cụ phần mềm nhóm để hỗ trợ hoạt động. Các chỉ
số thông kê miền ứng dụng cụ thể trong giải pháp có thể quy định. Hơn nữa công cụ cho
phép định nghĩa của các chỉ số thành luật của vấn đề mục tiêu được thực hiện hoặc chưa
thực hiện. Cuối cùng giá trị mà các chỉ số nhập vào là các hàm tính toán ( cộng, trừ,
nhân, chia, %, số học và độ lệch tiêu chuẩn) đưa ra một chỉ số mới. trong ví dụ (hình 5)
có chứa 2 chỉ số low-level: NSeconds tính bằng giây của nhóm trong suốt hoạt động cộng
tác và NAction đếm các hoạt động thực hiện bởi nhóm. Mô hình này cũng bao gồm một
chỉ số mức độ cao NMessages là kết quả trong chat và gửi thông điệp trong diễn đàn
(xem NForumMessages và NChatMessages trong hình 5).
Hình 5: công cụ cho mô hình trừu tượng có định lượng
Các kỹ thuật để suy ra các chỉ số phân tích định tính được tiếp cận dưa trên nguyên tắc và
các quy tắc có cấu trúc như sau:
If [Quantitative_Indicator
a
có giá trị [a, b],
Quantitative_Indicator
b
có giá trị [c, d]… và
Quantitative_Indicator
z
có giá trị V
z
] then [suy ra
NewQuantitative_Indicator với giá trị NV]
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 21
Tiền đề được tạo thành những giá trị mà các tập định lượng hoặc các chỉ số định lượng
trước đó đã được kích hoạt theo quy tắc và trong cách này chỉ số định tính mới được suy
ra như là một hệ quả để áp dụng các quy tắc. Các giá trị mà chỉ số định lượng cần được
biểu diễn bằng môt khoảng cách giới hạn với lower () và upper (). Các giá trị của những
chỉ số định tính được biểu diễn bằng một giá trị duy nhất. Một ví dụ (hình 6) cho thấy
một fragment của mô hình trừu tượng về định tính quy định bằng cộng cụ tương ứng.
Công cụ này bao gồm các chức năng để biểu diễn luật (->) các chỉ số về định lượng, định
tính (hình 6) chúng tôi quan sát thấy định nghĩa quy tắc R
1
cho việc suy luận về một chỉ
số giao tiếp định lượng. Luật R
1
gán giá trị Low về chỉ số giao tiếp. Để kích hoạt luật R
1
điều cần thiết mà các câu hỏi về chỉ số định lượng có giá trị trong phạm vị [0-100] và trả
lời câu hỏi về chỉ số định lượng có một giá trị trong pham vi [2-15]. Chúng tôi quan sát
thấy rằng một chỉ số về hoạt động định lượng được xác định. Luật R
2
gán một một giá trị
Very Low để kích hoạt chỉ số định lượng. Để kích hoạt luật R
2
điều cần thiết là các chỉ số
giao tiếp định lượng có một giá trị Low và các phiên bản chỉ số định lượng có giá trị nằm
trong phạm vi [0-200].
Kiến trúc tầng M
0
(xem hình 4) là tầng đối tượng. Ở tầng này, một tập của các yếu tố
được đưa vào. EMF cho phép xin ra mã nguồn JAVA phù hợp với mô hình hệ thống.
trong đề xuất của chúng tôi những yếu tố này là một phàn của một hệ thống phần mềm
mà tự động phân tích sự cộng tác và tương tác được hỗ trợ bằng phần mềm nhóm. Bây
giờ, nhà phát triển cần thực hiện thêm một số mã nguồn bằng tay. Được mô tả bước mới
trong phần sau.
IV.2. Thiết lặp phân tích
Sau khi trình bày phương pháp tiếp cận của chúng tôi để lấy được mô hình từ đề xuất
Ontology, điều này cần thiết để cung cấp cho nhà phát triển phần mềm với một tập các
hướng dẫn. Những hướng dẫn này cần giải thích làm thế nào sử dụng framework trong
thiết lập và thực hiện mỗi giai đoạn của tiến trình phân tích (trừu tượng, quan sát, can
thiệp).
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 22
IV.2.1. Thiết lặp quan sát
Đề tự động hóa quá trình phân tích sự tương tác và cộng tác, nhà phát triển phải xác định
các hoạt động, nhiệm vụ và lĩnh vực ứng dụng của giải pháp kết quả được quan sát. Nhà
phát triển cần thực hiện các cuộc phỏng vấn với các chuyên gia trong lĩnh vực ứng dụng
và loại hoạt động kết hợp để biết những hành động, nhiệm vụ và giải pháp kết quả có liên
quan từ quan điểm phân tích.
Các công cụ gồm trong framework cho phép những nhà phát triển phần mềm xác định
mô hình quan sát mà đỉnh nghĩa các hoạt động và các nhiệm vụ nên được phân tích.
Framework bao gồm một công cụ để mô hình hóa các thành phần gồm những lĩnh vực
ứng dụng [20]. Tuy nhiên nhà phát triển nên thực hiện các thao tác sau đây bằng tay:
Nắm bắt sự kiện: Nhà phát triển phải thực hiện các tính năng viện dẫn của phương pháp
phân tích hệ thống (yêu cầu bắt đầu một quá trình phân tích, yêu cầu phân tích một hành
động hoặc yêu cầu để hoàn thành phân tích). Điều này nhà phát triển phải thực hiện các
chức năng nắm bắt các hoạt động sản xuất trong hệ thống phần mềm nhóm và giao tiếp
với hệ thống phân tích.
Lưu trữ các kết quả giải pháp: Nhà phát triển phải thực hiện một tính năng mà tạo ra
một đặc tả XML gồm kết quả giải pháp được xây dựng bởi những người sử dụng phần
mềm nhóm điều này framework cung cấp một lượt đồ tài liệu XML định nghĩa có cấu
trúc mà kỹ thuật này phải tuân theo.
Như vậy, framework phân tích có thể được áp dụng cho các hệ thống phần mềm nhóm có
mã nguồn có sẵn và nó có thể được sửa đổi để nắm bắt các sự kiện và để lưu trữ kết quả
các giải pháp trong định dạng XML.
IV.2.2. Thiết lặp trừu tượng
Nhà phát triển cũng nên xác định quy trình suy ra các chỉ số để phân tích các hoạt động
cộng tác. Nhà phát triển cũng nên thực hiện các cuộc phỏng vấn với các chuyên gia trong
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 23
các hoạt động cộng tác để biết được vai trò, yêu cầu, khó khăn trong cộng tác và những gì
là có ích. sau đây các mô hình bên dưới được thể hiện cụ thể:
Mô hình mục tiêu vấn đề: Nhà phát triển dùng công cụ cho mô hình hóa các mục tiêu vấn
đề để xác định các yêu cầu và các hạn chế được thực hiện bởi những người sử dụng phần
mềm nhóm. Mô hình này cần được thuyết minh để cho phép một phạm vi phân tích mà
người dùng thực hiện các luật bao gồm trong mô hình này.
Hình 6: công cụ cho mô hình trừu tượng về định tính
Mô hình trừu tượng định lượng: Nhà phát triển dùng công cụ cho mô hình định lượng
trừu tượng (xem hình 5) để xác định làm thế nào tính toán các chỉ số xác định lượng
người dùng cộng tác.
Mô hình trừu tượng định tính: Nhà phát triển sử dụng công cụ cho mô hình trừu tượng
định tính (xem hình 6) để xác định những luật suy ra các chỉ số định tính phân tích người
dùng cộng tác.
Nhà phát triển không nên thực hiện mã nguồn vì công nghệ framework tạo ra các mã
nguồn gồm các tính năng tính toán bằng mô hình trừu tượng hóa.
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 24
IV.2.3. Thiết lặp can thiệp
Cuối cùng, nhà phát triển xác định các tình huống trong đó các hành động can thiệp nên
được thực hiện. Với mục đích này framework bao gồm một công cụ để mô hình hóa hoạt
động can thiệp và hệ thống giám sát [21] có tính năng tự động hóa các hoạt động can
thiệp ảo hóa thông tin (giá trị các chỉ số, thủ thuật,…). Tuy nhiên trong trường hợp nơi
mà sự can thiệp liên quan đến các loại hoạt động khác (sửa đổi giao diện người dùng hệ
thống phần mềm nhóm, thực hiện một hành động trong hệ thống phần mềm nhóm, ) nhà
phát triển nên cung cấp một tính năng cụ thể thực hiện sự can thiệp bởi vì framework chỉ
cho giao tiếp khi sự can thiệp này cần thực hiện nhưng không có khả năng sửa đổi các hệ
thống phần mềm nhóm.
V. TRƯỜNG HỢP NGHIÊN CỨU
Phần này mô tả một trường hợp nghiên cứu trong đó mô tả quá trình thực hiện bởi một kỹ
sư phần mềm để khởi tạo các mô hình phân tích của framework và làm thế nào để trình
bày các mô hình hỗ trợ tính toán tổng quát (xem hình 4) cho phép thực hiện quy trình
phân tích sự tương tác và cộng tác. Trường hợp nghiên cứu này thực hiện phân tích sự
tương tác và cộng tác trong SPACE-DESIGN (hình 7) mục đích chung của hệ thống phần
mềm nhóm mà các hỗ trợ mô hình thiết kế đồ họa sử dụng đồng bộ hóa cộng tác và được
thiết lập để hỗ trợ mô hình hóa lượt đồ UML. SPACE-DESIGN tích hợp các công cụ để
hỗ trợ thiết kế đồ họa của mô hình cộng tác.
Phần (hình 7a): cho thấy hình ảnh của các thành viên tham gia trong giai đoạn làm việc
và tên của họ được viết cùng màu như có liên quan.
Whiteboard (hình 7b): đây là không gian chia sẽ làm việc nơi mà người dùng xây dựng
các mô hình cộng tác để giải quyết các vấn đề được đề xuất.
Thanh công cụ của các thực thể (hình 7c): bao gồm miền ứng dụng thực thể mà người
dùng có thể đưa vào Whiteboard.
Báo cáo môn biểu diễn tri thức và ứng dụng Trang 25