UML模型由:事物、关系和图组成

(1)类(class)── 类用带有类名、属性操作的矩形框来表示。

(2)主动类(active class)── 主动类的实例应具有一个或多个进程或线程,能够启动控制活动

(3)接口(interface)── 描述了一个类或构件的一组外部可用的服务(操作)集。 接口定义的是一组操作的描述,而不是操作的实现。 一般将接口画成从实现它的类或构件引出的圆圈。

(4)对象(object)── 对象是类的实例,其名字下边加下划线,对象的属性值需明确给出。

(5)用例(use case)── 也称用况,用于表示系统想要实现的行为,即描述一组动作序列(即场景)。而系统执行这组动作后将产生一个对特定参与者有价值的结果。

(6)参与者(actor)── 也称角色,是指与系统有信息交互关系的人、软件系统或硬件设备

(7)协作(collaboration)── 用例仅描述要实现的行为,不描述这些行为的实现。这种实现用协作描述。 协作定义交互,描述一组角色实体和其他实体如何通过协同工作来完成一个功能或行为。类可以参与几个协作。

(8)构件(component)── 也称组件,是系统中物理的、可替代的部件。它通常是描述一些逻辑元素的物理包。 (9)节点(node)── 是在运行时存在的物理元素。它代表一种可计算的资源,通常具有一定的记忆能力和处理能力。

UML的关系:

依赖(Dependency):其中一个事物发生变化会影响到另一个事物的语义,用虚线箭头表示。

关联(association)是一种结构关系,它描述了两个或多个类的实例之间的连接关系,是一种特殊的依赖。

聚合(Aggregation)也称为聚集,是一种特殊的关联。它描述了整体和部分之间的结构关系。

软工UML学习札记的更多相关文章

  1. 软工实践团队展示——WorldElite

    软工实践团队展示--WorldElite 本次作业链接 团队成员 031602636许舒玲(组长) 031602237吴杰婷 031602634吴志鸿 081600107傅滨 031602220雷博浩 ...

  2. 【软工项目Beta阶段】第11周Scrum会议博客

    第十一周会议记录 小组GitHub项目地址https://github.com/ouc-softwareclass/OUC-Market 小组Issue地址https://github.com/ouc ...

  3. 2018软工项目UML设计(团队)

    团队信息 队名:火箭少男100 本次作业课上成员 短学号 名 本次作业博客链接 2507 俞辛(临时队长) https://www.cnblogs.com/multhree/p/9821080.htm ...

  4. 软工团队 - UML设计

    软工团队 - UML设计 分工 对于分工我们没有不是按"自己负责部分的核心模块做练习"(每个人对每个图的某一模块来依次做完四个UML)的原因,是在于画这些图并不是都能彻底分成各个& ...

  5. [2018福大至诚软工助教]UML设计小结

    [2018福大至诚软工助教]UML设计小结 一.得分 总分(50分) 团队信息 (4分) 队名 (1分) 团队成员的学号与姓名(需要标注队长)(1分) 本次作业的博客链接(1分) 三者完全,4分 团队 ...

  6. 福大软工 · 第十二次作业 - Beta答辩总结

    第三视角Beta答辩总结 博客链接以及团队信息 组长博客链接 成员信息(按拼音排序) 姓名 学号 备注 张扬 031602345 组长 陈加伟 031602204 郭俊彦 031602213 洪泽波 ...

  7. [2019BUAA软工助教]结对编程 - 小结

    [2019BUAA软工助教]结对编程 - 小结 一.评分规则 博客 博客共五十分 序号 要求 分值 1 在文章开头给出Github项目地址 1 2 在开始实现程序之前,在下述PSP表格记录下你估计将在 ...

  8. 福大软工 · 第十一次作业 - Alpha 事后诸葛亮(团队)

    福大软工·第十一次作业-Alpha事后诸葛亮 组长博客链接 本次作业博客链接 项目Postmortem 模板 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描 ...

  9. [BUAA软工]第二次博客作业---结对编程

    [BUAA软工]结对作业 项目 内容 这个作业属于哪个课程 北航软工 这个作业的要求在哪里 2019年软件工程基础-结对项目作业 我在这个课程的目标是 学习如何以团队的形式开发软件,提升个人软件开发能 ...

随机推荐

  1. C# Chart圖標綁定

    开发软件为VS2010 免去了安装插件之类的麻烦. 最终效果图: 饼状图: 前台设置:设置参数为: :Titles, 添加一个序列,在Text中设置名字. :Series ,添加一个序列,选择Char ...

  2. js判断是否在iframe中

    1.方式一 if (self.frameElement && self.frameElement.tagName == "IFRAME") { alert('在if ...

  3. SpringMVC4+thymeleaf3的一个简单实例(篇五:页面和MySql的数据交互-展示以及存储)

    这一篇将介绍怎样把页面数据保存的MySQL数据库,并将数据库内容展示到页面上.首先做一个基础工作,添加以下jar到lib:1: mysql-connector-Java-5.1.40-bin.jar ...

  4. java的动态绑定与双分派(规避instanceof)

    1. 动态绑定的概念 指程执行期间(而不是在编译期间)判断所引用对象的实际类型,根据其实际的类型调用其相应的方法 . 例如: package org.demo.clone.demo; public c ...

  5. 永久关闭防火墙和selinux

    临时关闭selinux: setenforce 0    //设置SELinux 成为permissive模式 彻底禁用selinux: 使用root用户,vim /etc/sysconfig/sel ...

  6. LGDT/LIDT-加载全局/中断描述符表寄存器

    将源操作数中的值加载到全局描述符表寄存器 (GDTR) 或中断描述符表寄存器 (IDTR).源操作数指定 6 字节内存位置,它包含全局描述符表 (GDT) 或中断描述符表 (IDT) 的基址(线性地址 ...

  7. C#DataTable操作

    ] 在DataSet中添加DataTable DataSet.Tables.Add(DataTable) 实例: DataSet ds=new DataSet(); DataTable table=n ...

  8. TatukGIS - GisDefs - ChangeDir 函数

    函数名称  ChangeDir 所在单元  GisDefs 函数原型  function ChangeDir(const _path: String): String;   函数说明 如果 _path ...

  9. Day11 Memcached、Redis和RabbitMQ安装

    修改Ubuntu镜像源: sudo vi /etc/apt/sources.list 全部替换为以下内容: ---------------------------------------------- ...

  10. 递归删除.DS_Store文件

    删除svn文件 sudo find . -name ".DS_Store" -exec rm -r {} \; sudo find . -name ".git" ...