一种测试方向的探讨-基于模型测试调研引发的思考 - 2

简介:
第二篇 文化背后

2.1 IBM的敏捷史

2.1.1 大象也会跳舞--敏捷的老面孔
IBM是个非常有意思的公司,从硬件到软件再到咨询、服务业。完成了几次成功的华丽转身。每次几乎都能给你意外惊喜。了解的人都知道大象跳舞的历史。而这种反思文化的实质是在追求高效。也就是我们目前不断提及的敏捷内容的核心。
敏捷不是什么新鲜玩意,几乎每个组织与个人都曾经经历过。
一个公司需要反思自己的市场定位,一个部门需要反思自己的公司定位,一个工程师则需要反思自己的角色定位。
总结:那么QA的角色是什么?价值在哪里?我们如何避免组织结构与技术上的边缘化?
2.1.2 七年之痒--技术的未来还是产品的未来
七年之痒,借指一下IBM对基于模型测试七年研究的一路风雨。
先展示一下IBM标准,也是目前通用的基于模型测试的系统架构。

 



再展示一下IBM的对模型测试的几个阶段的研究与尝试。



基于模型测试本身,IBM实现了比较成熟的技术(如基于UML的状态/数据流模型),获得了很大的收益。但是几度弃用已开发的产品。有两点总结值得思考:
1、 技术人员自己定义技术,发展技术。(实则在指责技术研究为了技术而技术,脱离产品本身)
2、 技术上的高耦合性。(IBM的基于模型测试从模型制定,到分析,到自动执行。集成度非常之高。造成了产品的不通用性, 因此单个案例成功多,复用性少。)
总结:技术应该基于产品才有生命力,产品分析的高耦合性与技术实现的低耦合性。

 


2.2 Micosoft的聪明(spec explorer)

 


2.2.1 技术的大众化
spec explorer是微软基于模型测试研究的商业产品。模型实现过程基本概括如下:
 



这套技术本质上与IBM一样,基于相同的模型标准在做。但是微软很聪明,实现了几个跨越:
第一、对传统软件对象进行了高度抽象。状态机的描述不仅完美而且被扩大。
状态机进行代码设计。(注意,模型驱动设计的雏形,联想到什么?测试驱动设计?没那么轻松!!?)
第二、在理论上与实践中解决了模型测试产生的case爆炸问题。(正交技术的运用。这个不是简单的去重,做了非常多的算法优化。)
第三、实现了产品的高耦合性(作为软件服务存在),与技术的低耦合性(分析与执行的较低联系)
总结:这个案例还是值得借鉴的,通用的思路,每一步都进行最彻底完善的解决。
2.2.2 产品理念的商业化
微软对spec的包装与宣传是成功的。现在提及基于模型的测试,大家最先想到的总是spec。这种技术影响力的方式值得我们思考。如何展现百度质量部门自己的技术影响力,形成我们测试人员自己的技术沉淀。这个应该是伴随整个公司与产品发展形成的,或者我们也可以称之为底蕴的东西。

 


2.3 google的创新与实用主义

 


2.3.1 google的实用主义
IBM曾经因为技术高耦合而弃用一些已开发好的模型工具。原因是复用性不够。这点google采取了截然相反的思路。Google开发的是基于微模型的思路。每一个模型只为解决一个互联网问题(小吗?不小,因为处理数据量的庞大,这个模型本身需考虑的已足够复杂)。
 



微模型(个人定义,可能存在不妥的地方.不知google自己怎么叫)的分析方式
总结:这个对比是最值得我们深思的,传统意义上的软件测试,模型测试是基于事件触发跳转的(界面操作系统的核心)。因此天生是完美的有限状态机模型。对于互联网产品来说,核心基于数据处理,这种状态机模型已经不能覆盖。因此业界有数据流模型,流程图模型等等。目前我们采取的组件化测试的核心仍然是基于流程模型的。但是设计之初,我们不希望对分析方法作严格限定,可以对不同组件采取不同分析方法。即不同微模型的不同分析。这个后续可以根据需求裁定。
2.3.2google的保守与创新
Google在微模型建立方面应该积攒了丰富的经验。(从目前流出的资料,我的猜测)。目前海量数据的大部分分析都是基于不同微模型的。但是我们同时发现,公开的paper与成果非常少。只能在技术大会与相关介绍中抓到几个精髓。目前看到的有一篇关于分析问题与答案系统的微模型比较经典(是不是联想到百度知道了? 呵呵,这里的问答系统指广义的搜索需求。) 

 作者:sevensky615  










本文转自百度技术51CTO博客,原文链接:http://blog.51cto.com/baidutech/743713 ,如需转载请自行联系原作者
相关文章
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
2024年5月大语言模型论文推荐:模型优化、缩放到推理、基准测试和增强性能
本文汇总了2024年5月发布的七篇重要大语言模型论文,涉及模型优化、缩放、推理及性能增强。
60 2
|
2月前
|
算法 计算机视觉 异构计算
基于肤色模型的人脸识别FPGA实现,包含tb测试文件和MATLAB辅助验证
这是一个关于肤色检测算法的摘要:使用MATLAB 2022a和Vivado 2019.2进行测试和仿真,涉及图像预处理、RGB到YCbCr转换、肤色模型(基于阈值或概率)以及人脸检测。核心程序展示了如何读取图像数据并输入到FPGA处理,通过`tops`模块进行中值滤波、颜色空间转换及人脸检测,最终结果输出到"face.txt"。
|
1月前
|
测试技术 程序员 开发者
软件测试项目式学习一(认识软件生命周期与开发模型及软件质量)
软件测试项目式学习一(认识软件生命周期与开发模型及软件质量)
21 0
|
1月前
|
敏捷开发 测试技术
【软件测试】 开发模型和测试模型
【软件测试】 开发模型和测试模型
|
2月前
|
机器学习/深度学习 人工智能 文字识别
|
2月前
|
数据可视化
结构方程模型 SEM 多元回归和模型诊断分析学生测试成绩数据与可视化
结构方程模型 SEM 多元回归和模型诊断分析学生测试成绩数据与可视化
|
2月前
R语言估计多元标记的潜过程混合效应模型(lcmm)分析心理测试的认知过程
R语言估计多元标记的潜过程混合效应模型(lcmm)分析心理测试的认知过程
|
2月前
|
人工智能 自然语言处理 搜索推荐
人工智能,应该如何测试?(八)企业级智能客服测试大模型 RAG
大模型如GPT虽表现出众,但在特定领域和实时信息方面表现不足,易产生“幻觉”即编造答案。其能力受限于训练数据,无法提供超出数据范围的专业知识。为解决此问题,采用意图识别模型预判问题归属,结合检索增强生成(RAG)技术,通过检索相关信息注入大模型以提升回答质量。测试人员利用RAG评估模型效果,有时借助GPT进行自动化评分,尤其是在非专业领域,但GPT评分的准确性仍有限,人工评估更为可靠。
54 0
|
2月前
|
人工智能 搜索推荐 算法
人工智能,应该如何测试?(七)大模型客服系统测试
这篇文稿讨论了企业级对话机器人的知识引擎构建,强调了仅靠大模型如 GPT 是不够的,需要专业领域的知识库。知识引擎的构建涉及文档上传、解析、拆分和特征向量等步骤。文档解析是难点,因文档格式多样,需将内容自动提取。文档拆分按语义切片,以便针对性地回答用户问题。词向量用于表示词的关联性,帮助模型理解词义关系。知识引擎构建完成后,通过语义检索模型或问答模型检索答案。测试环节涵盖文档解析的准确性、问答模型的正确率及意图识别模型的性能。整个过程包含大量模型组合和手动工作,远非简单的自动化任务。
321 0
|
2月前
|
机器学习/深度学习 数据采集 人工智能
人工智能,应该如何测试?(四)模型全生命周期流程与测试图
本文补充了完整的业务和测试流程,包括生命周期流程图,强调测试人员在模型测试中的角色。主要测试活动有:1) 离线模型测试,使用训练集、验证集和测试集评估模型;2) 线上线下一致性测试,确保特征工程的一致性;3) A/B Test,逐步替换新旧模型以观察效果;4) 线上模型监控,实时跟踪用户行为变化;5) 数据质量测试,验证新数据质量以防影响模型效果。
53 0