需求分析技术及示例

⚡ 智能摘要

需求分析技术帮助业务分析师对工作流程进行建模,与利益相关者沟通,并使用 BPMN、UML、流程图、数据流图、IDEF、Petri 网和差距分析将业务需求转化为结构化规范。

  • 🗺️ BPMN 表示法: 在标准化的、工具可移植的图表中捕获流程对象、连接对象、泳道和工件。
  • 🧩 UML覆盖率: 十四种图表类型支持行为和结构视图,从用例图到类图和组件图。
  • ➡️ 流程图和数据图: 流程图和数据流图揭示了常见布局中的控制逻辑、输入、输出、存储和过程。
  • 🎭 角色活动图: RAD 对每个角色的活动、外部事件和状态进行建模,揭示并行工作和职责。
  • 📅 甘特图和IDEF: 甘特图用于对任务进行排序,而 IDEF0 和 IDEF3 则用于大规模地对企业功能和流程进行建模。
  • 🔍 缺口分析: 对比当前状态和拟议状态,找出弥合差距的要求和建议。

需求分析技术

作为一名业务分析师,需求分析是你工作中最重要的部分。 帮助您确定利益相关者的实际需求。它还允许您使用图表、模型和流程图而不是复杂的文本与利益相关者进行沟通。

需求分析有一个

  • 具体目标
  • 具体输入
  • 具体输出
  • 使用资源
  • 有许多活动要按某种顺序执行
  • 可能影响多个组织单位
  • 为客户创造价值

需求分析技术

需求分析技术可以绘制业务工作流程图,以便您可以分析、理解和改进它。

以下技术被广泛应用: 软件开发 的过程。

1.业务流程建模符号(BPMN)

BPMN(业务流程模型和符号)是一种使用简单对象来表示业务流程的图形化方法,它有助于组织以标准化的方式进行沟通。BPMN 中使用的主要对象包括:

  • 流对象
  • 连接对象
  • 泳道
  • 文物。

一个设计良好的 BPMN 模型能够详细描述流程中执行的各项活动,例如:

  • 谁在执行这些活动?
  • 这些活动需要哪些数据元素?

BPMN 的最大优点是图表易于共享,而且大多数建模工具都支持这种符号。

业务流程建模符号

2. UML(统一建模语言)

UML 是一种用于指定、开发的建模标准ping用于可视化和记录软件系统的 UML。UML 提供以下对象:

  • 摆件
  • 活动
  • 类图

UML图共有14种类型,包括用例图、交互图、类图、组件图和序列图。UML模型是所有利益相关者之间沟通的媒介。基于UML的业务模型可以直接作为需求分析工具的输入。UML图分为行为模型和结构模型。行为模型描述系统的功能;结构模型则展示系统的组成。

UML(统一建模语言)

3. 流程图技术

流程图是将一组相关活动的顺序流程和控制逻辑可视化呈现的一种方式。常见的流程图格式包括线性流程图、自顶向下流程图和跨职能流程图(泳道图)。流程图可用于表示数据流、系统交互和流程步骤。流程图易于阅读和编写,即使对于非技术人员也适用,并且可以显示并行流程和关键属性。

流程图技术

4.数据流图

数据流图展示了系统如何处理数据的输入和输出。数据流图的组成部分包括:

  • 工艺应用
  • 自动化流程
  • 商店
  • 终结者

逻辑数据流图 (DFD) 显示活动;物理数据流图 (DFD) 显示基础设施。数据流图可以在软件开发生命周期 (SDLC) 的分析阶段早期设计 (系统开发生命周期)用于定义项目范围。它可以细分为子流程,称为“分层数据流图”。

数据流图

5. 角色活动图(RAD)

角色活动图(RAD)类似于流程图。角色实例是流程参与者,每个角色都有起始状态和结束状态。RAD 需要对流程或组织有深入的了解才能识别角色。RAD 的组成部分包括:

  • 游戏及活动
  • 外部事件

角色活动图

角色将各项活动归类为职责单元。一项活动可以独立进行,也可能需要与其他角色开展的活动进行协调。

外部事件标志着状态发生变化的节点。

状态描述了角色在流程中的进展情况。达到某个状态表示特定目标已达成。

RAD易于阅读,呈现详细的流程视图,并显示并行活动。

6. 甘特图

甘特图是一种以图形方式表示日程安排的工具,有助于协调、计划和执行工作。 trac图中展示了项目中的 k 个具体任务。它显示了项目总时长,并将其细分为多个阶段。纵轴列出任务;横轴显示预计活动持续时间或指定负责人。一张图表可以显示多个活动。

甘特图

7. IDEF(功能建模集成定义)

IDEF(集成功能建模定义)涵盖一系列企业建模语言。它对支持系统分析、设计或集成的活动进行建模。IDEF 方法约有 16 种;其中 IDEF0 和 IDEF3 最为常用。

IDEF(功能建模的集成定义)

8. 有色 Petri 网(CPN)

彩色Petri网(CPN)是一种面向图形的语言,用于…… 系统的规范、验证、设计和仿真CPN结合了图形和文本。它的主要组成部分有: 地点、过渡和弧线.

有色Petri网

Petri网状物体具有特定的铭文,例如:

  • 地方:带有诸如 .名称、.颜色集和 .首字母标记之类的铭文。
  • 过渡 :包含诸如 .Name(用于识别)和 .Guard(对某些变量的布尔表达式)之类的铭文。
  • 弧线:具有 .Arc 铭文。当对 arc 表达式求值时,它会生成一组标记颜色。

9. 工作流技术

工作流程图是一种可视化图表,用于表示一个或多个业务流程,以加深理解或提出流程改进建议。与流程图、UML 活动图和流程图一样,工作流程图是最古老、应用最广泛的方法之一。业务分析师在需求收集过程中也会使用它来做笔记。该流程包含四个阶段:

工作流程技术

  • 信息收集
  • 工作流程建模
  • 业务流程建模
  • 实施、验证和执行

10. 面向对象方法

面向对象建模方法使用面向对象的范式和建模语言来设计系统。它强调在问题域中发现和描述对象。面向对象方法的目的是:

  • 为了帮助描述该系统
  • 识别不同的相关对象
  • 为了理解这些物体之间的关系
  • 为了创建有效的设计,需要明确或建模一个问题。
  • 分析需求及其影响

这种方法非常适合需求动态变化频繁的系统。它是一个为系统导出用例、活动流程和事件流程的过程。面向对象分析可以由文本需求、与系统利益相关者的沟通以及愿景文档驱动。

对象具有状态,状态的变化通过行为来体现。当对象接收到消息时,其状态会通过行为发生改变。

三、差距分析

差距分析是一种用于确定企业及其职能的预期状态与当前状态之间差异的技术。它回答诸如以下问题:项目的当前状态是什么?我们希望达到什么状态?我们如何弥合差距?差距分析的各个阶段包括:

  • Rev观摩系统
  • 开发需求
  • 对比
  • 启示
  • 建议使用

常见问题

人工智能工具能够对利益相关者的反馈进行分类,标记含糊不清的陈述,生成流程图初稿,并检测重复的需求。分析人员仍然需要根据原始资料核实每一项输出结果。

GitHub Copilot 和 GPT 将纯英文流程描述转换为 PlantUML 或者使用 Mermaid 代码并勾勒出 BPMN 泳道图。业务分析师在批准前对草稿进行完善。

需求收集通过访谈和研讨会收集利益相关者的原始需求。需求分析则利用 UML、BPMN 和 DFD 等技术将这些需求结构化为清晰、可测试的语句。

根据问题选择合适的技术。例如,使用 BPMN 或工作流图来描述跨团队流程,使用 UML 来描述软件结构,使用 DFD 来描述数据流,使用差距分析来描述变革举措。

BABOK 指南列出了流程建模、用例、数据流图、数据建模、决策分析、业务规则分析和原型。ping界面分析、根本原因分析和差距分析。

敏捷团队仍然会使用 BPMN、UML 活动图和数据流图,但规模较小。他们更倾向于使用用户故事和故事地图。ping并且每个迭代周期只需绘制足够数量的图表,而无需进行大量的预先分析。

流行的工具包括 Lucidchart, Microsoft Visio、draw.io、Bizagi Modeler、Camunda Modeler、Signavio、 Enterprise Architect和 StarUML大多数产品都与 Jira 集成, Azure DevOps,或 Jama Connect。

跳至ping 利益相关者的验证、将解决方案与需求混为一谈、过度建模、使用不一致的符号以及让图表与需求库脱节,是造成返工最多的问题。

总结一下这篇文章: