• 项目架构落地之需求分析(一)


    目标

    • 尽可能全面准确全面深入理解业务(5W2H)
    • 识别重难点业务
    • 理清业务流程和功能点
    • 识别非功能需求和质量约束

    一.需求调研

    派什么人:

    1. 懂业务
    2. 头脑灵活
    3. 懂技术
    4. 擅长沟通
    5. 业务经验多
    6. 情商高

    调研之前

    1. 做功课
    2. 假想系统

    调研中

    1. 认真听、记和想
    2. 问问题:确认疑问,或者向下追问
    3. 可视化:草图、流程图、界面等
    4. 原型化并确认
    5. 多要资料

    调研后

    1. 调研说明书、原型、业务蓝图、业务架构图、实物资料

    二.理解业务

    基本思维方式要做什么不考虑具体如何做

    业务背景业务知识

    流程:

    1. 需求分析人员讲业务
    2. 理解业务架构图
    3. 思考理解业务
    4. 明确一级功能
      1. 用户管理
      2. 商品管理
      3. 订单管理
    5. 梳理使用系统的角色
    6. 梳理系统需要使用的其他资源

    三.发现功能点和业务流程

    潜在、补充、多余、超过范围、遗漏、非功能的需求

    功能发现方法

    • 换位思考
    • 逐字逐句审读法迭代思维明确业务功能和流程
    • 业务流程走查法(完整性、加深业务理解、检查业务可行性)

    •  问题挖掘法全方位、多角度理解业务,前 -  - 后)
      1. 功能本身描述
      2. 谁操作
      3. 如何操作
      4. 前置条件
      5. 涉及的数据 
      6. 数据的来源、功能数据的处理、数据的去向
      7. 关联的业务

    四.业务功能点分析

    • 功能点准确描述细化到不可分割CRUD
    • 操作人\角色谁来操作谁能操作
    • 触发方式人工功能连带系统自动等
    • 执行周期一次循环等
    • 操作的前置条件满足什么条件才执行已支付已审核等
    • 操作数据的准备描述分字段描述
      1. 数据的属性:类型、长度、能否为空
      2. 数据的来源(从哪个模块产生)
      3. 功能对数据的操作(修改、设置的值)
      4. 产生的数据去向(新增、修改了什么数据,是否存储,是否返回数据)
      5. 涉及界面的表现形式(后台先不考虑)
      6. 连带的处理功能(下单:发积分、发优惠券)
      7. 连带功能操作需要的数据

    六.业务流程分析

    • 业务流程背景整体功能的详细描述
    • 通过流程图加深对流程的理解
    • 针对每个节点分析
      • 节点具体功能具体描述
      • 前置条件,包括:前置逻辑、前置数据
      • 参与角色
      • 操作页面
      • 操作数据:数据来源、操作权限、怎样操作、数据操作后去向
      • 节点功能后的连带功能
      • 节点后续的转向控制
      • 节点的转向控制,逻辑、条件、数据

    持续分解

    1. 从小到大从粗到精逐层推进理解系统业务边界流程
    2. 分解到CRUD不能再分解
    3. 先广度再深度

    原型图流程图加深业务理解方便业务走查

    非功能性需求质量性能并发伸缩性响应时间)、约束版本环境语言等

    七.需求分析成果

    • 功能点列表
    • 需求分析说明文档
      1. 功能点详细描述文档
      2. 非功能质量要求和约束
      3. 业务流程详细描述
    1. 交互界面
  • 相关阅读:
    C#界面里的winform ContextMenuStrip属性
    Apache Spark 的基本概念和在大数据分析中的应用
    [每周一更]-(第62期):SRE 是什么?
    亚马逊云科技re:Invent 2022 Ruba Borno主题演讲
    一文了解SAAS开发、模板定制开发、全定制开发
    如果我们真的发现了外星人?
    【精选】矩阵加速
    就近值 reduce用法 时间戳与时间点对比循环查找
    一篇解决登录与支付
    入门力扣自学笔记124 C++ (题目编号641)
  • 原文地址:https://blog.csdn.net/qq_28175019/article/details/133998156