StarUML使用指南第一章StarUML概述本章包含StarUML™概述,StarUML™andUML的简要介绍和StarUML™新特征及总体组织的纲要。什么是StarUML主要特征系统需求StarUML™是支持UML(UnifiedModelingLanguage(统一模型语言))的建模平台软件。基于UML1.4版本,提供11种不同类型的图,而且采纳了UML2.0的表示法(notation.)。它通过支持UML轮廓(profile)的概念积极地支持UMD(ModelDrivenArchitecture(模型驱动结构))方法。StarUML™特点在于,用户环境可定制,功能上的高度可扩充。运用StarUML™,顶级领先的软件模型工具之一,可以保证您的软件项目高质量、高效率。StarUML是什么适合用户的UML工具StarUML™提供了对用户环境最大化可定制支持,通过定制所提供一些变量,可以适应用户开发方法、项目平台及各种编程语言。真正的UMD支持软件结构是可以延续10年甚至更长时间的重大过程。OMG(ObjectManagementGroup(对象管理组织))想用MDA技术创建平台独立的模型,允许平台独立的模型的需求自动获取,或者平台独立的模型生成的代码自动化。StarUML™真正实现了UML1.4标准,而且用2.0的表示法,提供UML轮廓的观念。允许创建平台独立的模型。通过简要的摸版文档,用户很容易得到他们的最终产品。高可扩充及适应性StarUML™有高度可扩充及适应能力。为扩充功能,该工具采用了插件(Add-In)框架。它提供访问全部的模型/原模型的功能,通过COM自动化,菜单和选项也都是可扩充的。而且用户还可以根据他们自己的方法论来创建自己的方法和框架。该工具还可以集成任何其他的外部工具。主要特征StarUML™具有以下新特征特征描述准确的UML标准模型StarUML™严格坚持OMG对软件模型规定的的UML标准规格说明。考虑到事实上设计信息的结果可能会影响10年或更远,因而特定开发商的不规则UML句法可能会很危险。StarUML™m最大化遵循UML1.4标准和语义,并采用基于稳定的元模型的UML2.0表示法。开放的软件模型格式与很多有其私有格式的现存的产品不同,StarUML™以标准的XML格式管理所有的文件。代码编写的结构易读,便于用XML分析器改变。XML是世界标准的,这是既定的事实,肯定地说,这样有很多的好处,也可以确保这样的软件模型十几年后还仍然可以有用。真正的模型驱动StarUML™真实地支持UML轮廓(Profile)。这样最大化了对UML的的扩展,可广泛用在财务、国防、电子商务、保险和航天诸领域的建立应用模型。可以创建真正独立于平台的模型(PIM,PlatformIndependentModels)、特定平台模型(PSM,PlatformSpecificModel),并且能以任意方式生成可执行代码。方法学与平台的适用性StarUML™利用方法(approach)概念,创建的环境可以采用任何的方法学/过程。不仅象.NET和J2EE平台这样的应用框架模型,而且软件模型的基本结构(如4+1视图模型等),都可轻松的定义。极好的可扩充性StarUML™工具的所有功能都自动支持MicrosoftCOM。支持COM的任何语言(VisualBasicScript,JavaScript,VB,Delphi,C++,C#,VB.NET,Python等)都可以用于控制StarUML™或者用于开发可集成的插件元素。软件模型校验功能建立软件模型过程中,用户可能会犯很多错误。如果这些错误在编码阶段之前还没有得到更正,那是要付出很大代价的。为了避免这样的问题,StarUML™可以自动校验用户开发的软件模型,便于较早发现错误,无瑕疵地完成软件开发。好用的插件Add-InsStarUML™包含很多具备各种功能的很有用插件(Add-Ins):生成编程语言的源代码,把源代码转换成模型,导入RationalRose文件,与其他使用XMI的工具交换模型信息,并支持设计模式。这些插件为模型信息提供了附加的可重用性、多产性、灵活性及交互性。系统需求下面是运行StarUML(tm)的最低系统需求Intel®Pentium®233MHz或更高Windows®2000,WindowsXP™,或更高版本Microsoft®InternetExplorer5.0或更高版本128MBRAM(推荐256MB)110MB硬盘空间(推荐150MB空间)CD-ROM驱动器SVGA或更高分辨率(推荐1024x768)第二章基本概念本章介绍StarUML?的基本概念,这些都是有效运用StarUML?所需要的。包括对模型、视图、图、项目、单元、方法、框架、模型块及其差异以及UML轮廓。模型、视与图(Model,ViewandDiagram)项目与单元(ProjectandUnit)模块(Module)模型、视与图(Model,ViewandDiagram)StarUML?清晰地区分了模型、视与图(Model,ViewandDiagram)的概念。模型是包含软件模式信息的元素。视则是模型中信息的可视表达法,图则是表示用户特定设计思想的可视元素的集合。项目与单元项目在StarUML?中,项目是基本的管理单位。一个项目可以管理一个或多个软件模型,它是在任何软件模型中都存在的顶级的包。一般地说,一个项目保存在一个文件中。项目结构一个项目包含并管理下列子元素:项目子元素描述模型(Model)管理一软件模型的元素。子系统(Subsystem)管理表示子系统的模型的元素。包(Package)管理元素所需的最一般的元素。项目文件项目文件以XML格式、.UML为扩展名保存。StarUML?中,所创建的全部的模式、视、图保存在一个项目文件中。一个项目也可以分开来保存在多个单元中。项目文件中包含下列信息:项目中所用的UML轮廓(profiles)项目所引用单元文件项目中包含的所有模块的信息项目中包含的所有视与图信息单元一般地说,一个项目保存在一个文件中;同时,也有这样的情况,一个项目需要保存的多个更小的文件中,以便多个开发者可以工作于同一个项目。在这种情况下,这个项目可以用多个单元来管理。一个单元可以有按等级划分的结构,还可以下面包含多个子单元。单元保存为.UML,可以为项目文件(.UML)或其他单元(.UNT)所引用。单元结构只有包、子系统和模型可以构成单元。这些包类型下的所有元素可以保存在各自的单元文件(.UNT)中。单元的层次结构只有一项目可以管理其下的多个单元,一单元可以管理多个子单元。由于父单元引用到子单元,所以全部单元有一个层级结构。模型片段(ModelFragments)模型片段是保存为单独文件的项目的部分。只有模型、子系统和包这些项才能构成模型片段。模型片段文件以“.MFG”扩展名保存。模型块文件可以轻易地在任何时候包含在任何项目文件中。模型片段和单元有实质的不同,一旦包含在项目中,与项目其他部分相比,它们是以整体出现。模块模块是一种包,它提供了对StarUML(tm)新功能与特征的扩充。模块的创建可以是几种新扩充元素的结合。还有,不但可以为某用途对一个独立的模块配置扩充元素,而且还可以在同一模块中创建同一类型的扩充元素。StarUML?的模块有下列功能:扩展主菜单或弹出菜单添加新方法(approach)添加新轮廓(profile)通过构造型(stereotype)或表示法(notation)的扩充添加新元素通过(COM服务器或简单的脚本文件)实现新的功能与其他应用程序集成其他的插件(Add-In)功能方法(approaches)对于软件开发有无数的方法,每家公司和机构都有其自己的方法,或者选择使用一种适合于他们的开发团队和项目的方法。应用程序领域、编程语言和平台对与开发出的每个软件都不同,所以,很多项在软件开发的建模阶段就要配置好。StarUML?提供方法(approaches)的概念使得这些项配置更容易。方法的结构方法(approaches)由下列项组成。方法组成部分描述项目结构特定的项目的基本结构。这个基本结构可以用包、子系统和模型元素来设计。也可以用图描述设计概要导入轮廓项目中自动包含的默认的UML轮廓。导入框架项目中自动加载并包含默认的框架。导入模型片段项目中自动加载并包含的模型片段。框架(Frameworks)StarUML?中的框架(Frameworks)指表示类库或应用程序框架的软件模型,如MFL,VCL,JFC等。包含与使用框架使得用户对于依赖于特定类库或应用程序的软件建模比较容易。框架(Frameworks)结构框架包含一个框架文件(.FRW)和一个或多个单元文件(.UNT)。组成部分描述框架文件(.FRW)框架文件包含单元所用UML轮廓(profile)信息。单元文件(.UNT)单元文件包含框架的实际模型信息。UML轮廓(profile)UML(UnifiedModelingLanguage(统一模型语言))是如此的一般化,一致于可以表示任何的思想和观念。也许这也是弱点来源之一,因为特定领域的观念不容易详细表述。为克服这个弱点,StarUML?提供UML轮廓(profile)来扩充UML。通过在UML轮廓中直接应用这些概念StarUML?可轻松支持UML的扩充。UML轮廓(Profile)结构UMLProfile由下列部分构成:组成部分描述构造型(Stereotype)构造型附着于特定UML元素,为的是进一步明晰语义,提供扩充属性,使得建模更为准确。构造型不仅指定了图标文件来作为图形表示,而且还通过定义扩充表示法文件(.PNX),定义了表示法概要。扩充表示法的更多细节,请参看开发者指南。标记定义(TagDefinition)默认的UML属性不足以精密建模时,标记定义为这些元素提供补充信息。在StarUML?中,标记定义既可以包含在特定的原型中,也可以独立存在。数据类型数据类型默认地包含在轮廓中。图类型图类型是StarUML?提出的扩充元素,为的是使用户可以定义新的图形类别。元素原型元素原型是StarUML?提出的扩充元素,为了使用户可以定义元素样本,作为创建元素配置现存属性的样本。这些定义了的元素原型可以创建联系到托盘(palette)的元素或者通过外部API创建元素。模型原型模型原型是StarUML?建议的扩充元素,目的类似于元素原型。但只使用于模型。预定义的元素作为模型原型出现在模型附加菜单上。托盘()摸板是StarUML?建议的扩充元素,目的是使得用户可以增加托盘。关于框架写作的细节描述,参见StarUML?开发指南。UML轮廓的应用UML轮廓(profile)可用于下列用途。OMG(ObjectManagementGroup(对象管理组织))也说明了用于特定用途的UML轮廓标准。编程语言特定的UML轮廓;开发方法(RUP,Catalysis,UMLComponents等)特定的UML轮廓;开发领域(EAI,CRM,SCM,ERP)特定的UML轮廓;添加模块(AdditionofModule)如果你安装了用户或第三方开发商开发的模块,那么你可以使用StarUML?的扩充功能。为了在系统中安装新的附加模块,并不需要复杂的认证。如果你想安装模块用户或第三方开发的新的附加模块,把组成模块的文件复制到install-dir\modules\子目录下即可。在StarUML?中添加模块StarUML?包含平台服务器模块。基本上提供UML标准轮廓,模块及一些方法和在顺序图和合作图之间转换的标准模块。提供文档和代码生成器模块。提供支持Java轮廓、J2SE和J2EE的框架、代码生成器和反向工程模块。提供支持C++轮廓,MFC框架,代码生成和反向工程模块。提供支持C#轮廓,NETBCL框架,代码生成和反向工程模块。提供对xml的支持模块,支持导入导出,模型交换。提供Rose模块,支持读Rationa