110 likes | 269 Views
小组软件过程 —— 定义需求. 欧阳柳波 湖南大学软件学院. 需求开发的条件. 顾客需求的初始说明 能解释产品为何被需要的人:最终用户或最终用户代表 大多数需求说明是模糊的、不准确的,但在开发产品之前,必须要准确地知道,该产品要做什么。 开发者对需求的假想和猜测是对产品不负责的体现。. 需求的变化. 需求常常变化,因为在使用产品之前,用户可能不确切知道自己需要什么。随着用户的工作方式改变,他们对系统了解越多,就越有可能要求新的功能和特色,因此,需求总在不断地改变,直到人为冻结需求。
E N D
小组软件过程——定义需求 欧阳柳波 湖南大学软件学院
需求开发的条件 • 顾客需求的初始说明 • 能解释产品为何被需要的人:最终用户或最终用户代表 • 大多数需求说明是模糊的、不准确的,但在开发产品之前,必须要准确地知道,该产品要做什么。 • 开发者对需求的假想和猜测是对产品不负责的体现。
需求的变化 • 需求常常变化,因为在使用产品之前,用户可能不确切知道自己需要什么。随着用户的工作方式改变,他们对系统了解越多,就越有可能要求新的功能和特色,因此,需求总在不断地改变,直到人为冻结需求。 • 需求过程的难点在于,使用户明白并相信自己需要什么,帮助用户以产品功能条款方式来定义他们的需要。
需求的变化 • 不存在不需要成本的需求变化。任何变化都耗费时间和金钱。从一致意见开始,制作一个清楚的SRS文档,并使用SRS来管理以后的需求变化。 • 需求导出的主要步骤: (1)评估系统可行性 (2)理解结构问题 (3)确定系统的风险承担者
需求的变化 (4)记录需求来源 (5)确定系统的工作环境 (6)评估商业问题 (7)定义区域限制 (8)记录需求的理论解释 (9)将不好理解的需求原型化 (10)定义使用界面 (11)定义操作过程
SRS(Software Requirement Specification) • SRS:你计划开发什么,你希望怎样完成这个产品,SRS聚焦于产品是用来干什么的。 • SRS不应描述或暗示如何开发产品,怎样开发产品是一个设计问题,而所有的设计问题应该留到设计阶段来解决。 • 制作出可以使你尽可能自由地选择设计方法的需求
SRS的主题 • 功能需求:输入、输出、计算和使用事件 • 外部界面需求:用户、硬件、软件和通信 • 设计的限制:文件格式、语言、标准和兼容性等 • 属性:可获得性、安全性、可维护性、可移植性等 • 其它需求:数据库、安装等
SRS内容范例 1、内容列表 2、导言 制作SRS的目的 问题陈述 小组工程信息 3、功能需求说明 系统功能需求的描述 周期1的需求 周期n的需求 组织管理严密的结构
SRS内容范例 4、使用需求中的规则的定义 5、外部界面需求 用户界面 屏幕界面 6、设计/实现限制 标准一致性 开发限制 7、专门的系统需求 文档 兼容性 8、参考资料和信息来源
TSPi需求过程脚本 • 开始条件:开发策略、计划和需要说明 • 需要说明复核 • 需要说明澄清 • 需求任务的分配 • 需求分析文档 • 系统测试计划 • SRS与系统测试计划的检查 • 需求的更新 • 用户复查SRS • 需求的基准:一份正式的SRS文件 • 结束标准:SRS文档、系统测试计划、需求检查表格