您的位置: 首页 >> 新闻中心 >> 计算机 >> 软件开发
谈用例驱动可能出现的问题及解决方法
■ 最新课程推荐更多课程>>
学校培训课程开课时间上课地点精英价报名
正辰培训 微软软件测试工程师电话预约西直门教学区¥4704
新 科 海 软件测试工程师就业班电话预约海淀长远天地¥6280
北师大IT 软件工程与测试实战班电话预约北京师范大学¥1800
北师大IT 高级网络工程师就业班电话预约北京师范大学¥13000
金 同 方 网络工程师就业周末班电话预约人大总部¥7000
  就像小说里那些早慧的少年,很早就尝试过用例驱动的需求文案,结果与客户,一个愁默默,一个恨绵绵。 

  最狂热的用例编写者也承认,用例对客户与需求人员都是一种heavy的相互折磨。

  客户看用例时总要收摄心神来阅读整个交互的流程,还有那些该死的扩展流异常流,没经过程序员专业抽象训练的客户,对着这些伪代码一般的情景脚本,刚开始的一两个还好,看多了,就是白天也能睡去。客户只是看都如此了,负责写的人当然也不会好过。

  但heavy的工作总有heavy的好处,否则早被唾弃于舞台的背面。
  在用户的角度,用例比模棱两可的功能点描述要清晰,也更直白于系统的价值。
  在开发团队角度,RUP的核心方法论之一---用例驱动的口号,明白人自然明白它的妙用。
  设计人员的新设计手段:“用时序图分析用例的实现,在描述过程中确定构件或类,分配它们的职责和方法”,通过对用例覆盖率的追踪,需求与设计之间的信息损耗这个famous problem大大降低。
  测试人员和文档人员,更可以直接把系统用例笑纳为《测试用例》和《用户手册》。

  来到亿迅后,被这里的用例文明给震住了,每个项目的软件规格说明都是屯门清一色的几百页的前景,用例规约,业务规则,词汇表,补充规约组成.......难得有情郎啊。

  昨天又看到了一批新的用例诞生,但实在有好些明显的不足啊,忍不住旧事重提的记下一批经典的错误。不过.....只要能和客户达成需求共识,就是一份好的用例了,也不用花太多时间在学术性的讨论上。

  1.客户没有能力阅读用例
  如果客户实在没办法撑住困意看完用例的细节,即使草草签了名,得不到用户真正确认的用例,依然无法用来驱动设计和测试。
  解决方法:放弃编写用例,改回用户容易看的传统方式。

  2.团队没有能力实现用例驱动
  如果开发团队在设计与测试时,根本不依照用例细节驱动,那用例对开发团队就只是个摆设,花瓶。
  解决方法:对设计、测试人员进行用例驱动的培训,如果事不可为就干脆放弃,怎么省事怎么做。

  3.在用例中描述系统内部工作
  经典错误,开发人员把用例当作设计文档来写,如“系统将销售信息写入数据库”,实际上应该写的是“系统记录销售”。
  解决方法:站在客户的角度,把系统视为黑盒,删除所有内部设计描述。

  4.在用例中描述界面
  另一个经典错误,不说了,如果在意用户信息包括了姓名和密码,可以在词汇表里记录,而用例写成--显示<用户信息>。

  5.在用例中越出系统边界描述整个业务流程
  要建立的系统只是整个业务流程里的一部,善良的需求人员为了大家清楚来龙去脉,将系统外的处理步骤也写进了用例的情景。
  如:
      1.用户去营业厅开户
      2.用户拨号接入
      实际上去营业厅开户不属于宽带接入认证系统的职责。
      解决方法:开户的描述应该放到用例的前置条件中。前置与后置条件是说明系统边界外的业务流程的好地方。 

  6.过多的用例,让人晕菜
  国外的惯例,一个用例一般有半个以上人月的开发量。
  解决方法:
  1.开户,销户这样的CRUD型用例可以合并成一个管理用例,以四个主场景分别表达。
  2."老板问:你每天做什么阿?","我每天登陆系统"。这就是用例没有提供足够价值的明显标志。
  3.用例中的每一个步骤,其实都可以写成一个独立的用例,分 or  不分?这是个问题。
  4.用例的打包组织是一门艺术,混合的按照功能包、顶级目标用例,Actor,开发团队或者版本号等等。

  7.过多的扩展事件和异常事件流,让人晕菜
  即使是受过训练的程序员,2a, 3b1看多了也要晕掉,记住阅读者是人而不是机器。   
  解决方法:
  1.如果逻辑不多,可以一句话讲完,不影响主场景的,不建议新起一个事件流。
  2.可以使用活动图来辅助说明。在RSM7.0的模版里,每个用例都会带上一个活动图。

  8.过多的关系,继续让人晕菜
  “不要花一个月的时间去讨论应该include还是extend”。大家对include, extend and generalize都不熟悉,那就干脆都不要用了。  

    

下一篇:怎样从需求转换到设计和编码

  需求和设计之间存在差别,但应尽量使你的规格说明的具体实现无倾向性。理想情况是:

  在设计上的考虑不应该歪曲对预期系统的描述。需求开发和规格说明应该强调对预期系统外部行为的理解和描述。让设计者和开发者参与需求审查以判断需求是否可以作为设计的基础。

  不同的软件设计方法常常都会满足最终需求,而设计方法会随着性能、有效性、健壮性以及所采用的技术上的不同而变化。如果你直接从需求规格说明跳到编码阶段,你所设计的软件将会是空中阁楼,其可能的结果只能是...[查看详情]

  影视动画培训   北大BEC培训官方报名网站   2008美国夏令营启航官方指定报名网站   2008留学第一站!  
  北师大 火星时代
共举影视动画培训之鼎
  北大BEC培训官方报名网站
现在报名独享95折!
  2008年国家职业资格考试
一次过关完全备考手册
  2008留学第一站
留学资讯尽在精英留学站!
 
上一篇:面向对象软件设计说明书模板
下一篇:怎样从需求转换到设计和编码
 相关新闻
·软件体系结构与软件架构解析·新一代的功能点规模估算方法:COSMIC-FFP[1]
·新一代的功能点规模估算方法:COSMIC-FFP[2]·有关管理客户需求的一点见解
·ScottAmbler谈如何编好的软件模型·为什么要进行需求管理?
·如何提高软件企业的核心竞争力·影响软件开发效率的12大杀手
·企业管理软件的需求描述方法·失衡的中国软件职业结构
·CMMI5在项目中的精简应用·软件测试演义-究竟什么是软件测试?
·功能测试自动化的投入和产出·看软件测试过程的持续改进
·面向对象的几个重要概念·怎样从需求转换到设计和编码
 
◇ 重点栏目导航
◇ 精英服务承诺
教育顾问:010-51660910
QQ交流:138660910
相关资料
·软件测试新手的修炼之路
·Smarty简体中文参考手册
·Struts中文手册
·Struts快速学习指南
·ultradev动态网页制作教程
·UML工具箱
·《设计模式》中文版
·学友Flash伴侣 1.11
·阿须图像水印(AssureMark)V2.0
·超级语霸
相关试题
·2008年云南公务员考试专业试卷之科技环保
·2008年云南公务员考试试卷之教育文化类专
·2008年云南公务员考试试卷参考答案之科技
·2008年云南公务员考试试卷参考答案之教育
·2008年公务员考试科教管理类专业试卷参考
·2008年公务员考试科教管理类专业试卷(云
·2007年全国CPA考试试卷及答案解析之《会
·2007年CPA试卷及答案解析之《财务成本管
·2008年注会考前模拟试题之《财务成本管理
·2007年全国CPA《税法》考试试卷及答案解
相关热贴
·如何改QQ IP地址!
·恰当选择软件测试自动化方案
·ADO.NET学习总结
·.net操纵xml文件类(c#)
·Log4net教程
·VPN技术详解
·高手必读 网络端口安全防护技巧放送
·访问XP共享出现的问题解决办法
·Web2.0时代,RSS你会用了吗?(技术实现总
·.NET下正则表达式应用的四个示例