荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (好好学习,天天向上), 信区: Program
标  题: rose教程5
发信站: BBS 荔园晨风站 (Mon Dec 13 13:26:28 1999), 转信

发信人: bdknight (死神), 信区: Programming
标  题: rose教程5
发信站: 西十八BBS (Mon Oct 25 13:59:38 1999), 转信

顺序图和协作图
从面向对象的角度来看,系统的功能是由一组对象通过相互发送消息来完成的,顺序图
和协作图就是通过描述这样的对象和消息来描述系统的动态行为的。我们先用一个顺序
图来描述Use Case AddTask。
AddTask的功能是向ToDo表中加入一个Task项,它的步骤应该是:
打开加入Task项的窗口;
输入相应信息;
生成一个Task对象;
把这个Task加入到Task表中。
那么,我们的顺序图就可以画成:
图中,方块表示一个对象,方块中的文字中冒号之前的部分是对象的名字,冒号之后的
是对象所属的类的名字。方块下面的竖直虚线是对象的生命线,表示对象按照从上到下
的时间轴的在某段时间内存在。对象间的箭头表示对象之间的消息通讯。而那些狭长的
长方块表示某个操作方法执行的时间和调用关系。
顺序图有一个孪生兄弟——协作图,AddTask的协作图是这样的。
这两种图描述的其实是同一种东西,即实现某种系统功能的一组对象和它们之间的消息
传递。不过在顺序图中,时间是作为一个显式的因素出现的,这是的顺序图在构造实时
系统时特别有用。而在协作图中,没有显式的时间因素,但是对象之间的关联是一目了
然的,这对我们在一组相互关联的对象的语境中考察它们的消息传递是很有帮助的。顺
序图和协作图是对同一事物的不同角度的考察。
我们从Use Case自然语言的描述得到了它的顺序图,从顺序图中我们可以发现许多类。
你瞧,我们有一个窗口,所以需要有一个对应的窗口类;我们有一个Task对象,相应的
就得有一个Task类,类似的,Tasks这个用来管理和组织Task的集合对象也是必须的。G
reat!现在你看到Use Case和顺序图对识别和发现类的作用了吧!在传统的面向对象分析
中,类的识别是靠分析人员的经验和灵感来进行的,这太难以把握了。现在有了Use Ca
se的概念,就可以为对象和类的识别提供一个有力的线索和支点。通过分析Use Case,
构造它的顺序图描述,再加上传统的对问题域中的对象和类的考察,可以发现大多数和
系统相关的类。面向对象分析中最重要也是最困难的识别和分析类的工作再也不是一种
神秘的法术了(你凌空一指,变出了类),现在人人都可以胜任这个活儿了。
经过识别和分析Use Case,我们的需求分析工作可以告一段落了。现在我们着手分析系
统的静态结构——就是类的分析和设计。

--
m;36m※ 来源:.西十八BBS bbs.x18.scut.edu.cn.[FROM: 202.38.248.13]m
--
m;32m※ 转寄:.西十八BBS bbs.x18.scut.edu.cn.[FROM: 210.39.3.50]m

--
         &,----.,_                              █           _,_----,&
         /      ' "_        ███   ███   ███       _" '      \
         (  )___( ,_@         ◢◤     ◢◤     █        @_,)___(  )
          }/ ```}{          ◢◤     ◢◤       █          }{    !\{
          ""    ""          ███   ███     ██        ""     ""
      我 是 猪 唛 站 长 ,欢 迎 光 临 深 圳 大 学 荔 园 晨 风 BBS 站 *_^

※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.11]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店