Đại Học Quốc Gia Tp. Hồ Chí Minh TRƢỜNG ĐẠI HỌC BÁCH KHOA LÊ NGUYÊN VINH QUẢN LÝ TRI THỨC TRONG DOANH NGHIỆP PHẦN MỀM ỨNG DỤNG CHO CÔNG TY PHẦN MỀM DDS VIỆT NAM Chuyên ngành HỆ THỐNG THÔNG TIN QUẢN LÝ (60 34 48) LUẬN VĂN THẠC SĨ TP.HỒ CHÍ MINH,Tháng 12 năm 2011 CÔNG TRÌNH ĐƢỢC HOÀN THÀNH TẠI TRƢỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TPHCM Cán bộ hướng dẫn khoa học :TS.Quản Thành Thơ. (Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1 :TS.Nguyễn Thanh Bình. (Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2 :TS.Nguyễn Chánh Thành.
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày. Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ) 1. Xác nhận của Chủ tịch Hội đồng đánh giá LV và Bộ môn quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có). Chủ tịch Hội đồng đánh giá LV Bộ môn quản lý chuyên ngành TRƯỜNG ĐH BÁCH KHOA TP.
HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM PHÒNG ĐÀO TẠO SĐH Độc lập - Tự do - Hạnh phúc ____________________ _______________________ Tp. HCM, ngày tháng năm 2011 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên:Lê Nguyên Vinh. Ngày, tháng, năm sinh: 26/11/1983 .HCM Chuyên ngành: Hệ Thống Thông Tin Quản Lý. TÊN ĐỀ TÀI: Quản lý tri thức trong doanh nghiệp phần mềm.
Ứng dụng cho công ty phần mềm DDS Việt Nam. NHIỆM VỤ VÀ NỘI DUNG: Tìm hiểu về quản lý tri thức trong công nghệ phần mềm Nêu ra các vấn đề xảy ra trong doanh nghiệp phần mềm cần hỗ trợ của quản lý tri thức (công ty DDS Việt Nam) Xây dựng các yêu cầu của hệ thống quản lý tri thức phần mềm SKMS (software knowledge management system) Xây dựng ontology phục vụ cho hệ thống SKMS III. NGÀY GIAO NHIỆM VỤ(Ngày bắt đầu thực hiện LV ghi trong QĐ giao đề tài):04/07/2011 IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 2/12/2011 V.
CÁN BỘ HƢỚNG DẪN:TS. Quản Thành Thơ CÁN BỘ HƢỚNG DẪN CN BỘ MÔN CN KHOA (Học hàm, học vị, họ tên và chữ ký) QL CHUYÊN NGÀNH QL Chuyên Ngành TS. Quản Thành Thơ PGS, TS Đặng Trần Khánh -i - LỜI CÁM ƠN Trước tiên, tôi xin được gửi lời cảm ơn đến quý Thầy Cô của trường Đại học Bách khoa TP. HCM đã trang bị cho tôi những kiến thức quý báu trong thời gian tôi học cao học ngành Hệ thống Thông tin Quản lý.
Xin đặc biệt cảm ơn TS. Quản Thành Thơ, người hướng dẫn khoa học của đề tài. Thầy Thơ đã định hướng cho tôi trong việc nghiên cứu khoa học, người đã rất tận tình và nhiệt tâm hướng dẫn tôi hoàn thành đề tài. Xin chân thành cảm ơn TS.Nguyễn Thanh Bình và TS.Phạm Chánh Thành đã có những đóng góp quý báo trong quá trình phản biện của đề tài.
Sau cùng, tôi xin gửi lời cảm ơn đến tất cả những người bạn, những người đồng nghiệp… đã tận tình hỗ trợ và giúp đỡ, góp ý cho tôi trong suốt thời gian học tập và nguyên cứu đề tài. Lê Nguyên Vinh -ii - TÓM TẮT Luận văn sẽ trình bày về cách tiếp cận hệ thống quản lý tri thức trong công nghệ phần mềm dựa trên nền tảng của semantic web. Thông qua các vấn đề thực tế thường hay xảy ra tại công ty DDS, luận văn phân tích nhu cầu cần phải xây dựng hệ thống quản lý tri thức hỗ trợ cho hoạt động sản xuất phần mềm. Tiếp đó, luận văn sẽ đưa ra các yêu cầu cho hệ thống và bước đầu xây dựng ontology cho hệ thống, cũng như nêu vai trò của ontology trong hệ thống quản lý tri thức trong doanh nghiệp phần mềm.
Các từ khóa: knowledge management, software engineer, semantic web, ontology -iii - ABSTRACT This thesis will present an approach of knowledge management system on software engineering based on the Semantic Web technology. Motivated by some real problems which commonly occur in on DDS Vietnam, we analyze the need of having a knowledge management system supporting activites and processes in software engineering. Subsequently, the thesis will define the requirements of a knowledge management system in software engineering and construct the system ontology accordingly. We have also clearly shown the role played by this ontology in the system once applied in some practical situations.
Keywords: knowledge management, software engineer, semantic web, ontology -iv - MỤCLỤC LỜI CÁM ƠN. iv DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT. vii DANH MỤC HÌNH ẢNH. ix CHƢƠNG 1 GIỚI THIỆU ĐỀ TÀI.
Các nhu cầu thiết yếu của việc quản lý tri thức trong công nghệ phần mềm(Ioana Rus and Mikael Lindvall, 2002)[2]. Nhu cầu về kinh tế:. Nhu cầu về tri thức:. Nhu cầu về cộng tác từ xa:.
Hoạt động phần mềm tại công ty DDS Việt Nam. Giới thiệu công ty DDS Việt Nam:. Các công cụ hỗ trợ cho hoạt động phần mềm tại DDS:. 6 CHƢƠNG 2 CƠ SỞ LÝ THUYẾT.
Cơ sở lý thuyết về quản lý tri thức. Đặc tính của tri thức:. Quản lý tri thức:. Tri thức và vấn đề học tập trong tổ chức.
Công nghệ phần mềm:. Quản lý tri thức trong công nghệ phần mềm. Giới thiệu về ontology. Web ngữ nghĩa .2 Vòng đời của Ontology.
Phương pháp xây dựng Ontology. OWL – Web Ontology Language .1 Khái niệm OWL.2 Cấu trúc của OWL .3 Các phần tử cơ bản. 24 CHƢƠNG 3 PHƢƠNG PHÁP NGHIÊN CỨU. Phân tích nhu cầu tại công ty phần mềm DDS Việt Nam:.
Mô hình nghiên cứu .1 Mô hình hệ thống quản lý tri thức của Probst: .2 Các nghiên cứu về ứng dụng web ngữ nghĩa trong công nghệ phần mềm 31 3. 32 CHƢƠNG 4 TRIỂN KHAI MÔ HÌNH. Các vấn đề tại công ty phần mềm DDS cần quản lý tri thức. Đặc tả yêu cầu hệ thống quản lý tri thức SKMS theo mô hình Probst (theo mục 3.
Xác định các tri thức. Thu nhận tri thức:. Phát triển tri thức:. Phân bổ tri thức:.
Sử dụng tri thức:. Bảo quản tri thức:. Các biện pháp đo lường tri thức:. Kiến trúc hệ thống SKMS đề xuất theo mô hình ODA:.
Vai trò của ontology trong hệ thống SKMS. Xây dựng System ontology cho hệ thống SKMS. Đặc tả ontology:. Thông tin chung về ontology:.
61 ĐÁNH GIÁ SYSTEM ONTOLOGY. Vai trò System ontology trong các tình huống cụ thể tại DDS Việt Nam. Khảo sát đánh giá của nhân viên DDS Việt Nam về System Ontology. Thực hiện khảo sát:.
Kết quả khảo sát:. 66 CHƢƠNG 6 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN. Hướng phát triển. vii KHẢO SÁT PHẢN HỒI Ý KIẾN VỀ SYSTEM ONTOLOGY TẠI DDS VIỆT NAM.
vii PHỤ LỤC II. xi LÝ LỊCH TRÍCH NGANG. xii -vii - DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT Thuật ngữ (viết tắt) Giải thích Artefact Một loại sản phẩn được sinh ra trong quá trình phát triển phần mềm. Nó có thể bao gồm use case, lược đồ lớp, các tài liệu, các yêu cầu phần mềm, các kế hoạch dự án,… Software Artefact Một loại của artefact liên quan trực tiếp đến hoạt động phần mềm, đó là source code và component Annotation/Anotate Chú thích trên các đoạn text bằng cách sử dụng metadata được lưu trữ ở phần tách biệt.
Công việc này thường thấy ở các web ngữ nghĩa. Knowledge Artefact Thuật ngữ được gọi chung cho các dữ liệu được trích xuất từ các artefact được dùng cho hệ thống quản lý tri thức. World Wide Web Consortium Tổ chức tiêu chuẩn quốc tế về web trên internet ( W3C) Software Engineering Body of Tập các từ khóa mô tả tất cả các lĩnh vực trong Knowledge (SWEBOK) công nghệ phần mềm do tổ chức IEEE định nghĩa. Institute of Electrical and Tổ chức không lợi nhuận rất có uy tín về vấn đề Electronics Engineers (IEEE) phát minh và công nghệ Source Code Các đoạn mã nguồn dùng để viết chưogn trình phàn mềm Component Các thành phần dùng trong một chương trình phần mềm, để phần mềm có thể chạy và biên dịch được nếu trong các đoạn Source Code có tham chiếu đến Bug Các lỗi phần mềm được phát hiện bởi nhân viên kiểm thử.
Semantic Web Enabled Tổ chức nghiên cứu về các lĩnh vực ứng dụng web Software Engineering ngữ nghĩa trong công nghệ phần mềm (SWESE) -viii - Metadata Siêu dữ liệu: dữ liệu dùng để mô tả dữ liệu, hỗ trợ trong việc tìm kiếm và suy diễn tri thức trên dữ liệu BA Nhân viên phân tích nghiệp vụ QC Nhân viên kiểm thử DEV Nhân viên phát triển (lập trình, thiết kế) -ix - DANH MỤC HÌNH ẢNH Hình 1.1 Quy trình xử lý phần mềm tại DDS .2 Request trong Ticket system .3 Xem các thảo luận trong Request .4 Task trong ticket system .5 Bug trong TFS .6 Changset trong TFS .1 Mô hình dữ liệu, thông tin và tri thức .2 Mô hình chuyển đổi tri thức .3 Kiến trúc Semantic Web .4 Vòng đời của Ontology .1 Mô tả các thành phần chính của hệ thống quản lý tri thức.2 Kiến trúc ứng dụng dựa trên Ontology của W3C .1 Kiến trúc SKMS đề xuất theo mô hình ODA (hình 3.2 Các khối thông tin cần mô hình cho hệ thống .3 Quy trình tạo metadata và các liên kết, mô phỏng theo tài liệu của Dhruv[23].4 Kiến trúc ontology tổng quát .5 Mô tả ka:KnowledgeArtefact và các subclass kế thừa .6Mô tả source code ontology .7 Business Entity Ontology .8 Software Engineering Ontology .9 Quan hệ giữa các ontology ở tầng nội dung .10 Các lớp trong Event ontology .11 Mô hình cấu trúc role trong Organization ontology .12 Mối liên kết giữa các lớp trong Content ontology và Organization ontology .13 Mối liên kết giữa các lớp trong Content ontology và Interaction ontology .14 Mối liên kết giữa các lớp trong Interaction ontology và Organization ontology .15 Cấu trúc phân chia vật lý System Ontology .1 Chia sẽ lỗi phần mềm trong SKMS dựa trên System Ontology .2 Tìm thông tin các dữ kiện phần mềm liên quan nhân viên .3 Tìm kiếm các thông tin liên quan trong hệ thống SKMS dựa trên System Ontlogy .4Mô tả quá trình phát hiện vấn đề và tìm giải pháp. 65 -1 - CHƢƠNG 1 GIỚI THIỆU ĐỀ TÀI 1. Giới thiệu Công nghệ phần mềm cũng giống như các nghành khác, đó là một lĩnh vực sản xuất mà doanh nghiệp luôn tìm cách để tăng khả năng cạnh tranh. Nâng cao năng suất và chất lượng là hai yếu tố thành công của phát triển phần mềm.
Quản lý tri thức có khả năng hỗ trợ hai yếu tố này bằng cách tích hợp các công cụ quản lý tri thức trong quá trình phát triển phần mềm.