2010-09-23 68 views
2

我是软件质量保证新手。我的老板告诉我,我们怎么能在我们公司做这件事。请有人告诉我什么是软件质量保证,以及哪些开放源码工具可用于软件质量保证。软件质量保证

+0

相关的问题:http://stackoverflow.com/questions/836487/does-quality-assurance-testing-bug-fixing – gideon 2011-01-28 06:07:30

回答

6

你可以尝试阅读“伟大和善良”的博客,比如喜欢'Bliki'的Martin Fowler和Robert Bob's Blatherings的Robert Martin以及Joel Spolsky现在不存在的Joel On Software。所有关于质量的观点都很好。

目前使用java和Macker和Findbugs等工具来检查代码是否正确并遵守指南。

对于可重复性和为了管理而言,由源代码控制系统提取代码的构建服务器(如Hudson或Cruise Control)自动运行单元测试是一个好主意。它也将给予'权力是'一些指标,所以你可以展示你的代码构建,测试等。

最终,虽然它只是归结为好人关心他们在做什么。

2

这完全是关于测试,测试和测试。有许多工具可以帮助您实现这一点,例如单元测试框架,代码分析器,内存分析器等。您将使用的工具取决于您的公司用于其软件的编程语言和开发平台。

0

正如Bernard所说,您需要进行测试。如果您使用Java开发,则可以使用JUnit(NUnit在.Net中的工作方式与此类似)。单元测试只是一个开始,不过您可以查看代码覆盖率工具,以指示单元测试的完成情况(开源工具EMMA和Cobertura为Java提供此功能)。您可能还会使用哈德森自动执行这些测试,只要在您的源代码树中检查到更改(哈德森将为您提供开发过程稳定性的指示,测试用例合格率的大量波动表明您正在进行大量破解例如改变)。

之后,你可以看看类似Findbugs for Java的东西,以发现狡猾的做法。如果您正在使用Eclipse进行Java开发,您可以获取指标插件来对您的代码执行各种其他分析,但您需要知道这些指标实际指示的是什么。

最终,您的产品质量将取决于您是否可以可靠地引入实现其目标的变更而不会导致回归。上面的工具仅仅是开始,需要很长时间才能成为测试的良好者(我自己不在),但是如果您向组织介绍工具和实践,您可以从这里开始工作。

+0

感谢大家的答案。我真的很感激他们 – 2010-09-23 15:11:34

0

总的来说,不要陷入思想这个IT员工唯一问题的共同陷阱。很明显,你不需要代码中的错误,并且有许多工具/流程可以帮助解决这个问题 - QA确实是一个更大的范围过程。如上面DBA_Alex所述,您需要知道您使用软件解决业务时遇到了哪些问题,并且最终需要商业机构参与解决该问题。确保您的最终解决方案包括来自IT和业务的人员......

2

正如其他人所说的,测试是软件质量保证的重要组成部分。但我很惊讶,没有人提到代码评论。看看如何将同行代码评论整合到您的开发过程中;这是提高代码质量并在整个团队中共享知识的好方法。越早发现问题,修复它越简单,越便宜,因此请考虑针对每个源代码更改的代码审查。

如果您想要对QA进行优秀和全面的介绍,请阅读Steve McConnell编写的Code Complete的第II和V部分。实际上,请阅读所有内容 - 它提供了有关如何改进代码质量的实际示例以及解释不同QA技术优点的指标(可向管理人员展示)。

,我提到的章节包括主题,如:

  • 设计理念和做法,以提高质量
  • 高品质例程提高
  • 防御性编程
  • 伪代码编程
  • 技术软件质量(包括相对有效性的评估)
  • 何时d o质量保证
  • 合作建设(包括结对编程,代码检查)
  • 开发测试
  • 调试(包括心理方面的考虑)
  • 重构
  • 代码调整战略和技术

要引用McConnell的软件质量通则:

提高质量降低了开发成本

+0

非常好的重新编码评论。 – sje397 2010-09-23 13:44:39