博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代码的可维护性问题
阅读量:4566 次
发布时间:2019-06-08

本文共 2327 字,大约阅读时间需要 7 分钟。

在软件的整个生命周期当中,软件维护占有大的一部分。基本上可以分成四个类别:

  • 适应性维护:处理变更和适应环境变化
  • 增强性维护:功能增强
  • 矫正性维护:错误处理
  • 预防性维护:提高可维护性,防止后续出现问题

有调查表明,有75%的维护时间花在一两种类别上,而有21%的时间花在错误修正的维护上。那么怎么样来提高软件的可维护性呢,以下是利于增强维护的几个方面:

维护因子(Maintenance Factors)                             所占比重(PlusRange)

维护专家(Maintenance specialists)                          35%            
职员经难丰富(High staff experience)                        34%            
基于表格的变量和数据(Table-driven variables and data)      33%            
基准代码低复杂度(Low complexity of base code)              32%            
专业搜索引擎(Y2K and special search engines )              30%            
代码重构工具(Code restructuring tools )                    29%            
再工程工具(Re-engineering tools )                          27%            
高级语言(High level programming languages )                25%            
逆向工具(Reverse engineering tools)                        23%            
复杂分析工具(Complexity analysis tools)                    20%            
错误跟踪工具(Defect tracking tools)                        20%            
块更新(Y2K “mass update” specialists)                      20%            
自动化变更控制工具(Automated change control tools )        18%            
无偿加班(Unpaid overtime)                                  18%            
质量度量(Quality measurements )                            16%            
正式的基准代码检查(Formal base code inspections )          15%            
回归测试组件(Regression test libraries)                    15%            
优秀的响应时间(Excellent response time)                    12%            
大于10天的年度培训(Annual training of > 10 days )          12%            
较高的管理经验(High management experience )                12%            
自动化的帮助(HELP desk automation )                        12%            
无错误的模块(No error prone modules )                      10%            
在线错误报告(On-line defect reporting )                    10%            
生产力度量(Productivity measurements)                      8%             
易用(Excellent ease of use)                                7%             
用户满意度(User satisfaction measurements )                5%             
高团队士气(High team morale )                              5%             

----------------------------------------------------------------------------------------

合计(Sum)                                                  503%   

 

 

而不利于系统维护性的因素如下:

 

Maintenance Factors Minus Range
Error prone modules -50%
Embedded variables and data -45%
Staff inexperience -40%
High code complexity -30%
No Y2K of special search engines -28%
Manual change control methods -27%
Low level programming languages -25%
No defect tracking tools -24%
No Y2K “mass update” specialists -22%
Poor ease of use -18%
No quality measurements -18%
No maintenance specialists -18%
Poor response time -16%
No code inspections -15%
No regression test libraries -15%
No help desk automation -15%
No on-line defect reporting -12%
Management inexperience -15%
No code restructuring tools -10%
No annual training -10%
No reengineering tools -10%
No reverse-engineering tools -10%
No complexity analysis tools -10%
No productivity measurements -7%
Poor team morale -6%
No user satisfaction measurements -4%
No unpaid overtime 0%
Sum -500%

 

原文见:

http://en.wikipedia.org/wiki/Software_maintenance

转载于:https://www.cnblogs.com/janas/archive/2012/03/14/2395673.html

你可能感兴趣的文章
大数据的时代意义
查看>>
restful接口就是url嘛,通过http请求发起访问。那接口进行监控,就可以监控这个restful url嘛...
查看>>
MFC中字符串赋值出现“Error:“const char*”类型的实参与“LPCWSTR”类型的形参不兼容”错误的解决方法...
查看>>
hdu1540 区间合并+询问某点的最大连续块
查看>>
生成器和生成器函数以及各种推导式
查看>>
c#找不到类型或命名空间名称“Word”
查看>>
Oracle,第四周
查看>>
用BeautifulSoup简单爬取BOSS直聘网岗位
查看>>
2.13生成可控的随机数据集合 生成九个分布的直方图
查看>>
成员变量、局部变量和静态变量的区别 (转)
查看>>
图论总结
查看>>
《当我谈跑步时,我谈些什么》读后笔记
查看>>
utmp
查看>>
thymeleaf模板使用详解
查看>>
Sql日期时间格式转换
查看>>
固态硬盘——Trim,IGC技术
查看>>
结对编程-四则运算
查看>>
别再问什么是Java内存模型了,看这里!
查看>>
Leetcode OJ: Remove Duplicates from Sorted List I/II
查看>>
南邮 单身二十年
查看>>