高级计算机网络管理员有用吗 高级计算机管理师
软件维护软件维护的目的是保证软件在运营时期能够正常运行。软件具有可维护性由以下三个因素决定:可理解性可测试性可修改性提高软件的可维护性采用软件工程提高软件的可维护性:注重文档(用户文档和系统文档)注重可维护性的开发过程:从软件的可理解性、可测试性、可修改性等方面提高软件可维护性。需求分析阶段对可能的修改部分明确说明,设计阶段遵循高内聚低耦合的设计原则,编码阶段采用科学的编码规范,保证保释的质量,测
软件维护
软件维护的目的是保证软件在运营时期能够正常运行。
软件具有可维护性由以下三个因素决定:
可理解性
可测试性
可修改性
提高软件的可维护性
采用软件工程提高软件的可维护性:注重文档(用户文档和系统文档)
注重可维护性的开发过程:从软件的可理解性、可测试性、可修改性等方面提高软件可维护性。需求分析阶段对可能的修改部分明确说明,设计阶段遵循高内聚低耦合的设计原则,编码阶段采用科学的编码规范,保证保释的质量,测试阶段做好测试记录及相关文档,维护阶段有要严格的配置管理,保证系统文档、用户文档与系统的一致性。
可维护性的度量
从软件的内部和外部两个方面来度量可维护性
软件外部使用平均修复时间(MTTR)来度量软件的可维护性,它是指处理一个有错误的软件组件需要花费的平均时间。
M=1/(1+MTTR)
平均修复时间需要记录:分析问题需要的时间、确定改动方案需要的时间、执行改动花费的时间、测试改动花费的时间、其他管理花费的时间
软件内部,通过度量软件的复杂性来间接度量可维护性,与软件复杂性相关的因素包括:环路数、软件规模、其他因素(嵌套深度、系统用户数)
软件维护的分类
纠错型维护:纠正和改正在软件使用过程中发现的错误
适应型维护:适应变化了环境而修改软件的活动
完善型维护:为了扩充或完善原有软件的功能或性能而修改软件的活动
预防型维护:为了提高软件的可维护性和可靠性,为未来进一步改进打下基础而修改软件的活动。
纠错型维护、适应维护、完善型维护是由用户驱动的、预防型维护是由开发商驱动的。
总体上完善性维护约占50%以上,适应性维护约占25%,纠错型维护约占20%,预防型维护约占5%。
软件维护的工作量
维护活动可分成生产类(如确认需求、设计、编码、测试、培训等)和非生产类(熟悉原有软件的代码,理解原有软件的结构等)
维护工作量数学模型:
M=维护的总工作量
P=生产类活动工作量
K=经验常数
c=软件的复杂程度
d=维护人员对软件的熟悉程度
生产类维护工作量相对来说比较稳定
由于开发混乱,导致软件复杂度c增加,同时使维护人员理解软件的难度增加,对软件的熟悉程度d降低,维护工作量快速上升
在软件复杂度c一定的前提下,维护人员对软件的熟悉程度d越低,则维护工作量呈指数规律增加
影响维护工作量的其它因素包括:
维护工作本身是否规范,及维护工作对后续维护工作量的影响
软件系统的类型不同维护工作量也有区别
硬件是否稳定。
软件维护作业的实施和管理
本质上说,维护过程是修改和压缩了的开发过程
1、建立维护组织
2、提出维护需求
3、实施维护作业
4、记录维护要素
5、评价维护活动
软件再生工程
1、筛选
2、文档重构
3、代码重构
4、数据重构
5、逆向工程
6、重新开发
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>