《需求工程》阅读笔记之需求工程
需求工程活动分为需求获取和需求分析、需求规格说明、需求验证、需求管理。需求获取是从人、文档或环境中获取需求的过程,需求工程师必须要利用各种方法和技术来 “发现”需求。需求开发的过程包含有学习和认知的过程,而学习和认知的过程是递进的,因此需求获取和分析是交织在一起的,需求工程师需要获取一些信息,随即进行分析和整理,理解、认知到一定程度后在确定要进一步获取内容。在需求获取中,需求工程师需要执行任务包括收集背景资料、获取问题与目标,定义项目前景与范围,识别涉众,选择信息的来源,选择获取方法,执行获取,获取功能与非功能需求,记录获取结果。需求分析阶段,需求工程师主要任务包括 1 背景分析 2 问题分析、目标分析、业务分析、确定系统边界 3 软件需求建模 4 细化需求 5 确定优先级 6 需求协商。 获取的需求下需要编写成文档,业务需求被写入项目前景和范围文档,用户需求被写入用户需求文档(或用例文档),系统级需求被写入需求规格说明。需求工程师在这个阶段主要工作包括定制文档模板好编写文档。需求验证主要任务包括 执行验证、问题修正 。 需求管理主要任务包括 1 建立和维护需求基线集 2 建立需求跟踪信息 3 进行变更控制。需求开发过程是迭代的和并发的,而且它的两个重要活动 - 需求获取与需求分析 - 还是交织的,共同构成一个学习过程。相比与编程,需求是众多因素影响的不确定性,是实践与理论并用。