版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件体系结构第二章 统一建模语言UML本章的内容与目标UML概念PowserDesigner 简介利用UML进行系统分析与设计用例图UML概念统一建模语言(Unified Modeling Language)UML是描述、构造和文档化系统制品的可视化语言。作用: 建立软件模型建模语言: 提供交流的词汇和规则可视化: 通过标准图符构成图形来描述模型建模语言而非编程语言通用标准: 成为软件建模的标准语言,并且在其他领域也得到应用。UML概念建模三要素UML的三要素表示法 - 图形过程 - 适用于面向对象的软件开发过程工具 - (比如:Ratinal Rose)过程表示法工具UML概念按照某种过程进
2、行分析、设计;用设计原则和模式进行更好的设计;用UML表示法记录、辅助“工具”:用UML来表达OOA/DUML的意义就在于为OOA/D的实践规定了一致的表示法方法:运用OOA/D原则领域分析+职责分配过程:过程模型(活动套路,开发周期)用例驱动,以体系结构为中心,迭代增量式UML概念UML不是OOA/D,也不是方法,它仅仅只是一种图形表示法如果不掌握对象思想,那么UML或任何case工具(如ROSE)将毫无意义我们需要一种用于OOA/D的语言,这既是一种思考的工具,也是一种沟通的形式。因此,我们将在OOA/D中应用UML。如何应用UML进行OOA/D?如何将UML应用于统一过程(UP)? UM
3、L: Unified Modeling LanguageUnified:UML概念BoochRumbaughJacobson UML由世界著名的面向对象技术专家G. Booch、J. Rumbaugh、I. Jacobson发起,在Booch方法,OMT方法和OOSE方法基础上,广泛征求意见,汲众家之长,几经修改而完成的。1997年被OMG(Object Management Group)采纳为业界标准。UML概念Modeling: 建模UML用于建模,即表达模型设计,而且自身拥有四层体系结构。 模型是系统一个抽象的概括,强调系统设计特定的重要方面,同时忽略大量底层的编程细节。而建模就是为了捕
4、捉、描述系统的核心。同一研究对象不同人建立的模型可能同样好或同样差。 建模的益处:理解和认识系统的结构和行为,掌握系统的本质特征。在创建系统之间,了解系统的风险并进行化解。是开发团队沟通的重要形式,为使用系统的人提供帮助。UML概念Language: 是一种可视化建模语言,有语法和语义,消除了自然语言的歧义。虽然与具体面向对象语言无关,但学会UML的关键之处是将UML模型与具体代码实现相互结合;UML modelSource codeObject structuresExecuting programUMLProgramming languageAbstract view ofAbstract
5、 view ofSpecifiesSpecifies模型与代码之间的关系UML概念四层元模型体系结构Run-time Instance运行实例层Model模型层Metamodel元模型层Metametamodel元元模型层Classperson1:PersonPersonToolAssociationInfrastructure Library:Core:Constructs:ClassInfrastructure Library:Core:Abstraction:Relationships规定元模型的语言规定模型的语言定义描述语义域的语言UML概念 UML的主要特点: 建模设计上的标准化与可
6、视化的结合:模型元素大多是图形表达,而且语法语义被业界广泛认可。 建模设计上的语言无关性:UML用于面向对象程序设计,其模型设计可被当今流行的面向对象语言C+、Java、C#实现,这就是模型设计上的语言无关性,换句话说,UML表达的模型是具体编程代码的抽象。建模设计上标准性与扩展性的统一:UML模型在面向对象抽象设计的许多表达方式上实现了标准化,但是并不能囊括所有设计表达,另外面向对象语言在实现上的差异性也会反映在设计表达上,因而UML还提供了用“”符号代表的构造型、用“标记名=标记值”代表的标记、“关键词”代表的约束等扩展机制。 使用UML的CASE(Computer-Assisted So
7、ftware Engineering)工具 Rational Rose PowerDesigner CASE工具的功能构造模型并进行详细说明,可以检查模型语法正确与否。正向工程(生成数据结构、代码、文档)和逆向工程(代码生成模型)便于团队对模型的共享访问、安全管理、交流(共享相同概念) 对模型文档的版本进行识别、存储和管理UML概念1)安装PD15。PowerDesigner (PD)是Sybase公司推出的用于数据库和面向对象建模的优秀工具,现对该工具的使用简要介绍如下:2)建立面向对象模型,可如图选择【Workspace】,点鼠标右键,选择【New】-【Object-Oriented Mo
8、del】(或执行工具菜单【File】-【New Model】)。3)在弹出的界面中选定需要的“图”,为模型命名,指定模型将来的实现语言为将来生成代码而设定,点“OK”。PowerDesigner 简介4)界面如右图所示,“模型管理区”用于管理建立的各种图以及对图中使用的模型元素进行分类管理;“图编辑区”可以进行建模,“工具栏”为选定图下对应的模型元素或操作快捷工具。模型管理区所选择UML图编辑区所选择UML图工具栏5)选择【Tools】下的【CheckModel】可以对建立的模型进行语法检查。PowerDesigner 简介6)选择模型名称,点鼠标右键,选择【New】,在弹出菜单中增加新“图”
9、,也可在此当前“图”下选择允许的模型元素。7)建立相应的类模型后,选择菜单栏中的【language】-【Generat Java Code】可以自动生成Java代码;选择【Reverse Engineer Java】可以选定Java程序反向生成模型。8)选择菜单【Report】下的【Generate Report】自动生成模型的Word文档。PowerDesigner 简介9)对模型文件进行共享管理:PD可将模型保存在数据库中,因而模型文件可实现共享,便于交流。现举例说明具体步骤:安装Oracle、DB2、SQLServer、MySQL等数据库中的一种,例子中安装Oracle。配置ODBC数据
10、源名,例子中为“ora”。在菜单【Repository】-【 Repository Defination】中定义相应连接串,如右图所示。主要包括存储名称、建立访问用户名、选择配置的数据源、设定连接数据库的用户名和连接数据库的方式。其中存储名、访问用户名、存储密码、数据库连接用户及密码的详细设定如图选择工具栏的第一个快捷项。而数据源的选择则点击“Data Source Name”中栏目旁边的按钮,在弹出的对话框中进行配置。定义一个存储名定义一个访问用户名选择数据源名设定数据库连接用户采用默认直接连接PowerDesigner 简介11)安全管理:系统默认建立一个管理员“ADMIN”, 在【 Re
11、pository 】-【Administrator】-【user】中建立用户“ad”并赋予相应的访问权限。如有多个访问用户,登录用户的设置在【Repository】-【 Repository Defination】中进行设置,或在【Connect】登录时临时设置 。10)配置完成后,在菜单【 Repository 】下选择【Connect】,如果是初次连接,PD将进行有关初始化工作,其提示界面依次如下,按照提示进行。PowerDesigner 简介12)对模型文件进行存储和版本管理:PD将模型文件保存在数据库中,进行存储管理的同时,也可进行版本的管理。具体操作步骤如下:在菜单【 Reposit
12、ory 】下选择 【Check in】 ,加入需要保存到数据库的模型文件“ObjectOrientedModel_1”,保存成功后,模型管理区【Local】页签的文件图标发生变化,表明处于“Check in”状态,另外【Repository】页签中的文件给出了版本信息。当文件被修改后,文件图标用含有“”的形状标明其修改状态。此时再次进行“Check in”可形成第二个版本。PowerDesigner 简介13)在模型管理区【Repository】页签中选择文件,在鼠标右键的弹出菜单中选择【Compare】,可对不同版本文件的变化进行跟踪。此外,还可在菜单栏中选择【Repository】-【Ch
13、eck out】将数据库中指定版本的文件导出到本机指定的目录中。PowerDesigner 简介利用UML进行系统分析与设计面向对象分析(OOA)在问题域内发现和描述对象。面向对象设计(OOD)如何定义软件对象以及它们之间如何协作以实现需求。利用UML进行系统分析与设计UML结构利用UML进行系统分析与设计UML的图类 图:类以及类之间的相互关系对象图:对象以及对象之间相互关系构件图:构件及其相互依赖关系部署图:构件在各节点上的部署顺序图:强调时间顺序的交互图协作图:强调对象协作的交互图状态图:类所经历的各种状态活动图:对工作流建模用例图:需求捕获,测试依据结构行为用例图静态图实现图交互图行为
14、图活动图用例图协作图对象图类图状态图序列图WorkflowScenariosInter-class behaviorInter-class behaviorStructureStructureInteraction equence between objectsUML图在设计过程中的演化关系发现类方法:名词短语;公共类;用例导出;CRC(类、职责、协作)提炼类方法:系统范围内;清晰目的;不能孤立;有属性;类功能单一;Association&GeneralizationStructure利用UML进行系统分析与设计一个简单的例子骰子游戏:模拟游戏者投掷两个骰子,如果总点数是7则赢得游戏,否则为输过程:定义用例-定义领域模型-定义设计类图-定义交互图定义用例(用例是需求分析的一种工具,它是一些情节的描述)骰子游戏:1、游戏者请求骰子2、系统展示结果:如果骰子的总点数是7,则游戏者赢;否则游戏者输利用UML进行系统分析与设计一个简单的例子过程:定义用例-定义领域模型-定义设计类图-定义交互图定义领域模型(OOA分析) - 类图识别问题中的概念,它是对真实世界领域中的概念
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版返点合同协议书
- 2024赠送房地产投资房产协议范本3篇
- 2025年度医疗设备制造加工承包合同范本3篇
- 2024物业租赁合同规定书
- 2024证券公司资产托管业务服务合同
- 临床微生物标本的采集方法与运送课件
- 2025年度互联网公司100%股权转让协议书3篇
- 2024版海洋工程勘探与开发合作合同2篇
- 2024西安市二手房交易资金监管服务合同
- 珠宝销售顾问月工作总结
- 高血压病人护理查房课件
- 2021年7月自考06087工程项目管理试题及答案含解析
- 胎盘早剥护理查房课件
- 奥尔波特价值观量表
- dip按病种分值付费
- 2024年中考语文名著阅读《儒林外史》内容简介、主要人物形象及相关练习
- 旅游商圈城市商圈oto系统
- 加速康复外科(ERAS)-骨科患者术后疼痛管理
- 研究生实验方案
- 三年级加法竖式题50道
- 阿里国际站合作协议
评论
0/150
提交评论