内容简介
《MICROSOFT核心技术丛书·软件需求模式》描述了37个真实的、可重用的模式,为编写软件需求提供了特定情形下的框架。每种模式详细描述需要包括哪些信息,提醒常见的缺陷,以及建议需要考虑的额外需求。无论使用传统的分析方法还是敏捷方法,都可以学习如何使用需求模式,从而为成功的软件开发编写一致的、有效的需求。《MICROSOFT核心技术丛书·软件需求模式》提供了模板和实例,帮助分析师编写出更好的需求。读者可以应用《MICROSOFT核心技术丛书·软件需求模式》中的概念开发自己的行业、应用领域或者产品线的特殊需求模式。
编辑推荐
《MICROSOFT核心技术丛书·软件需求模式》适合软件分析人员、软件架构师和项目管理人员等参考。需求模式可以帮助你:识别系统间的接口、技术以及文档需求。定义详细的信息需求,包括归档、数据类型以及数据实体。指定系统的可用性、容量、伸缩性、扩展性以及易用性。定义访问控制,包括用户注册、认证以及授权。指定查询、报表、计算公式以及费和税的需求。获得400多个实际的需求实例,学习如何编写自己的需求模式。
作者简介
StephenWithall有近30年开发和定义软件系统的经验,曾经为全球多个行业组织工作。在其职业生涯中,他扮演了很多角色.包括程序员、业务分析师、架构师以及首席技术官。
目录
第一章 需求概述
第二章 需求规格的内容
第三章 需求模式概念
第四章 使用和编写需求模式
第五章 基础需求模式
第六章 信息需求模式
第七章 数据实体需求模式
第八章 用户功能需求模式
第九章 性能基础模式
第十章 适应性需求模式
第十一章 访问控制需求模式
第十二章 商业需求模式
词汇表
参考文献
第二章 需求规格的内容
第三章 需求模式概念
第四章 使用和编写需求模式
第五章 基础需求模式
第六章 信息需求模式
第七章 数据实体需求模式
第八章 用户功能需求模式
第九章 性能基础模式
第十章 适应性需求模式
第十一章 访问控制需求模式
第十二章 商业需求模式
词汇表
参考文献
文摘
第3章 需求模式概念
3.1 需求模式概述
除了无关紧要的系统,所有系统需求本质上彼此相似,或者它们出现在大部分系统中,而且可能数量众多。例如,可能有很多查询功能,每个功能都有自己特有的需求。当定义一个业务系统时,相当大比例需求归属相对少量的类型。以一致的方式定义同样类型的所有需求是必要的。因此我们引入需求模式的概念,描述使用需求模式的每一个需求应该怎样定义。
需求模式:定义一种特定类型需求的方法。
需求模式应用于单个需求,一次帮助定义一个单一需求。例如,对于某一种报表需求,可以使用报表需求模式帮助定义需求。一旦编写完需求(以及任何它引起的额外需求),模式的任务就完成了,可以把它放在一边继续工作。但是当软件设计人员或开发人员开始决定如何实现这个需求时,只要他们愿意,模式就可以给他们一些工作提示。测试人员同样可以使用模式获得如何测试的方法。
使用需求模式有什么好处?第一,需求模式提供指导:建议包含哪些信息、提出忠告、提醒常见缺陷以及指出其他应该考虑的问题。第二,需求模式节省时问:不需要从头开始写每一个需求,因为模式给予了合适的出发点,以及开发的基础。第三,需求模式促进同种类型需求的一致性。其中提供指导是最有价值的。节省定义的时问和增加一致性固然很好,但是合理的指导可以获得更好的需求,避免后续工作中的巨大麻烦。
需求模式提供的指导通常比只是“比如说这样……”更深入。它可以深入洞察即将发生的问题。它可以帮助提出问题。在一些情况下,它可以引导编写出一个(或多个)非常不同于第一印象的需求。解答一个大问题经常引出很多更小的问题。需求模式针对大问题给出答案以及化为更小的问题。
一些需求模式要求或者鼓励定义一些额外需求:包括跟随性需求:扩展最初需求的需求,以及系统级普遍性需求:支撑模式本身的需求(例如,这种类型需求都需要的一个基本特性)。因此知道自己使用了哪些模式是有用的(或许可以保留一个简单的名单),这样可以检查每一个需求是否需要额外支撑需求,以及是否已经定义了它们。本章的第3.2.7节将更详细地解释这个主题。
3.1 需求模式概述
除了无关紧要的系统,所有系统需求本质上彼此相似,或者它们出现在大部分系统中,而且可能数量众多。例如,可能有很多查询功能,每个功能都有自己特有的需求。当定义一个业务系统时,相当大比例需求归属相对少量的类型。以一致的方式定义同样类型的所有需求是必要的。因此我们引入需求模式的概念,描述使用需求模式的每一个需求应该怎样定义。
需求模式:定义一种特定类型需求的方法。
需求模式应用于单个需求,一次帮助定义一个单一需求。例如,对于某一种报表需求,可以使用报表需求模式帮助定义需求。一旦编写完需求(以及任何它引起的额外需求),模式的任务就完成了,可以把它放在一边继续工作。但是当软件设计人员或开发人员开始决定如何实现这个需求时,只要他们愿意,模式就可以给他们一些工作提示。测试人员同样可以使用模式获得如何测试的方法。
使用需求模式有什么好处?第一,需求模式提供指导:建议包含哪些信息、提出忠告、提醒常见缺陷以及指出其他应该考虑的问题。第二,需求模式节省时问:不需要从头开始写每一个需求,因为模式给予了合适的出发点,以及开发的基础。第三,需求模式促进同种类型需求的一致性。其中提供指导是最有价值的。节省定义的时问和增加一致性固然很好,但是合理的指导可以获得更好的需求,避免后续工作中的巨大麻烦。
需求模式提供的指导通常比只是“比如说这样……”更深入。它可以深入洞察即将发生的问题。它可以帮助提出问题。在一些情况下,它可以引导编写出一个(或多个)非常不同于第一印象的需求。解答一个大问题经常引出很多更小的问题。需求模式针对大问题给出答案以及化为更小的问题。
一些需求模式要求或者鼓励定义一些额外需求:包括跟随性需求:扩展最初需求的需求,以及系统级普遍性需求:支撑模式本身的需求(例如,这种类型需求都需要的一个基本特性)。因此知道自己使用了哪些模式是有用的(或许可以保留一个简单的名单),这样可以检查每一个需求是否需要额外支撑需求,以及是否已经定义了它们。本章的第3.2.7节将更详细地解释这个主题。