游戏玩家射击交互用例图设计困惑求助
游戏射击功能用例图设计指南
核心思路:用例要聚焦玩家目标
用例的核心是描述参与者(玩家)的主动目标,而非系统内部的技术实现细节。别把“显示抛射物”“移除抛射物”这类纯系统自动执行的逻辑拆成独立用例——这些是系统完成玩家目标时的内部步骤,不属于玩家主动发起的行为。
合理的用例拆分与关系设计
主用例:「射击其他玩家」
这是玩家的核心行为目标,直接对应玩家触发射击操作(比如点击射击键)的动作,是整个功能的核心入口。包含(<
>)子用例
只拆分那些支撑主用例完成的、与玩家目标强相关的必要环节,而非技术细节:- 验证命中:射击后系统必须判断是否击中目标玩家,这是射击行为生效的关键判定环节
- 更新游戏状态:命中后更新双方的分数、生命值等,是射击行为的直接结果
- 处理抛射物生命周期:将“发射→显示→移除”合并为一个子用例——玩家只关心“我射出了有效攻击”,不需要感知每一步技术流程,合并后更符合用例的目标导向
避免过度拆分的误区
如果把“显示抛射物”“移除抛射物”单独作为用例,会让用例图沦为技术流程图,完全偏离了用例图明确用户需求、界定系统边界的核心价值。用例图不是用来展示系统内部执行步骤的,而是用来梳理玩家能通过系统完成什么目标。
正确的连接方式
- 参与者「玩家」与主用例「射击其他玩家」用普通关联线连接,表示玩家是该用例的执行者
- 主用例与三个子用例之间用带箭头的虚线连接,虚线上标注
<<include>>,表示主用例执行时必须触发这些子用例,它们是主用例完成的必要组成部分
内容的提问来源于stack exchange,提问作者InNeedOfHelp01
相关产品推荐
相关产品推荐

