软件工程项目库设计与开发

软件工程项目库设计与开发

【摘要】本文基于知识图谱来结合B/S程序进行一个软件工程的学习方案,在多数计算机学校的研究生中,不少一部分属于专硕,那么在进行web程序开发时,与本科不同之处在于,程序的开发已经不是个人的工作,必须要掌握软件工程的理论和知识,那么一个软件工程项目库的建设就有助于学生的项目开发整体观。

【关键词】知识图谱;javaweb;软件工程;智能推荐

1知识图谱的基本思想

在人工智能的发展中,众多分支已经兴起,知识图谱作为人工智能最后一个兴起的领域,作为中文检索得关键手段之一,也逐渐地被人们所关注起来。其主要目的是尽可能地详细描述现实世界中实体与实体之间的联系。在知识图谱中包含的节点有实体,语义类,内容,属性,关系。在其中有一种三元组是知识图谱的通用表达方式,即为(实体1-关系-实体2),它的体系结构如图所示。

2知识图谱思想在软件工程项目库开发中的应用

在专硕研究生的软件工程课程中,学生在开发软件的同时,必须掌握牢固的软件工程知识,要在心中熟记开发文档的重要性,这不可避免的是学生需要阅读大量的文档和这些文档对应的实际项目程序代码。我们由此便产生了项目库与知识图谱的结合,在一个研究生准备做一个方面的项目时,他会在项目库中搜索相关的文档和程序,那么这里的搜索就会显示该方面的有关文档和相关的程序,我们主要的工作是利用知识图谱作为搜索引擎的主要手段为该学生显示他想要的内容,同时更为重要的是该项目库可以根据用户的搜索记录来只能推荐相关主题的文档和程序。程序会根据用户的搜索记录来形成一个搜索主题,然后根据该主题在用户进入系统后准确地推荐相关主题文档和程序。这主要依靠后台搭建的知识图谱架构。这样程序既能准确地查询出用户所搜索的文档也能较为合适地推荐出用户这段时期想要阅览的文档和程序。

3项目库系统开发

程序主要采用B/S程序,依靠服务器浏览器模式来运行,项目库的后台采用JavaWeb语言技术,后台框架使用流行的SSH(spring+struts2+hibernate),框架数据库使用mysql8.0。程序主要参照各类文档库的模式,其功能主要分为以下几个模块:用户上传文档,用户对文档进行面向对象分析,自己提取出文档中各部分的主题部分,用户在上传文档的时候需要提交文档各部分的主题,该主题作为知识图谱的实体和关系来进行构建知识图谱,文档和主题都会以字符串形式被存储在数据库中。用户搜索文档与推荐,在用户搜索过程中,我们记录该用户的搜索关键字,当关键字的重复率较高时我们让推荐算法认定这个关键字即为搜索的主题,我们在推荐结果中会利用知识图谱建构的实体与关系模型智能地筛选出相关结果推荐给用户。

4结束语

本文基于知识图谱作为核心去设计和开发了一个软件工程项目库。该系统利用用户提交的文档所提取的各部分主题来建设完整的知识图谱架构,在程序中根据用户的搜索记录来较为准确地推荐出用户在该时期想要的结果,大大地提高了专硕研究生在开发项目时阅读和查询相关文档的效率。有利于专硕研究生提高开发效率和对软件工程的理解程度。

【参赛文献】

[1]基于知识图谱的我国体育场馆研究可视化分析[J].周海旭.中国体育教练员.2018(03).

[2]知识图谱在学科发展分析中的应用[J].李莹,张曙光,刘玉秀.医学研究生学报.2013(08).

[3]大规模知识图谱及其应用研究[J].孙雨生,常凯月,朱礼军.情报理论与实践.2018(11).

[4]浅析图谱在幼儿园语言活动中的运用[J].陈巧立.学园.2018(23).

[5]知识图谱及其在医疗领域的应用[J].张观林,欧阳纯萍,邹银凤,周志锋.湖南科技学院学报.2016(10).

作者:段聪聪 柴世一 单位:河南大学计算机与信息工程学院