??xml version="1.0" encoding="utf-8" standalone="yes"?>
UML体系l比较复杂,内容较多Q我们可以根据实际情况选择性的学习(fn)Q部份内容可日后再做深入学习(fn)。首先了(jin)解一?/span>UMl中相关的一些概念:(x)
UML视图只是表达pȝ某一斚w特征?/span>U M L
?/span> 中包含以?/span>9?strong>用例?/strong>Q?/span>use-case diagram以及(qing)q些角色与系l提供的用例之间的连接关pR角色代表外部实体,如用戗硬件设备或与系l发生交互的另一个外部系l?/span> 2Q用来表C系l中的类和类与类之间的关p,是对pȝ?rn)态结构的描述?/span> 3、状态图Q描q类的所有对象可能具有的状态,以及(qing)引v状态变化的事g?/span> 5、协作图Q其作用同序列图Q除?jin)显C消息变化外Q协作图q显C对象及(qing)其之间的关系?/span> 7Q描q某个操作执行时的活动状c(din)?/span> 8Q反应代码的物理l构Q可为源代码、二q制文g或可执行文glg?/span>
]]>
3、通讯兌(Communication Association) Q通讯兌用于表示参与者和用例之间的对应关p,它表C参与者用了(jin)pȝ中的哪些服务Q用例)(j)Q或者说pȝ所提供的服务(用例Q是被哪些参与者所使用的?
二、用例之间的关系
1、包?include)Q将若干用例中一些相同的行ؓ(f)Q单独抽象成一个的用例Q然后其他用例来包含q个用例。这样避免在多个用例里面重复设计同一个操作,也避免同一个操作在不同的用例里面的描述出现不一致。需要修改的时候,也只需要一个用例,避免修改多个用例出现的不一致和重复工作。例如:(x)银行ATMpȝQ用户取ƾ、存?gu)ƾ时Q都?x)打印凭证,我们打印凭证抽象出来,取款、存?gu)Ƅ操作时包含打CQ证这个行为?
2、扩?extend)Q扩展是事件流中一些相对独立ƈ且可选的行ؓ(f)扩展为新的用例,q且在基用例上的扩展点进行扩展。与包含关系不同的是Q包含的事g是必d在的动作Qƈ且该用例的事件流一定要插入到基用例中;而扩展是提供一些备选动作,可根据条件来军_是否扩展用例的事g插入基用例的事件流中。扩展也可以抽象为基用例的备选流Q扩展出来的用例可以让基用例变得更加l。例如:(x)在通话业务的基上可扩展一些增g务,如语音信、呼叫{Uȝ?
3、泛?generalization) Q也叫(h)?泛化是分析领域术语,l承是设计和实现领域术语Q通常用(h)承来解决泛化问题)。当多个用例拥有相同的结构、行为时Q我们可以把它们的共性部份抽象出来成为父用例Q而其他用例作为泛化关pM的子用例。在泛化关系中,子用例是父用例的Ҏ(gu)形式Q子用例l承?jin)父用例所有的l构、行Z?qing)关pR例如:(x)订票是网上订用例和?sh)话订票用例的抽象?
三、徏立用例模?
1、确定参与者,可以从以下问题入手:(x)
2、确定用例,L用例可以从以下问题入手(针对每一个参与者)(j)Q?
]]>