文档介绍:软件质量保证和管理
- 高质量的软件需求分析
高质量的软件需求管理
胜兵,先胜而后求战
败兵,先战而后求胜
——孙膑
高质量的软件需求管理
需求分析的概念
需求的获取与分析
需求分析建模
系统需求的质量保证
需求分析的概念
软件系统需求的层次
软件需求工程
所有与需求直接相关的活动统称为需求工程,需求工程分为了两个部分:需求开发和需求管理。其中,需求开发又分为了需求获取、需求分析、需求定义和需求验证4个部分,而需求管理则包含了变更控制、版本控制、需求跟踪和需求状态跟踪
软件需求包括三个不同的层次:业务需求、用户需求和功能需求(也包括非功能需求)。
软件需求工程
业务需求(business requirement)反映了组织机构或客户对系统、产品的概括的目标要求,它在项目视图与范围文档中予以说明。主要的目的是对企业目前的业务流程进行评估,得出一个业务前景。业务需求的确定对后面的用户需求和功能需求起到了限制作用。
用户需求(user requirement) 文档描述了用户使用系统而完成的任务的集合,用户需求在用户案例(user case)文档或方案脚本中予以说明。收集和分析用户需求是不容易的,因为很多需求是隐形的,很难获取,更难保证需求完整,而需求又是易变的,这就要求用户和开发人员进行充分地交流。
功能需求(functional requirement)定义了开发人员必须实现的软件功能,它源于用户需求。功能需求是软件需求说明书中最重要的部分之一,它在开发、测试、质量保证、项目管理以及相关项目功能中都起了重要的作用。非功能需求描述了系统展现给用户的行为和执行的操作等,包括要遵从的业务规则、人机接口、安全性和可靠性等要求。
需求的获取与分析
需求获取
项目视图及范围文档
业务需求确定项目视图(图13-2)。通过对业务需求的收集(问题域的研究),项目的业务需求在范围上形成文档。
系统关联图
绘制系统关联图,是用于定义系统与系统外部实体间的界限和接口的简单模型。
用户需求获取
便利的应用规约技术
便利的应用规约技术鼓励建立客户和开发者的联合团队。他们一起工作以标识问题、提出解决方案的元素、谈判不同的方法以及刻画初步的解决方案的需求集合。