1.前言

本文主要介绍用例编写时所遵循的几条基本准则。

2.用例编写的准则

2.1 以本质的风格编写用例

如系统认证,而不要说 需要输入ID进行认证等

2.2 编写简洁的用例

如系统认证,不要说 这个系统认证

2.3 编写黑盒用例

通过职责来描述系统,而不是说明系统如何工作

2.4 采用参与者和参与者目标的视角

对特定参与者具有价值的可观察结果

2.5 如何发现用例

1.选择系统边界

如:POS系统之外的收银员、支付授权服务都在系统边界之外;

2.寻找主要参与者和目标

用例建模的观点就是寻找参与者及其目标。系统主要为谁而设计(为谁的目标服务),谁就是主要参与者

3.定义用例

一般为每个用户目标分别定义用例。

2.6 什么样的测试有助于发现有用的用例

  • 老板测试:用例要达到可量化价值的结果
  • EBP测试:即基本业务过程测试,系统和数据具有稳定和持久状态
  • 规模测试:用例通常包含多个步骤
  • 测试的合理违例:如果子步骤在多个基本用例中出现,考虑将其单独分离出来作为一个用例

UML和模式应用4:初始阶段(5)--用例编写的准则的更多相关文章

  1. UML和模式应用4:初始阶段(6)--迭代方法中如何使用用例

    1.前言 用例是UP和其他众多迭代方法的核心.UP提倡用例驱动开发. 2. 迭代方法中如何使用用例 功能需求首先定义在用例中 用例是迭代计划的重要部分,迭代是通过选择一些用例场景或整个用例来定义的 用 ...

  2. UML和模式应用4:初始阶段(4)--需求制品之用例模型模板示例

    1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...

  3. UML和模式应用4:初始阶段(3)--需求制品之用例模型

    1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 其中需求科目对应的需求制品包括:设想.业务规则.用例模型.补充性规格说明.词 ...

  4. UML和模式应用4:初始阶段(2)--需求科目之进化式需求

    1. 前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: UP每个阶段包括 业务建模.需求.设计等科目: 需求是UP科目之一,在初始阶段需求科目的工作量占据较大的部分.但是初始阶段的 ...

  5. UML和模式应用4:初始阶段(1)--概述

    1.前言 UP开发包括四个阶段:初始阶段.细化阶段.构建阶段.移交阶段: 初始阶段是项目比较简短的起始步骤,主要目的是收集足够的信息来建立共同设想,调查项目的总体目标和可行性,确定是否值得进一步深入. ...

  6. UML学习笔记—基本概念和初始阶段

    chpater1 1.什么是分析和设计 分析:对问题和需求的调查研究 设计:满足需求的概念上的解决方案 做正确的事(分析)和正确地做事(设计) 2.什么是Object-Oriented-Analysi ...

  7. UML和模式应用5:细化阶段(4)--如何创建领域模型

    1.前言 以当前迭代中所要设计的需求为界,创建领域模型的步骤: 1.寻找概念类 2.将其绘制为UML类图中的类 3.添加关联和属性 2.如何寻找概念类 寻找概念类有如下几种方法: 重用和修改现有的模型 ...

  8. UML和模式应用5:细化阶段(1)--第1次迭代

    1.前言 从本文开始进入细化阶段,讨论迭代技术的基础,本次讨论将着重讨论第一次迭代,以POS机为例. 2. 第一次迭代处理的需求(以NextGen POS项目处理销售用例) 实现 处理销售 用例中基本 ...

  9. UML和模式应用

    引言 Applying UML and Patterns,以一个商店POS系统NextGen和一个掷骰子游戏Monopoly为例,围绕OOA/D的基本原则GRASP,以迭代作为基本方法.以UML为表达 ...

随机推荐

  1. matplotlib fill和fill_between

    import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 5 * np.pi, 1000) y1 = np.sin(x ...

  2. JDK源码分析(3)HashMap

    JDK版本 HashMap简介 HashMap基于哈希表的 Map 接口的实现.此实现提供所有可选的映射操作,并允许使用 null 值和 null 键.(除了不同步和允许使用 null 之外,Hash ...

  3. POJ1163(简单的DP)

    题目链接:http://poj.org/problem?id=1163 Description 73 88 1 02 7 4 44 5 2 6 5 (Figure 1) Figure 1 shows ...

  4. C# winform C/S WebBrowser 微信第三方登录

    网上很多的资料都是B/S结构的,这里是基于C# C/S 结构的微信第三方授权登录 一.准备知识 1 http Get和Post方法.做第三方授权登录,获取信息基本上都是用get和post方法,做之前需 ...

  5. hashlib模块(二十八)

    # 1.什么叫hash:hash是一种算法(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法),该算法接受传入的 ...

  6. 内存分布图,errno

    输出错误,errno是默认的全局变量 错误处理函数: 错误号:errno perror函数:        void perror(const char *s); strerror函数:        ...

  7. JSON必知必会,浅尝辄止的整理

    在使用JSON时常见的安全漏洞通常发生在JavaScript从服务器获取到一段JSON字符串并将其转化为JavaScript对象时, 在定位JSON安全问题时,应该记住三件事情: 1.不要使用顶级数组 ...

  8. 走近HTTP协议之一 基本网络概念与理解

    当今的技术领域,开发者人数最为之多的群体便是web领域,与之相关岗位的包括前端工程师,后台工程师,移动端开发工程师等等.然而由于受时代浮躁氛围的影响,许多开发者对最为基础的HTTP协议都不甚了解,这也 ...

  9. python-requests-proxies判断学习

    # coding:utf8 import requests def prox(): url = 'http://115.159.33.177/images/ip.php' ip_list = [ 'h ...

  10. GCC输出带C源代码的汇编文件

    GCC输出带C源代码的汇编文件,一共有两种方式(同样也适合G++输出呆CPP源代码的汇编文件). 测试代码(hello.cpp) #include<iostream> usingnames ...