欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    se8_ch05_v5软件工程工具.ppt

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

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

    se8_ch05_v5软件工程工具.ppt

    Object-Oriented and Classical Software Engineering 计算机科学与技术学院于明远,CHAPTER 5,THE TOOLS OF THE TRADE,Overview,Stepwise refinement Costbenefit analysis Software metrics CASE Taxonomy of CASE分类 Scope of CASE Software versions Configuration control Build toolsProductivity gains with CASE technology使用Case技术提高技术生产力,5.1 Stepwise Refinement逐步求精法,软件开发的分析工具,工具,逐步求精法成本-效益分析法,理论(分析)工具,软件工具,帮助软件工程师小组开发和维护软件的产品,软件(CASE)工具,A basic principle underlying many software engineering techniques“Postpone decisions as to details as late as possible to be able to concentrate on the important issues”尽可能将细节的定义推延到最后,以便集中精力在重要的事项上,Millers law(1956)A human being can concentrate on 7 2 items at a time,5.1.1 Stepwise Refinement Mini Case Study,设计一个产品,更新包含有True Life Software Disasters月刊订户名和地址数据的顺序主文件。Three types of transactions Type 1:INSERT(a new subscriber订户into the master file)Type 2:MODIFY(an existing subscriber record)Type 3:DELETE(an existing subscriber record)事务是按订户名的字母顺序排序的。如果对一个指定的订户有两个以上的事务,则对该用户的事务重新排序,以便插入发生在修改之前,而修改发生在删除之前。,设计解决方案,第一步:建立输入事务的典型文件,如下表所示:,问题描述如下,有两个输入文件,三个输出文件:,输入:(1)旧的主文件名和地址记录;(2)事务文件;输出:(1)新的主文件名和地址记录;(2)异常报告;(3)概要和工作结束消息;,更新主文件,事务文件,异常报告,旧的主文件,概要和工作结束消息,新的主文件,解决方案,第二步:开始设计过程;开始点是上图的更新主文件方框,更新主文件,输入,处理,输出,该方框可分解为三个方框:输入、处理和输出;分离输入,输出,关注处理!,设计的第一次求精,事务文件,旧的主文件,新的主文件,异常报告,解决方案,处理的图表表示:,解决方案,第三步对处理框再次提炼,进行第二次求精,如下图所示:,更新主文件,输入,差错,写入新文件记录,执行插入,输出,执行修改,差错,差错,测试事务类型,测试事务类型,比较事务记录关键词主文件记录关键词,执行删除,A,A,A,A,A,=,INSERT,INSERT,MODIFY,MODIFY,DELETE,DELETE,解决方案,第四步求精输入和输出方框,如下图所示,更新主文件,执行差错处理子程序,写入新文件记录,写新文件记录,写工作结束消息,写新主文件记录,执行差错处理子程序,读事务文件,测试事务类型,测试事务类型,比较事务记录关键词主文件记录关键词,读事务文件,A,A,A,A,=,INSERT,INSERT,MODIFY,MODIFY,DELETE,DELETE,读旧主文件记录,执行差错处理子程序,读旧主文件读事务文件,设计有主要错误,解决方案,第五步,进行第四次求精,考虑打开,关闭文件等细节问题的处理;逐步求精法可看成是建立某个阶段内需解决的各种问题的优先级的一种技术,逐步求精确保每个问题都得到解决,并且在合适的时间解决,不需要一次处理超过7 2个程序块;逐步求精是一项通用技术,可用于软件开发的每个工作流,表现形式也可以多种多样。使用逐步求精法的难点在于确定当前的求精中必须处理的重要事项,以及哪些事项需推迟到后面的求精中解决;,5.2 CostBenefit Analysis 成本效益分析法,成本-效益分析法:对比估计的未来收益和预测的未来成本,确定一个可能的行为过程是否有利可图;成本-效益分析法是确定客户是否应当进行业务计算机化的基本技术,如果确定使用计算机处理业务,应用何种方式来比较各种可选方案的成本和效益;,5.3 Software Metrics软件度量,没有度量(或测度)是不可能在软件开发过程的早期,在问题暴露之前检测到该问题的;常用的度量:代码行(LOC),每千行代码检测出的错误数,平均故障间隔时间,人月为单位测试工作量,职员的流动性;产品度量:测量产品本身的某个特性,例如规模或可靠性过程度量:开发者使用这些度量推断有关软件开发过程的信息,例如开发过程中错误检测的有效性;成本与计算度量值所需搜集的数据相关;一个软件组织应该测量什么?The Five Basic Metrics:(1)规模(代码行);(2)成本(美元);(3)持续时间(以月计);(4)工作量(人月);(5)质量(检测错误数)。这些度量每一个都必须按工作流测量,根据从这些基本度量中获得的数据,管理者可以发现软件组织内部的问题;,5.4 CASE(Computer-Aided Software Engineering),软件开发产品的开发过程中,需要进行许多不同的操作。典型的活动包括评估资源要求、写出规格说明文档、进行集成测试以及编写用户操作指南。这些工作不能由计算机完全自己实现,需要人的参与,但是计算机可以辅助这些工作的实现;CASE:计算机辅助软件工程;CASE包含计算机支持软件工程的所有方面;,CASE的分类,UpperCASE(front-end tool)高端CASE或高端工具:在软件开发过程的较早工作流帮助开发者的CASE工具;LowerCASE(back-end tool)低端CASE或低端工具:帮助实现流、和交付后维护的CASE工具;数据字典一致性检查器报表生成器屏幕生成器图形表示工具与数据字典结合,一致性检查器、报表生成器一起构成需求、分析和设计的工作平台;另一类工作平台是需求管理工作平台,这类工作平台允许系统分析员组织和跟踪软件开发项目的需求;,CASE的分类,CASE工作平台是一些工具的集合,共同支持一个或两个活动,这里,活动是相关任务的集合;将CASE技术从工具到工作平台的发展再继续下去,下一项是CASE环境。与一个支持一个或两个活动的工作平台不同,环境支持整个软件开发过程,或者至少是软件开发过程的大部分;,Taxonomy分类of CASE(contd),(a)Tool versus(b)workbench平台 versus(c)environment,Figure 5.9,5.6 Scope of CASE CASE的范围,实现CASE技术的一个主要原因是总是需要有准确、最新和可用的文档;,编程工具一词指诸如文本编辑器、调试器和灵巧打印机这样的CASE工具;,电子邮件电子数据表格文字处理器,结构编辑器:灵巧打印机在线接口检查语法指导编辑器操作系统前端源代码调试器,5.7 Software Versions 软件版本,老版本,新版本,新版本替代老版本?,适应性维护,纠错性维护,多个软件版本,控制!,5.8 Configuration Control 配置控制,制品代码形式:(1)源代码(2)目标代码(编译代码)(3)可执行载入映像,运行时例程,可执行载入映像,编译文件1,编译文件2,编译文件3,编译文件n,源文件1,源文件2,源文件3,源文件n,.,.,某个(完成的)产品的给定版本所赖以建造的每个制品的特定版本称为该产品那个版本的配置,配置控制,现象:测试报告显示一个制品在某组测试数据上有问题。问题:程序员如何确定制品哪个变种版的哪个修订版进入了出现问题的产品版本?处理多个版本时必须解决两个问题:第一,有必要区分版本,以便将每个制品的正确版本编译并链接到产品中;第二,存在相反的问题:给定一个可执行载入映像,确定每个组件的哪个版本进入了它;解决问题的方法:(1)版本控制工具;(2)保留产品每个版本的详细记录(出处),配置控制,版本控制常用技术:使每个文件的名称包含两部分,文件名本身和修订版本号;关于多个变种版,一个基本的文件名后跟着一个带圆括号的变种名;版本控制记录出处的方法:包括每个源代码组成部分的名称、使用的多种编译器和链接器的版本、创建产品的人的名字,生成产品的日期和时间;如果在一个变种版中发现的错误在其他变种版本中也存在,怎么办?配置控制工具可以自动管理多个变种版,但配置控制的作用不局限于多个变种版。配置控制工具还可以处理小组开发和维护时出现的问题;,Configuration-Control,问题:多个程序员同时维护一个产品,会产生意想不到的麻烦如何解决?基准Baselines:产品中所有制品的配置(版本集)个人工作台Private workspaces冻结version is frozen产品开发过程中的配置控制While an artifact is being codedThe programmer performs informal testingThen the artifact is given to the SQA group for methodical testingAn artifact must be subject to configuration control from the time it is passed by SQA,Configuration-Control Tools,UNIX version-control toolssccs源代码控制系统rcs修订版控制系统cvs并行版本控制系统Popular commercial configuration-control toolsPVCSSourceSafeOpen-source configuration-control toolcvs,5.9 Build Tools建造工具,任何版本控制工具都将帮助用户区分源代码制品的不同版本;但跟踪编译代码更难,因为有些版本控制工具不把编译后版本的修改版本附上;解决方法:晚上自动编译每个制品的最新版,确保所有的编译代码总是最新的;缺点:浪费计算机时间;解决方法:如UNIX工具make,如make这样的工具已经加到不断变化的编程环境中;,5.10 Productivity Gains with CASE Tools提高生产力,Survey of 45 companies in 10 industries(1992)Half information systemsQuarter scientific software Quarter real-time aerospace softwareResults年生产力 annual productivity gains时间成本软件质量,作业,P90 5.6,5.7,5.17,The End,Thank you!,

    注意事项

    本文(se8_ch05_v5软件工程工具.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开