- 1、本文档共11页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter01UML概述
面向对象设计与UML建模 黑龙江大学 杜蕾 e-mail:dulei_hd@163.com hp1.3UML的特点 特点 -统一的标准 -面向对象 -可视化、表示能力强大 -独立于软件开发过程 -概念明确,建模简洁,图形清晰,容易掌握 UML与程序设计语言的区别 UML与软件开发过程的关系 1.4UML的构成 3类主要元素 -基本构造块 事务(结构事务、行为事务、分组事务、注释事务)、关系(依赖、关联、泛化)、图(9种) -规则 命名、范围、可见性、完整性和可执行性 -公共机制 规范说明、修饰、通用划分、扩展机制(版型、标记型和约束) 晕 1.4UML的构成 下面通过查看UML组织结构上的各种特征,而对其作出整体性描述: -视图(Views) -图(Diagrams) -模型元素(Model elements) -通用机制(General mechanisms) -模型驱动架构(Model Driven Architecture,MDA)特征 视图 在一个理想情况下 -整个系统可以用一种单一的图来描述,该图明确的定义了这个系统,并且它易于人们之间的相互交流和理解 -通常这是不可能实现的;只有非常小的系统才能实现这个目标 -单一的图不可能捕获到描述系统所需要的所有信息 视图 一个系统通常由多个不同的方面来描述: -功能方面(系统的静态结构和动态交互) -非功能方面(时间需求、可靠性、部署情况等) -组织结构方面(任务组织结构,代码模块的映射等) -因此,系统需要多个视图来共同描述,其中每个每个视图代表完整系统描述的一个投影,显示系统的某个特定方面 视图 每个视图由多个图来描述 -图中包含强调系统某个特定方面的信息 -一个特定视图的图应该足够简单、便于交流,但一定要和其它图和视图连贯一致,这样,所有的视图结合在一起就描述了系统的完整画面。 视图 经常使用的UML视图 视图 逻辑视图 (Logical View) 实现视图 (Implementation View) 进程视图 (Process View) 部署视图 (Deployment View) 用例视图 (Use Case View) 表示系统功能性需求 表示系统的概念设计和子系统结构等 说明代码的结构 说明系统中并发执行和同步情况 定义硬件结点的物理结构 图 什么是图 -图包括了用来显示各种圆形元素符号的实际图形,这些元素经过特定的排列组合来阐明系统的某个特定部分或方面 -一个系统模型可以有多个不同类型的图 -图是特定视图的一部分不能 -某些图可以是多个不同视图的组成部分 视图与图 逻辑视图 实现视图 进程视图 部署视图 类图 状态图 对象图 用例视图 组件图 类图 对象图 部署图 用例图 交互图 * UML与程序设计语言的区别: 初学者往往弄不清楚UML和程序设计语言的区别。事实上,Java、C++等程序设计语言是用编码实现一个系统,而UML 是对一个系统建立模型,这个模型可以由Java或C++等程序设计语言实现,它们是在不同的软件开发阶段使用的。现在已经一些软件工具可以根据UML所建立的系统模型来产生一些代码框架,这些代码是用Java、C++或其他程序设计语言表示的。 ????? 需要注意的是,UML不是一个独立的软件的开发方法,而是面向对象软件开发方法中的一个部分。一般来说,方法应该包括表示符号和开发过程的指导原则,但UML没有关于开发过程的说明。也就是说,UML并不依赖于特定的软件开发过程,其实这也是 UML 强大生命力的一个原因。Martin Fowler 认为,对于建模语言确实有必要制定一个标准,但对于开发过程,是否有必要制定一个标准?答案是否定的。?? 为发更好地理解UML ,可以把UML 中所提供的标准图符比作英语中的26个字母 。要学习写作,必须先学会字母,再学习单词和语法,然后才能进一步创作出优秀的作品。同样,要设计软件,首选要懂得UML中的图符,然后才能学习面向对象分析和设计的原则,才能设计出优秀的软件。学习面向对象分析和设计方法就是学习如何活用UML中的图符,以及活用时所必须遵循的原则及步骤。 RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。 UML(Unified Modeling Language,统一建模语言)是一种用于对软件密集型系统的制品进行可视化、详述、构造和文档化的图形语言。 模型驱动架构(Model Driven Architecture,MDA)特征:UML被纳入MDA的一部分 OMG CORBA 组件 多个视图描述系统 类图和
文档评论(0)