【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
对不同种类的系统,各种性能要求的必要与否,优先顺序都不尽相同。如对大型系统,一般应用软件,重要实时系统和临时软件,要求各不相同。
。