来源:fasiondog

添加Approch

StarUML中的Approch也就是创建项目时的模板,其中预定义了所使用方法的模型和视图。StarUML默认Approach如下:
StarUML的Approach使用XML定义,在其安装路径如“\Program Files (x86)\StarUML\modules\staruml-standard\approaches”下。每个Approach一个子目录,包含和Approach目录同名的.ico和.apr文件,其中.ico就是显示的图标,.apr其实就是个XML文件。用文本编辑器打开.apr文件照着修改即可,如:
<?xml version=“1.0″ encoding=“UTF-8″ ?>

<APPROACH version=“1.0″>

<HEADER>

<NAME>Default</NAME>

<DISPLAYNAME>FJNX Approach</DISPLAYNAME>

<DESCRIPTION>FJNX Apporach for StarUML</DESCRIPTION>

</HEADER>

<BODY>

<IMPORTPROFILES>

<PROFILE>UMLStandard</PROFILE>

</IMPORTPROFILES>

<MODELSTRUCTURE>

<MODEL name=“Use Case Model” stereotypeProfile=“UMLStandard” stereotypeName=“useCaseModel”>

<DIAGRAM type=“UseCase”
name=“Main”/>

</MODEL>

<MODEL name=“Analysis Model” stereotypeProfile=“UMLStandard” stereotypeName=“analysisModel”>

<DIAGRAM type=“Class” diagramTypeProfile=“UMLStandard” diagramTypeName=“RobustnessDiagram”
name=“Main” defaultDiagram=“True”/>

</MODEL>

<MODEL name=“Design Model” stereotypeProfile=“UMLStandard” stereotypeName=“designModel”>

<DIAGRAM type=“Class”
name=“Main” defaultDiagram=“True”/>

</MODEL>

<MODEL name=“Implementation Model” stereotypeProfile=“UMLStandard” stereotypeName=“implementationModel”>

<DIAGRAM type=“Component”
name=“Main”/>

</MODEL>

<MODEL name=“Deployment Model”  stereotypeProfile=“UMLStandard” stereotypeName=“deploymentModel”>

<DIAGRAM type=“Deployment”
name=“Main”/>

</MODEL>

</MODELSTRUCTURE>

</BODY>

</APPROACH>

添加profile

Profile用于定义Stereotype和TagValue,Stereotype为UML类型原型,可以指定特定的图形,如Actor。TagValue主要用于为每个UML类型独有的属性设定一个标识,可利用该标识进行文档导出操作,如优先级、ID等。和Approach一样,也在安装路径“\Program Files (x86)\StarUML\modules\staruml-standard\”下的profiles子目录中。默认有一个umlstandard的profile,可以直接在其中增加自己的stereo和tag,也可以复制一份换个名称后再自定义。其定义也是用XML格式,用文本编辑器即可编辑,其文件后缀为.prf。如为UseCaseSpecification添加优先级和编号两个Tag:
            <TAGDEFINITIONSET>

<NAME>UseCaseSpecification</NAME>

<BASECLASSES>

<BASECLASS>UMLUseCase</BASECLASS>

</BASECLASSES>

<TAGDEFINITIONLIST><TAGDEFINITION>

<NAME>Priority</NAME>

<TAGTYPE>String</TAGTYPE>

</TAGDEFINITION><TAGDEFINITION>

<NAME>ID</NAME>

<TAGTYPE>String</TAGTYPE>

</TAGDEFINITION></TAGDEFINITIONLIST>

</TAGDEFINITIONSET>
0

最新文章

  1. JQuery -- this 和 $(this) 的区别
  2. CAShaperLayer的应用
  3. node-webkit教程(15)当图片加载失败的时候
  4. Git设置及GitHub的使用
  5. 关于Azure存储账户中存储虚拟机VHD文件的注意事项
  6. JQUERY1.9学习笔记 之基本过滤器(十二) 根元素选择器
  7. 使用const 提高函数的健壮性
  8. [问题贴]mui.openWindow+自定义事件监听操作让alert()执行两次
  9. 史上最详尽的NLP预处理模型汇总
  10. phpstudy中 MySQL版本升级
  11. 接口自动化&#160;[授客]基于python+Testlink+Jenkins实现的接口自动化测试框架V3.0
  12. 物联网系统与CoAP之Hello,World
  13. Tunnels HDU - 4856
  14. KALI安装与环境配置
  15. 费马大定理以及求解a^2+b^2=c^2的奇偶数列法则
  16. [转]JS组件系列——表格组件神器:bootstrap table
  17. 20180531-Postman 常用测试结果验证及使用技巧
  18. 屏幕录像专家exe视频批量翻录成视频avi格式
  19. TPO-21 C1 Find a building for orientation
  20. 关于vc++ 6.0 编译器,点打开文件时自动关闭

热门文章

  1. 项目部署、配置、查错常用到的Linux命令
  2. android ActionBarActivity设置全屏无标题
  3. Docker简介/安装/使用
  4. post插件
  5. How To Handle MLOG$_AP_SUPPLIER_SITES_AL, MLOG$_AP_SUPPLIERS Growing So Much? Having Lots of Data
  6. Android图表库MPAndroidChart(八)——饼状图的扩展:折线饼状图
  7. Linux 高性能服务器编程——socket选项
  8. Android 如何监听输入法关闭事件
  9. cenos安装jdk
  10. 剑指Offer——简述堆和栈的区别