硕士论文网第2020-11-12期,本期硕士论文写作指导老师为大家分享一篇
软件工程文章《软件工程专业知识库本体的构建与应用》,供大家在写论文时进行参考。
本篇论文是一篇软件工程硕士论文范文,根据需求分析的要求完成了 KPBSE 本体构建设计书的内容。在 KPBSE 本体的分析阶段,确立了以“数据结构”、“离散数学”、“算法设计与分析”、“计算机操作系统”、“计算机组成原理”、“计算机网络”和“数据库系统概论”为第一版本的软件工程专业知识点库,并根据各课程的知识体系运用 Protégé4.2 工具在 KPBSE 本体设计阶段完成了本体类、关系、属性和实例的设计。
第 1 章 绪论
1.1 研究背景与意义
当下,我们正身处于高速发展的互联网时代,随着多媒体技术、数字化技术、信息技术等各种高新技术的诞生与发展,社会生活网络化程度日益加深,相比传统渠道,数字化网络资源的优势日益显现,诸如获取便捷、内容全面、开放分享、保存持久等等。因此,无论工作、学习、还是日常生活,人们获取信息资源的方式越来越多的倾向于数字化网络资源。 随着这种趋势的发展,在教育领域,许多高校都在借力网络,着力打造具有自己特色的网络教育平台,将本校各专业各学科的优秀教育资源共享在网络平台上,实现网络化学习的教育改革。 与此同时,软件工程专业作为计算机学院的重要专业,也在进行着与时俱进的改革,从最初的建设特色学科,到现在的建设先进网络资源平台,软件工程专业利用自己的学科优势,综合使用学科内数学、硬件和软件等方面的知识搭建现代化网络资源平台,实现文档、PPT、视频等学习资源的网络集中共享。 目前的学习资源的存储大多还是以传统的数据库作为强大的后台资源库支撑,将一条资源分割为由最小粒子的数据项组合而成的数据记录形式进行存储,各记录之间的关系简单,多以外键的方式进行关联,对客户提出的请求进行基于关键字匹配的全库检索,有些可能会采用数据挖掘算法进行关联性搜索,但二者均会由于数据自身的组织方式欠缺语义含义而导致检索结果差强人意:基于关键字的检索方式虽能够实现精确搜索,但弊端是不能检索出相似结果甚至该关键字的同义词结果;基于数据挖掘算法的检索方式虽比单纯地基于关键字的检索方式的检索结果更全一些,却仍然存在漏检情况,不能挖掘全部信息。 所以如何构建一个好的领域知识组织模型,使得该领域内的知识表达高度统一、资源有效共享、机器能够进行理解和解析,达到对用户请求的检索结果全而准的效用就显得尤为迫切。语义网(Semantic Web)的出现解决了基于传统数据库存储的数据检索结果不全的问题。语义网是一种智能网络,能实现知识表示的统一、共享和重用,并具有语义信息,能够对数字化网络资源进行“思考”和“推断”,达到人与计算机间的“人性化”沟通,大幅改善查询的针对性和有效性,提高检索结果的查全率和查准率,强化知识共享程度。 本体(ontology)技术,是语义网中实现语义表达的核心技术,可通过对知识进行建模来达到丰富的语义表现。本体能够很好地解决知识表示和知识组织的问题,因此,本文将采用本体技术来创建大学本科软件工程专业领域的知识点库,将专业内的重要课程知识点抽取出来,利用本体在知识描述方面的优势构建语义知识信息系统,弥补传统数据库技术在知识点覆盖范围局限和知识关系表示模糊方面的缺陷,建设现代化的网络资源平台,推动软件工程专业网络资源建设智能化的进程,促进软件工程专业学科的发展。
1.2 研究目标与内容
目前,基于本体的软件工程专业知识点库的构建在国内鲜有实施,本文将利用本体论方法,结合软件工程专业的学科特性来构建软件工程专业的知识点库,同时将构建好的知识点库运用于一个本专业的在线学习系统,将基于本体的检索结果与基于数据库的检索结果进行对比,验证知识点库本体在网上学习系统中的查询优势。 本文的具体研究内容如下: (1)分析软件工程专业的学科特点和课程体系结构,指出不同课程中知识点间存在关联关系,确定构建知识互联的知识点库所要使用的相关本体技术。 (2)结合当前软件工程专业的学科发展情况,提出适用于软件工程专业知识点库(KPBSE)的本体构建方法,并给出具体构建流程,采用本体建模工具加以构建实现。 (3)开发软件工程专业的在线学习系统,根据本体中的关系设计知识点排序和推理规则,将知识点库本体应用于学习系统中,验证知识点库本体在学习系统中的知识点学习和试题练习方面的查询优势。 本论文分六个章节来探讨软件工程专业知识点库的构建和应用。文章第一章为绪论部分,主要分析了目前软件工程专业网络资源建设情况和教育领域本体的研究现状,指出了软件工程专业知识点库的构建对该领域教育资源建设的重要意义,点明了本论文的研究目的和研究内容。第二章介绍软件工程专业的学科特点和课程体系,指出课程间的知识存在关联性和建立一个知识共享、统一的学科专业知识点库的必要性;并从理论和开发的角度探讨了本体技术及其应用。第三章至第五章是本文的重心,系统阐述了软件工程专业知识点库的构建方法、构建过程以及应用开发。第三章结合软件工程专业学科的实际情况,提出了软件工程专业知识点库的构建方法,并详细介绍了构建的流程。第四章以提出的构建方法为指导,采用 Protégé 本体构建工具建设实现了软件工程专业的知识点库,并给出了建设效果图。第五章设计并实现了基于软件工程专业知识点库的在线学习系统,使用推理规则验证了本体在学习系统中的查询优势。第六章是全文的最后章节,对本文的研究和实施工作进行了总结,并对后续改进工作进行了展望。
第 2 章 软件工程专业学科分析与本体技术
2.1 软件工程专业学科特点
软件工程学科的定义有很多种,表述各有不同,但其蕴含的内容是基本相同的。在此引用其中的一种来进行介绍。《计算机科学技术百科全书》对该学科的定义是:应用计算机科学、数学、工程科学及管理科学等原理开发软件的工程。 由上述定义可以了解到,软件工程对于专业能力要求很高,必须掌握多种不同专业领域的知识,并在此基础上综合运用,进行软件开发、维护等。基于软件工程专业的特点,各大高校参考国内外教学经验制定了自己的教育目标,大体上要达到以下效果:培养学生良好的专业学科素养,掌握计算机软件、硬件、网络等基本理论和技能,成为较高专业能力的实用人才。 为此,各大高校均设置了自己的课程体系,大体可分为学科基础课和学科专业课。本文参照武汉理工大学的软件工程专业教育培养方案,给出软件工程专业的课程体系结构如下图 2.1 所示。其中,学科基础课是从事计算机行业所必须具备的专业基础,主要培养学生对计算机软件、硬件和程序设计的实际动手能力,课程包含离散数学、数据结构、计算机组成原理等;学科专业课培养该专业的学生所需具备的特质能力,是区别于其他专业的重要标志,主要培养学生对软件项目的管理和规划能力,课程包含软件工程导论、软件需求工程、软件项目管理等。 通过上图也可再次看出,软件工程专业的学科分类实际上将该专业所学的知识从整体上划分为两类,一类是软件开发类的,一类是项目管理类的,二者的内部课程间具有紧密联系,具有很强的知识点承接特点。 上一节介绍了软件工程专业的课程设置,从中可以看到软件工程专业的课程科目很多,而且进行了详细的划分,这是因为软件工程专业的课程体系本身存在有自己的特点:从课程角度来说,每门课程都有自己的偏向重点;从整个专业角度来看,其涵盖了多门课程,囊括许多知识点,各课程间彼此具有不同程度的知识点联系与交集。 软件工程专业的课程在知识组织上具有前后关联性,某些课程的某些知识点是其他一些课程的先修知识点,只有掌握了先修课程中的知识才能更好地学习当前课程。例如,要学习数据结构课程则必须先掌握离散数学课程中的集合论、数理逻辑、图论等知识,这样才能深入理解四种数据存储结构间的异同以及基本算法设计思想,同时对于数据在内存中的存储则需要计算机组成原理的相关知识来配合;要学习算法设计与分析课程则需要先学习数据结构课程,否则在对算法的设计思想以及存储结构的理解方面存在知识空区。
2.2 本体技术
万维网(World Wide Web)自上世纪 80 年代诞生以来,极大地颠覆了人们的传统交流方式和商业运作方式,改变了交流靠书信电话、商业运作靠面对面谈判的落后局面,使得足不出户地完成交流、谈判、购物和了解世界成为现实,是计算机发展至今对人类生活最大意义的改变。Web 从诞生到现在经历了基于 HTML网页获取点击流量的 Web1.0 时代,以用户参与网站制造、网站间信息相互交互为特点的 Web2.0 时代,和今天的以实现资源共享为目的的 Web3.0(即语义网)时代。下图形象化地表现了 Web1.0、Web2.0 和 Web3.0 的各自特点和开放程度,从图中可以看出,随着时间的发展,Web 的开放程度越来越大,个性化和多元化需求更加显著。 语义网(Semantic Web)这一名词概念最早是由万维网联盟创始人 Tim Berners-Lee 提出的,它是一种智能网络,能够对网上资源进行“思考”和“推断”,达到数据间的互联和语义共用,最终达到人与计算机间的“人性化”沟通,实现智能化网络的应用目标。语义网在结构上大体由元数据、资源描述框架和本体几个部分组成,它的核心是通过给互联网上的文档添加元数据来实现数据间的语义通信。其中,元数据是描述数据的数据,具有语义共享性;资源描述框架用于描述网络资源,提供一种主(Subject)、谓(Property)、宾(Object)三元组形式的数据存储结构;本体提供概念、概念关系以及概念属性的定义,为语义网的语义推理提供基础。 本体(Ontology)最初是一个哲学概念,后被 Neches 等人引入人工智能领域,并赋予了它在计算机领域的新定义,目前被广泛认可的是 Studer 等人提出的 “本体是共享概念模型的明确的形式化的规范说明(An ontology is a formal, explicit specification of a shared conceptualisation.)”。根据定义,我们可以得出本体的一些主要特点:①公共词汇集,提供该领域人员都认可的词汇库;②数据结构,提供数据组织的合理结构;③清晰化隐含术语,暗含语义清晰的数据组织结构来实施推理;④语义互操作,通过对元数据的解释和转换以达到数据间的语义互操作。因此,我们在构建本体时,应遵循以下五个基本规则:(1)清晰性;(2)一致性;(3)最大单调可扩展性;(4)编码偏好程度最小;(5)本体约定最小。 一个本体在组织结构上一般由以下四部分组成:类、类间关系、类属性和实例。本体类之间呈现继承性的层级关系;不同的类具有代表自我特点的不同的数据属性;不同类之间具有不同的关系属性,描述两者之间的特定联系,以实例的形式表现出来;每个类能够定义属于自己的若干个体实例,就如面向对象编程思想中的类与对象。
第 3 章 软件工程专业知识点库本体构建方法
3.1 本体规划阶段
3.2 本体分析阶段
3.3 本体设计阶段
3.4 本体形式化阶段
3.5 本体评估阶段
3.6 本体维护阶段
3.7 本章小结
第 4 章 软件工程专业知识点库本体的构建实现
4.1 KPBSE 本体规划
4.2 KPBSE 本体分析
4.3 KPBSE 本体设计
4.4 KPBSE 本体形式化
4.5 本章小结
第 5 章 基于软件工程专业知识点库的在线学习系统
5.1 系统需求分析
5.2 系统总体设计
5.3 系统数据设计
5.4 知识点推理查询设计
5.5 系统实现
5.6 本章小结
第 6 章 总结和展望
本文在语义网和本体的相关理论和技术支持下,结合软件工程专业学科领域课程知识的特点,分析并给出了基于本体的软件工程专业知识点库的构建方法,并构建了基于本体的软件工程专业知识点库,最后将该知识点库应用到本专业的在线学习系统中。 文章首先分析了当前软件工程专业的网络资源建设情况和教育领域本体的发展情况,指出目前还没有一种基于本体的软件工程专业知识点库存在,点明了本文的研究价值;然后分析了软件工程专业的课程体系和课程特点,说明软件工程专业中某些课程的知识点间存在关联,结合这种特定的学科特点,给出了软件工程专业知识点库的构建方法,设计了具体构建流程,并运用 Protégé工具加以实现;最后采用 Structs+Spring+Ibatis 框架构建了一个 B/S 模式的软件工程专业在线学习系统,将知识点库应用于该系统中,运用 Jena 解析查询技术实现了知识点的关联查找和推理,验证了本体在学习系统中的查询优势。 本文的主要贡献在于: (1)对软件工程专业的学科课程体系进行了分析和探讨,对该专业下不同科目间存在的相关或相似知识点进行了分析说明,指出了构建一个语义丰富的软件工程专业知识点库来实现不同课程间知识互联的重要性; (2)结合软件工程专业的学科特点,给出了软件工程专业知识点库本体的构建方法,采用 Protege4.2 设计并实现了知识点库本体的构建,实现了课程间知识点的互联和共享; (3)以知识点库本体为底层数据支撑,在传统网上学习系统的基础上结合Jena 技术和推理规则,构建并实现了具有知识点拓展功能的在线学习系统,改变了学生对知识点的孤立理解,达到了启发式的学习效果,体现了本体在学习系统中的查询优势,提高了查全率; (4)软件工程专业知识点库本体的构建和应用为软件工程专业网络教育资源的建设和应用开发提供了技术参考,对网上学习系统的发展起到了推动作用,同时也促进了软件工程专业学科的发展。 本文研究并构建了基于本体的教育领域软件工程专业知识点库,同时利用Jena 技术和推理规则实现了本体在网上学习系统中的应用,使得构建的本体得到了检验和运用,但仍存在一些不足和尚需改进之处: (1)本文只是构建了一个小型的软件工程专业知识点库,还未包含该领域的全部知识,需要在后期的维护阶段升级到新版本; (2)本文采用手工的方式完成了软件工程专业知识点库的构建,在后期进化阶段,可以考虑采用机器学习的方法来发掘本体概念,以自动或半自动的方式扩充本体,实现本体进化; (3)为了提高本体在应用系统中的应用效用,需要进一步设计更加丰富的推理规则,满足学生多样化的学习需求。
以上论文内容是由
硕士论文网为您提供的关于《软件工程专业知识库本体的构建与应用》的内容,如需查看更多硕士毕业论文范文,查找硕士论文、博士论文、研究生论文参考资料,欢迎访问硕士论文网软件工程栏目。