《软件需求模式》读书笔记一

这本书首先讲了需求的基本概述,需求的定义还有需求的流程,第二章介绍了需求规格说明文档的要求。然后第三章说明了本书的重点内容——软件模式。

 需求工程活动:1.需求获取;2.需求分析;3.需求规格说明;4.需求验证;5.需求管理需求获取是从人、文档或者环境中获取需求的过程。在需求获取中,需求工程师需要执行的任务包括:1.收集背景资料;2.定义项目前景和范围;3.选择信息的来源;4.选择获取方法,执行获取;5.记录获取结果。 需求分析的主要工作室通过建模来整合各种信息,从而使人们更好地理解问题。在需求分析阶段,需求工程师主要的任务包括:1.背景分析;2.确定系统边界;3.需求建模;4.需求细化;5.确定优先级;6.需求协商。需求规格说明:获取的需求需要被编写成文档,其中项目前景和范围文档记录记录业务需求、用户需求分析记录用户需求、系统需求被写入需求规格说明记录系统需求。需求工程师在这个阶段的主要工作包括:1.定制文档模板;2.编写文档。需求验证:为了保证以上标准的,满足,需求规格说明文档,尤其是最终定稿的需求规格说明文档,在传递给相关人员之前要进行严格的验证。需求验证阶段的主要任务包括:1.执行验证;2.问题修正

需求管理:需求管理会进行变更控制,纳入和实现合理的变更请求,拒绝不合理的变更请求,控制变更的成本和影响范围。需求管理阶段的主要任务包括:1.建立和维护需求基线集;2.建立需求跟踪信息;3.进行变更控制

需求也是有一些原则的,1)定义问题而不是解决方案,2)定义系统而不是项目,3)区分正式和非正式部分,4)避免重复。在几种需求流程中,我们了解到每种需求流程都有自身的优点和缺点,传统需求流程比较规规矩矩,这样可以使项目需求分析有条理,敏捷需求流程可以更加明确的获得需求,极限需求流程使用用户故事可以安排具体实现的顺序,增量需求流程是介于传统需求流程和极限需求流程之间,可以保持每个人都有同样的理解,从而避免重复。业务需求:组织机构或客户对系统、产品高层次的目标要求。项目视图与范围文档中予以说明。用户需求:用户使用产品必须要完成的任务。功能需求:必须实现的软件功能,需求规格说明文档中功能需求说明;非功能需求:系统展现给用户的行为和执行的操作等,包括产品必须遵从的标准、规范和合约;外部界面的具体细节;性能要求;设计或实现的约束条件及质量属性。

需求工程注重应用最佳方法。不要想着把所有这些方法都用于你的下一个项目。而应该考虑将其中的一些方法推荐到你的需求工具箱中。不管你的项目处在开发的哪个阶段,你都可以马上开始应用某些方法,譬如变更管理的处理。其它如需求获取等可以在你的下一个项目开始时付诸应用。当然其它一些方法也可能并不适合你目前的项目。

需求模式需要描述什么时候使用模式以及基于模式如何编写需求。需求模式包括这几个要素:基本细节、适用性、讨论、内容、模板、实例、额外需求、开发考虑、测试考虑。基本细节用于描述模式中一些简短的内容。适用性部分描述需求模式使用的情况。它应该是清楚和准确的。讨论描述如何编写这种需求,它解释所有方面的事情,只要可以帮助定义这种类型的需求。内容详细列出了这种类型的需求必须传达哪些条目的信息。需求模板的目的是可以复制它作为需求描述的出发点。实例:每个需求模式至少包含一个实例演示如何在实践中使用模式。额外需求解释了需要考虑哪些额外需求以及在什么情况下需要考虑。开发考虑目的是帮助设计和实现软件开发人员满足这种类型的需求。测试考虑可以解释如何测试这种类型的需求。需求模式之间是存在联系的,不是独立存在的。我们要学会使用合适的需求模式,懂得建立模式之间的联系,这样才能将需求分析的更加清楚和准确。

需求模式可以识别系统间的接口、技术以及文档需求。定义详细的信息需求,包括归档、数据类型以及数据实体。指定系统的可用性、容量、伸缩性、扩展性以及易用性。定义访问控制,包括用户注册、认证以及授权。指定查询、报表、计算公式以及费和税的需求。

你可能感兴趣的:(《软件需求模式》读书笔记一)