/英文/
/简体中文/
/英文/
/简体中文/
//
/中文/
/简体中文/
/简体中文/
/简体中文/
/中文/
Software Ideas Modeler是一个功能强大,体积轻巧的工具,用于创建UML图像。它【tā】支持13种URML图像,混合图【tú】片,实体【tǐ】关系图,数据流【liú】图,需求图 ,用户界面建模以及CRC卡片。此程序支持导出多种图形格式 (WMF, EMF, PNG, SVG) 和 PDF. 还【hái】可以生【shēng】成项目文档(RTF格式)。
1修复崩溃的bug
2修复格式化文本的相关bug
3.界面更新
4新的工具栏搜索框
1.UML初览
本章使用一个简单的例子对UML中所使用的概念和视图进行初览。
本章的目【mù】的是要【yào】将高层UML概念组织成一系列较小的视【shì】图和图表来可视化说明这些概念,说明如何【hé】用各种不同的概【gài】念来描述一个系统【tǒng】以及如何将各种视图组织在一起。
概括性的说明不可能面面俱到,其中省略了许多概念。要想得到更详细的说明,可 参见下【xià】一章对UML各视图的说明和本【běn】书大全部分的有【yǒu】关细节。
1.1 UML视图
UML中【zhōng】的各种组件【jiàn】和概念之间没有明【míng】显的划分界限,但【dàn】为方便起见,我们用视图来划分这些概念和组件。
视图只是表达系统某一方面特征的UML建模组件 的子集。
视图的划分带有一定的随意性【xìng】,但我们希望这种看法仅仅是直【zhí】觉上的【de】。
在每一类视图中使用一种或两种特定的图来可视化【huà】地【dì】表示视图中的【de】各种概念。
在最上一层,视图被【bèi】划分成三个视图【tú】域:结构分类、动态行为和模型管理。
结构分类描述了系统中的结构成员及其相互关系。
2.静态视图
静态视图对应用领域中的概念以及与系统实现有关的内部概念建模。
这种视图之所以【yǐ】被称之为是【shì】静态的是因为它不描【miáo】述与【yǔ】时间有关的系统行为,此种行为在其 他视图中进行描述。
静态视图主要是由类及类间相互关系构成,这些相互关系包括:关联、泛化【huà】和各种依赖关系,如使用和实现关【guān】系【xì】。
一个类是应用领【lǐng】域或应用解决 方案中概念的描述。类图是以类为中【zhōng】心来【lái】组织的,类图中的其【qí】他元素或属于某个类或与类相关联。
静态视图用类图来实现,正因为它以类为中心,所以称其为类图。
在类图中类用矩形框来表示,它的属性和操作分别列在分格中。
如不需要表达详细【xì】信息时,分格可以【yǐ】省略。一个类可能出现在好几个【gè】图中。
同一个类的属性和操作只在一种图中列出,在其他图中可省略。
关系用类框之间的连线来表示,不同的关【guān】系用连线上和连【lián】线端头处的修饰符来区别【bié】。
图 3–1是售票系【xì】统的类图,它只【zhī】是售票系【xì】统领域模型的一部分。
图中表示了几个重要的类,如Customer、Reservation、Ticket和 Performance。顾客可多次订票,但每一次订票只能由【yóu】一【yī】个【gè】顾客来执行。
有两【liǎng】种订票方式:个人票【piào】或【huò】套票;前者只是一张票,后者包括多张票。每一张票 不【bú】是个人票就是套票中的一张,但是不【bú】能又是个人票又是套票中的一张。
每场演出都【dōu】有多张票【piào】可供预定,每张票对应一【yī】个唯一的座位号。每次演出用剧目名、日期和 时间来标识。
图 3–1 售票系统的类图
3.用例视图
用例视【shì】图是被称为参与者的【de】外部用户所能观察到的系【xì】统功能的模型图。用例【lì】是系统中的一个功能单【dān】元,可以被描述为参与者与系统之间的【de】一次交互作用。
用例模型的用途是列出系统中的用例和参与者,
并显示哪个参与者参与了哪个用例的执行。
图 3–2是售票系统的用例图。参与者包括售票员、监督员和【hé】公用电话亭。
公用电话亭是另一个系统,它接受顾客的订【dìng】票请求。在售票处的应用【yòng】模型中,顾客不是参与者,因为顾客不直【zhí】接【jiē】与售票【piào】处打交道。
用例包括通过公用电话【huà】亭或售票【piào】员购票,购预约票(只能通过【guò】售票员),售票监督(应监督员的要求)。
购【gòu】票和【hé】预约票包括一个共同的部分—即通过信用卡来付钱(对售票系【xì】统的完整描述还要包括其他一些用例,例如换票【piào】和验票等)。
用例也可【kě】以有不同的层次。用【yòng】例可以用其他更简单的用例进行说明。在交互视图【tú】中,用例做为交【jiāo】互图中的一次协作【zuò】来实现。
3.4 交互视图
交互视图描述了执行系统功能的各个角色之间相互传递消息的顺序关系。
类元是对在系统内交互关系中起特定作用【yòng】的一个【gè】对象的描述,这使它区别于同【tóng】类的其他对象【xiàng】。
交互视【shì】图显示了【le】跨越多个对象的系统控制流程【chéng】。交互视图可用两种图来【lái】表示:顺序图和协作图【tú】,它们各有不同的侧重点。
3.4.1 顺序图
顺序图表示了对象之间传送消息的时间顺序【xù】。每【měi】一个类元角色用一条生【shēng】命线来表示—即【jí】用垂直线代表整个交互过程中对【duì】象的生命期。
生命线之间的【de】箭头【tóu】连线代表消息。顺序图可以用来进行一个场景说明—即一个事【shì】务的历史过程。
顺序图的一个用途是用来表示用例中的行为顺序。
当执行一个用例行为时,顺序图中的每条消【xiāo】息【xī】对应了一个类操作或状态机【jī】中引起转换的触发事件。
图 3–3是描述【shù】购票这个用例的顺【shùn】序图。顾客在公共电话亭与售【shòu】票处【chù】通话触发了这个用例的执行。
顺序图中付款【kuǎn】这个用例包括售票【piào】处与公用电话亭和信用卡【kǎ】服务处的两 个通信过程。这个顺序图用【yòng】于系统开发初【chū】期,未包括完整的与用户之间的接口【kǒu】信息。
例如,座位是怎样排列的;对各类座位的详细说明都【dōu】还没有确定【dìng】。尽管如此,交互过程中最基本的通信已经【jīng】在这个用例的顺序图中【zhōng】表达【dá】出来了。
3.4.2 协作图
协【xié】作图对【duì】在一次交互中有意义的对象【xiàng】和对象间的链建模。对象和关系只有在交互的才有意义。
类元角色描述了一个对象,关联【lián】角色描述了协作关系【xì】中的一个 链。协作图用几何排列来表示交互作【zuò】用中的各角【jiǎo】色(如图9-20)。
附在类元角色上的箭头代表消息。消息的发生顺序用消【xiāo】息箭头【tóu】处的编号来说明。
协作图的一个用途是【shì】表示一个类操作的实现。协作图【tú】可以说明类操作中【zhōng】用【yòng】到的参数和局部变量以及操作中的【de】永久链。
当实现一个【gè】行为时,消息【xī】编号对应了程序中嵌套调用结构和信号传【chuán】递过程。
图 3–4是开发过程后期订票交【jiāo】互的协作图。这个图表示了订【dìng】票【piào】涉及的各个对象间的交互【hù】关系。
请求从公用电话亭发出,要求从所有的演出中查找某次演出的资料。
返回【huí】给ticketseller对象的指针db代表了与某次演出【chū】资料的局部暂时链接,这个链接在交互过程中保持,交互结束时丢【diū】弃。
售票方准备了许多演出的 票;顾【gù】客在各种价位做一【yī】次选择,锁【suǒ】定所选座位【wèi】,售票员【yuán】将顾客的选择返回给公用电话亭。
当顾客在座位表中做出选择后,所选座位被声明,其余座位解锁。
顺序图【tú】和协作【zuò】图都可以表示各对象间的交互关系,但它们的侧重【chóng】点不同。
顺序图用消息的几何排列关系来表达消息的时间顺序,各角【jiǎo】色之【zhī】间【jiān】的相【xiàng】关关系是隐含的。
协作图用各个角色的几何排列图形来表示角【jiǎo】色【sè】之间的关【guān】系,并用消息来说明这【zhè】些【xiē】关系。在实际中可以根据需要选用这两种图。
3.5 状态机视图
状态机视图是一个类对象【xiàng】所【suǒ】可能经历的所有历程的模型图。状态机由对象【xiàng】的各个状态和连接这些状态的转【zhuǎn】换组成。
每个状态对一个对象在其生命期中满足某【mǒu】种 条件的一个时间段建模。当一个事件发生时,它会触发状【zhuàng】态间的转换,导【dǎo】致对象从一种状【zhuàng】态转化到另一新的状态。
与转换相关的活动执行时,转换也同时发生。状【zhuàng】态 机用状态图来表达。
图 3–5是【shì】票这一对象的状态【tài】图。初始【shǐ】状态是Available状态。在票开始对外出售前,一部【bù】分票是给预约者预留的。
当顾客预【yù】定票【piào】,被预定的票首先处于锁【suǒ】定 状态【tài】,此时顾客仍有是否确实要买这张票的选择权【quán】,故这张要票可能出售给顾客也可能因为顾客不要这【zhè】张票而解除锁定状态。
如果超过了指定的期限顾客仍未做出选 择,此票【piào】被自动解除锁定状态。预约【yuē】者也【yě】可以换【huàn】其他演出的票,如果这样的话,最初预约票也可以对【duì】外出售。
状态图可用于描述用户接口、设备控制器和其他具有反馈的子系统。
它还可用于描述在生命期中跨越多个不同性质阶段的被动【dòng】对象的行为,在每一【yī】阶段【duàn】该对象都有自己特殊的行为【wéi】。
3.6 活动视图
活动图是【shì】状态机的一个变【biàn】体,用来描述执行算法的工【gōng】作流程中涉及的活动。活动状【zhuàng】态代表了【le】一个活动:一个工作流步骤或一个操作的执行。
活动图描述了一组顺序的或并发的活动。活动视图用活动图来体现。
图 3–6 是售票处的活【huó】动图。它表示了上演一个剧目所要进行的活动(这个例【lì】子仅供参考,不必太认真地凭着看戏的经验而把【bǎ】问题复杂化)。
箭头说【shuō】明活动【dòng】间【jiān】的顺序依赖关系 —例如【rú】,在规划【huá】进度前,首先要选择演出的剧目。加粗的横线段表示分叉和结合控制。
例如,安排好整个剧目的进度后,可以进行宣传报道、购【gòu】买剧本、雇用演员、 准【zhǔn】备【bèi】道具【jù】、设计照明、加【jiā】工戏【xì】服等,所有这些活动都可同时进行。
在进行彩排之前,剧本和演员必须已经具备。
这个例说明了活动图的用途是【shì】对人类组织的现实世界【jiè】中的工【gōng】作流程建模。
对事物建模是活动图的主要用途,但活动图【tú】也可对软件系【xì】统中的【de】活动建模。
活动图有助于理【lǐ】解系统高层活动的执行行为,而【ér】不涉及建立协作图【tú】所必须的消息传送【sòng】细节。
用连接活动和对象流状态的关系流表示活动所需的输入输出参数
3.7 物理视图
前面介绍的视【shì】图模【mó】型按照【zhào】逻辑观点对应用领域中的【de】概念【niàn】建模。物理视图对应用自身的实现结【jié】构建模,例如系统的构件组织和建立在运行节点上的配置。
这类视图提供了【le】将系统中的类映【yìng】射成物理构件和节点的机制【zhì】。物理视【shì】图有两种:实现视图和部署视图。
实现视图为系统的构件建【jiàn】模型—构件即构造应用的软件单【dān】元—还【hái】包括各构件之间的依赖【lài】关系,以便通过这些依赖【lài】关系来估计对系统构件的修改给系【xì】统可能带来的影响。
实现视图用构件【jiàn】图来【lái】表现。图 3–7是售票系统的构【gòu】件图。
图中【zhōng】有三个用户接口:顾客和公用电话亭之间的【de】接【jiē】口【kǒu】、售票员与在线订票系统【tǒng】之间的接口和监督员查询售票情况的接口。
售票方构件顺 序【xù】接受来【lái】自售票员和公用电话亭的请求【qiú】;信用卡【kǎ】主管构件之间处理信用卡付款;还有一个存储票信息的数据库构【gòu】件。
构件图【tú】表示了系统中的各种构件。在个别【bié】系统的 实际物理配置【zhì】中,可能有某个构件【jiàn】的多个备份。
图中【zhōng】的【de】小圆【yuán】圈代表接口,即服务【wù】的连贯集。从构件到接口的实线表明该构件提供的列在接口旁的服务。
从构件到接口的虚线箭头说明这个构件要求接口提供的服务。
例如,购买个人票可以通过公用电话亭订【dìng】购也可直接向售票员购买,但【dàn】购买团体【tǐ】票只能通过售票员。
部署视图描述位于节点实例上的运行构件实例的安排。
节点是一组运行资【zī】源,如计算机、设备或存储【chǔ】器。这个视图允许评估分配结果和资源【yuán】分配。
部署视图用部署图来表达。图 3–8是售票系统的描述层部署图。
图中表示了系统中的各构件和每个节点包含的【de】构件【jiàn】。节点用立方体图形表示【shì】。
图 3–9是售【shòu】票系统的【de】实例层【céng】部署图。图中显示了各节点和它们之间的连接。
这个模型中的信息是与图 3–8的描述层中的内容相互对应的。
3.8模型管理视图
模型管理视图对模型自身组织建模。
一系列由模型元素(如类、状态机和用例)构成的包组成了模型。
一【yī】个包(package)可能包含其他的包,因此,整【zhěng】个模型实际上可【kě】看成一个根包,它【tā】间接包含了模型中的所有内容。
包是操作模型内容、存取控制和配【pèi】置控制的基本【běn】单元。每一个模型元素包含【hán】于包【bāo】中或包含于其他模型元素中。
模型是从某一观点以一定的精确程度对系统所进行的完整描述。
从不同的视角出发,对同【tóng】一系统可能会建立多个模【mó】型,例如有系【xì】统分析模型和系统设计模【mó】型之分。模型是一【yī】种特殊的包。
子系统是另【lìng】一种特殊的包。它代表了系统的一个【gè】部分,它有清晰的接口,这个接口可【kě】作为一个单独的构件来实现【xiàn】。
模型管理信息通常在类图中表达。
图 3–10显示了将整个剧院系统分【fèn】解【jiě】所得到的包和它们之间的依【yī】赖关系。
售票处子系统在前面的【de】例子【zǐ】中已经讨论过了,完整的系统还包括剧院管理和计划子系统。每个子系统【tǒng】还包【bāo】含了多个【gè】包
3.9扩展组件
UML包【bāo】含三种主要的扩【kuò】展组件:约束、构造型和标记值。约束【shù】是用【yòng】某种形式化语言或自然语言表达的语义关系的文字说明。
构造型是【shì】由建模者设计的新的模型【xíng】元素,但是这个模型元素的【de】设计要建立在UML已定义的模型元素基础上。
标记值是附加到任何模型元素上的命名的信息块。
这些组件提供了扩【kuò】展UML模型元素语义的方法,同时不改变【biàn】UML定义【yì】的元模型自【zì】身的语义。
使用这些扩展组件可以组建适【shì】用于某一具体应用领域【yù】的UML用户定制版本【běn】。
图 3–11举例说明【míng】了约束、构造型,和标记值的【de】使用。对剧目类的约束保证了剧目【mù】具有唯一的名称【chēng】。
图 3–11说明了两个关联的异【yì】或约束,一个对象某一时刻只能具有两个【gè】关联中的一个【gè】。
用文字表达约束效果较好,但UML的概念不直接支持文字描述。
TicketdDB构件构造型表明这个是一个数据库构件,允许省略该构件的接口【kǒu】说【shuō】明,因为【wéi】这个接口是所有数据库都【dōu】支持的通用接口。
建模者可【kě】以增【zēng】加新的构造型来表示专门【mén】的模型元素。一个构造型可以带有多个约束、标记值【zhí】或者代码生成特性。
如图【tú】所示,建模者可以【yǐ】为命名【míng】的构造型定义一个图标,作为可视化的辅助【zhù】工【gōng】具。尽管如此,可以使用文字形式说明。
Scheduling包中的标记值【zhí】说明Frank Martin要在年【nián】底世纪前完成计划的制定。
可以将【jiāng】任意【yì】信息作为标记【jì】值写于一个模型元素中建模者选定的名字之下。
使用文字有益于描述项目管理和代码生成参数。大【dà】部分标记值保存【cún】为编辑工具中的弹出信【xìn】息,在正式【shì】打印出的图表中通常没有标【biāo】记值。
3.10 各种视图间的关系
多个视图共存于一个模【mó】型中,它们的元素之间有很多关系,其【qí】中一些关系列在表9-20中。表中【zhōng】没有将各【gè】种关系列全,但它列出了从不同视角【jiǎo】观察得到【dào】的元素间的部分主要关【guān】系。
1.更改简体中文:Tools > Options > Language > Simplified Chinese
2.Software Ideas Modeler 个人非商用是完全【quán】免费的。
建模工具有哪些,数据库建模工具下载。uml建模【mó】工【gōng】具是一种创建UML类图,是一种生成类图和其【qí】他类型的统一建模语言(UML)图表的【de】工具。对【duì】软件开发工作者们来说,uml建模【mó】有助于他们对软件需求理解和加【jiā】深,以及方便系统的架
IDEA是一款拥有高画【huà】质和多种玩法模【mó】式【shì】的RPG手游【yóu】,除了单【dān】人副本挑战之【zhī】外,本作还主张玩家组队讨伐BOSS,游戏支持3人组队PVP,如果觉得还不【bú】够热闹,那么玩家还可以参加21对21的大规模公会战。为了让玩家们更好的体验这款【kuǎn】