欢迎访问中国软件评测中心!

中国评测【见证质量第三期】朱少民:从软件测试到工业APP测试

2019-10-29
中国软件评测中心(工业和信息化部软件与集成电路促进中心)是国内权威的第三方软、硬件产品及系统质量检验检测和认证机构,是直属于工业和信息化部的科研事业单位。技术提升是中国软件评测中心持之以恒要推进的一项工作,为此,中心特别打造专访节目“见证质量”,通过定期访问专家,围绕一个话题,展开深度的交流与讨论。

它打开了一扇窗,透过这扇窗,洞开美妙境界,体验专家的个性之美和交锋之趣。这是思想的盛宴,用他们的真实和专业丰富我们的智慧。

精彩发言摘要

     对话嘉宾:同济大学教授 朱少民

     访问人:中国软件评测中心总工程师 陈渌萍

        软件测试必须要深刻理解这个领域相关的知识和背景,才能更好的对产品,对被测的对象有更好的理解,才能更好地完成测试思维的方面。特别是在一些新的领域,可能系统的思维更关键一些。包括工业方面的扩展,要想到领域环境,软件硬件的结合,或者本身的领域的特点,这样才可以用更完整、更全面的一些系统的思维来考虑测试对象的特点,然后更有针对性的去做测试。

        陈渌萍:软件测试怎样更好的能够解决软件工程的实际问题?

       朱少民:这个问题比较大。软件测试也是软件工程的一部分,所以大家经常讲测试离不开开发,包括持续构建持续集成,也是离不开测试的。就像早期马丁弗勒在定义持续集成的话,提到了每日构建两次以上,但还需要通过测试。比如我们讲的PPT要经过版本验证,因为你构建的再多,如果不是一个成功的课件,那也没什么意义。

       所以从我个人理解,首先要了解这个上下文。因为软件工程里面实际很重要的一个概念是上下文。虽然今天可能许多企业做敏捷开发,可能没有关注这个软件为什么采用敏捷的开发模式,没有去关注它的上下文。不同的项目,不同的产品,不同的团队,我们有时候讲,如果你的团队能力不强,或者你的企业缺乏竞争力,可能你做敏就不利,因为团队的人员流动会比较大,因为过去传统重视文档,就是让我们更好的把这个知识传承下来,但如果光敏捷角度讲,你不够重视文档,且人员流动又比较大,可能人员把这个知识经验带走,这也是不利的。所以如何做好测试,我们经常讲要了解项目背景、团队领域、用户进度,这些因素都要去了解。

       因为进度如果比较紧,我们测试更要基于风险的测试策略和产品本身,也要了解我们产品是不是分层的。如果产品是分层的,我们测试也可以分层。产品的构造或产品采用什么样的技术,这些都对我们做好测试、对解决软件工程问题有帮助的。

       第二个是业务驱动测试,以前也是特别强调,要站在客户的角度去想,就是从用户的需求出发,更重要是要强调这个业务,不管是测试分析设计都是要基于业务来考虑的,这样才能比较彻底,因为做产品或做一个软件系统,最终来讲都是为了解决业务问题,或者为业务服务的测试。

       第三点测试不仅找到缺陷,另外一方面是要对缺陷做分析,就是做根因分析,然后来发现一些规律,甚至发现一些开发人员的坏习惯,怎么让开发人员消除他不好习惯,或者讲写出更好的代码,就是让我们不产生缺陷,改进开发对这个更重要。

       陈渌萍:在可靠性方面,工业APP它会遇到哪些挑战?

      朱少民:这里说的可靠性,其实就是工业安全。实际是包括功能的正确性和可靠性。可靠性,一方面是技术要成熟,你用不成熟的技术是不可靠的,是有问题的,包括过程成熟。多数情况下我们讲可靠性更多是讲可用性,是说在一年时间里面有多少时间(平均无故障时间)是不能用的,多少时间是能用的。如果做到七个九可能只有两秒钟,做到六个九就20秒钟这样的时间,虽然工业APP要做到假如讲五个九六个九以上,你的可靠性要求是挺高的,所以这就是可用性。要做到可用性,实际来讲,通过一个单一的系统和单一的组件,或者单一的其他设备,都是很难做到高可靠性,所以这就是经常讲的冗余设计,要有备份。

       另一个是要有容错性,就是让不同的数据,特别是这种异常数据异常操作,都能有办法回避,或避免它产生新的问题。

      更多精彩访谈请关注,见证质量微课,和众多专家一起以质量见证发展!