王甜甜科研成果_王甜甜专利信息_哈尔滨工业大学计算学部王甜甜科研信息|王甜甜校企合作信息|王甜甜联系方式
全国客户服务热线:4006-054-001 疑难解答:159-9855-7370(7X24受理投诉、建议、合作、售前咨询),173-0411-9111(售前),155-4267-2990(售前),座机/传真:0411-83767788(售后),微信咨询:543646
企业服务导航

王甜甜科研成果

发布日期:2024-05-10 专利申请、商标注册、软件著作权、资质办理快速响应 微信:543646


王甜甜
姓名 王甜甜 性别 王甜甜
学校 哈尔滨工业大学 部门 计算学部
学位 王甜甜 学历 王甜甜
职称 联系方式 wangtiantian@hit.edu.cn
邮箱 wangtiantian@hit.edu.cn    
软件产品登记测试全国受理 软件著作权666元代写全部资料全国受理 实用新型专利1875代写全部资料全国受理
王甜甜

基本信息 国际合作 科学研究 论文专著 顶级国际期刊/会议 《面向有效错误定位的测试用例优选》论文相关实验数据(Experiment results) 论文《基于示例演化的学生程序自动修复》的示例 新页签 ... 《面向有效错误定位的测试用例优选》论文相关实验数据(Experiment results) 论文《基于示例演化的学生程序自动修复》的示例 新页签 新建主栏目 基本信息 名称 王甜甜,女,博士,辽宁省丹东人。哈尔滨工业大学软件学院智能软件工程研究中心,副教授,博士生导师。 2012年1月—12月在国家留学基金委资助下,在英国伦敦大学学院(University College London)计算机学院访问学者。 目前主持国家自然科学基金2项、教育部博士点基金1项、哈尔滨工业大学校创新基金1项;参与多项国家自然科学基金、重点研发计划等项目,发表SCI、EI等教学科研论文30余篇。 招生学科:计算机科学与技术、软件工程 研究领域 名称 智能软件工程 软件错误定位 软件自动修复 代码推荐与补全 程序分析与程序理解 基于搜索的软件工程 软件测试与调试 软件安全 基于模型的系统工程 工作经历 名称 时间 工作经历 2010.3-2013.12 哈尔滨工业大学计算机科学与技术学院,讲师,硕士研究生导师 2012.1-2012.12 英国伦敦大学学院(University College London, UCL),Visiting Research Scientist (国家留学基金委CSC资助) 2014.1-2020.06 哈尔滨工业大学计算机科学与技术学院,副教授,硕士研究生导师 2020.07至今 哈尔滨工业大学计算机科学与技术学院,副教授,博士研究生导师 教育经历 名称 2005/9-2009/7,就读于哈尔滨工业大学计算机科学与技术学院, 获工学博士学位 2003/9-2005/7,就读于哈尔滨工业大学计算机科学与技术学院, 获工学硕士学位 The CREST centre of UCL 名称 The CREST centre at UCL builds on the three foundations of Program Dependence, Information Theory and Optimisation Algorithms. On these three foundations we develop ways to analyse, understand and improve software, with applications throughout the spectrum of software development activities. We are widely known for our work on Empirical Software Engineering, Evolutionary Computation, Code Provenance, Quantified Information Flow, Security, Software Testing, Program Slicing and Search Based Software Engineering. URL:http://crest.cs.ucl.ac.uk/Examples of the excellent produced in collaboration with Chinese visitors in CREST is shown in http://crest.cs.ucl.ac.uk/crests_on_going_collaborations_with_china/example_visits/ 研究领域简述 名称 智能软件工程(人工智能+软件工程): 将人工智能技术应用到软件工程问题求解中,利用互联网中存在的代码、文档资源、知识和群体智慧,来解决软件工程中面临的诸多挑战,提高软件质量和开发维护效率。 我的主要研究方向包括: 1.软件故障定位(software fault localization) 程序设计是一项复杂的活动,很难推导程序中所有可能的执行路径,以及预见可能影响程序的环境因素。即使程序看起来正确执行,仍然可能在极少情况下或特定条件满足时产生失效。我们在编程过程中,经常遇到编译正确但是运行结果错误的情况,找到错误位置是很挠头的一件事情。 软件错误自动定位通过计算机分析程序源代码或执行过程中产生的运行时状态,检测程序中的异常情况,并将其独立出来作为需要进一步调试的可疑代码,从而缩小缺陷代码的搜索范围,辅助开发人员更快地识别缺陷语句。 2.程序的自动化修复(software repair) 通过挖掘群智资源,自动生成程序补丁,进而修复程序中的错误。程序补丁既可以自动添加到程序中,也可以用于指导开发者继续改进代码。 3.代码推荐和补全(code recommendation and completion) 将深度学习技术应用于大规模代码的学习,并实现机器自动编写程序和编程提示,实现智能化编程。 4.程序分析与程序理解(program analysis and comprehension) 如何在只有程序源代码的情况下,识别程序员的编程意图呢? 程序分析和程序理解技术通过计算机自动解析程序源代码,把程序表示为更容易理解的抽象表示形式,在此基础上进一步应用。 我们目前主要将此技术应用于学生程序自动评分、剽窃检测、软件缺陷检测等。 5.基于搜索的软件工程(search based software engineering) 软件工程中的许多问题都可以形式化为优化问题。 SBSE将启发式搜索算法如遗传算法、蚁群算法、基因编程,应用于解决软件工程问题,降低计算复杂度。 6.基于模型的系统工程(model based system engineering) MBSE是形式化和标准化的建模方法,使建模方法支持系统需求、设计、分析、验证和确认等活动,这些活动从系统的概念设计阶段开始,持续贯穿到系统开发和随后的生命周期。 科研项目 名称 项目名称 项目来源 起止时间 承担角色 项目类别 人机协同的智能在线程序设计指导 国家自然科学基金 2020.01~2024.12 负责人 纵向 面向理解的软件错误定位方法 国家自然科学基金 2013.01 ~ 2015.12 负责人 纵向 行为状态统计分析软件错误自动定位方法 教育部博士点基金 2012.01 ~ 2014.12 负责人 纵向 行为驱动的软件错误自动定位及理解方法 校青年创新基金 2011.01 ~ 2013.12 负责人 纵向 论文期刊 论文标题 Invariant based Fault Localization by Analyzing Error Propagation 作者 Wang Tiantian, Wang Kechao, Su Xiaohong, Zhang Lei 发表时间 2019 期刊名称 Future Generation Computer System 期卷 94:549-563 简单介绍 论文标题 Automatic debugging of operator errors based on efficient mutation analysis 作者 Wang Tiantian, Xu Jiahuan., Su Xiaohong. Li Chenshi, Chi Yang 发表时间 2019 期刊名称 Multimedia Tools and Applications 期卷 78, (21):29881-29898 简单介绍 论文标题 Test case selection using multi-criteria optimization for effective fault localization 作者 Wang Kechao, Wang Tiantian*, Su Xiaohong 发表时间 2018 期刊名称 Computing 期卷 100(8):787-808 简单介绍 论文标题 SCI/SSCI/EI:Ability-training-oriented automated assessment in introductory programming course 作者 WANG Tiantian, SU Xiaohong, MA Peijun, WANG Yuying, WANG Kuanquan 发表时间 期刊名称 Computers & Education 期卷 56(1) 简单介绍 SCI、SSCI、EI检索 论文标题 顶级会议:Searching for Better Configurations:A Rigorous Approach to Clone Evaluation 作者 WANG Tiantian, Harman Mark, JIA Yue, et al. 发表时间 期刊名称 ESEC/FSE 期卷 31 简单介绍 顶级会议 论文标题 SCI:A test-suite reduction approach to improving fault-localization effectiveness 作者 GONG Dandan, WANG Tiantian, SU Xiaohong, MA Peijun 发表时间 期刊名称 Computer Languages, Systems & Structures 期卷 简单介绍 SCI检索 论文标题 SCI/EI:Semantic similarity-based grading of student programs 作者 WANG Tiantian, SU Xiaohong, WANG Yuying, MA Peijun 发表时间 期刊名称 Information and Software Technology 期卷 49 简单介绍 SCI、EI检索 论文标题 基于程序理解的编程题自动评分方法 作者 马培军, 王甜甜, 苏小红 发表时间 期刊名称 计算机研究与发展 期卷 简单介绍 论文标题 程序标准化转换中的指针分析算法研究 作者 王甜甜, 苏小红, 马培军 发表时间 期刊名称 电子学报 期卷 简单介绍 论文标题 SCI/EI:Detection of semantically similar code 作者 Wang Tiantian, Wang Kechao, Su Xiaohong, Ma Peijun 发表时间 期刊名称 Frontier of Computer Science 期卷 8(6) 简单介绍 SCI、EI检索 论文标题 面向有效错误定位的测试用例优选方法 作者 王克朝,王甜甜,苏小红,马培军,童志祥 发表时间 期刊名称 计算机研究与发展 期卷 51(4) 简单介绍 EI,国内一级期刊 论文标题 结合用例约简与联合依赖概率建模的错误定位 作者 苏小红,龚丹丹,王甜甜,马培军 发表时间 期刊名称 软件学报 期卷 25(7) 简单介绍 EI,国内一级期刊 论文标题 SCI/EI:State Dependency Probabilistic Model for Fault Localization 作者 Gong Dandan, Su Xiaohong, Wang Tiantian, Mapeijun, Wang Yu 发表时间 期刊名称 Information and Software 期卷 57(1) 简单介绍 SCI、EI检索 论文标题 并发缺陷暴露、检测与规避研究综述 作者 苏小红,禹振,王甜甜,马培军 发表时间 期刊名称 计算机学报 期卷 简单介绍 EI、国内一级期刊 论文标题 软件错误自动定位关键科学问题及研究进展[ 作者 王克朝, 王甜甜*, 苏小红, 马培军 发表时间 2015 期刊名称 计算机学报 期卷 38(11):2262-2278 简单介绍 论文标题 示例演化驱动的学生程序自动修复 作者 王甜甜, 许家欢, 王克朝, 苏小红 发表时间 2019 期刊名称 软件学报 期卷 (5):1256-1268 简单介绍 中国计算机学会推荐国际刊物(软件工程、系统软件与程序设计语言) 名称 序号 刊物简称 刊物全称 出版社 网址 级别 1 TOPLAS ACM Transactions on Programming Languages & Systems ACM http://www.acm.org/toplas A类 2 TOSEM ACM Transactions on Software Engineering Methodology ACM http://www.acm.org/pubs/tosem/ 3 TSE IEEE Transactions on Software Engineering IEEE http://www.computer.org/portal/web/tse/home 1 ASE Automated Software Engineering Springer http://www.springer.com/computer/ai/journal/10515 B类 2 Empirical Software Engineering Springer http://www.springerlink.com/content/1573-7616/ 3 TSC IEEE Transactions on Service Computing IEEE http://www.computer.org/portal/web/tsc 4 IETS IET Software IET http://www.ietdl.org/IET-SEN 5 IST Information and Software Technology Elsevier http://www.sciencedirect.com/science/journal/09505849 6 JFP Journal of Functional Programming Cambridge University Press http://journals.cambridge.org/action/displayJournal?jid=JFP 7 Journal of Software: Evolution and Process Wiley http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481 8 JSS Journal of Systems and Software Elsevier http://www.journals.elsevier.com/journal-of-systems-and-software/ 9 RE Requirements Engineering Springer http://www.springer.com/computer/swe/journal/766 10 SCP Science of Computer Programming Elsevier http://www.journals.elsevier.com/science-of-computer-programming/ 11 SoSyM Software and System Modeling Springer http://www.sosym.org/ 12 SPE Software: Practice and Experience Wiley http://www3.interscience.wiley.com/cgi-bin/jhome/1752 13 STVR Software Testing, Verification and Reliability Wiley http://as.wiley.com/WileyCDA/WileyTitle/productCd-STVR.html 1 Computer Languages, Systems and Structures Elsevier http://www.elsevier.com/wps/find/journaldescription.cws_home/638299/description#description C类 2 IJSEKE International Journal on Software Engineering and Knowledge Engineering World Scientific http://www.worldscientific.com/worldscinet/ijseke 3 STTT International Journal on Software Tools for Technology Transfer Springer http://www.springerlink.com/content/1433-2787/ 4 Journal of Logic and Algebraic Programming Elsevier http://www.journals.elsevier.com/the-journal-of-logic-and-algebraic-programming/ 5 JWE Journal of Web Engineering Rinton Press http://www.rintonpress.com/journals/jwe/ 6 Service Oriented Computing and Applications Springer http://www.springer.com/computer/communication+networks/journal/11761 7 SQJ Software Quality Journal Springer http://www.springer.com/computer/programming/journal/11219 8 TPLP Theory and Practice of Logic Programming Cambridge University Press http://journals.cambridge.org/action/displayJournal?jid=TLP 中国计算机学会推荐国际学术会议(软件工程、系统软件与程序设计语言) 名称 序号 会议简称 会议全称 出版社 网址 级别 1 FSE/ESEC ACM SIGSOFT Symposium on the Foundation of Software Engineering/ European Software Engineering Conference http://esec-fse.inf.ethz.ch/ A类 2 OOPSLA Conference on Object-Oriented Programming Systems, Languages, and Applications ACM http://splashcon.org/2013/cfp/618 3 ICSE International Conference on Software Engineering ACM/IEEE http://www.icse-conferences.org/ 4 OSDI USENIX Symposium on Operating SystemsDesign and Implementations USENIX http://www.usenix.org/event/osdi12 5 PLDI ACM SIGPLAN Symposium on Programming Language Design & Implementation ACM http://pldi2013.ucombinator.org/ 6 POPL ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages ACM http://www.cse.psu.edu/popl/12 7 SOSP ACM Symposium on Operating Systems Principles ACM http://sosp.org/ 1 ECOOP European Conference on Object-Oriented Programming AITO http://ecoop.org/ B类 2 ETAPS European Joint Conferences on Theory and Practice of Software Springer http://www.etaps.org/ 3 FM Formal Methods, World Congress FME http://www.fmeurope.org/ 4 ICPC IEEE International Conference on Program Comprehension IEEE http://icpc12.sosy-lab.org/ 5 RE IEEE International Requirement Engineering Conference IEEE http://www.cin.ufpe.br/~re2013/ 6 CAiSE International Conference on Advanced Information Systems Engineering Springer http://www.pros.upv.es/index.php/en/home-caise2013 7 ASE International Conference on Automated Software Engineering IEEE/ACM http://ase2013.org/ 8 ICFP International Conf on Function Programming ACM http://icfpconference.org/icfp2013/ 9 LCTES International Conference on Languages, Compilers, Tools and Theory for Embedded Systems ACM http://www.dcs.gla.ac.uk/conferences/lctes13/ 10 MoDELS International Conference on Model Driven Engineering Languages and Systems ACM, IEEE http://www.modelsconference.org/ 11 CP International Conference on Principles and Practice of Constraint Programming Springer http://cp2013.a4cp.org/ 12 ICSOC International Conference on Service Oriented Computing Springer http://www.icsoc.org/ 13 ICSM International. Conference on Software Maintenance IEEE http://icsm2013.tue.nl/ 14 VMCAI International Conference on Verification, Model Checking, and Abstract Interpretation Springer http://lara.epfl.ch/vmcai2012/ 15 ICWS International Conference on Web Services(Research Track) IEEE http://conferences.computer.org/icws/2013/ 16 SAS International Static Analysis Symposium Springer http://research.microsoft.com/en-us/events/sas2013/ 17 ISSRE International Symposium on Software Reliability Engineering IEEE http://2012.issre.net/content/ieee-issre-2012-dallas-tx 18 ISSTA International Symposium on Software Testing and Analysis ACM SIGSOFT http://issta2013.inf.usi.ch/ 19 Middleware Conference on middleware ACM/IFIP/ USENIX http://www.middleware-conference.org/ 20 WCRE Working Conference on Reverse Engineering IEEE http://wcre.wikidot.com/2013 21 HotOS USENIX Workshop on Hot Topics in Operating Systems USENIX https://www.usenix.org/conference/hotos13/ 1 PASTE ACMSIGPLAN-SIGSOFTWorkshoponProgram Analysis for SoftwareTools and Engineering ACM http://dept.cs.williams.edu/PASTE2013/cfp.html C类 2 APLAS Asian Symposium on Programming Languages and Systems Springer http://aplas12.kuis.kyoto-u.ac.jp/ 3 APSEC Asia-Pacific Software Engineering Conference IEEE http://apsec2012.comp.polyu.edu.hk/ 4 COMPSAC International Computer Software and Applications Conference IEEE http://compsac.cs.iastate.edu/ 5 ICECCS IEEE International Conference on Engineering of Complex Computer Systems IEEE http://www.iceccs.org/ 6 SCAM IEEE International Working Conference on Source Code Analysis and Manipulation IEEE http://www.ieee-scam.org/ 7 ICFEM International Conference on Formal Engineering Methods Springer https://www.cs.auckland.ac.nz/research/conferences/icfem2013/ 8 TOOLS International Conference on Objects, Models, Components, Patterns Springer http://tools.ethz.ch/ 9 PEPM ACM SIGPLAN Symposium on Partial Evaluation and Semantics Based Programming Manipulation ACM http://www.program-transformation.org/PEPM13 10 QSIC International Conference on Quality Software IEEE http://www.di.univaq.it/qsic2012/ 11 SEKE International Conference on Software Engineering and Knowledge Engineering KSI http://www.ksi.edu/seke/seke13.html 12 ICSR International Conference on Software Reuse Springer http://www.icsrc.org/ 13 ICWE International Conference on Web Engineering Springer http://icwe2012.webengineering.org 14 SPIN International SPIN Workshop on Model Checking of Software Springer http://spin2013.cs.sunysb.edu/ 15 LOPSTR International Symposium on Logic-based Program Synthesis and Transformation Springer http://www.cs.man.ac.uk/~kung-kiu/lopstr/ 16 TASE International Symposium on Theoretical Aspects of Software Engineering IEEE http://selab.bjut.edu.cn/tase2012/ 17 ICST The IEEE International Conference on Software Testing, Verification and Validation IEEE http://icst.org/ 18 ATVA International Symposium on Automated Technology for Verification and Analysis http://www.iarcs.org.in/atva2012/ 19 ESEM International Symposium on Empirical Software Engineering and Measurement ACM/IEEE http://esem-conferences.org/index.php 20 ISPASS IEEE International Symposium on Performance Analysis of Systems and Software IEEE http://ispass.org/ 21 SCC International Conference on Service Computing IEEE http://conferences.computer.org/scc/2013/ 22 ICSSP International Conference on Software and System Process ISPA http://www.icsp-conferences.org/index.html 《面向有效错误定位的测试用例优选》实例 名称 程序及测试用例实例,其中s12为错误语句,应该为r=x+temp;tf为失效测试用例,t1-t8为成功测试用例: 测试用例优选前的错误定位结果,错误语句s12没有被准确定位: 优选测试用例后的错误定位结果,错误语句s12排序为1,被准确定位,错误定位有效性提高: 以下演示相关概念及测试用例的选择过程: 语句覆盖矩阵C: 失效相关的成功覆盖矩阵CSF: 覆盖等价ECE和失效覆盖等价类ECC,每个ECC中的语句覆盖等价: 测试用例优选模型ES的测试用例优选过程举例: 论文《基于示例演化的学生程序自动修复》的示例 名称 1 示例分析 以判定回文串的程序为例,分析本文方法的优缺点.题目是“输入一个字符串,判定其是否能通过添加一个字母,变为回文串的功能,如果是,输出“YES”;否则,输出“NO”.”给定的测试用例(输入,输出)集合为: {(“ABCAB”,“YES”), (“ABB”, “YES”), (“aBC”,“NO”),(“BBA”,“YES”)}. 解决该问题有多种思路,图5和图6分别给出了采用不同算法的两个模板程序.模板程序A采用的算法是:判定字符串的和它的反向字符串的公共子序列长度是否与原字符串的长度相等或短1,如果是,则输出"YES",否则,输出"NO". 模板程序B采用的算法是:删除字符后判定是否是回文串.如果删除的是中间位置字符,那么原字符串本身必为回文;假设原字符串长度为length,如果删除的是两端字符,那么长度为length-1的两个子串必有一个也是回文. 图7和图8是两个缺陷程序.其中图7中缺陷程序C采用了公共子序列算法,但是由于第19行len变量赋值错误,导致该程序对测试用例集合中的所有测试用例均失效.图8中缺陷程序D采用了删除字符后判定回文的方法,但是由于缺少分支判定条件,导致对部分测试用例执行成功,部分测试用例执行失效. 修复缺陷程序C的步骤如下. (1)根据语法相似度选择模板程序A作为修复缺陷程序C的示例程序. (2)插桩模板程序A和缺陷程序C,然后用各个测试用例执行插桩后的程序,获得执行值序列,分别如表3和表4所示.表4中最后一行为各个测试用例的执行结果. (3)根据执行值序列相似度,匹配变量及其赋值语句,如表5所示.表5中,同一行的两个程序中的变量为匹配变量对,对应的语句行为匹配的赋值语句. (4)使用最长公共子序列算法求缺陷程序和示例程序抽象语法树序列的最大匹配,识别差异语句,并根据结构语义,进一步识别可能匹配的变量对{(len,23),(len,28)},{ (d,24),(dis,29)}.尽管缺陷程序C和模板程序A存在循环结构表示形式、表达式、变量名不同,语句顺序调换等差别,本文基于结构语义和执行值序列分析可以识别和消除这些代码多样化.通过差异分析,把缺陷程序C中第29行识别为可疑语句,将其变异位置概率赋以W2.将示例程序中第23行识别为可能执行替换的语句,赋以概率W2,并识别该位置处可能执行的变异操作为替换操作. (5)使用遗传编程算法,进行迭代演化,将模板程序A语法树中的子树插入或替换到缺陷程序C语法树中,生成的新程序,在执行子树插入或替换操作之前,根据变量映射表中匹配的变量对,修改子树中的变量名,使之生成语法正确的程序.当生成可以通过测试用例集中所有测试用例的变异程序时,停止迭代,输出修复程序,即把图7中第28行的缺陷语句用正确语句(见第27行注释)替换后生成的程序. 通过以上示例,可以看出,尽管缺陷程序对测试用例集中的所有测试用例均执行失效,本文方法可以有效定位并修复其中的缺陷语句. 修复缺陷程序D的步骤和上面类似.差别在于选择的示例程序是模板程序B.缺陷程序D执行测试用例集时有部分成功,部分失效.示例程序C和缺陷程序D的执行值序列如表6所示,匹配变量对{(isPaBegin,8), (isPaBegin,8)}, {(isPaEnd,9), (isPaEnd,9)}.识别的变异操作为插入操作,最后生成的修复程序同模板程序B. 需要强调的是,本文程序修复方法的有效性依赖于给定的模板程序,对不同的求解算法或数据结构,需要提供相应的模板程序.尽管本文通过结构语义分析识别等价的但语法表示形式不同的语法结构,通过执行值序列容忍变量名和语句顺序的多样化,但是不可否认的是,也有可能存在缺陷程序实现方法很特殊,而模板程序有限的情况,在这种情况下,则有可能错误语句直接被模板程序中的正确语句替换,生成可以通过测试的修复方案,但是可能不是最小修复.也有可能由于搜索空间过大,导致有限时间内不能搜索到修复方案.因此本文的方法前提是需要充足的模板程序.在实际应用中,对于学生程序而言,可以由教师提供模板程序,也可以从已经提交的正确学生程序中挖掘新的模板. Automatic grading for complex multi file programs-data 名称 dashbord