核对表:需求
来源:互联网 发布:姜文与李安 知乎 编辑:程序博客网 时间:2024/05/29 09:13
这张需求核对表包含了一系列的问题——问问自己项目的需求工作做得如何。本书并不会告诉你如何做出好的需求分析,所以列表里面也不会有这样的问题。在开始构建之前,用这份列表做一次“心智健全”检查,看看你的地基到底有多坚固——用“需求里氏震级”来衡量。
并不是核对表中所有的问题都适用于你的项目。如果你做的是一个非正式项目,那么你会发现有些东西根本就不需要考虑。你还会发现一些问题你需要考虑,但不需要做出正式的回答。如果你在做一个大型的、正式的项目,你也许就要逐条考虑了。
针对功能需求
q 是否详细定义了系统的全部输入,包括其来源、精度、取值范围、出现频率等?
q 是否详细定义了系统的全部输出,包括目的地、精度、取值范围、出现频率、格式等?
q 是否详细定义了所有输出格式(Web页面、报表,等等)?
q 是否详细定义了所有硬件及软件的外部接口?
q 是否详细定义了全部外部通信接口,包括握手协议、纠错协议、通信协议等?
q 是否列出了用户想要做的全部事情?
q 是否详细定义了每个任务所用的数据,以及每个任务得到的数据?
针对非功能需求(质量需求)
q 是否为全部必要的操作,从用户的视角,详细描述了期望响应时间?
q 是否详细描述了其他与计时有关的考虑,例如处理时间、数据传输率、系统吞吐量?
q 是否详细定义了安全级别?
q 是否详细定义了可靠性,包括软件失灵的后果、发生故障时需要保护的至关重要的信息、错误检测与恢复的策略等?
q 是否详细定义了机器内存和剩余磁盘空间的最小值?
q 是否详细定义了系统的可维护性,包括适应特定功能的变更、操作环境的变更、与其他软件的接口的变更能力?
q 是否包含对“成功”的定义?“失败”的定义呢?
需求的质量
q 需求是用用户的语言书写的吗?用户也这么认为吗?
q 每条需求都不与其他需求冲突吗?
q 是否详细定义了相互竞争的特性之间的权衡——例如,健壮性与正确性之间的权衡?
q 是否避免在需求中规定设计(方案)?
q 需求是否在详细程度上保持相当一致的水平?有些需求应该更详细地描述吗?有些需求应该更粗略地描述吗?
q 需求是否足够清晰,即使转交给一个独立的小组去构建,他们也能理解吗?开发者也这么想吗?
q 每个条款都与待解决的问题及其解决方案相关吗?能从每个条款上溯到它在问题域中对应的根源吗?
q 是否每条需求都是可测试的?是否可能进行独立的测试,以检验满不满足各项需求?
q 是否详细描述了所有可能的对需求的改动,包括各项改动的可能性?
需求的完备性
q 对于在开始开发之前无法获得的信息,是否详细描述了信息不完全的区域?
q 需求的完备度是否能达到这种程度:如果产品满足所有需求,那么它就是可接受的?
q 你对全部需求都感到很舒服吗?你是否已经去掉了那些不可能实现的需求——那些只是为了安抚客户和老板的东西?
- 核对表:需求
- 核对表:需求
- 核对表:需求
- 需求核对表(checklist)
- 代码大全《需求核对表》
- 读《代码大全》笔记:需求核对表
- 需求核对(摘自)
- 软件架构————需求分析核对表
- 前端测试系列---如何核对需求
- 核对表:架构
- 核对表:前期准备
- 核对表:架构
- 核对表:自说明代码
- J2ME应用用户体验核对表(翻译)
- 核对表:主要的构建实践
- [转]J2ME应用用户体验核对表
- 读《代码大全》笔记:架构核对表
- 读《代码大全》笔记:主要的构建实践核对表
- .NET 程序员十种必备工具摘抄
- spread Excel 入力
- Netbeans 6.0 CLDC/MIDP开发快速入门指南(二)
- 直观了解武汉的窗口:推荐我秀中国
- 计算占用内存大小的方法
- 核对表:需求
- MySQL发布安全修复程序
- 基于QT实现WritePrivateProfileString和GetPrivateProfileString
- ECC加密算法入门介绍
- MySQL CEO对甲骨文既爱又恨
- 核对表:架构
- 用API函数在DELPHI中实现“非典型”窗体
- 如何在ext3上恢复数据
- Java 国际化 - 使用 ResourceBundles 显示本地消息(转载,英文)-