什么是项目需求分析

合集下载

项目的需求分析包括哪些方面

项目的需求分析包括哪些方面

项目的需求分析包括哪些方面导言在项目开发过程中,需求分析是至关重要的一步。

通过对项目需求进行分析,可以明确项目目标、范围和所需资源,帮助开发团队确保项目的有效实施。

本文将介绍项目需求分析的几个方面,包括用户需求、功能需求、非功能需求和约束条件。

用户需求用户需求是指项目最终用户对系统或产品的期望和要求。

用户需求的分析通常需要与项目相关方进行沟通和交流,以确保开发团队准确地了解用户的需求。

用户需求可通过以下几个方面进行分析:1.功能需求:用户对系统或产品所期望的功能和特性的描述。

例如,一个电子商务平台的用户可能希望能够浏览商品、添加商品到购物车、下订单等。

2.界面需求:用户对界面设计的要求。

界面需求包括用户界面的布局、颜色、字体、交互元素等方面的需求。

3.数据需求:用户对所需数据的要求。

例如,一个学生管理系统的用户可能需要学生的个人信息、成绩记录、课程安排等数据。

4.安全需求:用户对系统安全性的要求。

例如,一个银行系统的用户可能要求数据加密、访问权限管理等安全措施。

功能需求功能需求是指项目中系统或产品需要具备的功能和特性。

功能需求的分析应当能够准确描述系统或产品的行为。

以下是功能需求分析的几个方面:1.用例分析:通过分析系统或产品与用户的交互过程,确定各种用例和场景。

用例分析可以帮助开发团队定义系统或产品的行为和功能。

2.功能优先级划分:对功能需求进行优先级排序,以确保在实施过程中能够优先完成关键功能。

优先级划分可以帮助开发团队合理安排开发工作。

3.功能详细描述:对每个功能进行详细的描述,包括输入和输出的数据、处理逻辑、预期结果等。

功能详细描述可以帮助开发团队准确理解和实现功能需求。

非功能需求非功能需求是指项目中与功能无关的系统属性或性能要求。

非功能需求的分析通常与用户体验、性能和安全等方面相关。

以下是非功能需求分析的几个方面:1.性能需求:对系统性能的要求,例如响应时间、资源利用率等。

2.可用性需求:对系统易用性和用户体验的要求。

什么是项目需求分析

什么是项目需求分析

什么是项目需求分析项目需求分析是指对项目的需求进行全面、系统的分析和解读,通过明确和明确项目的目标、范围、功能、约束和质量要求,从而为项目的规划和实施提供指导。

项目需求分析是项目管理的关键步骤,在项目生命周期的早期阶段完成,帮助团队建立共同的目标和期望,确保项目成功交付。

项目需求分析通常包括以下几个方面:1.需求识别:识别项目的各种需求,包括用户需求、项目目标和约束、功能需求、性能需求、安全需求等。

这是需求分析的起点,需要与利益相关者进行深入的沟通和讨论,以确保全面获取和理解项目的需求。

2.需求分析:对需求进行详细的分析和梳理,明确需求之间的关联和依赖关系。

这包括对需求的合理性、可行性和一致性进行评估,确保需求的清晰性和可测性。

此外,还可以使用工具和技术,如业务过程建模、数据流图、用例图等,来帮助分析和表示需求。

3.需求规格说明:将已识别和分析的需求进行整理和总结,形成需求规格说明书或需求文档。

需求规格说明是一个概述项目需求全貌的文档,包含了项目范围、功能描述、用例场景、非功能需求、优先级、限制和假设等信息。

这个文档将成为后续项目开发和测试的依据,因此需要确保准确、清晰和一致。

4.需求验证:通过与利益相关者的讨论和确认,确保需求规格说明的准确性和可行性。

这包括与用户、主要干系人和项目团队一起进行需求审查、原型演示和用户验收测试等活动,以验证需求的有效性和可实现性。

同时,还可以通过变更控制过程来管理和记录可能的变更请求,以确保需求的变更得到准确的管理和跟踪。

在项目需求分析过程中,需要注意以下几个要点:1.与利益相关者合作:需求的识别和分析是一个与利益相关者深入合作的过程,需要与他们密切合作,了解他们的需求、期望和挑战,并加以分析和解决。

只有通过与利益相关者的合作,才能确保项目需求的全面、准确和一致。

2.明确和具体的需求:需求规格说明应该是明确和具体的,以便开发和测试团队能够准确理解和实施。

需求的描述应该具有可测性和追踪性,以便能够对其进行评估、确认和验证。

什么是项目需求分析

什么是项目需求分析

什么是项目需求分析?需求分析是指理解用户需求,就功能与客户达成一致,估计和评估项目代价,最终形成开发计划的一个复杂过程。

(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和要负责整理用户需求,为之后的设计打下基础。

需求分析阶段结束后,要求得到:1.SRS文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan. 从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。

狭义上理解:需求分析指需求的分析、定义过程。

一、为什么要需求分析需求分析就是分析用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的,而你在开发前期忽略了的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死.需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型系统的开发中,他的作用要远远大于程序设计.二、需求分析的任务简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.三、需求分析的过程需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审.问题识别:就是从系统角度来理解,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(运行是所需的内存,CPU等),消耗与开发进度需求,预先估计以后系统可能达到的目标.分析与综合:逐步细化所有的功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型).制订规格说明书:即编制文档,描述需求的文档称为需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交.评审:对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。

需求分析与可行性 分析

需求分析与可行性 分析

需求分析与可行性分析需求分析与可行性分析是在进行项目执行前必须进行的重要工作。

需求分析是指对项目实施过程中所需要解决的问题进行系统的分析和论证,确定实施的目标。

而可行性分析是指对项目执行的可行性进行评估,包括经济可行性、技术可行性和组织可行性等方面的分析。

下面将分别对需求分析和可行性分析进行详细阐述。

1. 需求分析需求分析是通过对项目实施过程中的问题进行分析,明确实施的目标和解决的问题。

在进行需求分析时,可以采用以下步骤:(1)明确项目的背景和目的:了解项目的起因和目的,明确项目实施的背景和目标,以便后续的需求分析工作有一个明确的方向。

(2)确定用户需求:与项目相关的各方面人员进行沟通和交流,了解他们的需求和期望,包括功能性需求和非功能性需求。

这可以通过访谈、问卷调查等方式进行。

(3)分析需求:对收集到的需求进行分析,明确各个需求之间的优先级和相关性,将它们整合成一个完整的需求列表。

(4)确定需求的可行性:对整合后的需求进行评估,确定其可行性和实现的可行路径。

这可以通过技术评估、市场调查等方式来进行。

(5)输出需求文档:将需求整理成一个详细的需求文档,包括需求的优先级、实现的方法、预计的实施时间等信息,以便后续进一步的执行和实施。

需求分析的目的是明确项目的实施目标和解决的问题,为后续的项目执行提供清晰的方向。

通过需求分析,可以有效地避免项目执行过程中的偏差和风险,提高项目的成功率和用户满意度。

2. 可行性分析可行性分析是对项目执行的可行性进行评估,包括经济可行性、技术可行性和组织可行性等方面的分析。

在进行可行性分析时,可以采用以下步骤:(1)经济可行性分析:评估项目的投资收益情况,包括项目的成本、收益和盈利能力等方面的分析。

通过对项目的成本和收益进行评估,判断项目是否具有经济可行性。

(2)技术可行性分析:评估项目所依赖的技术是否可行和成熟,包括技术的稳定性、可靠性和可扩展性等方面的分析。

通过对技术方案和解决方法的评估,判断项目是否具有技术可行性。

项目工作需求分析与解决方案

项目工作需求分析与解决方案

项目工作需求分析与解决方案在进行任何项目工作之前,充分了解项目的需求是至关重要的。

项目需求分析是识别项目所要解决问题的过程,它能够帮助项目团队确认项目的目标、范围和交付物。

在本篇文章中,我们将探讨项目工作需求分析的重要性,并提供一些解决方案以满足这些需求。

1. 项目工作需求分析的重要性项目工作需求分析是确保项目成功的重要步骤。

通过准确理解项目的需求,团队能够优化资源的分配以满足这些需求,更好地规划和执行项目。

以下是项目工作需求分析的几个重要原因:1.1 确定项目目标和范围项目目标是项目工作需求分析的核心。

通过对项目需求的详细研究,团队能够明确项目的预期结果和交付物,从而为项目制定明确的目标和范围。

1.2 优化资源分配项目工作需求分析可以帮助团队确定所需的资源类型和数量。

这些资源包括人力资源、物资、资金等。

通过合理分配资源,团队可以更好地规划和执行项目,确保资源的有效利用。

1.3 确保项目成功交付项目成功的关键在于满足客户的需求。

通过项目工作需求分析,团队可以充分理解客户的要求,并在项目交付阶段提供高质量的成果,以满足客户的期望。

2. 解决方案针对项目工作需求的解决方案可以根据具体情况而异。

下面提供几种常见的解决方案,以供参考:2.1 详细需求调研在进行项目工作需求分析时,团队应该进行详细的调研,以充分了解项目的背景、目标和预期结果。

调研可以包括与客户、利益相关者和行业专家的访谈,文献和市场调查等。

通过广泛的调研,团队可以收集到更准确的需求信息,为项目的实施提供指导。

2.2 分析和识别关键需求在进行需求分析时,团队应该将重点放在识别关键需求上。

关键需求是对项目成功交付至关重要的需求。

通过识别关键需求,团队可以更好地分配资源和优化项目执行计划。

2.3 利益相关者参与项目工作需求分析应该不仅充分考虑客户的需求,还应该纳入其他利益相关者的意见和要求。

通过利益相关者的参与,项目团队可以确保项目的目标和结果能够尽可能地满足各方的期望。

项目需求分析与问题定义

项目需求分析与问题定义

项目需求分析与问题定义项目需求分析是指对项目需求进行系统的分析和理解,从而明确项目的目标和范围,并确定项目所要解决的核心问题。

问题定义是指明确项目存在的问题,并加以描述和概括。

本文将围绕任务名称描述的内容需求,进行详细的回答和介绍。

1. 项目需求分析1.1 项目目标与范围项目需求分析的首要任务是明确项目的目标和范围,包括理解项目的核心业务,项目的预期成果和目标,项目的参与方和利益相关者,以及项目的时间和资源限制。

通过准确地定义项目的目标和范围,可以避免项目的目标不明确或范围扩大等问题。

1.2 需求收集与整理需求收集是项目需求分析的关键环节,通过与项目相关人员的交流、调研和访谈等方式,收集项目的各项需求。

需求整理是对所收集到的需求进行梳理和整合,将其按照不同的类别和优先级进行分类和排序,以便后续的分析和处理。

1.3 需求分析与确认需求分析是对收集到的需求进行深入分析和理解的过程,包括对需求的可行性、可靠性和可实现性进行评估,以及对需求之间的关联和冲突进行分析和解决。

需求确认是指与项目相关人员进行反复沟通和确认,确保项目需求的准确性和可实现性。

2. 问题定义2.1 问题背景与描述问题定义的第一步是清楚地描述问题的背景和发生的具体情境,确保所有相关人员对问题的认识和理解一致。

通过精确地描述问题的特征、原因和影响,可以为后续解决问题提供明确的依据。

2.2 问题分析与探索问题分析是对问题进行深入剖析和分解的过程,寻找问题的根本原因和相互关系。

通过对问题的具体因素进行分析和比较,可以找出问题的症结所在,并为解决问题提供有针对性的措施和解决方案。

2.3 问题定义与目标问题定义是对问题进行准确定义和界定的过程,明确问题的本质和影响范围。

在问题定义的基础上,可以为问题解决的目标进行设定,即明确要解决的问题是什么,以及希望达到什么样的效果和结果。

总结:通过项目需求分析与问题定义,可以明确项目的目标和范围,准确收集和整理项目需求,分析和确认需求的可行性和可实现性。

可行性分析和需求分析的区别

可行性分析和需求分析的区别

可行性分析和需求分析的区别在项目管理和系统开发中,可行性分析和需求分析是两个重要的概念和过程。

虽然它们在名称上很相似,但在实际应用中有着明显的区别。

本文将介绍可行性分析和需求分析的区别,并探讨它们在项目实施过程中的作用和意义。

一、可行性分析可行性分析是在项目立项阶段进行的一项重要工作。

它旨在评估和确定项目的可行性,包括技术可行性、经济可行性、操作可行性等方面。

通过可行性分析,可以判断项目是否值得投资,并为项目决策提供依据。

1. 技术可行性:可行性分析的一个重要方面是评估项目的技术可行性。

这包括评估所需技术是否可行、技术方案是否成熟、技术风险是否可控等。

在进行技术可行性分析时,需要考虑项目的技术需求与资源之间的匹配度,以确保项目在技术上能够顺利实施。

2. 经济可行性:经济可行性是可行性分析中的另一个关键要素。

通过对项目的成本和效益进行评估,可以判断项目是否经济可行,即是否能够在合理的时间内收回投资并获得预期的利润。

这需要考虑项目的投资规模、回报周期、市场需求以及竞争环境等因素。

3. 操作可行性:操作可行性评估项目在日常运行中的可行性,包括项目的组织管理、人员配备、操作流程等方面。

通过对操作可行性的评估,可以确保项目在实施过程中能够得到有效的支持和操作,并顺利达到预期目标。

二、需求分析需求分析是在项目实施阶段进行的一项核心工作。

它旨在明确和理解项目的需求,包括功能需求、性能需求、操作需求等。

通过需求分析,可以准确把握项目的目标和需求,并为后续的系统设计和开发提供依据。

1. 功能需求:功能需求是指项目在实施过程中需要满足的功能要求。

通过对用户需求的收集和整理,分析人员可以明确项目的功能需求,并将其转化为具体的功能模块和功能点,为系统设计和开发提供指导。

2. 性能需求:性能需求是指项目对系统性能的要求。

这包括对系统响应时间、并发能力、可靠性等方面的要求。

通过对性能需求的明确和分析,可以选择合适的技术方案和系统设计,以满足项目对性能的要求。

项目需求分析

项目需求分析

项目需求分析项目需求分析是在项目启动的初期阶段进行的一项关键工作,旨在全面了解项目的目标、范围和功能要求,为后续的项目规划与设计提供基础。

通过对项目的需求进行详尽的分析与总结,可以确保项目的成功实施,并最大限度地满足用户的期望。

首先,在进行项目需求分析之前,需要明确项目的目标和背景。

了解项目为什么要实施,近期和远期的目标是什么,以及项目对组织和用户的影响是非常重要的。

只有在充分了解项目的背景情况后,我们才能更好地围绕项目的目标进行需求分析。

其次,对于项目的范围进行明确和定义。

项目范围是指项目的边界,用于界定项目的具体内容和可交付成果。

在项目需求分析中,需要确定项目的边界和所涉及的功能、流程或系统。

通过明确项目的范围,可以避免过度扩大项目规模或范围,确保项目的可行性和可实施性。

在项目需求分析的过程中,还需要进行用户需求的调研和分析。

用户需求是指项目中涉及的用户或利益相关者在功能、性能、可靠性、安全性等方面的具体要求。

通过与用户进行沟通和访谈,了解他们的需求和期望,可以帮助项目团队确定功能和功能优先级,并确保项目交付的产品或服务符合用户的期望。

此外,在项目需求分析过程中,还需要进行技术可行性和可行性分析。

技术可行性分析是指评估技术方案的可行性和可实施性,以确定最适合项目的技术解决方案。

通过对现有技术、资源和约束条件等进行分析,可以确定项目的技术要求和实施方案。

而可行性分析则是评估项目的经济、社会和环境可行性,以确定项目是否具有可实施和可持续发展的潜力。

最后,在项目需求分析的过程中,还需要制定详细的需求文档。

需求文档是对项目需求进行系统和具体描述的文档,它包含了项目的功能、性能、运行环境和约束条件等要求和规定。

通过制定清晰、准确的需求文档,可以帮助项目团队更好地理解和满足项目的需求,避免需求的模糊或冲突。

综上所述,项目需求分析是确保项目成功实施的关键环节。

通过对项目目标、范围、用户需求和技术可行性等方面进行全面的分析,可以明确项目的需求和目标,并为后续的项目规划和设计提供基础。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

什么是项目需求分析?需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。

(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。

需求分析阶段结束后,要求得到:1.SRS 文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan. 从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。

狭义上理解:需求分析指需求的分析、定义过程。

一、为什么要需求分析需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死.需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计.二、需求分析的任务简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.三、需求分析的过程需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审.问题识别就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标.分析与综合逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型).制订规格说明书即编制文档,描述需求的文档称为软件需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交.评审对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。

四、需求分析的方法需求分析的方法有很多.这里只强调原型化方法,其它的方法如:结构化方法,动态分析法等(个人认为,对初学者不必深究这些方法,实际上我也从来没用过这些方法)在此不讨论.原型化方法是十分重要的(是软考等常考的知识点).原型就是软件的一个早期可运行的版本,它实现了目标系统的某些或全部功能.原型化方法就是尽可能快地建造一个粗糙的系统,这系统实现了目标系统的某些或全部功能,但是这个系统可能在可靠性,界面的友好性或其他方面上存在缺陷.建造这样一个系统的目的是为了考察某一方面的可行性,如算法的可行性,技术的可行性,或考察是否满足用户的需求等.如,为了考察是否满足用户的要求,可以用某些软件工具快速的建造一个原型系统,这个系统只是一个界面,然后听取用户的意见,改进这个原型.以后的目标系统就在原型系统的基础上开发.原型主要有三种类型(软考考过):探索型,实验型,进化型.探索型:目的是要弄清楚对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性.实验型:用于大规模开发和实现前,考核方案是否合适,规格说明是否可靠.进化型:目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。

在使用原型化方法是有两种不同的策略:废弃策略,追加策略.废弃策略:先建造一个功能简单而且质量要求不高的模型系统,针对这个系统反复进行修改,形成比较好的思想,据此设计出较完整,准确,一致,可靠的最终系统.系统构造完成后,原来的模型系统就被废弃不用.探索型和实验型属于这种策略。

追加策略:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,发展成为最终系统。

进化型属于这种策略.五、需求分析的20条法则(本节摘自软件工程专家网)客户与开发人员交流需要好的方法。

下面建议20条法则,客户和开发人员可以通过评审以下内容并达成共识。

如果遇到分歧,将通过协商达成对各自义务的相互理解,以便减少以后的磨擦(如一方要求而另一方不愿意或不能够满足要求)。

1、分析人员要使用符合客户语言习惯的表达需求讨论集中于业务需求和任务,因此要使用术语。

客户应将有关术语(例如:采价、印花商品等采购术语)教给分析人员,而客户不一定要懂得计算机行业的术语。

2、分析人员要了解客户的业务及目标只有分析人员更好地了解客户的业务,才能使产品更好地满足需要。

这将有助于开发人员设计出真正满足客户需要并达到期望的优秀软件。

为帮助开发和分析人员,客户可以考虑邀请他们观察自己的工作流程。

如果是切换新系统,那么开发和分析人员应使用一下目前的旧系统,有利于他们明白目前系统是怎样工作的,其流程情况以及可供改进之处。

3、分析人员必须编写软件需求报告分析人员应将从客户那里获得的所有信息进行整理,以区分业务需求及规范、功能需求、质量目标、解决方法和其他信息。

通过这些分析,客户就能得到一份“需求分析报告”,此份报告使开发人员和客户之间针对要开发的产品内容达成协议。

报告应以一种客户认为易于翻阅和理解的方式组织编写。

客户要评审此报告,以确保报告内容准确完整地表达其需求。

一份高质量的“需求分析报告”有助于开发人员开发出真正需要的产品。

4、要求得到需求工作结果的解释说明分析人员可能采用了多种图表作为文字性“需求分析报告”的补充说明,因为工作图表能很清晰地描述出系统行为的某些方面,所以报告中各种图表有着极高的价值;虽然它们不太难于理解,但是客户可能对此并不熟悉,因此客户可以要求分析人员解释说明每个图表的作用、符号的意义和需求开发工作的结果,以及怎样检查图表有无错误及不一致等。

5、开发人员要尊重客户的意见如果用户与开发人员之间不能相互理解,那关于需求的讨论将会有障碍。

共同合作能使大家“兼听则明”。

参与需求开发过程的客户有权要求开发人员尊重他们并珍惜他们为项目成功所付出的时间,同样,客户也应对开发人员为项目成功这一共同目标所做出的努力表示尊重。

6、开发人员要对需求及产品实施提出建议和解决方案通常客户所说的“需求”已经是一种实际可行的实施方案,分析人员应尽力从这些解决方法中了解真正的业务需求,同时还应找出已有系统与当前业务不符之处,以确保产品不会无效或低效;在彻底弄清业务领域内的事情后,分析人员就能提出相当好的改进方法,有经验且有创造力的分析人员还能提出增加一些用户没有发现的很有价值的系统特性。

7、描述产品使用特性客户可以要求分析人员在实现功能需求的同时还注意软件的易用性,因为这些易用特性或质量属性能使客户更准确、高效地完成任务。

例如:客户有时要求产品要“界面友好”或“健壮”或“高效率”,但对于开发人员来讲,太主观了并无实用价值。

正确的做法是,分析人员通过询问和调查了解客户所要的“友好、健壮、高效所包含的具体特性,具体分析哪些特性对哪些特性有负面影响,在性能代价和所提出解决方案的预期利益之间做出权衡,以确保做出合理的取舍。

8、允许重用已有的软件组件需求通常有一定灵活性,分析人员可能发现已有的某个软件组件与客户描述的需求很相符,在这种情况下,分析人员应提供一些修改需求的选择以便开发人员能够降低新系统的开发成本和节省时间,而不必严格按原有的需求说明开发。

所以说,如果想在产品中使用一些已有的商业常用组件,而它们并不完全适合您所需的特性,这时一定程度上的需求灵活性就显得极为重要了。

9、要求对变更的代价提供真实可靠的评估有时,人们面临更好、也更昂贵的方案时,会做出不同的选择。

而这时,对需求变更的影响进行评估从而对业务决策提供帮助,是十分必要的。

所以,客户有权利要求开发人员通过分析给出一个真实可信的评估,包括影响、成本和得失等。

开发人员不能由于不想实施变更而随意夸大评估成本。

10、获得满足客户功能和质量要求的系统每个人都希望项目成功,但这不仅要求客户要清晰地告知开发人员关于系统“做什么”所需的所有信息,而且还要求开发人员能通过交流了解清楚取舍与限制,一定要明确说明您的假设和潜在的期望,否则,开发人员开发出的产品很可能无法让您满意。

11、给分析人员讲解您的业务分析人员要依靠客户讲解业务概念及术语,但客户不能指望分析人员会成为该领域的专家,而只能让他们明白您的问题和目标;不要期望分析人员能把握客户业务的细微潜在之处,他们可能不知道那些对于客户来说理所当然的“常识”。

12、抽出时间清楚地说明并完善需求客户很忙,但无论如何客户有必要抽出时间参与“头脑高峰会议”的讨论,接受采访或其他获取需求的活动。

有些分析人员可能先明白了您的观点,而过后发现还需要您的讲解,这时请耐心对待一些需求和需求的精化工作过程中的反复,因为它是人们交流中很自然的现象,何况这对软件产品的成功极为重要。

13、准确而详细地说明需求编写一份清晰、准确的需求文档是很困难的。

由于处理细节问题不但烦人而且耗时,因此很容易留下模糊不清的需求。

但是在开发过程中,必须解决这种模糊性和不准确性,而客户恰恰是为解决这些问题作出决定的最佳人选,否则,就只好靠开发人员去正确猜测了。

在需求分析中暂时加上“待定”标志是个方法。

用该标志可指明哪些是需要进一步讨论、分析或增加信息的地方,有时也可能因为某个特殊需求难以解决或没有人愿意处理它而标注上“待定”。

客户要尽量将每项需求的内容都阐述清楚,以便分析人员能准确地将它们写进“软件需求报告”中去。

如果客户一时不能准确表达,通常就要求用原型技术,通过原型开发,客户可以同开发人员一起反复修改,不断完善需求定义。

相关文档
最新文档