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

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

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

1. 定义

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

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

2. 作用

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

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

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

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

3. 内容

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

  • 分层

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

  • 转换

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

  • 功能

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

4. 能力

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

(1)建模与分析能力

(2)专业业务知识

(3)设计与实现的知识

5. 需求的分层

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

6. 需求的转换

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

相关推荐
广州智造17 小时前
EPLAN教程:流体工程
开发语言·人工智能·python·算法·软件工程·软件构建
张较瘦_1 天前
[论文阅读] 软件工程工具 | EVOSCAT可视化工具如何重塑软件演化研究
论文阅读·软件工程
snow@li3 天前
PMP-项目管理-十大知识领域:资源管理-管理团队、设备、材料等资源
项目管理·资源管理
大千AI助手4 天前
SWE-bench:真实世界软件工程任务的“试金石”
人工智能·深度学习·大模型·llm·软件工程·代码生成·swe-bench
Q_Q5110082854 天前
python的软件工程与项目管理课程组学习系统
spring boot·python·django·flask·node.js·php·软件工程
万能小锦鲤4 天前
《软件工程导论》实验报告五 设计建模工具的使用(一)类图
软件工程·类图·实验报告·boardmix·文档资源
数据爬坡ing5 天前
过程设计工具深度解析-软件工程之详细设计(补充篇)
大数据·数据结构·算法·apache·软件工程·软件构建·设计语言
紫金桥软件5 天前
紫金桥RealSCADA:国产工业大脑,智造安全基石
安全·系统安全·软件工程
曼岛_7 天前
[系统架构设计师]软件工程基础知识(五)
系统架构·软件工程·系统架构设计师
万能小锦鲤7 天前
《软件工程导论》实验报告一 软件工程文档
软件工程·软件工程导论·实验报告·软件工程文档