需求分析及需求管理工具介绍
- 格式:docx
- 大小:126.82 KB
- 文档页数:15
系统开发中的需求分析与管理需求分析与管理在系统开发过程中起着至关重要的作用,它旨在确保系统能够满足用户的需求,并通过管理这些需求的变更和优先级,提高系统的质量和性能。
本文将探讨需求分析与管理的重要性,以及一些常用的需求分析和管理工具和技术。
首先,需求分析与管理对于系统开发过程的成功至关重要。
它可以帮助开发团队更好地理解用户的需求,并将这些需求转化为具体的系统功能和特性。
通过需求分析,开发团队可以准确地确定系统的范围、功能和目标,并将其转化为相应的需求文档。
其次,需求分析与管理可以帮助开发团队更好地理解用户的需求,并协助他们制定合理的开发计划和设计方案。
通过需求分析,开发团队可以发现和识别潜在的风险和问题,并及时采取措施进行调整和改进。
此外,需求分析还可以帮助开发团队规范系统开发的流程和标准,提高开发效率和质量。
在需求分析过程中,有几个常用的工具和技术可以帮助开发团队更好地管理需求。
首先是需求调查和用户访谈,通过与用户进行沟通和交流,开发团队可以更好地了解用户的需求和期望,从而准确定义系统的需求。
其次是原型设计和模型建立,通过创建系统的原型和模型,开发团队可以更好地展示系统的功能和特性,验证和确认用户的需求。
最后是需求文档和需求跟踪矩阵,通过编写详细的需求文档和需求跟踪矩阵,开发团队可以更好地记录和管理系统的需求,确保需求的准确性和一致性。
除了需求分析外,需求管理也是系统开发过程中至关重要的一部分。
它主要包括需求变更和优先级管理。
需求变更管理是指在系统开发过程中,用户可能会提出新的需求或修改已有的需求,开发团队需要及时响应并进行相应的调整。
需求优先级管理是指根据用户的需求和重要性,确定系统的开发优先级,并进行相应的计划和调整。
在需求管理过程中,有几个常用的工具和技术可以帮助开发团队更好地管理需求。
首先是需求变更控制和跟踪,通过建立需求变更控制流程和跟踪系统,开发团队可以更好地管理需求的变更和追踪情况,并确保变更的及时处理和有效实施。
软件工程中的软件需求分析方法及工具在软件工程中,软件需求分析是软件开发过程中至关重要的一步。
它旨在明确软件系统的目标和功能,为软件开发团队提供明确的方向和基础。
为了完成这一任务,软件工程师们采用了各种不同的方法和工具来帮助他们进行软件需求分析。
接下来,本文将介绍几种常用的软件需求分析方法及工具,以帮助读者更好地理解和应用它们。
首先,需求采集是软件需求分析的核心环节之一。
它涉及与用户、利益相关者和目标受众的交流和协商,以收集所需功能和特性的详细信息。
在这个过程中,有几种常用的方法和工具可以帮助工程师们有效地收集和整理需求。
一种常用的方法是面谈。
通过与利益相关者进行面对面的交流,软件工程师可以直接了解到用户的需求和期望,并进行及时的澄清和确认。
这种方法尤其适用于复杂的项目,可以更清晰地了解用户的真实需求。
另一种常用的方法是问卷调查。
软件工程师可以设计问卷并发送给潜在用户,以便获取大量用户的反馈和意见。
这种方法可以收集到更多的数据,但也可能存在回复率低、信息不准确等问题,因此需要谨慎设计问卷,确保问题的准确性和易于回答。
此外,还有一种常用的方法是观察用户行为。
软件工程师可以通过观察和记录用户在现有系统中的行为和操作,来了解他们的需求和习惯。
这种方法可以帮助工程师们更深入地理解用户的实际需求,但也需要考虑保护用户隐私的问题。
在软件需求分析中,还有一些常用的工具可以辅助需求采集和整理。
其中,脑图工具是一种非常常见和实用的工具。
通过使用脑图工具,软件工程师可以将不同的需求和相关信息进行组织和展示,帮助他们更清晰地理解和分析需求。
除了需求采集之外,需求建模也是软件需求分析过程中的重要环节。
需求建模通过使用图形符号和规范化的语言来表示和描述软件系统的需求。
以下是几种常见的需求建模方法和工具。
首先是用例图。
用例图可以帮助软件工程师们了解用户与系统之间的交互和功能。
通过使用用例图,工程师们可以清晰地描述系统的不同角色和其对应的功能需求。
产品需求管理软件有哪些?产品需求管理软件是一种非常重要的工具。
它可以帮助企业更好地理解客户需求,提高产品开发效率并降低成本。
本文将介绍一些常见的产品需求管理软件及其主要功能。
“产品需求管理软件有哪些?比较流行的有Zoho Projects、Trello、Asana、Smartsheet等。
”一、产品需求管理软件有哪些功能?1.需求收集:产品需求管理软件可以用于收集来自客户、市场调研和内部团队的需求信息。
这些信息可以以各种形式(如调查问卷、会议记录、用户反馈等)输入到系统中。
2.需求分析:一旦收集到需求信息,产品需求管理软件可以帮助企业对其进行分析和整理。
这包括将需求按照优先级排序、识别重复或冗余的需求、评估需求的可行性等。
3.需求跟踪:产品需求管理软件可以用于跟踪需求的状态和进展情况。
这包括记录每个需求的当前状态(例如“待审批”、“已批准”、“正在开发”等)、设置提醒和通知以确保团队及时处理重要任务。
4.需求变更管理:随着项目进展,客户可能会提出新的需求或要求修改现有的需求。
产品需求管理软件可以帮助企业跟踪和管理这些变更,并确保它们得到适当的处理和记录。
5.报告和分析:产品需求管理软件可以生成各种类型的报告和分析,帮助企业了解其业务状况和趋势。
这些报告可以包括需求统计、进度报告、成本分析等。
二、产品需求管理软件有哪些?目前市场上有很多种产品需求管理软件,以下是其中一些比较知名的软件:1.Zoho Projects:Zoho Projects是一款非常流行的产品需求管理软件,它可以用于敏捷开发、缺陷跟踪和项目管理等,具有强大的功能和灵活的定制能力。
2.Trello:Trello是一款简单易用的产品需求管理工具,它使用卡片和列表来组织任务和项目,支持实时更新和共享,适合小团队使用。
3.Asana:Asana是一款全面的项目管理和团队协作工具,可以用于计划、跟踪和控制项目进度,支持多种项目管理方法和自定义字段。
需求管理的概念需求管理的概念需求管理是指对项目或产品的需求进行全面有效的管理,包括需求获取、需求分析、需求确认、需求变更控制等方面。
它是软件开发和产品设计中非常重要的一个环节,能够帮助团队更好地理解客户的需求,并确保项目或产品能够按照客户预期的要求完成。
一、需求获取1.1 定义需求获取是指通过各种渠道,收集和整理客户及相关利益相关者对项目或产品的各种需求信息。
1.2 方法在实际工作中,有多种方法可以用于获取客户和利益相关者的需求信息。
例如:- 与客户进行面对面交流;- 发放问卷调查;- 分析竞争对手产品;- 分析市场趋势等。
二、需求分析2.1 定义需求分析是指将收集到的各种需求信息进行分类、筛选和整理,并通过分析得出最终确定的项目或产品功能和特性。
2.2 方法在实际工作中,有多种方法可以用于进行需求分析。
例如:- 制定详细的功能列表;- 进行用户故事编写;- 制定用例图等。
三、需求确认3.1 定义需求确认是指与客户和利益相关者进行沟通,确保对项目或产品的需求理解完全一致,并得到客户的认可。
3.2 方法在实际工作中,有多种方法可以用于进行需求确认。
例如:- 与客户进行面对面交流;- 发放需求确认文档并要求客户签字认可;- 进行演示和展示等。
四、需求变更控制4.1 定义需求变更控制是指在项目或产品开发过程中,对已经确定的需求进行修改、添加或删除等操作,并通过一定的流程进行管理和控制。
4.2 方法在实际工作中,有多种方法可以用于进行需求变更控制。
例如:- 制定详细的变更流程;- 设计变更申请表格并要求客户签字认可;- 进行变更评审等。
五、需求跟踪5.1 定义需求跟踪是指在整个项目或产品开发过程中,通过追踪每一个需求的状态和进度,确保项目或产品能够按照预期完成。
5.2 方法在实际工作中,有多种方法可以用于进行需求跟踪。
例如:- 制定详细的跟踪计划;- 设计跟踪表格并记录每一个需求的状态和进度;- 进行定期的跟踪报告等。
软件工程常用工具(一)引言概述:软件工程常用工具在软件开发过程中起到了极为重要的作用。
这些工具能够提高软件的质量、加快开发速度,并帮助团队更好地协同工作。
本文将介绍五种常用软件工程工具,并分别阐述它们的功能和优点。
一、集成开发环境(IDE)1. 代码编辑器:提供丰富的代码编辑功能,如代码自动补全、语法高亮等。
2. 调试器:帮助开发人员找到和修复程序中的错误。
3. 版本控制系统集成:方便团队协作和代码管理。
4. 代码检测和重构工具:可以自动发现潜在的问题并进行代码重构。
二、需求管理工具1. 需求收集和分析:用于收集、整理和分析用户需求,并将其转化为可执行的开发任务。
2. 需求跟踪:跟踪需求的状态和进展,确保开发团队按时完成开发任务。
3. 团队协作功能:允许团队成员就需求进行实时交流和讨论。
三、测试工具1. 自动化测试工具:帮助开发人员快速编写和执行软件测试用例。
2. Bug跟踪系统集成:将测试过程中发现的问题和bug直接关联到开发任务中,方便开发人员追踪和修复。
3. 性能测试工具:对软件进行负载测试,发现潜在的性能问题。
四、项目管理工具1. 进度管理:统计和展示项目进展情况,帮助项目经理合理安排资源和时间。
2. 任务分配和跟踪:将项目划分为多个任务,分配给团队成员,并跟踪任务的完成情况。
3. 团队协作功能:支持团队成员之间的信息共享和协同工作。
五、文档管理工具1. 文档版本控制:对文档进行版本管理,确保团队成员可以方便地查看和编辑最新的文档。
2. 文档协作和共享:多人同时编辑同一文档,方便团队成员协同工作。
3. 文档搜索和分类:快速定位和检索所需文档,提高工作效率。
总结:软件工程常用工具在现代软件开发中起到了至关重要的作用。
集成开发环境提供了丰富的代码编辑和调试功能,提高开发效率;需求管理工具帮助开发团队更好地理解和分析用户需求;测试工具和项目管理工具提高软件质量和项目进度管理效果;文档管理工具协助团队成员共享和管理文档。
项目需求管理项目需求管理是指对项目中的需求进行有效管理和控制,确保项目能够按照客户和利益相关者的需求进行开发和交付。
本文将从需求管理的定义、流程、方法和工具等方面进行详细介绍。
一、需求管理的定义需求管理是指在项目的整个生命周期中,对需求进行识别、分析、规划、跟踪和控制的过程。
它包括需求的收集、整理、确认、变更和验证等环节,旨在确保项目团队能够理解和满足客户和利益相关者的需求。
二、需求管理的流程1. 需求收集:通过与客户和利益相关者的沟通,收集项目的需求信息。
可以采用面谈、问卷调查、访谈等方法,确保收集到全面、准确的需求。
2. 需求分析:对收集到的需求进行分析和整理,识别其中的关键需求和优先级。
可以使用需求分析矩阵、用例图、数据流图等工具,帮助理解需求的本质和关系。
3. 需求规划:根据需求的优先级和可行性,制定需求的实施计划。
确定需求的时间、资源和人员分配,以及需求的变更控制和验证方法。
4. 需求跟踪:在项目执行过程中,跟踪需求的实施情况和变更情况。
通过需求跟踪矩阵、变更控制表等工具,及时掌握需求的状态和进展。
5. 需求控制:对需求的变更进行控制和管理,确保变更的合理性和可行性。
通过变更控制委员会、变更请求表等工具,评估和决策需求变更的影响和风险。
6. 需求验证:在项目交付之前,验证需求是否得到满足。
可以通过验收测试、用户反馈等方式,确认项目的交付物是否符合需求。
三、需求管理的方法和工具1. 需求分析方法:包括需求调研、需求建模、需求优先级分析等方法,帮助理解和分析需求的本质和关系。
2. 需求管理工具:包括需求管理软件、需求跟踪工具、变更控制工具等,帮助实现需求的收集、分析、跟踪和控制。
3. 需求管理标准:如IEEE 830标准、BABOK等,提供了需求管理的规范和指导,帮助项目团队进行需求管理工作。
四、需求管理的好处1. 确保项目按时、按质、按需交付:通过需求管理,项目团队能够准确理解客户和利益相关者的需求,从而确保项目能够按时、按质、按需交付。
本人从网上收集整理的几个需求管理工具 - 项目管理需求是研发团队工作的起点,很多研发团队的开发过程混乱的源头都在于需求管理没有做好。
这里是本人收集整理的几个需求管理系统,希望对大家有点帮助。
Rational RequisiteProRational RequisitePro是一个强大、易用、集成的需求管理产品。
而通过与Rational 系列软件产品的广泛集成,大大扩展了RequisitePro及其他产品的功能,给软件工程生命周期内的各个阶段都提供了强大、方便的信息查询、跟踪、管理功能。
从而能够促进更好的团队沟通、帮助管理变更和评估变更的影响,帮助验证所有的规划需求被交付物所满足、降低项目风险。
网址:http://www-01.ibm/software/awdtools/reqpro/IBM Rational DOORSIBM Rational DOORS前身是大名鼎鼎的Telelogic DOORS,被IBM收购后更名为IBM Rational DOORS。
DOORS是最老牌的企业需求管理套件,通过使用DOORS/ERS,可以帮助企业更有效地进行沟通并加强协作与验证,从而降低失败的风险。
通过对整个组织实施多种需求管理的方法,可以使项目的管理更加透明。
它可以使企业跨越地域与组织的边界来按国际化的方式运行。
网址:http://www-01.ibm/software/awdtools/doors/青铜器RDM青铜器RDM是IPD+CMMI+Scrum一体化研发管理解决方案,针对需求管理,涵盖需求的全生命周期管理,从市场客户需求收集(创意管理)、产品路线图(Roadmap)定义、产品特性需求、产品设计需求与规格、项目开发Build划分(迭代划分)、测试用例库、测试计划、测试执行、缺陷跟踪、全方位的需求跟踪矩阵RTM;同时实现Scrum 开发模式,基于项目需求直接生成项目任务,实现基于需求和缺陷的迭代开发模式;全面实现了IPD、CMMI、Scrum业界主流研发管理框架的需求管理要求。
需求管理工具的应用介绍了常见的需求管理工具如MRPERP等需求管理工具的应用介绍了常见的需求管理工具如MRP、ERP等需求管理是现代企业管理中重要的一环。
随着市场的竞争加剧和企业规模的扩大,对于需求管理的需求也越来越高。
为了提高企业的运营效率和管理水平,许多企业开始使用各种需求管理工具来对需求进行管理。
本文将介绍几种常见的需求管理工具,包括MRP(物料需求计划)、ERP(企业资源计划)等。
一、MRP(物料需求计划)MRP是一种计算机辅助的物流管理工具,它可用于控制物料的采购、生产和供应链管理。
MRP系统通过分析销售订单、库存、需求预测等数据,自动生成物料采购计划和生产计划,从而帮助企业准确地把握物料需求和库存控制。
MRP系统可以提高企业的物流管理效率、减少库存成本、提高客户满意度等。
二、ERP(企业资源计划)ERP是一种综合性的管理软件系统,它能够集成企业各个部门的业务流程,实现企业资源的统一管理与协调。
在需求管理方面,ERP系统可以帮助企业收集和分析销售数据、预测需求、制定供应计划等。
通过集成各个环节的需求管理,ERP系统能够提高企业的运营效率,降低企业的成本,提高销售和客户服务水平。
三、需求管理工具的选用对于企业来说,选择适合自己需求管理的工具非常重要。
不同的企业有不同的需求管理需求,所以需要根据企业自身情况来选择合适的工具。
在选择需求管理工具时,应该考虑以下几个方面:1. 功能完备性:需求管理工具应该具备完善的功能,能够满足企业的需求管理需求。
比如,MRP系统应支持自动物料需求计划、采购订单管理、供应链协调等功能;ERP系统应支持客户关系管理、库存管理、采购管理等功能。
2. 系统稳定性:需求管理工具应该稳定可靠,能够长时间运行而不出现问题。
毕竟,需求管理是企业重要的一环,任何问题都可能对企业业务运营产生严重影响。
3. 软件易用性:需求管理工具应该简单易用,方便企业员工操作。
复杂的使用界面和操作流程会增加员工的学习和适应成本,降低工作效率。
需求工程及需求管理工具介绍V 1.0Marco Lee2012-09-04Contents一、需求工程综述 (3)1)需求定义 (3)2)需求工程概述 (4)3)需求工程主要过程 (4)4)需求分析的特点 (5)5)需求开发的十种常用方法 (5)6)需求建模方法 (5)7)主要概念区分 (7)1、项目范围管理 (7)2、需求开发、需求管理、项目范围管理的区别和联系 (7)二、CMMI需求开发过程 (7)1)基本概念 (7)2)需求调查方法 (8)3)CMMI需求分析过程 (9)三、需求管理工具介绍 (12)1)Rational RequisitePro (12)2)IBM Rational DOORS (12)3)Borland CaliberRM (14)4)Cloudtopo Topo (14)摘要需求是研发团队工作的起点,很多研发团队的开发过程混乱的源头都在于需求管理没有做好。
项目失败或严重超支的八个最重要原因中有五个都与需求相关:1)不完整的需求;2)缺乏用户的参与;3)不实际的客户期望;4)需求和需求规格说明的变更;5)提供许多不必要的功能。
本文就有关需要的概念以及主流需求管理系统,进行了论述。
一、需求工程综述图1-需求分析组成部分1)需求定义通俗的讲,“需求”就是用户的需要,它包括用户要解决的问题、达到的目标、以及实现这些目标所需要的条件,它是一个程序或系统开发工作的说明,表现形式一般为文档形式。
按CMMI软件能力成熟度的定义,需求是开发方和客户方就系统未来所达到的功能和质量所达成的一致约定和协议。
PMP定义,需求是指发起人、客户和其它干系人的已量化且记录下来的需要与期望。
收集需求旨在定义和管理客户期望。
2)需求工程概述需求工程过程——即需求分析活动,以下统称为需求工程——在整个系统开发与维护过程中越来越重要,它贯穿于系统开发的整个生存周期。
上个世纪80年代中期,形成了软件工程的子领域——需求工程 (Requirement Engineering, RE)。
需求工程,是应用已证实有效的技术、方法进行需求分析,确定需求客户,帮助系统开发分析人员理解问题,评估可行性,协商合理的解决方案、无歧义地规约方案、确认规约以及将规约转换到可运行的系统时的管理要求。
需求工程通过合适的工具和符号系统地描述待开发系统及其行为特征和相关约束,形成需求文档,并对用户不断变化的需求演进给予支持。
需求工程是一个项目的开端,也是项目建设的基石。
需求工程的过程包括了需求开发和需求管理两个部分。
整体需求工程过程在项目启动后开始,进行需求获取、分析、规划定义和需求验证,并进行组织内外的需求评审,以确定需求基线,并在需求发生变更时,重新进行需求的获取、分析、定义和验证评审,并对需求变更影响项进行相关识别、风险应对、修改和跟踪,并对需求状态和变化过程进行统计分析和测量汇报。
需求开发(RD,Requirement Development)指的是从问题收集、分析和评价到编写文档、评审等一系列产生需求的活动,这几个阶段的活动可以是相互独立和反复的,不一定非要遵循线性的顺序。
需求开发讲究的是用系统的方法获取真正的全面的能实现的需求。
需求管理(RM, Requirement Management)则是与需求直接相关的活动,即软件项目开发过程中控制和维持需求约定的活动,主要包括:变更控制、版本控制、需求跟踪、需求状态跟踪等工作。
需求管理强调的是需求的确认以及需求变更的控制,其目的是确保各方对需求的一致理解,管理和控制需求的变更,从需求到最终产品的双向跟踪。
3)需求工程主要过程1)需求开发规程:分为需求获取、需求分析、规格化定义和需求验证等操作过程。
2)需求评审规程:对完成的系统需求进行组织内外评审的过程;3)需求变更管理规程:需求基线产生后对需求进行变更管理的过程;4)需求跟踪管理规程:对需求进行状态跟踪和过程跟踪的管理过程;5)需求的测量和分析:对需求状态和需求变化过程进行测量和分析评估的管理过程;4)需求分析的特点需求分析工作的复杂性及面临的潜在风险主要体现在以下方面:1)需求描述的准确性问题;2)需求的完备程度问题;3)需求开发的时间问题;4)需求的细化程度问题;5)需求的变更问题。
5)需求开发的十种常用方法1)需求调查:采用需求调查表进行需求收集和调查;2)需求访谈:进行面对面的需求访谈、记录、整理并确认;3)资料收集和文档考古:收集业主方的有关资料进行分析提炼;4)需求研讨:召开需求研讨会有目的的对需求进行研讨;5)需求头脑风暴:发散式的对需求进行遐想和探索;6)需求原型:依据需求原型进行需求沟通和探索,是电子政务行业常用的需求开发方法;7)实地学习:实地深入业主方业务现场进行观摩学习,以提炼需求;8)实务跟踪/实地工作:更加深入的跟踪现场多个实物,甚至深入业主方现场进行实地、实务长时间、多案例的实地工作;9)案例讲述和故事板:通过对案例或故事的讲解和分析获取需求;10)场景模拟/角色扮演:通过模拟一个场景或者由不同人员扮演不同的角色进行需求模拟和角色分析,来获取需求。
6)需求建模方法需求建模是软件需求工程过程的重要阶段。
不同的需求建模方法蕴含了不同的建模理念,代表了看待软件系统的不同视角。
1、结构化需求分析方法自20 世纪70 年代中期以来,结构化的需求建模方法一直是比较流行和普及的需求建模技术之一。
它认为系统的功能就是“数据”流经系统时发生变迁的能力,同时需要外部事件触发进行完成变迁的过程。
2、面向对象的需求分析方法面向对象的需求建模方法是当今工业界的主流方法,它认为现实系统是由各种各样的现实“对象”组成,对象可以被分类、被描述、被组织、被操作、被创建,系统是要实现对现实世界实体(对象)的计算,需要在系统中建立这些实体的映像,这些实体的个体操作模型和交互模型就是系统的功能模型。
面向对象的需求建模方法的关键是从获取的需求信息中识别出问题域中的类与对象,并分析它们之间的关系,最终建立起简洁、精确和易理解的需求模型。
UML是随着面向对象方法发展起来的统一建模语言,包括用来表示系统静态结构的用例图、类图等,以及表示系统动态结构的状态图、活动图、序列图、协作图和配置图等。
3、面向问题域的需求分析方法上述两种传统方法都只是针对软件系统本身的建模方法,并没有涉及软件需求从哪里来、客户存在什么问题需要解决、为什么客户会期望或者需要软件来帮助它们解决这些问题、他们需要软件帮他们做什么等问题。
20 世纪90 年代之后,提出在进行软件系统建模之前,需要对软件将处于的环境,即软件将要解决的现实世界的问题进行建模,需要对包含软件及其环境的软件加强型系统进行建模,这样才能识别出或者推导出人们对软件的真正需求。
面向问题域(Problem Domain,PD)的需求分析方法 (Problem Domain-Oriented Analysis,PDOA)是由M·Jackson和P.Zave等人提出的一种需求分析方法。
与传统的结构化需求分析方法和面向对象需求分析方法相比显著不同,其本质在于从待求解问题的角度,考虑待开发的软件系统将在与待求解问题相关的域内产生的效果。
面向问题域建模的核心是问题框架。
问题框架方法认为,软件系统对现实世界的作用是软件问题的来源,对软件系统将与现实世界发生的作用进行结构化分析是需求分析的切入点。
问题框架方法强调需要对软件系统将要作用的客观现实世界进行刻画,并将需求的含义指称(映射)到对现实世界相关领域的描述上。
其建模的基本概念是现实世界中的领域以及未来软件系统与领域的交互。
问题框架方法定义了一些常见的软件问题类型,称为问题框架。
问题框架方法的基本思想就是在问题分析中使用问题框架,将复杂的现实世界软件问题结构化为相互作用的可以匹配到问题框架的子问题的集合。
基于问题框架方法进行需求建模,其第1 类概念是现实世界中的领域和未来软件系统与领域的交互。
它认为,系统的功能体现在未来软件系统与现实世界领域的交互下产生的对现实世界领域的作用效果。
在问题框架方法中,用机器领域显式地表示了要创建的软件系统。
用问题领域建模现实世界领域,严格区分了问题领域和机器领域,由此确定了问题的边界,却又不涉及任何关于机器领域的细节描述。
由此避免过早进入问题的解决方案。
它强调在关注解决方案之前关注问题本身,尽可能地识别出关键的困难并尽早地加以解决。
这是它与其他需求工程方法的根本区别。
7)主要概念区分1、项目范围管理项目范围管理,包括为成功完成项目所需要的一系列过程,以确保项目包含且仅仅只包含项目所必须完成的工作。
范围管理首先要定义和控制在项目内包括什么、不包括什么。
一般来说,范围分为产品范围和项目范围:1)产品范围是指表示产品或服务的特性和功能。
2)项目范围是指为了完成具有所规定特征和功能的产品必须完成的工作(需求定义)。
项目范围是否完成以项目管理计划作为衡量标准,而产品范围是否完成以产品需求作为衡量标准。
两种范围管理需要很好地集成起来,以确保项目工作能产生所规定的产品并准时交付。
2、需求开发、需求管理、项目范围管理的区别和联系主要如下:1)首先通过需求开发来获取项目的需求, 在此基础上确定项目的范围,进行项目范围管理。
2)对于项目需求, 可以根据需求的紧急重要程度、项目本身和项目双方的实际情况,分步或分期满足。
确定每期应满足的需求后,本期的范围管理就有了基础。
3)需求管理处理需求的变更,需求的变更同时会引起项目范围的变更。
二、CMMI需求开发过程1)基本概念CMMI提出了需求开发--RD,要理解好RD PA (ProcessArea, 过程域),需要先理解清楚以下几个关键的概念:∙客户需求(Customer Requirements):客户需求可以理解成客户为什么要做本系统,要解决什么问题,客户对系统有怎样的期望,希望能具备一些怎样的特点,简单的说,就是客户的需求是什么(通常会包括对系统目标、范围、解决问题、软件特性、接口要求等有详细的描述)。
∙产品需求(Product Requirements):产品需求是能满足客户需求,并对软件产品规格进行了详细描述的需求,软件设计师可以根据产品需求进行设计、编码等工作。
∙产品组件需求(Product Component Requirements):产品组件需求是对产品需求的进一步细化,产品可能会分割成几个子系统、几个部分,每个子系统每部分要具备怎样的功能、要具备怎样的性能、接口要求等,这些可以认为是产品组件需求。
图2-需求间的层次关系从另外一个角度,需求可以分为功能性需求和非功能性需求两类。
功能性需求就是系统具备怎样的功能,能做什么事情,而非功能性需求就是指系统要具备怎样的性能、安全级别等方面的要求。