【www.arisingsemi.com--软件系统】

质量定义
系统特性定义
在写标书的过程中,发现业主对系统有很多“性”要求,一时被这些名词搞的晕头涨脑,现在总结一下它们的定义和区别,不一定完全正确,权当参考。
系统特性在系统的不同层次,不同领域中有不同的定义,例如在软件上,硬件上,数据上都可能存在差异,我们应先确定在什么领域使用这些术语,然后明确其含义。不过应尽量在整个范围内统一各种术语的定义。
系统特性列表------------------------------------------------------------------------可行性  feasibility 针对用户需求,根据成本,人员,时间和其它情况是否可以实现系统功能。

正确性  correctness 系统满足需求,符合设计的规定。
例如对业务流程的实现符合用户要求。
可靠性  reliability 在规定条件和时间内系统失效的概率。以正确性为基础。
可用性  usability 系统提供服务的能力,综合了正确性,可靠性和可维护性。
可维护性 maintainability 从失效到修复的难易程度。
(在教科书中的定义为系统功能修改和升级的难易程度)
另: 可靠性  MTTF(mean time to failure) 可维护性 MTTR(mean time to repair) 可用性  MTTF/(MTTF+MTTR)
可扩展性 expandability 系统功能增加的难易程度。在好的可读性,可测试性基础上的系统特性,为什么有可读性呢。
因为系统的扩展很可能不是由同一批设计开发和测试人员完成。可扩展性中就可能包括通用性,模块化,可重用性和松散耦合等要求。
可伸缩性 extendability 主要指系统在业务量不断变化的情况下处理能力。业务量的变化包括计划中的线形增长和计划外的爆炸式增长。可伸缩性是对设计和程序实现的要求很高,必须从系统需求分析中确定,并贯穿整个设计,开发和测试过程。
健壮性 robustness系统在意外情况下尽量减少系统损失和功能丧失的能力。注意健壮性和可靠性的区别。
易用性(在某些文挡中使用可用性(usability),实际上应当为不同的概念)易用性是衡量使用该系统的难易程度。
决定产品可接受性的核心属性是其正确性,它用于评价实际使用产品时,是否能达到设计人员期望产品实现的目标。有用性的概念可以进一步划分为实用性和易用性。实用性指产品执行任务的能力。根据设计,产品执行的任务越多,其实用性就越高,实用性中包含对正确性的扩展,也就是在正确性的基础上增加一些实用的功能。
显然,若系统很好用但没有什么有价值的功能,那么没有人会使用它;如果系统的功能强大但却很难使用,那么用户也很可能会拒绝这个系统而转向其它的替代品。易用性的评价应来自系统的最终用户,易用性测试可以帮助您判断用户使用系统执行任务的难易程度。
有效性  efficiency系统的时间效率和空间效率高低,是否能及时完成系统功能。对一般软件,随着计算机技术的发展,有效性应不难满足,但对大型系统和实时系统还是要仔细考虑。
 
冗余性 redundance系统中适当采用冗余设计以提高系统可靠性和健壮性。
可重用性 reusability在其它相似环境中使用该系统的难易程度。注意重用性的概念在不同层次有不同的含义和实现方法,例如在软件开发领域,可重用性可分为代码级重用(函数代码库,类,模板)应用级(二进制组件或构件)重用(DLL,LIB,COM,CORBA,BEAN)设计级重用(设计模式,包括各种文挡的重用)系统级重用(软件架构或框架,如基于DOTNET或J2EE,可以理解为设计模式和构件库的大规模重用)
可移植性 transplantability在不同硬件平台和软件平台上迁移的难易程度。
安全性 security用户权限,资源保护(加密解密,验证)和安全审核。
也可分为数据安全和网络安全等
可管理性 manageability可以通过各种手段了解到系统运行的情况,并根据不同情况采取措施的能力。比如性能监视,异常报告,日志记录,故障排除手段,异常处理,降级运行和系统恢复等。

开放性  openness是否符合相关的开放标准。

可读性 readability系统是否易于理解。包括系统设计,文档,代码,操作界面等各个方面。
简明性(简洁性)simplicity用最简洁的方法实现系统功能,简洁性在一定程度上保证了可读性。Simple is elegant
适用性 applicability系统对环境变化的适应能力,在软件上同可移植性。

耐久性  endurability系统可以长期稳定工作,主要针对硬件。

高效性有效性一部分,主要指时间上的系统特性。
可测试性 testability各部分接口明确,输入输出和内部流程定义清晰。

可修复性 repairability同可维护性。
稳定性 stability同可靠性。

兼容性 compatibility综合开放性和可重用性。
另外在数据上,还有以下特性要求,比较好理解,就不一一解释了。
连续性  continuity完整性  integrality准确性 veracity合法性 validity
对不同种类的系统,各种性能要求的必要与否,优先顺序都不尽相同。如对大型系统,一般应用软件,重要实时系统和临时软件,要求各不相同。

本文来源:http://www.arisingsemi.com/it/128956/