- 2
- 0
- 约4.31千字
- 约 7页
- 2017-12-07 发布于贵州
- 举报
【精选】如何开发高质量的软件
Vector Software
白皮书
如何开发高质量的软件
通过测试集中型的软件开发方法来提高软件质量
“构建技术系统所要做的工作是非常繁重的,同时还需要专业知识:语言和协议,编码与调
试,测试与重构。”——James Garrett
概述
每年各个企业都在努力实现企业的主要目标。通常,这都是通过实现基于度量指标的性能目
标 (可能包括质量目标)以及利用最佳惯例规范商业流程来实现的。最后,要通过一些测试
和报告形式来评估这些目标对企业的影响。在接受评估之前,机智的员工都会要一个评估单
——但是在开发新的软件产品,确定测试目标时,他们常常会忽略这一点。
企业在设计实体产品时,会花很多时间设计产品的生成流程,以及对完成的产品进行自动化
测试。大家都不希望设计出一款无法高效地进行生产和测试的产品。产品在完成设计之前,
先要解决生产和测试的问题。如果所设计的产品成本太高,或者无法持续地投入生产,那么
该设计就没有任何意义。
如果软件开发也使用相同的做法会怎么样?假设,我们在设计软件系统时就想了很多方法来
尽量提高软件的“生产”和“测试”效率。那么,我们不仅能保证软件产品的质量,还能提
供一个很好的流程来确保软件在整个产品生命周期中都有高质量的水准。
构建可测试的软件
所设计的软件产品必须具备“可测性”,这样的观念可能需要企业转变一下思维模式。最初
在进行设计和原型制作时,基本注重的都是功能和性能问题。虽然这些方面也很重要,但是
如果生产出来的应用程序质量很差,存在很多难以维护的bug ,那么产品功能和性能也就无
从谈起了。
有一些 “简单的”方法可以用来构建 “可测性”较高的软件产品,如:确保需求的完整性
和正确性,在设计应用程序时要把软件测试放在心上,采用易于理解的编码方式,“真正”
执行代码评审程序。
细读软件需求
确保软件需求的完整性可以防止很多缺陷的出现。我们可以考虑一下怎么为“平方根”函数
写一个说明。实际上,这是深藏在数学函数库中的一个简单的函数,但是如果条件写得不够
完善,可能也会把“简单的函数”执行得很糟糕。
看看这个说明:
square_root( ) 函数可以返回输入的所有有效值的平方根。
更好的说明是这样的:
square_root( ) 函数可以返回输入的所有有效值的平方根,如果输入的是无效值,就会返回0 。
有效输入包括正的32 位浮点数,0 ,正无穷。无效输入是指:负数,负无穷,非数值。
根据这个说明,设计师可以轻松地构建一套低层级的需求和用于验证该函数能否正确执行的
的测试用例。
分离控制和数据需求
在设计系统时,如果能将控制和数据处理清楚地分离开,可以简化设计,从而帮助提高测试
效率。下图展示了如何它们是如何分离开的:
图1 :将控制和数据处理清楚地分离开可以帮助提高测试效率
清楚地将二者分开,让设计师和测试人员能够专注于输入的特定类型,运行情况和结果。此
外,精简的设计能够提高软件的重复使用率,降低维护成本。
注意编码风格和架构
要提高“可测性”,首先要做的是确保代码易于理解,灵活性高。在软件开发的早期,如果
开发工程师开发的软件“体积小,运行快”,那么他会非常受器重。因为软件系统的内存和
CPU 容量是很有限的,工程师一直要努力在每个应用程序中添加更多的功能。而且,以前
的应用程序的代码库比现在的小很多,当语言和硬件设备发生改变时,工程师常常会将代码
全部重写一遍。
如今,情况和以前大不相同了。虽然现在应用程序的组件在大小和时间方面还是有限制,但
是总的来说,应用程序的大小和生命周期都大大地扩大和延长了。所以,现在构建代码时,
如果代码易于理解和维护,那将是一个很大的优势。幸好,使代码易于理解可以大大提高“可
测性”。
咨询公司Virtual Solutions 的Bob Gary 有一句经典言论“用C 或C++编写代码就像是在没有
任何防护措施的情况下使用电锯”(引用自Byte (1998) Vol. 23, Nr 1-4 p.40)。下面有一些在编
码风格方面有助于提高“可测性”的“安全防护措施”。
图2 :利用这些窍门写出易于测试的代码
执行有重要意义的代码评审流程
如果我们问开发工程师什么样的代码算是设计良好的代码,可能每个人的回答都会不一样。
执行具有重要意义的代码评审流程是一个很好的方法,可以判定代码对于其他人
您可能关注的文档
- 【精选】女孩的教育目标——之子于归宜室宜家.doc
- 【精选】女孩要富养为什么.doc
- 【精选】女孩防性侵害全攻略(家有女儿必看).pdf
- 【精选】女性五期保健知识讲座.doc
- 【精选】女娲补天说课2.ppt
- 【精选】女性孕前检查项目.doc
- 【精选】女性养生13种滋补食材.doc
- 【精选】女性第一次健身常识.doc
- 【精选】女性生殖系统生理.ppt
- 【精选】女性职场商务礼仪必修内容.pdf
- 某镇领导班子2025年度民主生活会对照检查材料.docx
- 高级中学党政办公室主任2025年度述职述廉报告.docx
- 在镇“锤炼作风提效能,凝心聚力建新功”主题春训活动动员部署会上的讲话.docx
- 在2026年春季开学教职工会议上的讲话.docx
- 公司党支部2025年度组织生活会对照检查材料.docx
- 在树立和践行正确政绩观学习教育动员部署会议上的讲话.docx
- 专题党课:筑牢作风“防火墙” 展现司法新担当.docx
- 在树立和践行正确政绩观学习教育专题研讨会上的发言材料.docx
- 在公司2026年度党建暨党风廉政大会上的讲话.docx
- 在县委党的建设工作领导小组会议上关于开展树立和践行正确政绩观学习教育部署工作的讲话.docx
原创力文档

文档评论(0)