第八章 UML(上) | 您所在的位置:网站首页 › uml面向对象设计与分析基础教程 › 第八章 UML(上) |
第八章 UML(上)
UML的产生和发展UML的系统结构设计原则模型元素视图现代软件开发过程RUP
UML的图用例图用例建模用例图要素-系统用例图要素-用例用例图要素-行为者用例图要素-用例之间的关系
类图泛化实现聚合组合关联依赖
包对象图状态图顺序图活动图协作图构件图
UML的模型和视图Rose软件及应用
UML的产生和发展
UML Unified Modeling Language,统一建模语言,一种标准的图形化建模语言主要用于软件的分析和设计,用定义完善的符号来图形化地展现一个软件系统由Grady Booch、Jim Rumbaugh和Ivar Jacohson 三位专家共同开发基于面对对象技术的标准建模语言
UML的系统结构
设计原则
模块化 把强内聚低耦合原则应用到分组构建包和组织特征为元类metaclass分层化 一是包结构分层将元语言核心构件与用到他们的高层构件区分开 二是使用一个四层元模型构架模式来分离跨越层之间抽象的关注点可扩展 一是为特定平台和特定领域定义一组新的方言 二是重用基础架构库的包来定义新的语言可重用 通过重用一组细化和弹性化的元模型库来定义UML元模型,同时还定义了其他架构相关的元模型
模型元素
用例驱动,以结构体系为中心,迭代增量的软件开发过程 ,包括四个阶段:初始、精化、构建、交付。 UML的图 用例图 用例: 文本形式的情节描述,描述的是外部行为者所理解的系统功能。用例建模 用于描述一个系统的功能需求,用用例图来描述用例图 把系统看做黑盒子,给出了用户所感受到的系统行为,但不描述系统如何实现该功能,驱动之后的开发工作 用例建模在UML中,用例图的主要元素是系统、用例、行为者以及用例之间的关系 系统边界、用例执行者(参与者)模型元素间关系:关联、扩展、包含、泛化等 用例图要素-系统 系统被看做是一个提供用例的黑盒子代表系统的方框的变现表示系统的边界,用于划定系统的功能范围、定义了系统所具有的功能描述该系统功能的用例置于方框内,代表外部实体的行为都置于方框外 用例图要素-用例 特征 用例代表某些用户可见的功能,实现一个具体的用户目标 用例总是被行为者启动的,并向行为者提供可知别值 用例必须是完整的用例是一个类,代表一类功能而不是使用该功能的某个具体实例用例的实例是系统的一种实际使用方法,通常把用例的实例称为脚本 用例图要素-行为者 行为者是指与系统交互的人或其他系统,代表外部实体行为者代表一种角色,而不是某个具体的人或物一个具体的人可以充当多种不同的角色通信联系:在用例图中,连接行为者和用例的直线,表示两者之间交互信息单个行为者可与多个用例联系,一个用例也可与多个行为者联系行为者对确定用例非常有用,可以先列出行为者清单,在针对每个行为者列出他的用例 用例图要素-用例之间的关系 扩展关系 向一个用例添加一些动作后构成另一个用例,其关系就是扩展关系 后者继承前者的一些行为,后者称为扩展用例,用例之间的扩展关系图示为带构造型>的关系包含关系 当一个用例包含另一个用例的全部步骤时,两个用例之间就构成了包含关系,用带构造型>的关系表示泛化关系 一般用况和更特殊的用况之间的关系,特色用况可继承一般用况的特征,用![]() 用户根据例图抽象成类,描述类的内部结构和类与类之间的关系,是一种静态结构图 关系强弱:泛化=实现>组合>聚合>关联>依赖 一种继承关系,指定了子类如何继承父类的所有特征和行为。 例如:老虎是动物的一种,既有老虎的特性也有动物的特性 实现一种类与接口的关系,表示类是接口所有特征和行为的实现。 聚合整体与部分的关系,且部分可以离开整体而单独存在。 关联和聚合在语法上无法区分,必须考察具体的逻辑关系 代码体现:成员变量 例如:车和轮胎,轮胎离开车仍然存在。 组合整体与部分的关系,但部分不能离开整体而单独存在。 组合是关联的一种,比聚合关系还要强。 代码体现:成员变量 带实心菱形的实线,菱形指向整体。 例如:公司和部门的关系,没有公司就没有部门。 关联一种拥有关系,使一个类知道另一个类的属性和方法。 例如:老师与学生,丈夫与妻子,关联可以是单向的也可以是双向的。 依赖一种使用关系,一个类的实现需要另一个类的协助 代码体现:局部变量、方法的参数或者对静态方法的调用 带箭头的虚线,指向被使用者 包包是将类分组成更高层次的单位。 用于描述包中存在的类以及包与包之间的依赖关系和泛化关系。 包与包之间允许建立依赖、泛化、细化等关系 对象图 类图的实例,二者的差别在于对象图的对象名字下面要加一条下划线对象图只有名称和属性,名称开头字母小写 状态图 一种由状态、变迁、事件和活动组成的状态机,用来描述类的对象所有可能的状态以及时间发生时状态的转移条件状态变量:状态机图所显示的类的属性,也可是临时变量活动:列出了处于该状态时所要执行的事件和动作![]() 交互图的一种 描述对象之间消息发送的先后顺序,强调时间顺序主要用途是把用例表达的需求,转化为进一步、更加正式层次的精细表达纵轴表示时间,向下的垂直虚线是对对象的生命线横轴表示不同的对象,用一个矩形框表示,可带下划线表示一个类的特定实例对象间的通信用对生命线之间的水平消息线表示,箭头以时间顺序从上到下排列![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
CopyRight 2018-2019 实验室设备网 版权所有 |