摘要随着软件规模的不断扩大、软件演化周期的不断延长,构建软件项目知识图谱对软件维护、软件开发的意义越来越重大。如何基于软件项目开发过程中产生的源代码、邮件列表、缺陷报告等多源异构大数据,快速构建语义关联丰富的软件知识图谱,是软件工程领域亟待解决的关键问题。提出了以代码结构为核心的软件知识图谱模型,建立了“知识抽取-知识融合”两层软件知识图谱构造框架,该框架支持软件项目知识图谱的自动构造以及基于知识图谱的软件项目智能问答,有效提高了软件项目理解和软件复用的效率。目前,软件项目知识图谱已经在Apache开源社区以及国内著名软件企业成功展开应用实践。

关键词软件复用 ; 软件知识图谱 ; 软件知识抽取 ; 知识问答

1 引言

软件复用可以提高软件开发的效率和质量。但随着现代软件规模的不断扩大和复杂度的日益提高,复用一个软件项目越来越难。软件项目在其整个生命周期中形成并积累了大量的数据,如源代码、邮件列表、缺陷报告和问答文档等。这些数据中蕴含了规模庞大、结构复杂、语义关联丰富的软件知识,能够帮助软件开发人员理解软件功能,进行软件复用。然而,组织、利用这些知识面临着以下挑战。

● 软件规模扩大引发的软件知识爆炸问题。随着软件规模的扩大和软件复杂度的提高,在软件开发与复用中需要理解与掌握的知识越来越多,开发者的学习成本越来越高。

● 软件数据中蕴含的信息在多源异构数据中呈碎片化分散的形态。在一个软件项目中,

基于大数据的软件项目知识图谱构造及问答方法相关推荐

  1. 大数据智能洞察、知识图谱、数据可视化技术

    智能五大技术方向 知识工程 面向垂直行业,结合专家知识.多源异构的碎片化知识和组织智能,引领从大数据分析到大知识工程进而大智慧系统的研发和落地应用.构建行业知识图谱,实现智能推理与知识服务,推进多机多 ...

  2. 大数据方向学习面试知识图谱

    正所谓,无招胜有招. 愿读到这篇文章的技术人早日明白并且脱离技术本身,早登彼岸. 一切技术最终只是雕虫小技. 大纲 本系列主题是大数据开发面试指南,旨在为大家提供一个大数据学习的基本路线,完善数据开发 ...

  3. 计算机毕业设计之SpringBoot+Vue.js+WebMagic电商数据分析 电商大数据 电商数据采集系统 电商大屏 大数据毕业设计 电商知识图谱

    需求 近5年电商企业社会责任数据,数据可视化 (1) 社会责任数据 (2) 电商企业:(30家左右的数据即可) 1-10名:阿里巴巴.美团点评.拼多多.京东.小米集团.滴滴.贝壳找房.京东健康.阿里健 ...

  4. 【Spark+Hadoop+Hive+MySQL+Presto+SpringBoot+Echarts】基于大数据技术的用户日志数据分析及可视化平台搭建项目

    目录 1.项目概述 1.1.项目背景 1.2.项目流程 2.功能需求描述 2.1.系统功能组成 2.2.数据描述 2.3.功能描述 2.3.1.流量概况分析 2.3.2.日新日活分析 2.3.3.交互 ...

  5. 实训——基于大数据Hadoop平台的医疗平台项目实战

    文章目录 医疗平台项目描述 数据每列的含义 数据分析业务需求 架构图 成果图 环境搭建 医疗平台项目描述 本次项目实训的目的是创建一个基于医疗行业问诊的通用数据分析平台.该平台立足于医疗行业背景,以采 ...

  6. 基于大数据技术之电视收视率企业项目实战(hadoop+Spark)

    基于大数据技术之电视收视率企业项目实战(hadoop+Spark) 网盘地址:https://pan.baidu.com/s/1bEeSB1Y9nmjzctnbJMcBkg 密码:dohg 备用地址( ...

  7. Java语言开发在线美食推荐网 美食推荐系统 基于用户、物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis框架 人工智能、大数据、机器学习项目开发

    Java语言开发在线美食推荐网 美食推荐系统 基于用户.物品的协同过滤推荐算法实现 SSM(Spring+SpringMVC+Mybatis框架 人工智能.大数据.机器学习项目开发FoodRecomm ...

  8. Springboot毕设项目基于大数据的毕业生去向追踪系统8lrp3java+VUE+Mybatis+Maven+Mysql+sprnig)

    Springboot毕设项目基于大数据的毕业生去向追踪系统8lrp3java+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 ...

  9. Springboot毕设项目基于大数据平台的个性化图书推荐系统02tt9java+VUE+Mybatis+Maven+Mysql+sprnig)

    Springboot毕设项目基于大数据平台的个性化图书推荐系统02tt9java+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 + Tomcat8 ...

最新文章

  1. vim php psr2 插件,将vim打造成c++超级ide(vim插件安装)
  2. lnmp.org + phpstorm + xdebug
  3. Altium Designer原理图元件和PCB元件互相定位
  4. ajax正则验证p标签显示,JQuery+Ajax实现唯一性验证、正则
  5. svn客户端 java_svn纯java客户端SVNKit学习整理(转)
  6. Intel 64 and IA-32 Architectures Instruction Format 指令格式
  7. 在WPF控件上添加Windows窗口式调整大小行为
  8. 微搭低代码入门教程04
  9. centos usb转网口_Linux环境下使用 USB转串口驱动(一)
  10. 现在公开一个DHT网络爬虫网络爬虫供大家一起交流
  11. Canal.deployer 启动报错说CHARACTER SET 'utf8' COLLATE 'utf8_unico', expect null,rkdown编辑器
  12. java this 逸出_Java并发编程——this逸出解决方法的思考
  13. 项目(百万并发网络通信架构)10.3---send()函数的极限测试
  14. href和src的区别
  15. 阶段小练—篮球比赛计分器
  16. java 8小时_Java获取时间与系统时间相差8小时终极解决方案
  17. 接口压力测试:Siege压测安装、使用和说明
  18. 源IP源MAC目的IP目的MAC,在整个网络中的变化
  19. ios视频循环播放实现
  20. 【Docker】Docker镜像是什么?浅谈对Docker镜像的理解

热门文章

  1. Photoshop中的渐变工具
  2. Linux内核中的IPSEC实现(3)
  3. 红宝书初步研读随手笔记
  4. 安科瑞数据中心行业电能质量监测与治理方案-李亚俊
  5. 用Echarts绘制折线图-----阶梯图
  6. 接口文档应该如何编写
  7. 【洞见趋势】博睿数据创始人兼CTO孟曦东访谈实录:聊聊2023年重要战略技术趋势“可观测性”
  8. 互联网的组成_网络层
  9. 记一次神奇的CVPR 2021 Rebuttal 经历
  10. HCNA安全学习笔记