编写高质量需求
Karl E Wieger
Process Impact
许软件需求说明书(SRS)写非常糟糕产品质量需原始材料质量保证糟糕软件需求说明书产出优秀软件幸没开发员受需求抽象分析文档质检关教育没非常需求鉴学部分原少工程找鉴原公司愿意产品说明书放公区域
篇文章描述高质量需求叙述说明特性(特点)观点检查缺陷需求带着痛楚重新编写会谈编写需求提示许想通质量标准评估工程需求修订许迟会学东西帮助组次编写出更需求
期够编写出份体现需求应具备特性SRS细化分析评优化需求达完美果牢记特性会编写出更需求生产出更产品
高质量需求说明书特性
问题需求中分辨出软件需求?判断需求否具备应特性种方式持观点工程资金理作正规检查种力方法编写代码前需求编写测试例子测试例子够明确显现需求中描述产品行(特性)够显现缺陷冗余含糊处
正确:
需求必须精确描述交付功正确性需求源真实客户高级系统需求说明书软件需求应系统需求说明书相抵触正确(然系统需求说明书身正确)
户代表够决定户需求正确性什检查需求时包括代理关键包括户需求检查会导致开发员:没意义
意思等众周知猜测
行性:
已知力限系统环境中需求必须实现避免需求行性需求分析阶段应该开发员参抽象阶段应该市场员参开发员应检查技术什做什做需需额外付出者权衡
必性:
需求应载明什客户确实需什应外部需求接口标准需求源认具权说明需求原始资料考虑必需外情形(译注句翻译请参原文:Another way to think of necessary is that each requirement originated from a source you recognize as having the authority to specify requirements)踪需求回溯出处例系统需求规章户意见果标识出处需求镀金例子没真正必须
优先权:
表明详细产品版中应包含点需需求特征例分配实现优先权客户代理应强烈责建立优先权果需求视等重开发中预算削减计划超时组员离开导致新需求时 项目理起作优先权作提供客户价值实现相关费实现相关联关技术风险
3种级优先权:高优先权表明需求必须体现产品版中中优先权表明需求必须果需推迟晚产品版中低优先权表明必须认识果没充足时间资源放弃掉
明确:
需求叙述读者应唯解释说明样需求读者应达成识然语言极易导致含糊避免SRS作者清楚读者清楚观词汇:户友性容易简单快速效艺术级改善等等写需应简洁简单直观采户熟知语言采计算机术语检查需求模糊效方式包括需求说明书正规检查根需求写测试建立户假想说明产品某特定部分预期特性
证实:
否够做出测试计划验证方式检查实证决定产品中需求否正确实现果需求验证决定需求正确实现成判断事需求间致行明确导致证实需求果说产品支持什证实
完整:
应该遗漏求必需信息完整性需求应具备发现缺少信息难根存SRS中需求分层目录方式组织帮助评审员理解功性描述结构容易指出遗失东西
需求抽象时相系统功注意户业务导致需求全局观引进真正必需需求显足需求抽象应例方法会发挥作够角度察需求图形分析模型检查出完整性
果知道已缺少信息TBD(to be determined)标准标志突出缺陷构建产品相关部分时定需求集中解决缺陷
致性:
致性需求软件需求高级系统(商业)需求发生突需求中致必须开发开始前解决调研确定正确修改需求时定谨慎果审定修改部分没审定修改相关部分导致致性
修改性:
需求求修改维护历史更改时必须够审定SRS说需求必须相需求单独标示分开说明便清晰查阅通良组织需求易修改:相关需求分组建立目录表索引前参考()
追踪:
应软件原始材料相应高级系统需求例户提议等够软件需求设计元素源代码构造实现验证需求测试相应追踪需求应该具独立标示细密结构化编写应应叙述性文字公告式列表
二需求质量评审
关需求质量特性描述理非常需求底什样子呢?体现更切合实际做练面实际工程选出需求面质量标准评估需求什问题然更方式重写例子提出分析改进建议欢迎提出见解占优知道需求出处真正客户猜测需求意图
例1.产品应少60秒正常周期提供状态信息
需求完整:状态信息什显示户需求处含糊谈产品部分?状态信息间隔真假定少60秒?甚者10年显示条新状态信息?许意图消息间隔应超60秒1毫秒太短?词导致确定性问题果需求证实
弥补缺陷重写需求种方法:
1状态信息
11台务理器该误差超10秒60秒间隔户界面指定位置显示状态信息
12果台进程处理正常应该显示务已完成百分数
13务完成时应显示相关信息
14台务出错应该显示错误信息
分测试追踪分成需求果需求串接节中构造测试时容易漏掉
例2 产品应瞬间显示隐藏印字符间切换
计算机瞬间做事需求切实行完整性表现没声明触发状态切换条件软件某条件更改?者户模仿更改做动作?文档中改变显示范围:选中文整文档?模糊问题印字符合隐藏字符样?者属性标志控制字符?问题果需求证实
象样编写需求许更:户够特定触发条件激活处编辑文档中显示隐藏HTML标记间切换现清楚印字符HTML标记没定义触发条件需求设计没约束力设计员选定触发条件编写测试验证触发正确操作
例3 HTML分析器产生HTML标记错误报告帮助HTML入门者快速解决错误
单词快速模糊没加进错误报告定义部完整知道验证需求找称HTML入门者根错误报告快速解决错误?
试试:HTML分析器产生错误报告错误报告包含分析文件中出错HTML文行号错误描述果没错误会产生错误报告现
知道什会加出错报告中出错报告什样子留设计员决定指定例外:果没发现错误产生错误报告
例4 果号码应通联机校验通全体号码列表校验
真绝什果:果技术行?果全体号码列表联机获?避免象应该类确切词客户需功性需需求说明书采诸:应应该等词描述优先级细微差更喜欢应清楚说明需求意图指明优先级修改:系统应校验输入号码通联机全体官号码列表果列表中没发现号码会显示条错误信息接受指令
理解已完成糟糕需求开发员会遇难题:开发员客户会审核需求未达成识前发生激烈争详细检查需求文档件轻松事情清楚做花检查分钟值相开发阶段户抱怨电话阶段修补缺陷便宜
编写质量需求方针
编写优秀需求没公式化方法需量验文档中发现问题学请组织软件需求文档时严格遵方针
句子段落短采动语气正确语法拼写标点术语保
持致性术语表数字典中定义
需求否效定义开发员观点心做完
找句加文档尾部紧张起换句话说否需SRS编写者额外解释帮助开发员理解需求便设计实现?
果话继续工作前需求需细化
需求编写者努力正确握细化程度避免包含需求长叙述段落
帮助提示编写独立测试需求果认部分测试验证需求正确已正确细化果预想种类测试需求已挤起需拆分开
密切关注需求合成单需求需求中连接词建议
需求合需求中
通篇文档细节保持致见需求说明书前致:
红色合法颜色代码应R绿色合法颜色代码应G分散需求分离开产品应语音编辑指示做出反应应作子系统应作单功性需求
避免SRS中申述需求处包含相需求文档更易阅读
会文档维护增加困难文档份文时间全部更新避免致性
果遵方针够早常正式非正式审查需求需求产品构造系统测试客户满意会成奠基石记住没高质量需求软件象巧克力盒子会知道什
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档