公告×

尊敬的用户,项目开发模块已全面升级。为避免数据不一致问题,后续项目开发请基于新版开展,老版项目开发模块将不再维护。如果您的项目出现数据迁移不完整等问题敬请添加QQ群1071514693反馈,我们将及时处理。新版Forge使用说明和问题反馈也可通过使用讨论吧
3178?1442652658

【周报】 近期研究进展汇报 正常


侯翔添加于 01/25/2016 15:09

目前一直在安装愉悦师兄与路遥师兄的指示下研究算法、做实验,在尹老师、王涛师兄的指导下一直在研究对项目代码质量的评估。

进展如下:

1、阅读了师兄们给的论文,首先确定了寻找在项目开发中的bug_introduced 与 bug_fix的相应的commit,算法的流程主要安装路遥师兄给的论文中的模型来做实验,同时由于愉悦师兄已经在这个方面有过很好地基础,我们在理解吃透余悦师兄的代码基础上,继续做实验,算法的流程图如下:

image

2、基于第一步的实验结果,我们继续提出了运用sonar来具体扫描bug_introduced_commit 与 bug_fixed_commit相应的文件,寻找其中具体的代码行的issue(代码质量缺陷)以此来推断sonar_isssue与相应的bug之间的关系,在上一周我已基本实现代码(python),但是由于时间比较仓促,代码还是有很多bug,上周末我花了两天的时间重构了代码,目前已经将代码上传到trustie,让师兄进行审阅,对实验结果初步的分析后发现,代码的方法复杂度过高,运用switch 等代码会导致比较多的bug。

问题与展望:

1、我打算将代码质量的优化还需要进行,目前在用sonar扫描具体文件时,花费的时间还是太多,整体的时间还是不够理想(目前的实验只是初步对一个项目进行了测试,如果是上百个项目的数据量可能时间不是很理想)

2、在得到sonar的具体的代码缺陷与用git得到具体的bug后,我对下一步的研究还是有点迷茫,打算还是和余悦、路遥师兄继续多交流。

3、这周的任务还是要先将目前的实验结果都跑出来,在继续分析

回复(11)
  • 10?1449542945
    余跃 4年前

    我发现,这个贴子里面我的名字有好多个版本:余跃,愉悦,余悦。。。。

  • 5?1460204756
    尹刚 4年前

    另外,这个10,5,2,1应该我们可以通过机器学习不断优化的。是吧?

    @卢遥(roadfar)‍ @王涛(wangtao)‍ @余跃(yuyuenudt)‍ 

  • 5?1460204756
    尹刚 4年前

    我们能否对每千行的issue得分,分析一下开源项目的质量和这个度量有没有相关性?

  • 3178?1442652658
    侯翔 4年前

    尹 刚 写到:

    1. BLOCKER(10 scores)2. CRITICAL(7 scores)

    3. MAJOR(5 scores)

    4. MINOR(2 scores)

    5. INFO(1 score)


    这个度量是谁提出来的?

    尹老师,这个度量是路遥师兄提出来的,5种分类是sonar自身就有的

  • 5?1460204756
    尹刚 4年前

    1. BLOCKER(10 scores)2. CRITICAL(7 scores)

    3. MAJOR(5 scores)

    4. MINOR(2 scores)

    5. INFO(1 score)


    这个度量是谁提出来的?

  • 3178?1442652658
    侯翔 4年前

    尹 刚 写到:
    sonar分析得到的issue包括哪些种类?不同种类的issue应该和bug的关系是不一样的。
    恩,尹老师 , sonar的issue种类主要分为

    1. BLOCKER(10 scores)
    Bug with a high probability to impact the behavior of the application in production: memory leak, unclosed JDBC connection, .... The code MUST be immediately fixed.

    2. CRITICAL(7 scores)
    Either a bug with a low probability to impact the behavior of the application in production or an issue which represents a security flaw: empty catch block, SQL injection, ... The code MUST be immediately reviewed.

    3. MAJOR(5 scores)

    Quality flaw which can highly impact the developer productivity: uncovered piece of code, duplicated blocks, unused parameters, ...

    4. MINOR(2 scores)

    Quality flaw which can slightly impact the developer productivity: lines should not be too long, "switch" statements should have at least 3 cases, ...

    5. INFO(1 score)

    Neither a bug nor a quality flaw, just a finding.

    目前先把数据跑出来,在进行下步分析issue与bug之间的关系,代码那块问题已经不大

  • 3178?1442652658
    侯翔 4年前

    余 跃 写到:
    尹 刚 写到:
    同时,请注意将sonar封装因为一个简单的api,这样大家都可以调用。不用每个人都重复这个工作。
    尹老师高瞻远瞩!!我也希望能随时方便的使用sonar
    恩恩,好的师兄

  • 3178?1442652658
    侯翔 4年前

    尹 刚 写到:
    同时,请注意将sonar封装因为一个简单的api,这样大家都可以调用。不用每个人都重复这个工作。
    好的,尹老师

  • 10?1449542945
    余跃 4年前

    尹 刚 写到:
    同时,请注意将sonar封装因为一个简单的api,这样大家都可以调用。不用每个人都重复这个工作。
    尹老师高瞻远瞩!!我也希望能随时方便的使用sonar

  • 5?1460204756
    尹刚 4年前

    同时,请注意将sonar封装因为一个简单的api,这样大家都可以调用。不用每个人都重复这个工作。

  • 5?1460204756
    尹刚 4年前

    sonar分析得到的issue包括哪些种类?不同种类的issue应该和bug的关系是不一样的。

0?1470885445
登录后可添加回复
  • 当前状态 新增
  • 选定优先级 正常
  • 指派给 尹刚
  • 里程碑 --
  • 开始日期 01/25/2016
  • 结束日期
  • 预计工时(H) 0.00 hour
  • 完成度 0%
  • 关联Commit
问题和建议
还能输入50个字符 Submit

加入QQ群

关注微信APP


×