需求分析 订阅
需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。 [1] 展开全文
需求分析也称为软件需求分析、系统需求分析或需求分析工程等,是开发人员经过深入细致的调研和分析,准确理解用户和项目的功能、性能、可靠性等具体要求,将用户非形式的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。 [1]
信息
别    称
软件需求分析
定    义
通过分析,确定系统功能的过程
方    法
功能分析法等
中文名
需求分析
所属学科
软件工程
外文名
requirement analysis
需求分析目标
需求分析是软件计划阶段的重要活动,也是软件生存周期中的一个重要环节,该阶段是分析系统在功能上需要“实现什么”,而不是考虑如何去“实现”。需求分析的目标是把用户对待开发软件提出的“要求”或“需要”进行分析与整理,确认后形成描述完整、清晰与规范的文档,确定软件需要实现哪些功能,完成哪些工作。此外,软件的一些非功能性需求(如软件性能、可靠性、响应时间、可扩展性等),软件设计的约束条件,运行时与其他软件的关系等也是软件需求分析的目标。 [2] 
收起全文
精华内容
下载资源
问答
  • 需求分析

    万次阅读 多人点赞 2018-09-28 18:32:02
    (一) 需求分析的目标和任务 他的基本任务是:准确地回答“系统必须做什么”这个问题,也就是对目标系统提出完整、准确、清晰、具体的要求 1、确定对系统的综合要求:功能需求、性能需求、可靠性和可用性需求、...

    (一) 需求分析的目标和任务

    他的基本任务是:准确地回答“系统必须做什么”这个问题,也就是对目标系统提出完整、准确、清晰、具体的要求

    1、确定对系统的综合要求:功能需求、性能需求、可靠性和可用性需求、出错处理需求、接口需求、约束(设计约束或实现约束描述在设计或实现应用系统时应遵守的限制约束条件)、逆向需求(说明软件系统不应该做什么)、将来可能提出的需求

    2、分析系统的数据需求

    3、导出系统的逻辑模型

    4、修正系统开发计划

    (二) 软件系统的可行性分析

    (三) 需求获取

    ①访谈

        正式访谈:系统分析员将提出一些事先准备好的具体问题

        非正式访谈:分析员将提出一些用户可以自由回答的开放性问题。

        调查表:需要调查大量人员的意见。

    ②面向数据流自顶向下求精

    ③建议的应用规格说明技术

    ④快速建立软件模型

    (四) 需求规格说明书

    是需求分析阶段得出的最主要的文档。

    结构化分析模型

    (五) 数据流建模(数据流图)

        描绘系统逻辑模型,图中没有具体的物理元素,只描绘信息在系统中流动处理情况。是非常好的通信工具和软件设计出发点。

    1、数据流图符号

            正方形(立方体):表数据的原点或终点

            圆角矩形(或圆形):代表数据的处理

            开口矩形(或两条平行线):代表数据存储(临时或永久:可能文件、文件的一部分、一个表、记录的一部分都行,不用考虑怎么存储)

            箭头:表数据流,即特定数据的流动方向(有流动的数据项或数据集合)

            数据流图附加符号

    2、解法:

    ①从问题描述提取数据流图四种成分

                    原点、终点、处理、数据流、数据存储

    ②着手画数据流图的基本系统模型

                    即一个原点一个处理一个终点,确定边界

    ③把基本系统模型细化,描绘系统主要功能

    ④主要功能进一步细化

    ⑤结束,或进一步分解到涉及如何具体实现功能时,不再分解。

    3、分层数据流图:为表达数据加工情况,需采用层次结构数据流图

            顶层、中间层、底层

            分层数据流图的几个问题

                ①编号的设置父为2则子为2.1、2.2 。。。

               ②父子图的平衡

               ③局部数据存储不用平衡

    4、数据流图的命名规则

        ①数据流:用名词;代表整个数据流(数据存储)内容,不仅仅反应某些成分;不用缺乏具体含义的名字如“数据”“信息”等

        ②处理命名:用动宾词组,避免使用“加工”“处理”等笼统词;反应整个处理的功能,不是一部分功能;通常只包括一个动词,否则分解

        ③数据原点/终点:在问题域习惯用命(如“采购员”“学生”)

    5、数据流图的用途

        ①作为交流信息工具

        ②作为分析和设计工具:自动化边界划分

    (六) 实体-关系建模(E-R 图)

    描述数据对象之间的关系

    图中数据对象属性用“数据对象描述”表达

    1、组成:数据对象:软件必须理解的符合信息表达,复合信息是具有一系列不同性质或属性的事务

    2、数据对象间关系:一对一、一对多、多对多

    3、属性:定义数据对象的性质

    4、实体关系图

    (七) 系统行为建模

    1、软件行为模型:状态、事件、行为

            状态:被观察到的系统行为模式

            事件:引起状态转换的外界事件抽象

            行为:进入某状态所作动作

    2、状态转换图符号

            状态:

                   初始状态(只能有一个)

                    最终状态(可能多个)

                    中间状态

                    事件:

                            箭头:箭头上事件名。保安条件   [  ] 这种标志条件为真时导致改变

            行为:

                    状态框内加   "do:行为名"

    3、贼经典的例子

     

    (八) 用例建模(用例图)

    用例图描述外部执法者与系统的交互,表达系统功能,即系统提供服务

    1、主要元素用例和执行者

            用例:执行者与计算机一次典型交互,代表系统某一完整功能

            执行者:描述与系统交互的人或物,代表外部实体(如用户,硬件、设备等)

                    直线表示关系

    2、建立用户模型

            ①发现执行者

                    谁使用该系统;谁改变系统的数据;谁从系统取信息;谁需要系统的支持以完成日常任务;谁负责维护管理并保持系统正常运行;系统需要应付那些硬件设备;系统需要和哪些外部系统交互;谁对系统运行产生的结果感兴趣;

            ②获取用例

                   向执行者提出问题(从用户观点)

                           执行者需要获取何种功能,需要做什么;执行者需要读取产生、删除、修改或存储;系统发生时间和执行者间是否要通信;

                    用户观点非系统观点

            ③执行者间关联:

                    泛化关系:一般特殊关系(特殊者指向一般执行者)

            ④用例间关系

                    泛化关系

                    包含关系:一个基本用例包含另一个用例行为(要实现基本用例必须满足另一个用例行为)

                    扩展关系:允许一个用例扩展另一个用例提供的功能,与泛化类似,但有更多限制:基本用例必须声明“扩展点”,扩展用例只能在扩展点上增加新行为

    3、我自己画的一个用例图---不对请留言指正,正在研究,有更好的画法,风格更好更正规的画法,请留言指正。

    (九) 面向对象建模

    展开全文
  • 软件的需求分析需求分析

    千次下载 2008-12-24 14:19:05
    软件的需求分析需求分析 软件的需求分析需求分析 软件的需求分析需求分析
  • 需求分析——需求分析的步骤

    万次阅读 2019-05-27 21:52:33
    需求分析学习指导目录:...(2)需求分析和协商:与甲方讨论需求,明确需求。 (3)需求建模:use-case建模、静态模型、动态模型。 (4)形成需求文档:形成标准的软件需求规格说明书。 (5)需求确认:与用户...

    需求分析学习指导目录:https://blog.csdn.net/weixin_42562514/article/details/90572761

    (1)需求征集、获取:观察、访谈、情景、调查问卷、会议。

    (2)需求分析和协商:与甲方讨论需求,明确需求。

    (3)需求建模:use-case建模、静态模型、动态模型。

    (4)形成需求文档:形成标准的软件需求规格说明书。

    (5)需求确认:与用户进行确认需求。

    (6)需求管理

    展开全文
  • 需求分析师如何分析需求

    千次阅读 2019-08-15 15:53:59
    进入正文,需求分析师怎么去分析需求?​ 过去的两年我做的最多的就是需求分析,从客户那边获取需求后,分析需求的可行性、通用性以及实现方案,然后写需求说明书,画原型,跟开发讲解需求。 虽然客户的业务不同,...

    我始终认为,只有不断的总结,才能进步。

    进入正文,需求分析师怎么去分析需求?​

    过去的两年我做的最多的就是需求分析,从客户那边获取需求后,分析需求的可行性、通用性以及实现方案,然后写需求说明书,画原型,跟开发讲解需求。

    虽然客户的业务不同,提出的需求也可能不同,但在一些大的需求上,有一些通用的需求分析方法可以借鉴。

    首先,先明白有哪些需求?

    需求可以分为5种类型的需求,如原始需求、用户需求、新需求、产品需求和个性需求。

    (1)原始需求

    顾名思义就是最原始的需求,未经过加工过的需求。原始需求可以是客户直接提出的,也可以是一些监管机构提出(金融企业经常受监管要求要实现啥啥功能),在做需求分析的时候,一般会将原始需求单独写一章节,目的是给除了直接获取原始需求以外的人查看,避免需求传达之后的误解。

    (2)用户需求

    使用系统的人提出的需求,使用系统的角色一般不止一个,每个人基于自己的岗位会提出一些需求,有时,不同岗位的用户提出的需求可能会产生矛盾,这就要求需求分析师能以“上帝的视角”去看待不同的用户需求。

    (3)新需求

    系统本身没有以及不能通过改造系统本身的功能需要重新设计和开发的需求,对待新需求,需求分析师以前从未接触,不能害怕,相信自己可以通过查找资料以及各种途径快速学习。

    (4)产品需求

    对产品未来发展有益的需求,任何产品都需不断的迭代更新,功能不断优化,使用户体验越来越好,比市场同类产品具有更强的竞争力。需求分析师得从这些角度,自己提需求,使产品更优质。

    (5)个性需求

    用户提出的需求可能其他用户也适用,有些需求其他用户并不能适用,这就是个性需求,个性需求在版本的升级上,会比较麻烦点。

    从具体的需求来划分,需求可以分为功能需求、计算需求、报表需求等。

    对于功能需求的分析主要从两方面入手:业务场景和系统界面。

    用户在提需求的时候,多问几个为什么,为什么要提这个需求?目前是遇到什么困难?现在是怎么做的?如果涉及到业务数量的,还可以问下量大不大?比如某公司就只有一个客户做某业务,为了这一个客户去开发一个大功能,浪费人力、物力甚至造成项目延期。但也不是说,就不做,如果后续做这项业务的客户会越来越多,开发功能是需要的。

    将用户的需求理解清楚后,只是脑海中或者文字的说明,需要更形象,通常是除了文字说明还需要画原型图,很难理解的需求,画出系统界面后,开发人员能一下子看明白。原型工具用的比较多的Axure。

    有些客户会提出一些计算需求,需要计算某一个数值。对于这种计算类的需求,需求分析人员在和客户沟通的时候,可以从以下几个方面与客户沟通:

    1. 算法是什么?
    2. 能不能提供公式?
    3. 用例?
    4. 这个数值有什么合理性和业务意义?
    5. 计算出来有什么应用?
    6. 这个数值的意义是什么?

    弄明白这些后,计算类的需求分析大致有了基本了解,在与开发讲需求的时候,能讲的生动具体明确清晰。

    用户还会提出做报表,对于报表的需求并不仅仅是用户提供了报表模板就完事了,需求分析人员还得知道很多东西,比如以下:

    1. 提供的报表是否齐全?
    2. 每张报表的数据范围及数据来源?
    3. 报表里字段的取值从哪取?
    4. 报表应用在哪?
    5. 报表的数据量有多少?
    6. 报表是否有排序?按什么来排?
    7. 报表有什么限制性条件?(极端的情况)

    需求分析人员在和客户确认报表的需求时,最好将各报表都编码,以便双方都清楚需要做多少张报表,明确报表的数量。

    从客户给出的报表,可以看出客户从哪些角度去看待目前所做的业务,他比较关注什么,能力强的需求分析人员能从客户提供的资料看出客户的意图是什么。

    以上是需求分析师做需求分析时需求分析的一些基本方法。除了需求分析,需求管理也相当重要,需求管理不好,会造成整个项目进度延期、甚至不能验收结项。

    展开全文
  • 需求分析——需求分析的困难

    万次阅读 2019-05-26 08:48:04
    需求分析学习指导目录:https://blog.csdn.net/weixin_42562514/article/details/90572761 (1)应用领域:参与的人员来自不同的应用领域,对需求的理解不同。 (2)沟通上,不同的知识背景:很多专业名词、专业...

    需求分析学习指导目录:https://blog.csdn.net/weixin_42562514/article/details/90572761

    (1)应用领域:参与的人员来自不同的应用领域,对需求的理解不同。

    (2)沟通上,不同的知识背景:很多专业名词、专业术语等。

    (3)非功能性需求建模技术缺乏,与功能性需求有错综复杂的联系

     

     

     

    展开全文
  • 基于图书管理系统的需求分析 之 可行性分析&安全需求分析&系统需求分析 1.可行性分析 本次可行性分析是按照规范步骤进行,即按复查项目目标和规模,研究本系统,导出新系统的高层逻辑模型,重新定义问题...
  • (1)在需求方面达成一致:需求是一种反复进行的过程,涉及到各种各样具有不同背景和要求的用户,需求文档必须有助于需求分析师与用户之间的沟通,以及需求分析师与软件设计师和测试工程师之间的沟通; (2)为软件...
  • 产品需求分析

    千次阅读 2019-01-11 23:03:52
    产品需求分析,先要知道这在产品实现过程中处于哪个环节。无论是新产品还是迭代产品,首先由想法产生需求,然后需求汇集并分析,放弃掉不需要的,暂缓不紧急的,然后整理出需要下一步执行的,最终形成产品需求文档并...
  • 需求分析——什么是需求分析

    万次阅读 2019-05-26 07:41:10
    需求分析学习目录:https://blog.csdn.net/weixin_42562514/article/details/90572761 一个用户解决一个问题或实现一个目标所需的条件或能力 为了满足一个合同、标准、规范、或其它正是文档要求,一个系统或系统...
  • 需求分析与需求文档

    万次阅读 2018-04-17 08:58:42
    什么是需求分析呢?需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求。在网页开发当中的“需求分析”就是确定要计算机做什么,所以必须要搞清楚需要什么数据,要得到什么结果,最后输出什么这三方面问题...
  • 性能需求分析

    千次阅读 2019-09-05 18:07:54
    性能需求分析 需求分析是个繁杂过程,它并非我们想象的那么简单,而性能测试需求除了要对系统的业务非常了解,还需要有深厚性能测试知识。才能够挖掘分析出真正的性能需求。 1、如何获得有效的需求 1.1、客户方...
  • 财务系统需求分析 目录 1.引言 2 1.1概述 2 1.2用户分析 3 2.功能需求 3 2.1总体功能介绍 3 2.2功能需求分析 3 2.2.2基础信息设置 4 2.2.3账务管理 4 2.2.4出纳管理 4 2.2.5电子报表 5 ...
  • 需求分析学习指导目录:https://blog.csdn.net/weixin_42562514/article/details/90572761 功能需求:描述软件应具备的功能,有时也被称为能力(capabilities),对系统提供的服务、功能以及系统在特定条件下的行为...
  • 软件需求分析

    千次阅读 2018-12-22 20:58:15
    软件需求分析的任务: 需求分析步骤: 需求分析方法: 分析建模: 分析模型: 建立分析模型的方法: 结构化分析: 软件需求说明: 软件需求说明包括内容: ​ 需求验证: 开发过程模型: 当前系统的...
  • 需求分析——系统需求和软件需求

    万次阅读 2019-05-26 07:53:27
    需求分析学习指导目录:https://blog.csdn.net/weixin_42562514/article/details/90572761 系统需求:是指为了完成既定目标而相互协作的构建集合,包括硬件、软件、人员、信息、技术、设施、服务、其它支持构件。...
  • 测试需求分析

    千次阅读 2018-09-18 16:16:08
    1.1 测试需求分析概述 1.2 功能测试需求分析方法   测试需求分析概述 一、什么是需求分析 我理解的需求分析就是要弄清楚用户需要的是什么功能,用户会怎样使用系统。这样我们测试的时候才能更加清楚的知道...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 145,192
精华内容 58,076
关键字:

需求分析