软考-库存管理系统需求分析

一、场景

目标开发一套库存管理系统,该系统的部分需求如下:

(1)库存管理系统主要包括货物入库管理、货物出库管理、仓库管理、统计报表和系统管理等功能。

(2)库存管理系统的用户包括仓库管理员、仓库经理和系统管理员,用户必须在注册后才能使用系统功能;用户可以选择使用邮件注册或电话注册。

(3)仓库管理员在进行出入库操作前必须先登录;仓库经理可以通过系统查看统计报表,如果前一个月的报表未生成,则系统自动生成统计报表,否则直接显示。

(4)系统管理员可以在系统中设置仓库温度范围,当仓库内温度超过最高值或者低于最低值时,系统自动调用温控管理操作,连接温度调节系统进行制冷或加热。

(5)仓库管理功能要求每个月1日零点对前一个月货物入库和出库记录进行数据汇总操作。项目组决定构造用例模型以描述系统需求。

二、问题

2.1、问题1

用例建模的首要任务是识别系统中的参与者。请根据题目中所描述的需求,识别出系统中有哪些参与者?

2.2、问题2

用例建模的主要工作是书写用例规约。用例规约通常包括哪几部分内容?

2.3、问题3

建立了用例模型后,可以利用用例之间的关系调整用例模型,用例之间的关系包括哪几种?对于每种关系,请根据题目中所描述的需求分别给出一组用例。

三、解析

3.1、问题1

核心解题思路:谁(什么东西)在通过系统接口与系统交互?

不应该只找"",不能漏掉""和"环境"。

① 具体的人:谁使用这一套系统?

根据需求找到【仓库管理员、仓库经理和系统管理员】

② 外部系统/硬件设备:系统是否需要控制机器,或者从外部机器获取数据?

根据需求找到【连接温度调节系统】

③ 时间或环境状态:有没有功能是"自动触发"的?

根据需求找到【温度超过最高值或者低于最低值时,系统自动调用温控管理操作】代表温度环境,还有【每个月1日零点对前一个月货物入库和出库记录进行数据汇总操作】代表时间环境。

3.2、问题2

通俗理解用例规约:当收到命令炒一盘菜,我们需要明确以下几点。

① 这是啥菜?

对应就是用例名称

② 谁吃菜或者谁做菜?

对应就是参与者

③ 做这道菜是为什么?

对应就是目标/简要说明

④ 开火前要准备什么?

对应就是前置条件,比如需求中说的用户必须先登录,那么用户登录就是前置条件。

⑤ 具体怎么炒菜?

对应就是事件流/基本流程,比如用户第一步先点击按钮,第二步系统弹出什么界面。

⑥ 菜炒糊了怎么办?

对应扩展事件流/异常事件流,比如按钮的校验事件失败了,系统应该提出什么错误提示。

⑦ 菜炒完之后厨房变成什么样了?

对应后置条件,比如按钮点击完成,库存数据库更新。

3.3、问题3

核心解题思路:识别用例之间的关系(包含、扩展、泛化

① 包含关系 (Include) ------ "必须做的公共步骤"

诀窍:不做A就没办法做B,就说A被B包含。

特征:复用。如果多个用例都有一段完全一样的步骤,就把这段步骤提出来做一个新用例。

根据需求找到【出入库操作前必须先登录】,所以出入库操作包含登录。

② 扩展关系 (Extend) ------ "特殊情况下的加餐"

诀窍:通常做A就可以了,特殊情况需要做B,就是A扩展出了B。

特征:可以理解为"插件"或者"分支剧情"。主流程可以独立运行,扩展流程不是必须发生的。

根据需求找到【仓库经理可以通过系统查看统计报表,如果前一个月的报表未生成,则系统自动生成统计报表,否则直接显示】,查看统计报表主流程通常可以独立完成,只有当统计报表没有的时候才需要生成统计报表。所以查看统计报表扩展出了生成统计报表。

③ 泛化关系 (Generalization) ------ "父子分类"

诀窍:A是B的其中一种。

特征:就像生物学分类,具体和抽象的区别。

根据需求找到【用户可以选择使用邮件注册或电话注册】,邮箱注册和电话注册都是注册的一种。所以注册泛化出了邮箱注册和电话注册。

四、答案

【问题1】 用例模型的参与者:仓库管理员、仓库经理、系统管理员、时间、温度、温度调节系统。

【问题2】 用例建模的主要工作是书写用例规约(use case specification),而不是画图。用例模板为一个给定项目的所有人员定义了用例规约的结果,其内容至少包括用例名、参与者、目标、前置条件、事件流(基本事件流和扩展事件流)和后置条件等,其他的还可以包括非功能需求和用例优先级等。

【问题3】 (1) 用例之间的关系包括:包含关系、扩展关系、泛化关系。 (2) "出入库操作"与"登录"属于包含关系; "查看统计报表"与"生成统计报表"属于扩展关系; "用户注册"与"电话注册"、"邮件注册"属于典型的泛化关系。

相关推荐
我只会写Bug啊4 天前
【软考】2026年软考高级考前集训100题(题目+选项+答案+解析)
系统架构·软考·系统架构师·系统分析师·十大管理
我只会写Bug啊7 天前
【软考】系统架构设计师-论文范文(三)
系统架构·软考·系统架构师·系统分析师·十大管理·信息项目管理工程师
我只会写Bug啊7 天前
【软考】系统架构设计师-论文范文(二)
系统架构·软考·系统分析师·十大管理·信息项目管理
软考通7 天前
软考改革再提速!工信教考再招 2 人,2026 年软考会有哪些动作?
大数据·人工智能·职场和发展·职场发展·软考
snow@li7 天前
软考中级:软考中级各方向的详细分类及科目介绍
软考·软考中级
不凉帅8 天前
NO.8软件架构演化和未来新信息技术
人工智能·软考·系统演化
ba_pi8 天前
每天写点什么2026-02-09(5)信息系统工程1
软考·高项
ba_pi8 天前
每天写点什么2026-02-08(4.2)信息系统管理
安全·软考
我只会写Bug啊9 天前
【软考】系统分析师-论文范文(四)
软考·系统架构师·系统分析师·十大管理·信息系统项目管理工程师