美文网首页百人计划
百人计划--实例化需求、MFQ&PPDCS

百人计划--实例化需求、MFQ&PPDCS

作者: JOooo_ | 来源:发表于2017-04-09 14:24 被阅读300次

(整理雨天号子的分享中提到的‘实例化需求’和‘MFQ&PPDCS’的概念,如下)

一、SBE:实例化需求

顾名思义就是要用例子的方式去阐述需求,这个概念是由Gojko Adzic提出的(《实例化需求》)。书中的实例化需求的主要流程图:

下图为整理后的中文图

主要包括以下重要环节:

-- 从目标中获取范围:要一直牢记商业价值,为什么要做。很多时候执行项目时太关注怎么做了。

-- 用例子来协作探讨需求:例子能更好得把需求描述清楚,不能含糊。

-- 提炼需求说明:通过例子了解需求后就可以提炼出需要的需求说明。

-- 执行需求说明并自动化:需求说明如果能执行并放入到持续集成后,信息就不会过期。

-- 活文档:文档要长久,就必须要容易维护,从需求说明中自动产生出的活文档是最有效的方式。

(参考:http://blog.sina.com.cn/s/blog_898868010102viv6.html,其中‘网上书店’的例子很清楚的描述了SBE的过程)

另外,这里记录下其它两个比较普遍的需求管理概念:

1)TDD:测试驱动开发

针对每个功能点抽象出接口代码,进行接口、单元测试,循环此过程直到所有单元测试通过。测试代码确定需要编写什么产品代码。优点是减少了底层逻辑错误从而大大降低bug数量。但并非所有项目适合TDD,需具备以下条件:1)项目需求必须足够清晰,2)业务流程及其复杂、模块间依赖性高的项目不适用。

2) BDD:行为驱动开发

在TDD中,我们并不能完全保证根据设计所编写的测试就是用户所期望的功能。BDD将这一部分简单和自然化,用自然语言来描述,让开发、测试、BA以及客户都能在这个基础上达成一致。BDD考虑它的行为,也就是说它应该如何运行,然后抽象出能达成共识的规范。BDD自动化测试工具:Cucumber

二、MFQ & PPDCS

参考链接:http://www.ltesting.net/ceshi/ceshijishu/csyl/2013/0822/206598_3.html

1. MFQ

MFQ针对大型系统开展测试分析和测试设计。大型嵌入式软件系统有三个明显的特征:多和复杂的功能,数量众多的功能交互,高质量特性要求,相应地,大型嵌入式软件系统的MFQ测试分析和设计框架包括三个部分:M-基于模型的简单功能测试分析和设计;F-功能交互测试分析和设计;Q-质量属性测试分析和设计。针对上述这3个部分的每个部分,基于4-step模型的测试分析和测试方法都会用到。

step1)为测试对象建模

有很多流行有效的测试规范技术例如等价类划分、边界值,决策表,业务流程图、基于状态的测试等等,测试分析者常常发现在建模的时候面对很多的选择,他们很快陷入不知道选择哪个的情形。很多模型可用被用来描绘一个测试对象,但是经常情况下只有其中一种最适合我们使用。PPDCS就是要解决这个问题的构想。

step2)设计基础测试用例(有时候叫做合逻辑的或者抽象的测试用例)来覆盖这个模型

step3)考虑测试数据的变化来敲定测试用例(有时叫做具体的测试用例)

step4)进一步测试

在低级别的测试,比如单元测试,简单功能(“M”Part)要彻底测试。在高级测试级别,比如系统测试、功能交互(“F”part)和质量属性(“Q”部分)需要彻底地测试。然后,这并不是绝对的。

2. PPDCS

第一个字母“P” 是“流程”的意思,第二个字母“P”是“参数”的意思,第三个字母“D”是“数据”的意思,第四个字母“C”是“组合”的意思,最后一个字母”S“是”状态”的意思。

1)如果在测试对象的设计规范中有存在相关“流程”的特征,“P-Process”方法可以用来建模。流程的特征包括:a.很多步骤构成一个流程,且步骤之间有顺序关系;b.涉及超过一个角色或者触发条件;c.P-Process特征的设计规范经常包括一系列的步骤或者用户场景。

2)如果在测试对象的设计规格中存在“变量或者参数”含义的特性,“P-Parameter”方法可以用来建模。“参数”特性包括:a. 设计规格中没有明显地流程,但是涉及“很多参数”。b. 设计规格中包含很多规则,每条规则有很多不同的变量和不同的值组成。c. 参数的数量是有限的。测试分析者可以容易地识别参数间的逻辑关系。

3)如果在测试对象的设计规范中存在“数据”特征,“D-数据”方法可以用来建模。“数据”特性包括:a. 每个数据有它特殊的范围值。b. 跟”参数“不一样,数据之间没有明显的”规则“或者逻辑关系。c. 不同的数据的范围可能存在限制。d. 涉及的数据个数是有限的

4)在“P-过程”和“D-数据”的案例中,如果参数或者数据的数量太多以致很难手工列出来,“C-组合”方法可以用上。“组合“特性包括:a. 存在大量的参数(数据)。b. 每个参数有很多值。c. 参数之间可能存在一些逻辑关系

5)如果测试对象的设计规格中存在”状态“特征,”S-状态“方法可以被用来建模。”状态“的特性包括:a. 测试对象的行为变化基于它内部的状态。b. 确定的事件触发测试对象的状态

相关文章

  • 百人计划--实例化需求、MFQ&PPDCS

    (整理雨天号子的分享中提到的‘实例化需求’和‘MFQ&PPDCS’的概念,如下) 一、SBE:实例化需求 顾名思义...

  • 一句话需求怎么测

    具体如下, 1、什么是需求实例化 2、为何做需求实例化 3、怎么做需求实例化 一、什么是需求实例化 需求实例化,即...

  • 需求实例化第一课

    需求实例化和需求体系化 需求实例化:一种需求澄清的方法 需求体系化:一个需求管理的系统 角度和分层 临时的需求如何...

  • 实例化需求

    1.关键路径; 用户故事的五个C: 1.Card 一张问题或者需求 2.Communication 提问,交流 3...

  • 实例化需求

    实例化需求包含实例化需求说明和技术实践。实例化需求说明可以帮助团队构建正确的软件产品,而技术实践可确保正确地构建产...

  • 【读书思考】海盗派测试分析MFQ&PPDCS

    今天读了这本书的推荐序(James Bach)和要不要读这本书的作者自作序(邰晓梅)。只读了18页,精彩之处在于作...

  • 一句话需求怎么测

    读者提问:一句话需求怎么测? 阿常回答:帮产品做需求实例化 1、什么是需求实例化 2、为何做需求实例化 3、怎么做...

  • 需求实例化

    如何理解需求实例化? 需求实例化的目的和本质是为了消除歧义、减少浪费。 需求在层层传递过程中容易产生歧义(原始需求...

  • 需求分析之实例化需求

    引言 之前在看一些需求建模的文章或者书籍时,常常看到用例分析法,根据用例里的主谓宾来构建模型、模型的方法以及模型之...

  • 软件需求

    需求实例化:对原始需求,转换为产品特性,拆分为用户故事。 需求体系化:对软件功能,需求相关要素,需求与需求之间,进...

网友评论

    本文标题:百人计划--实例化需求、MFQ&PPDCS

    本文链接:https://www.haomeiwen.com/subject/tkkdattx.html