用例文档的编写最困难的地方在于,这是一种单调的写作方式,又需要富有完美的表达能力,使读者愿意阅读。当用例书写完毕以后,需要分析和回顾已写完的用例,使思路不断地被完善和清晰起来。用例编写的注意力应该放在文字上而不是画图上,对于正确的写作风格,我们将给出一些有益的提示。

使用例易于阅读

要是需求文档短小简明,而且易于阅读。从文法上说:要在现在时态中使用主动词。不是使用被动语态,要使用主动语态。要明确句子的主语在哪里,只写真正是需求的东西,不要提及与需求无关的东西。下面的一些习惯可以使你达到这个目的。

  • 让问题短小、切题。长用例当然可以满足大的需求,但很少有人喜欢阅读。
  • 从头开始,用一条主线贯穿始终。顶部是一些对全局有重要意义的用例,再从这里分离出用户目标和最终的子功能用例。
  • 用动词短语来给用例命名,这些动词表达了用例所要达到的目的。
  • 从触发事件开始一直连续,直到目标实现或者被取消。
  • 用完整的主动语态句子来描述所要完成的子目标。
  • 确保每一步中参与者及其意图是可见的。
  • 突出失败条件,并使恢复动作是可读的,最好是不必为每个步骤编号,人们就能清楚地知道下一步该做什么。
  • 把可选行为放在扩展部分,而不是放在用例主事件流的条件语句中。
  • 只在非常必要的情况下才生成扩展用例。

仅使用一种句型

在编写用例的每个执行步骤的时候,只采用一种句型。

  • 现在时态的句子。
  • 在主动语句中使用主动动词。
  • 描述参与者成功到达的目标,这些目标推动了整个过程的前进。

在扩展的条件部分可以使用不同的语法形式,这样就不会使它和执行步骤产生混淆。

“包含”子用例

很重要的一条经验就是,大部分子用例的加入使用包含关系。
混合使用饱含、扩展与泛化往往使读者产生混淆。也就是只在必要的时候使用扩展,当然在框架(Framework)设计的时候使用泛化有一定的好处,但只是在需要的时候使用。

两个结局

每个用例都有两个可能的结局:成功和失败。

记住:当一个执行步骤调用一个子用例的时候,被调用的用例可能成功也可能失败。如果是在主事件流中调用,则把失败处理放在扩展中。如果调用来自扩展,则成功和失败的处理均放在同一个扩展中。

对于目标的成功与失败,编写者实际上有两个职责:一个是确定对每个被调用用例的失败都进行了处理;另一个是确定用力满足了每一个项目相关人员的利益,特别是目标失败的情况下。

项目相关人员需要保证

用例不仅仅记录了主参与者和系统之间公共的可见的交互操作。如果用例仅仅完成了这些操作,那么它不是一个可接受的行为需求,而仅仅是一个文档化了的用户界面。

系统是为了达到项目相关人员利益上的目的。其中一个相关人员便是主参与者,在一般的用例格式中,其它相关人员并没有被列出来。但是用例需要满足这些项目相关人员的利益,并提供满足这些利益的保证。

一般主事件流和它的扩展瞄准了项目相关人员的利益,所以从主事件流开始阅读,看看是不是考虑了所有相关人员的利益,你会发现遗漏是经常的事情。例如,没有想到失败,因而没有记录下恢复信息,检查一下全部的失败处理是否保护了所有相关人员的利益。

在编写主事件流之前先编写保证条件是一个好的策略,因为在第一遍编写的时候就会考虑必要的保证,而不是后来发现它们再返回来对文本进行修改。

高级需求分析师培训要点,如何正确编写需求用例的5个提示!相关推荐

  1. 北京高级软件需求分析师培训招生!

    中国科学院计算技术研究所是国家专门的计算技术研究机构,同时也是中国信息化建设的重要支撑单位,中科院计算所培训中心是致力于高端IT类人才培养及企业内训的专业培训机构.中心凭借科学院的强大师资力量,在总结 ...

  2. 某银行高级软件需求分析师内训圆满结束!

    2014年12月9--12日,某银行"高级软件需求分析师"培训,经过招标.讲标.开标的过程,最终由我单位中科院计算所培训中心中标,谢老师亲临授课,在某银行总部进行,参加人员涉及业务 ...

  3. 需求分析师的基本功:逻辑思维、逻辑分析与逻辑表达

    需求分析师经常抱怨说:我太难了,自认为对需求已经非常清楚了,但交付软件时用户却说:这不是他想要的! 软件行业从事需求分析师的人经常会提到下面的一些有代表性的现象 ■现象1.认真听取了用户需求.并且用界 ...

  4. 高级数据分析师凭什么月薪三万?一文解答你所有困惑

    适逢全国上下都在探讨数字化,各行各业开始不遗余力地深耕数字化转型,数据分析师也成了大热职业,变身抢手的香饽饽. 不过打开招聘网站大家却能看见差距:数据分析师平均薪资在10k到20k之间,大厂数据分析师 ...

  5. 我眼中BA(业务需求分析师)的技能广度和深度

    BA,或者称业务分析师,是企业数字能力和业务能力之间的沟通桥梁.随着企业数字转型的进一步深化,相信对BA这样的技能需求会越来越多,只是未必都用"BA/业务分析师"这样的Title. ...

  6. 高级数据分析师岗位的职责描述

        高级数据分析师岗位的职责描述1 职责: 1.搭建和完善数据中心的数据指标体系与监控预测体系,并推动系统化实现; 2.负责对市场.行业.竞争对手.产品.客户.业务运营等方面数据的收集.分析,完成 ...

  7. 腾讯高级数据分析师采访2

    之前推荐了第 1 篇腾讯高级数据分析师的采访,可以点击查看: 我采访了一位腾讯高级数据分析师 今天推荐第二位来自腾讯天美的数据分析师. 唐松--腾讯天美数据分析师 第二期邀请的嘉宾是唐松,我个人最看好 ...

  8. 中国人民银行清算总中心CDA业务数据分析师培训正式开课

    中国人民银行清算总中心CDA业务数据分析师培训于2019年4月19日在央行清算总中心数据中心正式开课. 内训企业介绍: 中国人民银行清算总中心是中国人民银行直属的.实行企业化管理的事业法人单位,是为中 ...

  9. 如何成为一名合格的需求分析师?

    针对前期组内组织的培训,列出了需求分析师整体工作流程(包括从前期需求获取.需求排序.需求分析等)以及知识图谱(包括工具使用.软件模型等).仅供参考.

  10. 揭秘认知智能,小i机器人的“高级知识分析师”高级在哪里?

    认知智能有一个非常重要的部分,就是知识. 算法是发动机,知识是燃料,机器人的认知能力就是输出的能量. 作为认知智能领头企业,小i机器人拥有专业.庞大的知识分析团队,这个团队是幕后的主干力量.此次,来自 ...

最新文章

  1. Qt Creator常用快捷键及技巧提升编码效率
  2. 在word中,整篇文章想要在每一章另起一页
  3. 【坚持】Selenium+Python学习记录 DAY10
  4. Taro+react开发(45)taro中组件生命周期
  5. 序(不知道是什么时候的模拟题)
  6. dbeaver无法修改表数据_隐藏彩蛋:你知道python有一个内置的数据库吗?
  7. 鼓励玩家自创,大量的UGC能为手游续命吗?
  8. Python清屏命令:)
  9. 《啊哈!算法》.pdf
  10. 苹果/微软/特斯拉的产品美学——向丑而生?
  11. 微云同步盘 linux,微云同步盘和微云有什么区别?
  12. [英语阅读]芭比娃娃“五十知天命”
  13. 《信息安全系统设计基础》第1周问题总结
  14. 小白兔—雪花-吕中琪
  15. element表单校验
  16. 产品结构设计的主要内容有哪些?
  17. 聚合物钽电容和普通钽电容的区别
  18. 图片怎么转化为pdf格式?
  19. html表格单行溢出省略号,单行、多行文本溢出显示省略号(css、js两种方法)
  20. 计算机操作系统实验指导linux版,操作系统实验指导书(linux版).doc

热门文章

  1. 各种3d格式转换为stp 、stp 、igs 或者转换为web
  2. 手机微信如何设置浏览器打开时提醒
  3. 收藏丨8个常用中文OCR数据集,附下载链接
  4. python遗传算法工具箱的使用_Python遗传算法框架——Geatpy学习笔记(一)
  5. SVN客户端安装及汉化
  6. 运动世界校园3.0版本逆向分析破解
  7. 给出汉字‘你’、‘我’、‘他’在Unicode表中的位置
  8. 4k显卡视频测试软件,4K分辨率下体验测试
  9. java 省市区三级联动_javaWeb数据库动态加载全国省市区三级联动
  10. python——字典攻击