准备系统设计说明时,类图已经画好,交给同事却发现文件打不开,或者导入后只剩元素、没有图。Enterprise Architect的模型、图表和图片有不同用途,保存了一张图,不等于交付了可编辑的模型。建模时把内容放进合适的包,导出时根据接收用途选择格式,后续排查会清楚一些。
一、Enterprise Architect怎么创建UML模型
初次建模可以从几个业务对象开始,比如订单与客户。项目用于保存建模内容,包用于组织元素和图表,类图则展示对象之间的结构关系。
1、创建项目并安排存放位置
项目文件是后续编辑的基础,导出文件不能直接代替它。个人练习可以先建立本地项目。
①在开始页面点击【新建】,在【新建项目】窗口选择目录,填写文件名,保存为【.qea】项目。
②在【浏览器】中选中模型节点,按F2修改名称。
③右键单击目标节点,选择【添加一个包】,填写名称,例如“订单管理”。
2、在包内新建类图
①选中刚建立的包,点击【设计】→【图表】→【添加】。
②在图类型中选择【UML结构】→【类】,填写图名,确认创建。
类图适合表达对象结构。若要描述用户操作系统的目标,可以另建用例图;若要表示消息调用的先后,则可使用顺序图,不必把不同内容挤进同一张图。
3、加入元素和连接关系
①从【工具箱】中拖入两个【类】,分别命名为“客户”和“订单”。
②双击类元素,在【属性】中填写名称及说明。
③选择【工具箱】中的【关联】,在两个类之间建立连接。
④双击关联,在【属性】中核对两端角色及多重性,调整元素位置,按Ctrl+S保存图表。
4、按接收用途导出模型
交给同样使用Enterprise Architect的同事,可以考虑原生格式;交给其他建模工具,要先确认对方支持的XMI版本。仅修改文件扩展名不能完成格式转换。
①在【浏览器】中选中需要导出的包,点击【发布】→【模型交换】→【发布为】。
②在【文件名】中指定保存位置,在【XML类型】中选择接收方支持的格式。
③需要保留图表时勾选【导出图表】,勾选【写入日志文件】,点击【导出】。
二、Enterprise Architect UML模型导出失败怎么办
先看文件是否实际生成,再区分是写入失败、内容缺失,还是接收端无法读取。不要只凭一句“打不开”反复更换导出格式。
1、无法生成文件,检查路径与权限
①在导出窗口核对【文件名】,改到当前账户可写的本地目录,用新文件名重试。
②勾选【写入日志文件】,点击【导出】,记录报错及日志内容。
③如果提示权限不足,将报错交给项目管理员,核对当前账户是否具有【导出XML】权限。
目录无写入权限与模型账户权限是两回事。启用安全管理的项目,即使可以浏览模型,也不代表允许导出。文件正在被其他程序占用时,也应关闭占用程序后再测试。
2、文件有了,但图表或元素不完整
①在【浏览器】中展开目标包,核对需要的图表和元素实际存放在哪个包内。
②返回导出窗口,核对【包】的名称及【导出图表】选项。
③检查图中引用的包外元素,将必要的相关包一并纳入交付范围。
④使用规范XMI格式后缺少图表时,重新选择支持图表信息的导出格式,再执行【导出】。
图中显示某个类,不代表这个类归属于当前包。它可能来自其他位置,导入到空项目后就会暴露引用缺失。规范XMI 2.4.2不包含图表信息,不能按图片丢失来处理。
3、原软件能读,其他工具却无法导入
①核对接收工具支持的UML、XMI版本,返回【XML类型】选择对应格式。
②如果使用原生格式,检查接收端Enterprise Architect的版本,改用双方支持的格式。
③选取一个只含少量类和关联的包,重新【导出】,在接收工具中测试。
XMI用于交换模型数据,但不同工具对扩展内容和布局的处理存在差异。能读入类与关联,不代表能还原所有显示效果。小包测试通过后,再扩大导出范围,比较容易找到不兼容的内容。
三、Enterprise Architect UML模型交付前怎么整理
模型交付后,对方可能继续修改,也可能只用于设计评审。文件准备到什么程度,要看后续怎么使用,不能把导出的文件直接发过去就算完成。
1、把关联内容放进交付范围
一张图可能引用多个包中的元素,只导出图表所在的包,容易漏掉其他位置的内容。整理时应沿着实际引用关系核对。
①在【浏览器】中展开待交付的包,对照图表检查类元素的存放位置。
②双击图中的关联,打开【属性】,核对两端连接的元素。
③将需要一同交付的包纳入导出范围,在【发布为】窗口重新确认【包】和【XML类型】。
2、用空白项目检查导入结果
①新建测试项目,在【浏览器】中选中接收包,按Ctrl+Alt+I,选择模型文件,点击【导入】。
②展开导入后的包,逐张打开图表,核对类名、说明、连接关系及包外引用。
3、给不同用途保留对应文件
①打开用于评审的图表,按Ctrl+T,在【保存类型】中选择【PNG】,点击【保存】。
②保留原项目【.qea】文件,将模型交换文件、评审图片分别命名,注明对应日期或版本。
图片方便阅读,模型交换文件用于导入,原项目则用于继续维护。几类文件对应同一次修改,接收方才不容易拿着旧图讨论新模型。
总结
Enterprise Architect让设计中的对象和关系有了可供讨论的表达,也为后续修改留下依据。模型是否有用,除了图画得是否清楚,还取决于参与项目的人能否理解其中的含义,并在工作中继续使用。刚开始建模时,不必急着把所有细节放进去,能够准确表达当前问题,就已经有了交流的基础。希望这些内容能给大家一些参考,让整理设计思路和沟通方案更顺手。如果有Enterprise Architect软件选型、版本配置等方面的需求,欢迎联系咨询。
