Dav*_*vid 6 optimization uml xmi enterprise-architect
我们的团队正在使用Enterprise Architect version 10和SVN存储库.因为EAP文件大小很大(例如80 MB),我们将每个包导出为单独的XMI并存储到其中SVN.该EAP文件本身是一些里程碑后提交.问题是EAP在开发过程中将文件与co worker的工作同步,我们需要导入大量的XMI文件(例如总数可以是500个文件).
我知道一旦EAP文件更新,我们就可以使用Package Control - > Get All Latest.因此,此问题仅在并行开发期间发生.
我们使用键盘shorcuts进行如下导入:
XMI文件导入包)但是,导入数百个文件仍然效率低下.
我检查过控件包是否有批量导入/导出.批量导入/导出在我明确硬编码时正在工作XMI Filename,但如果使用版本控制(批量导入/导出选项是灰色的),则选项不可用.
有没有更好的方法来同步EAP和XMI文件?
EA中有一个脚本接口。您也许可以使用它来自动执行导入。我没有使用过它,但它可能相当不错。
我不确定我是否完全了解您的工作环境,但我有一些可能感兴趣的一般观点。如果您以不同的方式使用 EA(尤其是我下面的第一点),批量导入的需要可能会消失。
多人工作
首先,多人可以同时处理同一个 EAP 文件。EAP文件无非是一个Access数据库文件,EA使用锁定来阻止多人同时编辑同一个包。但您可以轻松地让多人同时在一个 EAP 文件中编辑不同的包。将 EAP 文件放在文件共享的某个位置是一个好方法。
内置修订控制
其次,EA可以直接与SVN(和其他版本控制系统)交互。看到这个。简而言之,您可以设置 EAP 文件,以便各个包(及其下面的所有内容)都受 SVN 控制。然后,您可以签出单个包,对其进行编辑,然后重新签入。或者实际上,您可以签出包下面的整个分支(包括本身由 SVN 控制的子包)。
EA 的底层是导入和导出 XMI 文件,并将它们签入和签出 SVN,而 EAP 文件始终是头版本。就像您手动执行的操作一样,但是是自动化的。鉴于您都可以使用同一个 EAP 文件,这是有道理的。您确实必须小心回滚 - 源自一个包的旧版本中的对象的链接可能指向不再存在的对象(但您可以查看导入日志错误以查看是否是这种情况)。这需要一些时间来适应,但效果很好。
还有内置的包基线功能 - 这可能就是您所需要的,并且工作得很好,特别是如果您都使用相同的 EAP 文件。
更大的数据库引擎
第三,您根本不需要有 EAP 文件。模型的数据库可以位于任何合适的数据库系统中(MySQL、SQL Server、Oracle 等)。因此,这为您提供了各种选项来扩展其使用方式、WAN/Internet 上的情况等。
简而言之,Sparx 对于如何在多工作环境中使用 EA 非常明智,并且值得利用这一点。