- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
是用例和用例描述
我发现,在OO和UML几乎一统天下的今天,仍有很多系统分析员对OO和UML一知半解,甚至包括很多已经使用了很久UML的系统分析员。 于是打算写一个系列文章,将多年来的工作经验做一个总结。对初学者起个启蒙作用,也希望抛砖引喻,与各路大虾共同探讨,共同提高。 这个系列文章将以我对OO和系统分析的理解为主,从UML基础开始,阐述面向对象的需求分析方法,过程,并以RUP为例,阐述如何将OO过程与软件过程有机结合在一起,做一个真正OO应用。 好了,今天是第一篇。想得很远,不知能否坚持下去,呵呵:lol: 用例是什么?其原始英文是usecase,直译过来就成了用例。这也是一个比较贴切的叫法了,从字面的直接理解就是使用的例子。另一种比较流行的定义是用例就是与使用者(actor)交互的,并且给使用者提供可观测的有意义的结果的一系列活动的集合。 这个定义还是比较费解的,笔者在众多应聘者中发现很多使用用例来做需求的系统分析员,有的已经使用了两年以上,但仍不能把握用例的本质,虽然他们号称精通UML。 最具普遍意义的理解错误是认为用例就是功能的划分和描述,认为一个用例就是一个功能点。在这种理解下,用例变成了仅仅是较早前需求中功能框图的翻版,很多人用用例来划分子系统,功能模块和功能点。如果这样,用例根本没有存在的必要。有意思的是,造成这种理解错误的相当一部分原因却是因为对OO思想的理解不够深入,本质上说,把用例当成功能点的系统分析员脑子里还是面向过程的那一套思想,虽然他们在使用OO的工具,OO的语言,号称在做面向对象的开发,但过程的影子还没有从他们脑子里彻底抹去。 如果用例不是功能的话,它是什么呢?从定义上说,能给使用者提供一个执行结果的活动,不就是功能吗?我的回答是:错!功能是计算机术语,它是用来描述计算机的,而非定义需求的术语。功能实际描述的是输入--计算--输出。这让你想到了什么?DFD图?这可是典型的面向过程分析模式。因此我说把用例当做功能点的分析员实际在做面向过程的分析。 而用例则不是计算机术语,UML除了在计算机行业中应用,它也经常被应用在其它行业中。用例是一种需求方法学,虽然软件危机和OO的发展促成了它的诞生并被完美的融合进了OO体系,形成了UML,但它实际上并不是软件行业的专用品。如果非要从功能的角度解释,那么用例可以解释为一系列完成一个特定目标的“功能”的组合,针对不同的应用场景,这些“功能”体现不同的组合方式。实际上,把用例解释为某个参与者(actor)要做的一件事可能更为合适。这样的一件事有以下几个特征: 一、这件事是相对独立的。这意味着它不需要与其它用例交互而独自完成参与者的目的。也就是说这件事从“功能”上说是完备的。读者可能会想到,用例之间不是也有关联关系吗?比如扩展,比如实现,比如继承,它看上去并不是独立的嘛。关于这个问题,笔者会在后续的文章里详细说明。这里稍微解释一下,用例之间的关系是分析过程的产物,而且这种关系一般的产生在概念层用例阶段和系统层用例阶段。对于业务用例,这个特征是很明显的。 二、这件事的执行结果对参与者来说是可观测的和有意义的。例如,系统会监控参与者在系统里的操作,并在参与者删除数据之前备份。虽然它是系统的一个必需组成部分,但它在需求阶段却不应该作为用例出现。因为这是一个后台进程,对参与者来说是不可观测的,它应该在系统用例分析阶段定义。又比如说,登录系统是一个有效的用例,但输入密码却不是。这是因为登录系统对参与者是有意义的,这样他可以获得身份认证和授权,但输入密码却是没有意义的,输入完了呢?有什么结果吗? 三、这件事必须由一个参与者发起。不存在没有参与者的用例,用例不应该自动启动,也不应该主动启动另一个用例。用例总是由一个参与者发起,并且满足特征二。例如从ATM取钱是一个有效的用例,ATM吐钞却不是。因为ATM是不会无缘无故吐钞的,否则,我从此天天守在ATM旁,生活无忧矣。 四、这件事必然是以动宾短语形式出现的。即,这件事必须有一个动作和动作的受体。例如,喝水是一个有效的用例,而“喝”和“水”却不是。虽然生活常识告诉我们,在没有水的情况下人是不会做出喝这个动作的,水也必然是喝进去的,而不是滑进去的,但是笔者所见的很多用例中类似“计算”,“统计”,“报表”,“输出”,“录入”之类的并不在少数。 除去以上的特征,笔者觉得用例的含义还要更深些。首先,用例的背后是一种需求方法论。其核心是以参与者为中心(区别于以计算机系统为中心),从参与者的角度来描述他要做的日常工作(区别于以业务流程描述的方式),并分析这些日常工作之间是如何交互的(区别于数据流的描述方式)。换句话说,用例分析的首要目标不是要弄清楚某项业
您可能关注的文档
最近下载
- 二级综合医院评审标准实施细则(任务分解确定责任科室稿).pdf VIP
- 2021年高考真题-英语(新高考全国Ⅰ卷)-含解析.pdf VIP
- 《文化的传承与创新》课件.ppt VIP
- 感觉信息处理及自我调节能力检核表[汇编] .pdf VIP
- 实用应用文写作(中职版):日常生活类应用文写作PPT教学课件.pptx VIP
- 口腔检查记录表.docx VIP
- 化工仪表管理制度汇编.docx VIP
- JB∕T 9050.1-2015 圆柱齿轮减速器 第1部分:通用技术条件.pdf VIP
- 拔除智齿病历.docx VIP
- (正式版)JB∕T 9050.2-2024 圆柱齿轮减速器 第2部分:接触斑点测定方法.pdf VIP
文档评论(0)