1974年1月创刊(月刊)
主管/主办:重庆西南信息有限公司
ISSN 1002-137X
CN 50-1075/TP
CODEN JKIEBK
编辑中心
    软件工程 栏目所有文章列表
    (按年度、期号倒序)
        一年内发表的文章 |  两年内 |  三年内 |  全部
    Please wait a minute...
    选择: 显示/隐藏图片
    1. 结合数据选择的多源跨项目缺陷预测
    邓建华, 王炜
    计算机科学    2022, 49 (11A): 210800160-7.   DOI: 10.11896/jsjkx.210800160
    摘要279)      PDF(pc) (2632KB)(260)    收藏
    多源跨项目缺陷预测(Multi-sources Cross Project Defect Prediction,MCPDP)旨在使用多个来自其他项目(源项目)的历史数据来预测目标项目中软件模块出现缺陷的可能性。该研究解决了缺陷预测建模的冷启动问题,为新建软件或缺乏历史数据的软件系统建立缺陷预测模型提供了解决方案。对于进一步提高跨项目缺陷预测的准确性,源数据选择被认为是一条有效途径。因此,文中对数据选择的多源跨项目缺陷预测方法进行了研究,该方法包括两个步骤:1)源数据特征对齐;2)改进最大均值测度,实现源数据筛选。为了验证提出的方法的有效性,在AEEEM,Relink,NASA,SOFTLAB这4个公开数据集进行实验,结果表明所提方法在F-measure指标上比基线方法分别提高了4%和5%,证明该方法具有较好的性能。
    参考文献 | 相关文章 | 多维度评价
    2. 软件需求工程技术综述
    王浩宇
    计算机科学    2022, 49 (11A): 210900132-14.   DOI: 10.11896/jsjkx.210900132
    摘要209)      PDF(pc) (2197KB)(592)    收藏
    需求工程作为软件项目的首个过程,它的实施质量很大程度上能决定软件项目的成败。80年代中期敏捷软件开发的出现使得需求工程从由计划驱动过渡到现在的由价值取动。此外,硬件性能的大幅提升与人工智能的再度兴起使自然语言处理的效率和规模与日俱增,需求工程更能本地易地利用自然语言处理来分析大量文本数据。物联网、边缘计算和大数据的出现使投资者和开发人员更容易获取到大量用户数据和商业信息,数据驱动的需求工程作为一种新概念也逐渐被业界所知。文中首先综述了需求工程的发展历程,包括从需求工程方法学开始,到面向对象建模,再到基于本体和面相特征的需求工程,以及与机器学习相关的自动化需求提取技术。随后重点介绍了3种需求工程相关的研究方向,包括需求工程中采用的自然语言处理方式和支持的部分语言类型,敏捷需求工程的发展历程以及近年提出的工具和方法,数据驱动的需求工程的概念、必要性、过程和近年主要采取的方法和实践。最后基于一些各国关于需求工程开展情况的报告,分析了需求工程近年遇到的困难和挑战,并对需求工程未来的发展进行展望。
    参考文献 | 相关文章 | 多维度评价
    3. Android GUI自动化测试综述
    杨艺, 王嬉, 赵春蕾, 步志亮
    计算机科学    2022, 49 (11A): 210900231-10.   DOI: 10.11896/jsjkx.210900231
    摘要499)      PDF(pc) (2078KB)(554)    收藏
    新类型新版本的手机应用数量与日俱增,使得传统的人工测试方法已经无法负荷,因此需要研究人员提出更加有效的自动化测试方法。在自动化测试的过程中,Android应用程序的GUI(Graphical User Interface),即图形用户界面,发挥着极其重要的作用,GUI自动化测试凭借其出色的测试覆盖率和故障检测性能,成为研究人员的重点研究对象。文中对当前GUI自动化测试的相关研究进行梳理和总结,选取其中有代表性、普遍性的自动化测试框架进行详细剖析,从测试策略、探索策略、错误报告、是否支持重放、测试环境、支持的事件类型、是否使用APP源码、是否开源、系统事件识别方法几个方面来对挑选出的自动化测试工具进行相应的分类、分析与对比。同时选取部分有代表性的自动化测试框架进行对比实验,以探究测试效率以及各自的优缺点。最后提出当前研究所面临的挑战以及未来的发展前景。
    参考文献 | 相关文章 | 多维度评价
    4. 基于图嵌入的代码相似性度量
    梁瑶, 谢春丽, 王文捷
    计算机科学    2022, 49 (11A): 211000186-6.   DOI: 10.11896/jsjkx.211000186
    摘要216)      PDF(pc) (2503KB)(320)    收藏
    近年来,代码相似性检测一直是软件工程领域的热点问题,它可以帮助代码克隆检测、代码缺陷预测等,降低软件维护成本。目前流行的代码相似性检测方法大多是借用自然语言处理方法从符号(Token)、抽象语法树(Abstract Syntax Tree,AST)等代码表征中提取源代码的文本、语法、结构等特征信息,将其映射为连续空间的实值向量,然后通过直接计算提取特征的欧氏距离、余弦值,或通过浅层神经网络模型获得代码的相似值,这些方法取得了优于传统程序静态分析的效果。但这些方法大多数是基于源代码语法层面的检测技术,未充分利用源代码的语义信息。Doc2Vec和Word2Vec虽然能够挖掘代码的词汇语义信息,但对代码的执行语义信息无能为力,针对这一问题,提出了使用控制流程图(Control Flow Graph,CFG)来表示代码的执行语义,并使用基于随机游走(Random Walk)的图嵌入方法来学习和推理代码的语义信息,进而判断源代码的功能相似性。实验结果表明,和Doc2Vec以及Word2Vec方法相比,该模型能够较精确地检测出源代码的功能相似性,其F1值相较于Doc2Vec和Word2Vec方法分别提高了16.01%和18.72%。
    参考文献 | 相关文章 | 多维度评价
    5. 基于模型驱动的Web服务建模与三阶段模型转换方法
    王昌晶, 丁希龙, 陈茜, 罗海梅, 左正康
    计算机科学    2022, 49 (11A): 211100055-14.   DOI: 10.11896/jsjkx.211100055
    摘要193)      PDF(pc) (2072KB)(375)    收藏
    精确的描述Web服务的语义对Web服务的发现、执行、动态组合和交互至关重要。为支持Web服务建模,提出从抽象到具体4个模型:Radl-WS服务需求模型、Apla服务设计模型、Java可执行代码、WSDL/RESTful API。为支持模型转换,进一步提出一种三阶段转换生成Web服务可执行代码的方法:第一阶段将Radl-WS服务需求建模语言转换为Apla服务设计语言;第二阶段将Apla服务设计语言通过相关转换工具生成可执行代码;第三阶段将可执行代码封装成服务。进而研究了三阶段模型转换的语义正确性,最后通过实例,展示了所提方法的实际效果。
    参考文献 | 相关文章 | 多维度评价
    首页 | 前页| 后页 | 尾页 第1页 共1页 共5条记录