大话软工笔记—需求分析概述

需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定"需求"中确定出哪些需求最终要转换为确定的"功能需求"。

需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的、范围、深度等,同时分析的成果构成了需求工程主要交付物害求规格说明书中的核心内容。

1. 定义

需求分析,是对收集到的需求进行细致的分析、研判,准确地理解客户的目标、业务等对信息化的需求,最终将这些需求转换为准确地功能需求定义。

需求分析就是确定系统必须要做什么的过程,分析系统在功能上需要"实现什么",而不考虑如何去"实现"。

2. 作用

需求分析对需求调研的成果进行梳理、做可行性分析,给出客户的需求与功能之间的关联。

需求分析的结果会确定目标系统的完整、准确、清晰和具体的要求,包括系统覆盖的业务范围、功能需求、设计原则等。

需求分析的产出需求规格说明书,对客户确定了系统需要开发/交付的全部内容,是双方签订/验收合同的依据;对设计确定了规划系统范围、目标、原则,是具体设计的指导。

需求分析的结果,影响需求实际开发的功能数量,也影响着软件项目的开发成本,甚至对软件商技术的能力要求等。

3. 内容

对需求从高到低进行分层,分析工作包括:

  • 分层

将收集到的需求归集为目标需求、业务需求和功能需求。

  • 转换

将分层后的需求,按照目标需求--->业务需求--->功能需求顺序进行转换。

  • 功能

通过一系列的分析、转换,最终获得功能需求。

4. 能力

需求分析除了需掌握需求调研者的能力外,还需要具备以下能力:

(1)建模与分析能力

(2)专业业务知识

(3)设计与实现的知识

5. 需求的分层

需求调研记录的图、文、表可拆分为需求的三层,如下图所示:

6. 需求的转换

对"管理智能化"的需求转换如下图所示:

相关推荐
项目管理实用笔记5 小时前
项目人手不够,资源怎么调配?
项目管理·团队开发·资源管理·研发管理工具·多项目并行
不懂的浪漫5 小时前
企业 Agent Runtime | 项目知识需要生命周期
人工智能·软件工程·coding agent
陈彬深大6 小时前
《AI 渐进编程》之二十九:从面向对象到 Harness——封装 AI 的不确定性
人工智能·软件工程
夜听莺儿鸣21 小时前
901-005_系统分析师基础知识-计算机网络与分布式系统
计算机网络·软件工程·软考·系统分析师
红薯大哥1 天前
软件工程团队如何构建可持续的学习文化
软件工程
梁辰兴1 天前
软件工程:Halstead 软件科学法
软件工程·应用领域·梁辰兴·halstead 软件科学法·基本元素·基本度量·派生度量
项目管理实用笔记1 天前
CI/CD是什么?持续集成持续交付入门
运维·ci/cd·研发效能·项目管理·团队开发
项目管理与代码1 天前
Bug跟踪管理系统对比:从提报效率、流转体验与数据分析能力三个维度评估
bug·项目管理·bug跟踪
智造ERP规划3 天前
装备制造 ERP↔CRM 集成深度拆解:从询价到项目立项的 6 个独特挑战与解决方案
系统架构·软件工程·制造
Life lies in diligence.3 天前
resdownloader开发日志-1
软件工程·开源软件·yt-dlp·resdownloader