用户故事
文档编号: SYS-RA-US-002
版本: 1.0
日期: 2026-03-08
编制: 项目经理
一、用户故事编写规范
1.1 用户故事格式
作为 <角色>,
我希望 <功能/目标>,
以便 <价值/原因>。1.2 验收标准 (Acceptance Criteria)
每个用户故事应包含明确的验收标准,遵循 Given-When-Then 格式:
Given <前置条件>
When <操作/事件>
Then <预期结果>1.3 INVEST原则
| 原则 | 说明 |
|---|---|
| Independent | 独立的,不依赖其他故事 |
| Negotiable | 可协商的,细节可讨论 |
| Valuable | 有价值的,对用户有意义 |
| Estimable | 可估算的,规模可评估 |
| Small | 小的,可在迭代内完成 |
| Testable | 可测试的,有明确验收标准 |
二、用户故事列表
2.1 用户管理模块
US-001: 创建用户
用户故事:
作为 系统管理员,
我希望 能够创建新用户账号,
以便 新员工可以访问系统。验收标准:
Given 我是系统管理员
When 我填写用户信息(用户名、姓名、邮箱、部门)并提交
Then 系统创建用户账号并发送激活邮件
Given 我填写的用户名已存在
When 我提交创建请求
Then 系统提示用户名已存在,创建失败
Given 我填写的邮箱格式不正确
When 我提交创建请求
Then 系统提示邮箱格式错误,创建失败优先级: P0
故事点: 3
依赖: 无
US-002: 批量导入用户
用户故事:
作为 系统管理员,
我希望 能够通过Excel批量导入用户,
以便 快速初始化大量用户数据。验收标准:
Given 我下载了用户导入模板
When 我填写模板并上传
Then 系统批量创建用户并返回导入结果
Given 我上传的文件格式不正确
When 我提交导入请求
Then 系统提示文件格式错误
Given 模板中有必填字段为空
When 我提交导入请求
Then 系统提示数据验证错误,显示具体错误行优先级: P1
故事点: 5
依赖: US-001
US-003: 用户自助密码重置
用户故事:
作为 普通用户,
我希望 能够通过邮箱自助重置密码,
以便 在忘记密码时无需联系管理员。验收标准:
Given 我在登录页面点击"忘记密码"
When 我输入注册邮箱并提交
Then 系统发送密码重置邮件到该邮箱
Given 我收到密码重置邮件
When 我点击邮件中的重置链接
Then 系统跳转到密码重置页面
Given 我在密码重置页面输入新密码
When 新密码符合密码策略并提交
Then 系统重置密码并提示成功优先级: P0
故事点: 3
依赖: 邮件服务配置
2.2 组织架构模块
US-004: 创建部门
用户故事:
作为 系统管理员,
我希望 能够创建部门和子部门,
以便 构建完整的组织架构。验收标准:
Given 我是系统管理员
When 我填写部门名称、上级部门并提交
Then 系统创建部门并在组织架构中显示
Given 我创建部门时不选择上级部门
When 我提交创建请求
Then 系统创建为一级部门
Given 我填写的部门名称在该层级已存在
When 我提交创建请求
Then 系统提示部门名称重复优先级: P0
故事点: 2
依赖: 无
US-005: 人员部门调动
用户故事:
作为 部门管理员,
我希望 能够调整人员的所属部门,
以便 处理员工转岗情况。验收标准:
Given 我是部门管理员
When 我选择用户并修改其所属部门
Then 系统更新用户的部门信息
Given 我批量选择多个用户
When 我统一调整他们的部门
Then 系统批量更新所有选中用户的部门
Given 用户调动后
When 查看用户详情
Then 显示新的部门信息和调动历史优先级: P0
故事点: 3
依赖: US-004
2.3 权限管理模块
US-006: 创建角色
用户故事:
作为 系统管理员,
我希望 能够创建自定义角色并分配权限,
以便 实现细粒度的权限控制。验收标准:
Given 我是系统管理员
When 我填写角色名称、描述并选择权限
Then 系统创建角色并保存权限配置
Given 我创建角色时未选择任何权限
When 我提交创建请求
Then 系统提示至少选择一个权限
Given 角色创建成功
When 我为用户分配该角色
Then 用户获得该角色的所有权限优先级: P0
故事点: 3
依赖: 无
US-007: 菜单权限控制
用户故事:
作为 系统管理员,
我希望 能够控制不同角色可见的菜单,
以便 实现功能访问控制。验收标准:
Given 我为角色A分配了菜单X的权限
When 具有角色A的用户登录系统
Then 用户可以看到并访问菜单X
Given 我为角色B未分配菜单X的权限
When 具有角色B的用户登录系统
Then 用户看不到菜单X
Given 我修改了角色的菜单权限
When 具有该角色的用户刷新页面
Then 用户的菜单显示相应更新优先级: P0
故事点: 5
依赖: US-006
2.4 单点登录模块
US-008: OAuth2.0应用接入
用户故事: 作为 IT管理员, 我希望 能够配置OAuth2.0协议接入第三方应用, 以便 实现单点登录。
验收标准:
Given 我是IT管理员
When 我填写应用名称、Client ID、Client Secret、回调地址
Then 系统保存OAuth2.0配置
Given OAuth2.0配置已完成
When 用户从第三方应用点击登录
Then 用户跳转到System平台登录页
Given 用户在System平台登录成功
When 系统自动跳转回第三方应用
Then 第三方应用获取用户信息并完成登录优先级: P0
故事点: 8
依赖: 用户认证模块
US-009: 应用免登
用户故事:
作为 普通用户,
我希望 登录System平台后能够免密访问已授权应用,
以便 提升工作效率。验收标准:
Given 我已登录System平台
When 我点击已授权的应用图标
Then 系统自动完成应用登录,无需再次输入密码
Given 我未登录System平台
When 我直接访问已授权应用
Then 应用提示我先登录System平台
Given 我的账号已被禁用
When 我尝试访问已授权应用
Then 系统拒绝访问并提示账号异常优先级: P0
故事点: 5
依赖: US-008
2.5 审计日志模块
US-010: 查看登录日志
用户故事:
作为 安全管理员,
我希望 能够查看用户的登录日志,
以便 监控账号安全状况。验收标准:
Given 我是安全管理员
When 我进入登录日志页面
Then 系统显示所有用户的登录记录
Given 我输入用户名和时间范围
When 我点击查询
Then 系统显示符合条件的登录记录
Given 我点击导出按钮
When 选择导出格式
Then 系统导出登录日志文件优先级: P0
故事点: 3
依赖: 无
三、用户故事统计
3.1 按模块统计
| 模块 | P0故事数 | P1故事数 | P2故事数 | 合计 |
|---|---|---|---|---|
| 用户管理 | 5 | 3 | 1 | 9 |
| 组织架构 | 4 | 2 | 1 | 7 |
| 权限管理 | 5 | 3 | 1 | 9 |
| 单点登录 | 4 | 3 | 1 | 8 |
| 应用集成 | 0 | 3 | 1 | 4 |
| 审计日志 | 3 | 2 | 0 | 5 |
| 系统配置 | 0 | 4 | 1 | 5 |
| 合计 | 21 | 20 | 7 | 48 |
3.2 按优先级统计
| 优先级 | 故事数量 | 故事点合计 | 占比 |
|---|---|---|---|
| P0 | 21 | 85 | 44% |
| P1 | 20 | 80 | 41% |
| P2 | 7 | 28 | 15% |
| 合计 | 48 | 193 | 100% |
四、用户故事地图
4.1 用户活动流
┌─────────────────────────────────────────────────────────────────┐
│ System 平台用户旅程 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 系统管理员 │
│ ├─ 管理用户 ──► 创建/编辑/删除用户 ──► 分配角色/权限 │
│ ├─ 管理组织 ──► 创建部门 ──► 调整人员部门 │
│ ├─ 管理权限 ──► 创建角色 ──► 分配菜单/数据权限 │
│ ├─ 配置SSO ──► 注册应用 ──► 配置协议 │
│ └─ 查看日志 ──► 审计查询 ──► 导出报告 │
│ │
│ 普通用户 │
│ ├─ 登录系统 ──► 单点登录 ──► 访问应用 │
│ ├─ 管理信息 ──► 修改资料 ──► 重置密码 │
│ └─ 查看应用 ──► 快捷入口 ──► 免密访问 │
│ │
│ 部门管理员 │
│ ├─ 管理部门人员 ──► 人员调动 ──► 权限分配 │
│ └─ 查看部门信息 ──► 组织架构 ──► 人员列表 │
│ │
└─────────────────────────────────────────────────────────────────┘文档整理时间: 2026-03-08
