news 2026/5/9 4:52:05

需求用例的写法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
需求用例的写法

一、为什么写需求用例

流程图为需求用例提供了关键路径,而需求用例则是对业务场景的全面还原。本文将从以下四个方面阐述用例的信息:

  • 用例的定义
  • 用例的粒度
  • 用例的例子
  • 用例的关键点解释

我写需求文档有几大准则,是需要时刻铭记和实践的:

  • 字不如表,表不如图;
  • 使用最少的字去描述,多利用各种符号;
  • 排版要舒适,不能反人类;
  • 尽量无歧义、准确、全面。

二、什么是用例

用例(use case)是系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术。所以用例可以简单的理解成业务场景、使用场景。

三、用例的粒度

我们经常在拆解用例的时候,会陷入一个迷思:究竟一个用例要按照什么粒度进行拆分呢?什么样大小的才是一个合适的用例?

用徐峰老师在《有效需求分析》一书中做的用例定义来说:“用例即业务场景,而一个完整的业务场景应该是独立的、可汇报的、可暂停的单元。”

四、一个完整的用例

下面用“取钱”的例子,来展示一个完整的用例要怎么写清楚。

PS:以下为个人的需求模板,每个公司对于需求的描述不尽相同,这里旨在表述清楚用例的关注内容,不做模板的规范定义,有不同观点欢迎探讨交流。

用例编号

UC-001

用例名称

取钱

功能描述

作为用户,希望通过使用ATM机,以便于取出一定金额的钱。

用户

客户

优先级

使用频率

主干流程

  1. 用户输入银行卡密码。
  2. 用户从系统提供的选项中,选择“取钱”。
  3. 用户输入待取钱金额。
  4. 系统从出款口递出用户需要的取钱数量。
  5. 系统请求用户输入取钱的金额。

后置条件

系统应确保用户银行卡里的约大于应取出的金额。

异常流程

密码输入错误流程

  1. 用户输入错误的银行卡密码。
  2. 系统返回密码输入错误提示。

超出取钱限额流程

  1. 用户输入金额超出账户已有金额。
  2. 系统返回取钱超出限额提示。

原型设计

原型图略

数据字段

交易编号:唯一,ISNOTNULL

ATM机编号:ISNOTNULL

银行卡账号:ISNOTNULL

银行卡密码:ISNOTNULL

用户账号:ISNOTNULL

用户姓名:ISNOTNULL

取出金额:ISNOTNULL

取出时间:ISNOTNULL

前版用例

若用例为优化或升级,则需链接该需求的前一版本的用例,可进行适当文字描述。

相关用例

用例对其他用例有影响时,需关联,如后台需求用例会和前端需求用例联系,可进行适当文字描述。

需求规则

需求中若涉及规则,则需描述清楚,可配合实例,注意考虑极限情况。

五、用例关键字段解释

功能描述

是对一个用例的概括描述,表述清楚用户和系统需要完成的功能是什么。

优先级

分为4个等级:紧急,高,中,低。根据实际的业务需求来定义用例的优先级。

使用频率

分为高,低。代表该用例在实际的用户操作中属于高频操作还是低频操作,高频操作通常都是关键重要的操作。

前置条件

用户在执行用例之前,系统需要检查什么状态。

主干流程

用例里的流程描述,都是以用户意图为角度来描述的,体现的是用户与系统之间的交互过程。很多时候,我们会陷入一个描述的误区,太过细致的描绘了人机界面,和用户的操作动作,使得流程的描述过于细致和繁琐,不易阅读和提取关键信息。所以,在描述流程中,一定要写明用户做什么,系统做什么。

后置条件

用户在结束用例之前,系统需要检查已确保什么状态。

异常流程

异常流程是在做产品设计过程中是非常重要,但又很容易被忽略的过程。用例分析中应多考虑一些异常情况流程,减少需求评审时的尴尬时刻。

六、布局

列表页面:

各查询项为空,展示占位文本;

后台分页;

默认每页显示10项结果;

列表中可查看所有该登录账户有权限查看的数据;

默认按更新时间排序。

新增页面:

各输入项为空,展示占位文本;

默认选择….

修改页面:本条数据上次成功保存内容。

数据页面:

展示当前实时数据;

默认展示最近7天数据趋势图。

UC000.2:…

UC000.3:…

七、补充说明

需要用户输入的数据项,例如筛选、新建时的输入项

每个输入项需要考虑:

字段名称(简洁、易于理解,注意与概念相似字段进行区分)

是否必填(填写与否有何影响?)

使用组件(从规定的组件库中选取,适当描述组件性质)

占位文本(Input字段,输入框中的占位文字,提示用户可输入的内容)

数据来源(可选选项的来源)

权限限制(用户权限对本字段有无影响?)

字段单位

字段类型(整数、小数、字母、符号等)

字段长度(≤?汉字)

字段范围(数值范围,可否为0?最大为?小数是否自动补齐?)

数据格式

搜索特点(模糊搜索)

可选选项(1- …;2-…)

解释说明(是否需要文字提示用户字段含义或用法)

极限情况(初始状态、极限状态)

可否重复(能否与其他条目的同一字段重复)

可否修改(修改后对本条数据、或其他系统的数据的影响、对客户端的影响;什么时候可以修改)

是否联动(与其他数据、与其他系统、与客户端)

是否排序(排序规则)

展示预览(为空时;输入时;输入完;查看时;列表中;客户端;极限时)

只读字段(不同情况下怎么展示只读)

错误提示(为空或不满足约束条件时的提示语,提示方式)

备注说明

3.4.2 展示/列表项

用户在列表中查看或展示给用户,不能进行操作的数据项

每个展示项需要考虑:

字段名称

字段来源(新建、其他系统)

初始状态(列表、预览、数据报表…)

分页类型(前台or后台,默认一页几条数据)

无数据时(如何展示?)

展示样式(多种情况:为空时、多个值、很长时)

排序规则

备注说明

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 7:34:15

AI搜索时代,跨境电商获客的核心逻辑变了

在数字营销快速迭代的今天,AI搜索已彻底改变跨境电商的获客逻辑,不再是传统“关键词堆砌”就能抢占流量的时代。据《2025珠三角数字营销行业发展白皮书》数据显示,2025年珠三角跨境电商AI搜索营销市场规模突破120亿元,同比增长47%…

作者头像 李华
网站建设 2026/4/27 1:26:38

OpenClaw+Qwen3.5-9B智能相册:自动归类旅行照片并生成游记

OpenClawQwen3.5-9B智能相册:自动归类旅行照片并生成游记 1. 为什么需要智能相册管理 每次旅行回来,手机里总是堆满几百张照片。手动整理的过程既枯燥又耗时——要按日期创建文件夹、重命名文件、筛选重复照片,最后还得绞尽脑汁写游记。作为…

作者头像 李华
网站建设 2026/4/26 20:36:09

ISDANet:交互式与监督双模式注意力的遥感变化检测

前言 遥感变化检测就是给定同一地区在两个时间点拍摄的遥感图像,判断哪里发生了变化。比如,一块空地几年后变成了建筑群,或者道路扩建了,或者植被发生了明显变化。这类任务在城市规划、灾害评估、生态监测里都很重要。但问题是&a…

作者头像 李华
网站建设 2026/4/27 14:06:35

LM-Studio-0.4.10 安装完,不显示显卡信息

问题设置模型加载参数时,GPU Offload默认是0Settings Hardware不显示显卡信息解决办法在Settings的Runtime里安装CUDA,就好了 CUDA 12 llama.cpp (Windows) Nvidia CUDA 12.8 accelerated llama.cpp engine可以先把Missing libraries的Harmony安装下。解…

作者头像 李华
网站建设 2026/4/30 4:15:48

深入篇第2节:高效排序——在GPU上实现基数排序与合并排序

引言 排序是计算机科学的基石,在GPU上实现高效排序则是并行算法设计的试金石 上一节我们学习了并行扫描,它是许多并行算法的基础。今天,我们将挑战一个更具难度的任务:排序。 在CPU上,排序算法已经非常成熟:快速排序、归并排序、堆排序,平均复杂度 O(n log n)。但在GPU…

作者头像 李华
网站建设 2026/4/30 1:29:21

【单片机0.2】

文章目录六个9第一位和第六位亮六个灯亮轮播0-9中间两个灯亮轮播0-9亮灯123456小数点13.14.15六个9 #include<reg52.h> // 头文件// 定义锁存器控制引脚 sbit dulaP3^4; // 锁存器U2&#xff08;段选&#xff09; sbit welaP1^6; // 锁存器U2&#xff08;位选&#xff0…

作者头像 李华