Traditionally, official API documentation and crowdsourced API documentation on the Web are disconnected. The API knowledge is fragmented, scattered around crowdsourced media, official documents, and people’s minds. Developers’ work is often distracted by context switching between different sources of information and cannot benefit from all of them in an integrated environment. .This proposal aims at developing an Integrated Documentation Methodology and Environment that incorporates fragmented crowdsourced API knowledge on the Web with official documentation. The approach models programming activities as node-edge graphs involving all the API-related actors and their relationships, and uses graph induction techniques to mine typical programming patterns and developers’ knowledge to form graph grammar rules. We then official API documentation as a framework to organize the integrated API knowledge, retaining the official coverage of the API and logical structure. By associating developers’ Web search behaviors (“who asked what”) with their coding context (“who edited what”) and document-reading context (“who viewed what”), we link the activities related to an API (editing the code using the API, reading its document, and searching for it) and infer the questions asked and answers found. The question and answer (Q&A) pairs are saved as frequently asked questions (FAQs) and embedded into the corresponding API documentation. The integrated documentation could then be shared among developers in the same project or related communities for knowledge dissemination.
软件开发中,软件组件的重用一般通过应用程序接口(API)实现,API在功能化的软件组件和使用这种功能的客户端组件之间提供了特定的协议。API文档通常分为官方文档和网上开发者共享的非官方文档两类。目前这两种类型的文档互不相关,关于API的知识零散地分布在众包媒体、官方文档和开发者的经验中。开发者经常需要在不同的信息来源间切换,重复和耗时的信息搜索使他们开发效率大为降低。本课题提出基于图文法和图归纳理论、采用众包技术集成网上API文档和官方文档的系统方法。 研究重点为图文法和图解析理论,用于解释和验证API相关的典型编程行为模式。首先使用点线图形式对众包获取的编程活动进行建模,定义图中频繁出现的模式,然后用图归纳技术,从表达编程行为的点线图中挖掘有关API的知识,以便将零散的众包API知识与官方文档在网络上有机地融合,成为集成的API知识,便于开发者共享。
基于应用程序接口(API)的软件组件重用是近年软件工程研究中的重要研究方向。但现有方法总是单独用使用官方文档或开发者文档。两种类型的文档互不相关,关于API的知识零散地分布在众包媒体、官方文档和开发者的经验中。开发者经常需要在不同的信息来源间切换,重复和耗时的信息搜索使他们开发效率大为降低。针对这个问题,本课题提出了一个可解释的编程模型框架,其设立了三个研究内容:在用户行为收集方面,我们设计了众包技术集成网上API文档和官方文档的系统方法;在典型编程模式建模方面,我们探索了如何使用点线图形式对众包获取的编程活动进行建模,并定义图中频繁出现的模式。在典型编程模式解释方面,我们研究了如何使用图文法与图归纳理论挖掘,解释和验证编程模型。项目产生了一系列成果:1)13篇SCI论文,其中含1篇可视化顶刊(JCR1区);2)会议论文8篇;其中共有22篇论文均标记了项目号(61572348)。除此之外,还有2个软件著作权由该项目产生。
{{i.achievement_title}}
数据更新时间:2023-05-31
基于协同表示的图嵌入鉴别分析在人脸识别中的应用
基于混合优化方法的大口径主镜设计
CT影像组学对肾上腺乏脂腺瘤与结节样增生的诊断价值
金属锆织构的标准极图计算及分析
大足鼠耳蝠嘴巴张角辐射声场的数值研究
基于图学习理论的文档自动摘要方法及其评测技术研究
基于概率标记图的API自动推荐算法研究
集成主动学习和众包技术的迁移学习算法研究
基于概率图模型的大量复杂文档图像信息提取