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

    第5章软件维护和软件重用课件.pptx

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

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

    第5章软件维护和软件重用课件.pptx

    ,软件工程,软件,5 软件维护和软件重用,软件维护,软件维护(Software Maintenance)就是在软件产品交付之后对其进行修改,以排除故障,或改进性能和其他属性,或使产品适应改变了的环境。软件维护是软件生存周期中持续时间最长的一个阶段,也是花费精力和费用最多的一个阶段。在软件运行的过程中,维护工作可以占到软件开发全部工作量的一半以上。软件的可维护性是指软件被理解、改正、调整和改进的难易程度,它是指导软件工程各阶段工作的一条基本原则。提高可维护性、减少维护的工作量、降低软件的总成本是软件工程的一个重要任务。软件重用是指在软件开发、维护过程中不作修改或稍加修改就可以重复使用相同或相似的软件元素的过程。软件重用的目的是能更快、更好、成本更低地生产软件。在软件维护时,目前常采用软件重用技术、逆向工程和再工程。本章重点:如何提高软件的可维护性;软件重用。,软件维护和软件重用,5 软件维护和软件重用软件维护 软件维护(Sof,Contents,目录,Contents目录软件维护01软件重用和再工程02,软件维护,01软件维护软件维护的种类软件维护的特点软件维护过程提高软件,5.1 软件维护,5.1.1 软件维护的种类,1)改正性维护 软件测试不大可能找出一个大型软件系统的全部隐含错误。也就是说,几乎每一个大型程序在运行过程中,都会不可避免地出现各种错误。为克服现有软件故障而进行的维护称为改正性维护(Corrective Maintenance)。,3)完善性维护 软件交给用户使用后,用户往往会因为工作流程、应用环境的变化,要求增加新的功能和完善性能等。为增加软件功能、增强软件性能、提高软件运行效率而进行的维护称为完善性维护(Perfective Maintenance)。,2)适应性维护 计算机技术的发展十分迅速,计算机的软件、硬件环境也在不断发生变化,而应用软件的使用寿命往往比原先开发时的系统环境更为长久,因此,常常需对软件加以修改使之适应改变了的环境。为使软件产品适应环境的变化而进行的软件维护称为适应性维护(Adaptive Maintenance)。,4)预防性维护 为了进一步提高软件的可维护性和可靠性,为改进软件性能创造条件,需要对软件进行的其他维护称为预防性维护(Preventive Maintenance)。,5.1 软件维护5.1.1 软件维护的种类DABC1)改正性,5.1 软件维护,5.1.1 软件维护的种类,图5-1 各类维护工作量占总的维护工作量的百分比,5.1 软件维护5.1.1 软件维护的种类图5-1 各类维,5.1 软件维护,5.1.2 软件维护的特点,5.1 软件维护5.1.2 软件维护的特点1)结构化维护与非,5.1.2 软件维护的特点,5.1.2 软件维护的特点,5.1.2 软件维护的特点图5-2描绘了因软件维护要求而引起,5.1.2 软件维护的特点,5.1.2 软件维护的特点,5.1.2 软件维护的特点图5-2描绘了因软件维护要求而引起,5.1.2 软件维护的特点,5.1.2 软件维护的特点,5.1.2 软件维护的特点5.1.2 软件维护的特点412,5.1.2 软件维护的特点,5.1.2 软件维护的特点,5.1.2 软件维护的特点5.1.2 软件维护的特点01,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程软件维护过程实际上也,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程不管是改正性、完善性,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护维护组织软件开发机构应当建立正式的维护组织,,5.1 软件维护,5.1.3 软件维护过程,2)维护报告软件开发组织在收到用户的维护要求表后,维护管理员应写一份软件维护报告。该报告应包含下述内容:按照要求进行维护所需要的工作量;维护要求的性质;该项要求与其他维护要求相比的优先程度;预计软件维护后的状况。,5.1 软件维护5.1.3 软件维护过程维护文件软件维护要有,5.1 软件维护,5.1.3 软件维护过程,修改程序所增加的源语行数、所删除的源语行数;各次修改耗费的人时数、累计用于维护的人时数;软件工程师的姓名;维护要求表的标识;维护开始和结束的日期;维护工作的净收益。,3)维护记录维护记录可以包括如下内容:程序名称;维护类型;所用的编程语言;程序行数或机器指令条数;程序开始使用的日期;已运行次数、故障处理次数;程序改变的级别及名称;,5.1 软件维护5.1.3 软件维护过程维护文件02修改程序,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程维护工作流程维护工作,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程维护工作流程当然,有,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程对维护的评价在维护过,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程软件维护的副作用维护,5.1 软件维护,5.1.3 软件维护过程,5.1 软件维护5.1.3 软件维护过程数据副作用文档副作用,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性软件可维护性是,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性可维护性(1,5.1 软件维护,5.1.4 提高软件的可维护性,以上影响软件可维护性的因素中,结构合理性是软件设计时应当考虑的。系统结构若不合理,对其维护当然困难较大。所谓结构的合理性主要是以下列几点为基础的:模块化、层次组织、系统文档的结构、命令的格式和约定、程序的复杂性等。其他影响软件可维护性的因素还有应用的类型、使用的数据库技术、开关与标号的数量、IF语句的嵌套层次、索引或下标变量的数量等。此外软件开发人员是否能参加维护也是值得考虑的因素。,5.1 软件维护5.1.4 提高软件的可维护性以上影响软件可,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性135纠错或,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性,5.1 软件维护,5.1.4 提高软件的可维护性,可修改性是指程序容易修改的程度。一个可修改的程序往往是可理解的、通用的、灵活的和简明的。所谓通用,是指不需要修改程序就可使程序改变功能。所谓灵活,是指程序容易被分解和组合。要度量一个程序的可修改性,可以通过对该程序做少量简单的改变来估算修改这个程序的困难程度,例如对程序增加新类型的作业、改变输入/输出设备、取消输出报告等。如果对于一个简单的改变,程序中必须修改的模块超过30%,则该程序属于难修改之列。模块设计的内聚、耦合、局部化等因素都会影响软件的可修改性。模块抽象和信息隐蔽愈好,模块的独立性愈高,则修改时出错的机会也就愈少。,5.1 软件维护5.1.4 提高软件的可维护性3)可修改性,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性,5.1 软件维护,5.1.4 提高软件的可维护性,要提高软件的可维护性,应从以下几个方面入手。,5.1 软件维护5.1.4 提高软件的可维护性1明确软件的,5.1 软件维护,5.1.4 提高软件的可维护性,5.1 软件维护5.1.4 提高软件的可维护性4采取有效的,软件重用和再工程,开发可重用的软件构件,软件逆向工程,软件再工程,02软件重用和再工程软件的重用软件重用过程模型开发可重用的软,5.2 软件重用和再工程,5.2 软件重用和再工程软件重用(Software Reu,5.2 软件重用和再工程,5.2 软件重用和再工程逆向工程(Reverse Engin,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用软件软件成分,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用软件软件成分,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用软件知识重用,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用源代码的剪贴:,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用设计结果的重用,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用规格说明重用特,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用项目计划,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用需求模型和规格,5.2 软件重用和再工程,5.2.1 软件的重用,5.2 软件重用和再工程5.2.1 软件的重用用户文档和技术,5.2 软件重用和再工程,5.2.2 软件重用的过程模型,5.2 软件重用和再工程5.2.2 软件重用的过程模型软件,5.2 软件重用和再工程,5.2.2 软件重用的过程模型,5.2 软件重用和再工程5.2.2 软件重用的过程模型类构,5.2 软件重用和再工程,5.2.2 软件重用的过程模型,5.2 软件重用和再工程5.2.2 软件重用的过程模型继承重,5.2 软件重用和再工程,5.2.2 软件重用的过程模型,5.2 软件重用和再工程5.2.2 软件重用的过程模型软件,5.2 软件重用和再工程,5.2.2 软件重用的过程模型,5.2 软件重用和再工程5.2.2 软件重用的过程模型软件,5.2 软件重用和再工程,5.2.3 开发可重用的软件构件,5.2 软件重用和再工程5.2.3 开发可重用的软件构件,5.2 软件重用和再工程,5.2.3 开发可重用的软件构件,随着软件构件的不断丰富,软件构件库的规模会不断扩大,软件构件库组织结构的合理性将直接影响构件的检索效率。库结构的设计和检索方法的选用,应当尽量保证用户容易理解、便于使用。对可重用软件构件库要进行分类,以便于用户检索使用。软件构件分类的方法有3种典型模式:枚举分类、刻面分类和属性值分类。,5.2 软件重用和再工程5.2.3 开发可重用的软件构件,5.2 软件重用和再工程,5.2.3 开发可重用的软件构件,Enumerated Classification,5.2 软件重用和再工程5.2.3 开发可重用的软件构件,5.2 软件重用和再工程,5.2.3 开发可重用的软件构件,Faceted Classification,5.2 软件重用和再工程5.2.3 开发可重用的软件构件,5.2 软件重用和再工程,5.2.3 开发可重用的软件构件,Attribute-Value Classification,5.2 软件重用和再工程5.2.3 开发可重用的软件构件,5.2 软件重用和再工程,5.2.4 软件逆向工程,5.2 软件重用和再工程5.2.4 软件逆向工程逆向工程是,5.2 软件重用和再工程,5.2.4 软件逆向工程,5.2 软件重用和再工程5.2.4 软件逆向工程软件的逆向,5.2 软件重用和再工程,5.2.4 软件逆向工程,图5-6 软件逆向工程的过程及可能恢复的信息,5.2 软件重用和再工程5.2.4 软件逆向工程图5-6,5.2 软件重用和再工程,5.2.4 软件逆向工程,软件逆向工程的实现方法很多,主要有以下3种。,5.2 软件重用和再工程5.2.4 软件逆向工程分析通过信息,5.2 软件重用和再工程,5.2.4 软件逆向工程,软件逆向技术的目的是用来研究和学习先进的技术,特别是当手里没有合适的文档资料,又很需要实现某个软件功能的时候。也正因为这样,很多软件为了垄断技术,在软件安装之前,要求用户同意不去逆向研究。,随着计算机技术在各个领域的广泛应用,特别是软件开发技术的迅猛,5.2 软件重用和再工程,5.2.5 软件再工程,5.2 软件重用和再工程5.2.5 软件再工程软件再工程(,5.2 软件重用和再工程,5.2.5 软件再工程,5.2 软件重用和再工程5.2.5 软件再工程软件再工程的,5.2 软件重用和再工程,5.2.5 软件再工程,5.2 软件重用和再工程5.2.5 软件再工程再分析阶段,5.2 软件重用和再工程,5.2.5 软件再工程,5.2 软件重用和再工程5.2.5 软件再工程再编码阶段,5.2 软件重用和再工程,5.2.5 软件再工程,5.2 软件重用和再工程5.2.5 软件再工程再测试阶段,本章小结,本章小结,软件维护就是在软件产品交付之后对其进行修改,以排除故障,或改进性能和其他属性,或使产品适应改变了的环境。软件维护分为4种,即改正性维护、适应性维护、完善性维护、预防性维护。软件可维护性是指软件功能被理解、改正、适应和增强的难易程度,是维护人员对软件进行维护的难易程度。可维护性是指导软件工程各阶段的一条基本原则,提高可维护性是软件工程追求的目标之一。在软件开发时明确质量目标、考虑软件的维护问题是必需的、重要的。在软件开发阶段提供完整的、一致的文档,采用先进的软件开发方法和软件开发工具是提高软件可维护性的关键。在软件维护时,目前常采用软件重用技术、逆向工程和再工程。,本章小结,本章小结本章小结软件维护就是在软件产品交付之后对其进行修改,,第5章软件维护和软件重用课件,

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开