`
El_Nino
  • 浏览: 207504 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

什么是需求分析

 
阅读更多
需求分析是对用户需求的真正明确,是对要解决的问题的彻底理解。在解决问题之前要理解问题,只有真正的理解问题才能更好的解决问题。需求分析就是给系统分析、设计人员一个和用户交流来理解问题的机会—了解用户究竟需要什么。
需求分析也是一个建模的过程,与在概要设计中建模不同在需求分析中建模是面向用户的过程。而在概要设计中的建模过程是面向开发人员的过程。这样两种建模的过程就会存在差异和不同,从而使用自然语言进行描述也就不同。在传统的软件工程中并不建议大量的使用自然语言对软件的需求进行描述,因为太多的自然语言会引发出很多问题。比如说,二义性即不同的人对自然语言的描述会有不同的理解,就是再好的文档编写人员也不会保证他的文档不存在二义性。毕竟我们不是语言学家。这样就引入了借用图示进行功能的描述和建模的过程。图示有其自己的优势比如,清晰,明确给人直观的感觉。无论是何种背景的人群都可以理解。这样就大大减少需求分析中的二义性。从而使系统设计人员和用户更加有效的沟通。这样也增加了软件的正确性。在传统的软件工程中提供了多种不同的图示,每一种都从不同的角度对同一个问题进行描述,之所以这样。可以使系统开发人员在不同的图示中挑出最适合他和他的团队进行问题详尽描述的一个或者一些图示。比如数据流图,在需求分析中使用数据流图,就充分体现了数据在软件系统中移动时被变换的逻辑过程。所以就是一个建立功能模型的最好图示;而实体关系图,就是描述数据对象以及他们之间关系的图示,所以就是一个建立数据模型的最好例子。状态转换图通过事件的外部作用从而对状态进行改变,这就是一个建立行为模型的例子。
在我做需求分析时,尽量做到问题阐述明确。可是一直有一个问题困扰着我,就是应该选择什么样的图例进行系统的描述是,数据流图,状态转换图还是实体关系图?其实不同系统设计人员给出的答案不会是一样的。这并不是一个哲学问题而是一个应用问题。从客户的角度出发使用实体关系图是最好的选择,而数据流图完全就是为系统设计人员量身定做的一样。因为程序员更关心事物内部的逻辑性和相关性;而用户只关心事物的外部表征和特性。所以问题的答案只有每个人自己去寻找,寻找一个最能体现用户需求和问题解决方案的图示。
在按照模版进行需求分析撰写的时候,我发现有很多模版条目的要求是在需求分析的最初阶段是无法给出确切的答案的。有的条目要经过概要设计,详细设计之后才能对文档内容进行修改和填充。同时我对其他同行撰写的需求分析文档进行研究发现,一个优秀的需求分析说明说并不是按照规定模版条目不变的照搬。其实有些冗余的项目完全可以不必关心。毕竟撰写需求分析的真正目的,是让系统设计人员知道用户的需求。其他的不必过多强求。
分享到:
评论

相关推荐

    需求分析理论——介绍

    首先,我们需要理解什么是需求分析。简单来说,需求分析是通过收集、分析和记录用户对软件系统的需求,以便制定出满足这些需求的解决方案的过程。它涉及到与利益相关者(包括客户、用户、管理者等)进行沟通,以确定...

    ATM系统需求分析1

    首先,我们需要了解什么是需求分析。需求分析是软件工程项目中的一步,它的主要目的是了解和确定系统的需求,包括功能需求和非功能需求。功能需求是指系统必须具备的功能和性能,而非功能需求则是指系统的安全性、可...

    有效需求分析.pdf

    使了解需求工程基本理论,具有一定需求相关工作经验的技术人员、业务骨干的需求分析实战技能迅速提高,能够有效地组织、执行需求分析工作,熟练掌握各种模型并正确选择,编写出更加高效的需求文档。通过该课程的学习...

    产品经理必知必懂的需求分析

    那么,什么是需求分析?为什么要做需求分析?如何分析需求?下面将对这些问题进行详细的解答。 什么是需求? 需求指的是人类的基本需求,是指用户对某个产品或服务的欲望或需要。需求可以分为 Needs、Wants 和 ...

    1.软件需求分析报告模板(完整版)

    软件需求分析报告模板解读 软件需求分析报告是软件开发过程中不可或缺的一部分,它对软件项目的成功至关重要。 本文将对软件需求分析报告模板进行详细的解读,并对其中涉及的知识点进行详细的分析。 范围 软件...

    需求分析训练营(徐锋)

    ### 需求分析训练营知识点详述 #### 一、需求分析全局观 - **需求分析视角与方法** - **需求分析方法发展史**:介绍从传统的瀑布模型到敏捷开发模型的需求分析方法变迁,强调了随着软件工程理论和技术的发展,需求...

    需求分析需求分析(UML图)

    需求分析是软件开发过程中的关键步骤,它定义了项目的初始目标和预期功能,为后续设计、编码和测试奠定了基础。UML(统一建模语言)是进行需求分析时常用的一种图形化工具,能够帮助我们清晰地表达和理解系统的需求...

    需求分析师面试题

    【需求分析师面试题】知识点详解: 1. 需求收集与分析: 需求分析师在面试中经常被问及如何有效地收集需求。这涉及到与不同干系人的沟通技巧,包括用户、管理层、技术人员等,理解他们的期望和问题。面试者应展示...

    需求分析评审记录表.doc

    "需求分析评审记录表" 本文主要介绍了需求分析评审记录表的知识点,包括需求分析评审的定义、评审日期、地点、主持人、参加部门及人员、评审内容、评审过程、评审结论、编制、审核、批准等。 一、 需求分析评审的...

    需求分析师笔试题

    需求分析师笔试题 本资源摘要信息是关于需求分析师笔试题的知识点总结,涵盖了项目立项阶段、需求定义、需求捕获、需求验证、业务建模、用例图、活动图、领域类图等多个方面的知识点。 需求分析师笔试题中的第一个...

    高级需求分析师总结

    需求分析是软件开发周期中至关重要的一步,其核心在于理解和定义软件应该做什么。需求分析不仅仅是收集需求那么简单,它涉及到深入理解用户的真正需求,将这些需求转化为可实施的软件功能,并确保软件的最终产出能够...

    需求分析sre试题及部分答案

    在需求分析过程中,需求工程师要从用户那里解决的最重要的问题是明确软件做什么。用户类总是人员而不可能是系统设备。在需求验证过程中主要是对需求分析模型进行评审,以保证其技术可行性。 以下是其他一些重要的...

    东北大学 软件需求分析与设计 李哲珠 考试重点

    "东北大学软件需求分析与设计李哲珠考试重点" 软件需求分析与设计是软件工程中非常重要的一部分,它涉及到软件开发的整个生命周期。李哲珠的课对软件需求分析与设计进行了详细的讲解,并提供了多种案例和练习题,...

    我们应当怎样做需求分析

    我们应当怎样做需求分析 我们应当怎样做需求调研:初识 3 我们应当怎样做需求调研:拜访 5 我们应当怎样做需求调研:研讨会 6 我们应当怎样做需求调研:需求研讨 8 我们应当怎样做需求调研:迭代 10 我们应当怎样做...

    实战需求分析.zip

    《实战需求分析》压缩包包含了全面的需求分析学习资源,涵盖了从入门到进阶的各个阶段。这个包旨在帮助用户理解并掌握需求分析的核心概念和技术,从而在实际项目中有效地进行需求收集、系统规划、数据建模、功能设计...

    图书管理系统需求分析报告

    图书管理系统需求分析报告 图书管理系统需求分析报告是对图书管理系统的需求进行详细的分析和描述,以确保系统的设计和开发能够满足用户的需求。下面是图书管理系统需求分析报告的详细内容: 引言 图书管理系统...

    需求分析模板(非常详细的软件分析材料)

    需求分析模板(非常详细的软件分析材料) 需求分析模板是软件开发过程中的关键步骤,对软件项目的成功至关重要。这个模板包括软件需求分析报告文档模板、软件概要设计报告文档模板、软件详细设计报告文档模板、软件...

    需求分析.pdf

    ### 软件需求分析概览 #### 一、需求分析的重要性 软件需求分析是软件工程中的关键步骤之一,它确保了最终开发出的产品能够满足用户的真实需求。本篇文章将基于给定的文件《需求分析.pdf》来详细介绍需求分析的...

    《有效需求分析》精读笔记.pdf

    《-effective需求分析》精读笔记 《effective需求分析》精读笔记作者金句:我们不是在画活动图,而是在做流程分析;不是在画类图,而是在厘清数据关系;不是在画用例图,而是在识别场景……左脑喜欢逻辑,右脑喜欢...

    需求分析报告模版

    ### IT专业知识点解析:需求分析报告模版 #### 核心知识点解读 **一、需求分析报告的意义** 需求分析报告是软件开发项目中至关重要的一个环节,它详细记录了项目的目标、用户需求、系统功能、运行环境等关键信息...

Global site tag (gtag.js) - Google Analytics