- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件生存周期的最后一个阶段系统投入生产性运行以后的时期
软件生存周期的最后一个阶段 系统投入生产性运行以后的时期 需要的工作量非常大: 开发成本的四倍左右 60%以上的人力 有资料表明,在数据处理方面,预算的30%-80%往往需用于软件的维护工作 ? ––––软件开发必须有利于提高软件可维护性 改正性维护 ––– 对使用中发现的程 序错误进行修改 适应性维护 ––– 为配合环境的变化 而进行的修改 完善性维护 ––– 增加新功能或修改 已有功能 预防性维护 ––– 给未来的改进奠定 更好的基础而修改 一直是软件生存周期中被忽视的阶段 关于维护的文献很少 几乎没有提出什么有效的技术途径和“方法” 软件可维护性––––维护人员理解、改正、改动和改进某软件的难易程度 从三个不同的方面考虑: ? 1. 为了完成维护任务需要进行的活动,以及软件工程方法学对这类活动的功效的影响; 最明显的,软件维护的费用随时间稳步上升: 1970年----35%-40% 1980年----40%-60% 1990年----70%-80% …… 无形的代价: 因为维护现有软件占用了资源,使开发新软件错失良机;当看来合理的维护要求未得到及时满足将引起用户不满;考虑欠周到的维护使软件引入新故障—质量降低;为了应急,临时抽人,使正在进行的开发工作打断或混乱;软件生产率大幅度下降 用于维护工作的劳动: 生产性活动(分析评价、修改设计、编写程序代码等) 非生产性活动(理解程序、解释数据结构、接口特点、 性能限度等) 维护工作量的一个模型: M =P +K ×exp ( c -d ) 其中 M––维护用的总工作量 P–––生产性工作量 K–––经验常数 c–––复杂程度 d–––维护人员对软件的熟悉程度 模型表明:如果软件的开发途径不好(即,没有使用软件工程方法论),而且原的开发人员不能参加维护工作,那么维护工作量(和费用)将指数地增加 起因:软件定义和开发的方法有缺点 无严格、科学的管理与规划 * 软件维护 软件维护的定义 在软件交付使用后,为了改正错误或满足新的需要而修改软件的过程 如何提高软件的可维护性 一、维护的特点 如何提高软件的可维护性 结构化维护 非结构化维护 文档齐全 源程序 2. 维护的代价 如何提高软件的可维护性 如何提高软件的可维护性 3. 维护的问题 例子:某公园有一游船码头,负责人请一位软件开发人员实现 计算机辅助游船管理系统。要求如下: 当游客向租船处查问是否有可以租用的船只,如果租船处有空船,管理员就准备好船只,帮助游客上船,并在联机终端上打入一信息“S”表示租船周期开始。计算机自动把当时时钟值送入信息域。当游客还船时,管理员打入另一信息“E”表示租船周期结束。由管理员向游客结算租船时间和费用。一天结束时,管理员要用一些管理信息总结每天工作状况,要求系统打印出: 租船次数 平均租船时间 如何提高软件的可维护性 显然,该系统的功能包括两部分: 对输入流的信息进行汇总计算; 打印输出. 因为 平均租船的时间 = 总的时间 / 租船次数 总时间 = ( 第一条租船结束时间 - 第一条租船开始时间) + (第二条租船结束时间 - 第二条租船开始时间) +…… 或者 总时间 =(第一条租船结束时间 + 第二条租船结束时间 + ……) -(第一条租船开始时间 + 第二条租船开始时间 + ……) 如何提高软件的可维护性 BEGIN OPEN MESSAGE-STREAM NUMBER=0 TOTALTIME=0 GET MESSAGE DO WHILE NOT END-OF-STREAM IF CODE=S THEN NUMBER=NUMBER+1 TOTALTIME=TOTALTIME-STARTIME ELSE TOTALTIME=TOTALTIME+ENDTIME ENDIF PRINT NUMBER OF SESSION=NUMBER IF NUMBER=0 THEN PRINT AVERAGE SESSION TIME=TOTALTIME/NUMBER ENDIF CLOSE MESSAGE-STREAM END; 可以写出如下伪码程序: 如何提高软件的可维护性 如此简单的算法完成了全部的功能要求,当然这只是多种实现方案之一。 可后来,一系列的麻烦接踵而至: 不久,负责人希望软件
您可能关注的文档
最近下载
- 职业技能大赛-电池制造工职业技能竞赛理论知识题库(附参考答案).docx
- 走近苏东坡ppt.ppt VIP
- 第1课时 水果店 课件 2025北师版数学三年级上册.ppt
- 2024年客户服务管理员(三级高级工)技能鉴定考试题库-上(单选、多选题汇总).docx VIP
- 失落的一角(精美版绘本).ppt VIP
- 1.1中华人民共和国成立前各种政治力量 课件(共25张ppt)(含音频+视频).pptx VIP
- 可能性(说课课件)四年级上册数学苏教版.ppt
- 计量器具、仪器日常使用点检表.xls VIP
- 食谱编制—食谱编制案例分析(食品营养与配餐课件).pptx VIP
- 2025上半年国内影视剧市场分析.pptx VIP
文档评论(0)