欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    EclipseIDE过程数据采集技术.ppt

    • 资源ID:70105367       资源大小:252.49KB        全文页数:21页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EclipseIDE过程数据采集技术.ppt

    Eclipse IDE 过程数据采集技术过程数据采集技术Shi LeiSoftware Engineering Institute,Peking University2009.9提纲提纲问题的提出过程数据采集方法相关解决方案分析我们的工作问题的提出问题的提出提高软件开发的效率、缩短工期、提高软件产品的质量是软件工程领域的永恒话题收集、分析和挖掘程序员在软件开发过程中产生的一些数据数据,可以从很多方面为提高软件生产率和软件质量提供帮助记录开发人员的日常操作,为其提供一些自动化帮助挖掘出好的行为模式,为过程改进提供指导作为证明开发过程严格可靠的证据过程数据采集方法过程数据采集方法现场(Onside)过程数据采集优点:灵活、直接缺点:开销巨大、难于采集很多人数据访谈和问卷优点:简单缺点:难收集细节数据非侵扰性(Non-invasive)自动化过程数据采集优点:收集大量数据成本低、可收集细节数据缺点:有些类型的活动无法监测过程数据采集方法过程数据采集方法数据采集方法的选择的考虑经验复用高层的vs.细节的直接指导(经验的可验证性)与以往研究工作的结合和技术上易实现因此,我们把“Non-invasive自动化过程数据采集”作为研究对象。特别是随着EclipseIDE的流行,我们关注Eclipse中工作区数据采集技术相关解决方案分析相关解决方案分析Hackystat概述Hackystat是由夏威夷大学开发的一个开源的收集、分析软件开发过程和产品数据的框架目的项目数据统计和展示(如改变方法数、活跃时间等)结构Sensor-Server结构,支持多开发环境(包括Eclipse、Emacs、Office等),其中Eclipse中以插件收集数据数据特征存储在服务器端数据库(可能有数据丢失,不关心),非匿名,事件可以有多种粒度,附加数据Map相关解决方案分析相关解决方案分析Hackystat数据特征(续):SDT是最高层Type,只与使用的Sensor有关不记录项目名,项目在服务器端创建,根据资源地址配置TimestampSDT OwnerToolResourceProperty Map2009-07-22T20:35:44.906-10:00DevEEclipsefile:/C:/Documents%20and%20Settings/Administrator/workspace/hackystattest/src/main.javaProperties:Type=Edit,Subtype=Close,Unit-Type=file,Unit-Name=main.java,Language=java2009-07-23T20:23:55.796ZDevEEclipsefile:/C:/Documents%20and%20Settings/Administrator/workspace/eclipseListener/src/work3/Activator.javaProperties:Type=Edit,Subtype=StateChange,Current-Statements=31,Class-Name=work3.Activator,Current-Methods=5,Current-Size=4558,2009-07-22T20:37:09.312-10:00DevEEclipsefile:/C:/Documents%20and%20Settings/Administrator/workspace/hackystat2/src/main2.javaProperties:Modified=false,Type=Edit,To-Buff-Name=file:/C:/Documents%20and%20Settings/Administrator/workspace/hackystat2/src/main2.java,Subtype=相关解决方案分析相关解决方案分析PROM与Hackystat类似,细节待继续调研相关解决方案分析相关解决方案分析Mylyn(Malar)概述Mylyn是一个基于Eclipse的辅助工具,为开发人员管理任务上下文,以使得开发人员能够将注意力集中在和任务项目中相关的部分上,以提高开发效率目的开发活动上下文管理,兼具任务管理功能结构Sensor-Server结构,仅支持Eclipse,以插件收集数据数据特征存储在服务器端和客户端(以XML存储),匿名,事件以文件为粒度,存储许多中间数据,为上下文管理提供方便相关解决方案分析相关解决方案分析Mylyn数据特征(续)对于扩展属性的支持能力好对于同类事件有所合并(见第一条日志)相关解决方案分析相关解决方案分析EclipseUsageDataCollection概述是一个监听Eclipse工作区中用户使用信息的插件,主要目的是跟踪Eclipse产品的技术情况目的插件技术情况汇报结构Sensor-Server结构,仅支持Eclipse数据特征存储在服务器端和客户端,仅记录插件加载、打开和关闭事件,特别关注插件版本相关解决方案分析相关解决方案分析各工作的比较目的Mylyn通过维护个人工作语境提高个体生产率Hackystat和PROM通过分析过程数据来监控过程状态EclipseUsageDataCollection只关注插件使用情况,但为事件监听提供了“插件装载时”施加监听的思路体系结构除了Mylyn以外都是Sensor-Server结构数据特点除EclipseUsageDataCollection以外,都支持扩展数据项。其中Hackystat和PROM把扩展数据项以键值对的形式存储为单一字符串我们的工作我们的工作动机以数据支持软件过程的研究EUDC的目的和我们的目的相去甚远Mylyn不支持多人数据,只记录编辑查看文件,不记录其他活动HackyStat和PROM对我们希望重点监听的Debug活动监听不够细有一些不方便之处(如Hackystat以文件路径名规则来定义项目)不容易灵活编写我们需要的扩展功能。我们的工作我们的工作值得借鉴的设计决策区分事件作用的位置粒度(Hackystat)扩展属性(Hackystat、Mylyn)值得借鉴的实现技术将数据采集作为Eclipse插件在要监听的事件上施加监听器对监听事件做类型转换统一的数据记录接口通过首选项配置向服务器提交数据我们的工作我们的工作框架概览CodeEditingSensorDataRepositoryDebugSensorCodeReadingSensorEclipseIDEOtherSensorsProcessDataMiningCode Change EventDebug EventCode ReadingEventOther EventCollectedProcessDataProcessMonitoringDataStaticsProcess Data CollectionProcess Data Use我们的工作我们的工作收集的数据非匿名,事件以方法为粒度,任务类型预定义,本地及服务器端同时存储,特别关注Debug相关活动字段名字段名 说明明 eventID 事件编号userName 用户名,非匿名是为了研究具体人员的开发实践projectName 项目名taskType 任务类型,比如新功能、Debug、维护等taskId 任务ID,可以关联项目管理系统中的任务编号logTime 事件发生的时间pAction 监听到的动作pFile 动作所施加的文件pMethod 如果动作设计在在代码上,其施加于的代码中的方法pLineNo 动作所施加代码行号我们的工作我们的工作代码修改活动监听修改的位置(方法级)、修改的增量Debug活动监听断点设置、调试动作代码阅读活动监听阅读位置(方法级)其他活动监听CVS、JUnit我们的工作我们的工作Eclipse事件监听一般过程What:决定要监听什么事件,并找到该事件在Eclipse中的对应实现Where:根据事件,找到在哪里施加一个什么样的监听器可以监听这个事件How:编写一个监听器,实现指定的监听器接口,对于其中关心的事件,编写处理方法,收集需要的信息。我们的工作我们的工作开发中的一些解决方法代码修改活动监听保存一份修改之前的代码以供比对将修改前后的代码按语句分割,各放入一个集合中,通过集合比较得到代码修改的增量模仿CVS的diff将这种增量记录下来代码阅读活动监听利用程序员在阅读代码时鼠标停留在程序中制定方法中出发的OutLine视图的选择事件来确定程序员正在阅读的代码位置我们的工作我们的工作开发中的一些解决方法代码阅读活动监听Typeconversion将通过选择事件位置和抽象语法树得到被阅读位置在抽象语法树中的对应节点,并将其类型转换为Outline视图可接受的SourceMethod对象我们的工作我们的工作未来工作更广泛的事件监听层次化的事件模型可定制的插件监听结构对日志进行合并等处理提交策略

    注意事项

    本文(EclipseIDE过程数据采集技术.ppt)为本站会员(wuy****n92)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开