软件质量的特性
作者:网络转载 发布时间:[ 2013/6/28 15:10:11 ] 推荐标签:
软件同时拥有内在和外在的质量特性。
外在特性是指该软件用户所能感受到的部分,包括下列内容。
1。正确性。指系统规范,设计和实现方面的错误多少程度(实现是否与设计一致,是否满足用户功能)。
2。可用性(易用性)。指用户学习和使用一个系统的容易程度。
3。效率(性能)。指软件是否尽可能少的占用资源,包括内存的cpu,执行时间等。
4。可靠性。指在指定必须条件下,一个系统持续工作的能力,应该有很长的平均无故障时间。
5。完整性(安全性)。指系统程序或者数据对于授权访问的限制。
6。适应性。指系统在不同环境下运行的适用范围。
7。精确性。指一个投入生产的系统,输出结果的误差程度。
8。健壮性。这指得是系统在接收无效,错误输入或者处于压力环境时继续正常运行的能力。
内在特性
1。可维护性。指是否能够很容易的对系统进行修改或者增加功能,提高性能,以及修正缺陷。
2。灵活性。假如一个系统是为特定用途或者环境而设计的。那么该系统被用于其他目的或者环境的时候,需要对系统修改的程度。
3。可移植性。指为了在原来的设计的特定环境之外运行,对程序的修改的难易程度。
4。可重用性。指系统的某部分可被应用到其他系统中的程度。以及此项工作的难易程度。
5。可读性。指阅读并理解系统代码的难易程度。尤其在细节语句的层次上。
6。可测试性。指的是你可以进行何种程度的单元测试或者系统测试,以及在何种程度上验证系统是否符合需求。
7。可理解性。旨在系统细节语句层次上的理解整个系统的难易程度。与可读性相比,可理解性对系统提出了更高的内在一致性要求。
要让所有的特性都表现得尽善尽美是绝无可能的。需要根据一种互相竞争的目标寻找出一套优化的解决方案。但注重某一个特性并非意味着必须牺牲另一个特性。一个无法从此同内部理解或者维护的软件,其缺陷也是很难修正的。而这又会影响正确性和可靠性等外在特性。
如何改善软件质量的技术
软件质量保证是一个需要预先计划的,系统性的活动,其目标是为了确保系统具备人们所期望的特性。
软件质量目标
改善软件质量的一种强有力的方法,是根据前面章节所提到的各种外在和内在特性,明确定义出软件质量的目标。
明确定义质量保证工作
在保证质量工作中,一个常见的问题是质量被认为是次要目标,快速而糟糕的建成已经成为了普遍现象。在这种组织中,胡乱堆砌劣质代码并能快速“完成”的程序员,可能比高质量并确保程序良好工作的程序员得到的报酬还要高。所以团队必须应该向程序员说明,质量应该放到第一位。如此一来,程序员会作出反应。
测试策略
执行测试可以为产品的可靠性进行详细的评估。质量保证的一部分是制定出一套与产品需求,架构以及设计相关联的测试策略。许多开发人员把测试作为质量评估和质量改善的首要方法,这样的想法会使得测试不堪重负。
软件工程指南
在开发过程中,指南应当控制软件的技术特性,它应当贯彻到所有的开发活动中去。包括问题定义,需求分析,架构设计,构建以及系统测试。
非正式技术复查
许多软件开发人员会在正式复查之前检查自己的工作。非正式复查(review)包括对设计和代码检查或者和其他同事一起将代码走查一便。
正式技术复查
管理一个软件工程过程的工作之一。是要在低成本的环节里抓出问题。质量部门周期性的测试或者复查,以检验某一阶段的产品时候已经具备了进入下一阶段前所要求的质量。质量部门通常从需求分析到架构,从架构到构建,以及从构件到系统测试之间的转换过程。
外部审查
外部审查是一种用于确定一个已经开发产品或项目状态的特殊技术复查方法。一个外审小组由开发人员组织以外的人员构成,并且向委托人汇报审查结果,这个委托人通常是经理。
质量保证的开发过程
良好的对变更的控制过程。
结果量化。
制作原型。制作圆型是指开发出系统中的关键功能的实际模型。经过验证,构建原型能产生更完善的设计,更贴近用户的需求,以及更好的维护性。
什么时候进行质量保证工作
缺陷可能在任何阶段?透到软件中,因此,你需要在早期阶段开始强调质量保证工作,并且将其贯彻到项目余下的部分中。在开工之时,这一工作应该添加到项目计划中。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11