软件开发后影响软件可维护性的因素
2015-02-28 13:51:31 访问:
如果软件开发没有采用结构化分析与设计方法,则只能相应进行非结构化维护。软件开发这时系统软件配置的唯一成分是程序源代码,一旦有系统维护的需求时,软件开发的维护工作只能从艰苦的评价程序代码开始。由于没有完整规范的设计开发文档,无程序内部文档,对于软件结构、数据结构、系统接口以及设计中的各种技巧很难弄清,如果编码风格再差一些,则系统维护工作十分艰难,因此,软件人员宁可重新编码,也不愿维护这种系统。同时,由于无测试文档,不能进行回归测试,对于维护后的结果难以评价。若采用了结构化方法,则能够很好克服非结构化开发方法所产生的难题。从本质上来说,这个质量属性就是软件的维护过程,它描述了软件开发生命周期中最主要的开销。因此,软件系统的可维护性对软件的成本有着重要的影响。这就意味着我们能够通过预测软件系统的可维护性来有效的管理软件开发的成本。软件可维护性预测的研究主要包括基于各种度量因素来建立和确认各种可维护性预测器从而支持各种软件维护活动。
一些软件容易受到外界的信号干扰,会解数据,产生误动作。
死机:产生误动作后,会引起死机,这时得有个死机自动复位功能。
软件自检:有个功能专门测软件,自检功能,一但出问题,对维护软件一目了然。
1.可理解性。软件可理解性表现为外来读者理解软件的结构、接口、功能和内部过程的难易程度。模块化、详细的设计文档、结构化设计、源代码内部的文档和良好的高级程序设计语言等等,都对改进软件的可理解性有重要贡献。
2.可测试性。诊断和测试的难易程度主要取决于软件容易理解的程度。良好的文档对诊断和测试是至关重要的。此外,软件结构、可用的测试工具和调试工具,以及以前设计的测试过程也都是非常重要的。维护人员应该能够得到在开发阶段用过的测试方案,以便进行回归测试。在设计阶段应该尽力把软件设计成容易测试和容易诊断的。
3.可修改性。软件容易修改的程度和软件设计原理和规则直接有关。耦合、内聚、局部化、控制域与作用域的关系等等,都影响软件的可修改性。
通过对系统可维护性的分析显见,提高系统可维护性应当从系统分析与设计开始,直至系统实施的系统开发全过程,在系统维护阶段再来评价和注意可维护性为时己晚。企业应特别强调提高系统可维护性的工作必须贯穿系统开发过程的始终。
系统维护考虑的因素
系统的维护不仅范围广,而且影响因素多。通常,在进行某项维护修改工作之前,要考虑下列三方面的因素:
(l)维护的背景:★系统的当前情况;★维护的对象;★维护工作的复杂性与规模。
(2)维护工作的影响:★对新系统目标的影响;★对当前工作进度的影响;★对本系统其他部分的影响;★对其他系统的影响。
(3)资源的要求:★对维护提出的时间要求;★维护所需费用(并与不进行维护所造成的损失比是否合算);★维护所需的工作人员。
虽然通过上面三个因素对于系统的可维护性很难量化,但是可以通过能够量化的维护活动的特征,来间接地定量估算系统的可维护性。比如国外企业一般通过把维护过程中各项活动所消耗的时间记录下来,用以间接衡量系统的可维护性,包括:(1)识别问题的时间;(2)管理延迟时间;(3)维护工具的收集时间;(4)分析、诊断问题的时间;(5)修改设计说明书的时间;(6)修改程序源代码的时间;(7)局部测试时间;(8)系统测试和回归测试的时间;(9)复查时间;(10)恢复时间。
选购指南:
本公司包括青岛软件公司、莱芜软件公司、德州软件公司、淄博软件公司、枣庄软件公司等分公司,其中莱芜软件公司主要为莱芜地区供应各品种型的开发,具体包含如:莱芜软件开发,莱芜APP开发,莱芜手机客户端开发;青岛软件公司主要为青岛地区供应各品种型的开发,具体包含如:青岛软件开发,青岛APP开发,青岛手机客户端开发德州软件公司主要为德州地区供应各品种型的开发,具体包含如:德州软件开发,德州APP开发,德州手机客户端开发;淄博软件公司主要为淄博地区供应各品种型的开发,具体包含如:淄博软件开发,淄博APP开发,淄博手机客户端开发;枣庄软件公司主要为枣庄地区供应各品种型的开发,具体包含如:枣庄软件开发,枣庄APP开发,枣庄手机客户端开发可以满足各种大中小型各类企业的管理需要。