系统分析与设计学习笔记(一)UML概述

关于UML

UML的全称是Unified Modeling Language,是一项通用的建模语言跟规范。是面向对象的分析与设计OOAD的一个重要的组成部分。

UML有几个具体的作用:

  1. 进行代码可视化,对模型及元素进行抽象化的语义描述。
  2. 描述和沟通用户的需求。
  3. 定义软件系统的体系结构,体现模块间的联系与相互约束。

UML中的图

UML有三种基本的构造块,分别是事物、关系以及图。
  • 事物是对模型中最具有代表性的成分的抽象,包括结构事物,如类(Class)、接口(Interface)、协作(Collaboration)、用例(UseCase)、主动类(ActiveClass)、组件(Component)和节点(Node);行为事物,如交互(Interaction)、态机(Statemachine)、分组事物(包,Package)、注释事物(注解,Note事物是对模型中最具有代表性的成分的抽象,包括结构事物,如类(Class)、接口(Interface)、协作(Collaboration)、用例(UseCase)、主动类(ActiveClass)、组件(Component)和节点(Node);行为事物,如交互(Interaction)、态机(Statemachine)、分组事物(包,Package)、注释事物(注解,Note)。
  • 关系用来把事物结合在一起,包括依赖、关联、泛化和实现关系。
  • 图从不同的侧面对系统进行描述。系统模型将这些不同的侧面综合成一致的整体,便于系统的分析和构造。
图形化的表示机制,十多种视图,分4类
  • 用例图:从用户角度描述:功能、执行者
  • 静态图:描述系统静态结构。如类图:概念以及关系;对象图:某种状态或时间段内,系统中活跃的对象及其关系;包图:描述系统的分解结构。
  • 行为图:描述系统的动态行为。如交互图:描述对象间的消息传递;状态图:描述对象的动态行为,如状态、事件、状态迁移、响应动作等;活动图:描述系统为完成某功能而执行的操作序列。
  • 实现图:描述系统的组成和分布状况。如构件图:描述组成部件及其关系;部署图:描述物理体系结构以及与软件单元的对应关系。

在接下来的笔记中,将主要描述各种图的具体组成以及构造规则,其中穿插部分与软件系统分析设计以及UML建模的相关知识。笔记整理自师兄留下来的各种文档,以及不少网上的例子,这里就不一一鸣谢了。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章 基础知识 1.1 软件开发方法概述 1.1.1 软件生命周期法 1.1.2 原型法 1.1.3 面向对象技术 1.1.4 面向对象的软件开发语言与工具 1.2 面向对象系统分析设计 1.2.1 面向对象的主要概念 1.2.2 面向对象系统分析设计方法 1.3 UML概述 1.3.1 UML简史 1.3.2 UML概貌 1.3.3 UML的特点和用途 第2章 面向对象的软件开发过程 2.1 Rational统一过程 2.1.1 项目开发阶段 2.1.2 过程成分 2.1.3 螺旋上升式开发 2.1.4 RUP过程产物 2.1.5 RUP的特点 . 2. 2 项目开端阶段 2.3 精化阶段 2.3.1 问题领域分析 2. 3.2 建立系统架构 2.3.3 开发风险处理 2.3.4 构建规划 2. 4 系统构建 2. 5 系统提交 2. 6 循环节的生命周期活动 第3章 UML语言 3. 1 UML语言结构 3. 2 无模型 3.3 符号与图形 3.3.1 图形符号 3.3.2 语义规则 3.4 图与模型组织 3.4.1 模型组织 3.4.2 图 3.4.3 视图 3.5 公共机制 3.6 扩展机制 3.6.1 构造型 3.6.2 标记值 3.6.3 约束 第4章 Use Case图 4.1 概述 4. 2 活动者 4.2.1 系统范围与系统边界 4.2.2 活动者 4.2.3 活动者的确定 4.3 Use Case 4.3.1 Use Case概念 4.3.2 业务Use Case与系统Use Case 4.3.3 Use Case图 4.4 Use Case的联系 4.4.1 泛化关联 4.4.2 使用关联 4.4.3 包含关联 4.4.4 扩展关联 4.5 Use Case图的应用 4.5.1 Use Case的确定 4.5.2 建立Use Case模型 第5章 对象类图与对象图 5.1 对象类图 5.1.1 对象类 5.1.2 属性 5.1.3 操作 5.2 对象类的关联 5.2.1 对象类的关联 5.2.2 自返关联、二元关联与N元关联 5.2.3 关联的约束 5.3 聚合与组合 5.3.1 聚合 5.3.2 组合 5.4 泛化 5.4.1 泛化/特化 5.4.2 继承 5. 3 重载与多态性 5.5 依赖 5.6 对象图 5.6.1 对象 5.6.2 对象图 5. 7 接口 5.8 对象类的高级概念 5.8.1 抽象类 5.8.2 参数对象类 5.8.3 型与实现对象类 5.8.4 导出属性与导出关联 5. 9 对象类图的应用 5.9.1 对象类图的建立 5.9.2 模型景象与粒度控制 5.9.3 数据库建模 5.9.4 例外情况建模 第6章 交互图 6. 1 顺序图 6.1.1 顺序图的组成 6.1.2 对象的创建与销毁 6.1.3 同步消息与异步消息 6.1.4 分支 6.1.5 循环 6.1.6 自调用与回调 6. 2 协同图 6. 2. 1 协同图的组成 6. 2.2 说明层与实例层 6. 3. 3 对象的创建与销毁 6. 2. 4 同步消息与异步消息 6. 2. 5 多对象 6.2.6 自调用与回调 6.3 协同 6.3.1 概述 6.3.2 Use Case与协同 6.3.3 参数化协同 6.4 交互图的应用 第7章 状态图 7.1 状态机 7.2 状态图 7.3 状态 7.3.1 概述 7.3.2 组合状态 7.3.3 顺序状态 7.3.4 历史状态 7.4 转移 7. 4. 1 事件 7. 4. 2 条件 7.4.3 动作 7.4.4 转移的类型 7.5 并发状态图 7.5.1 并发子状态 7.5.2 同步 7.6 状态图的应用 第8章 活动图 8.1 概述 8. 2 活动图的基本元素 8.2.1 动作状态与活动状态 8.2.2 动作流 8.2.3 泳道 8.2.4 对象流 8. 3 活动分解 8.4 并发 8.4.1 并发与同步 8.4.2 条件线程 8.4.3 同步状态 8.4.4 动态并发 8. 5 活动图的应用 8. 5. 1 用途 8. 5. 2 工作流建模 第9章 包图 9. 1 包的语义和表示 9. 2 包的嵌套 9.3 标准构造型 9. 2 包的联系 9. 2. 1 依赖与输入依赖 9.2.2 泛化 9. 3 包图 9.4 包图的应用 9.4.1 包图的建立 9.4.2 系统建模 9.4.3 开发跟踪 第10章 物理图与对象约束语言(OCL) 10.1 组件图 10.1.1 组件 10.1.2 组件的种类 10.1.3 组件的联系 10.1.4 组件图的应用 10.2 配置图 10.2.1 节点 10.2.2 节点的联系 10.2.3 配置图的应用 10.3 对象约束语言(OCL) 10.3.1 标准型 10.3.2 表达式 10.3.3 对象性质的约束 第11章 软件开发工具Rational Rose 11.1 Rational Rose的主要功能 11.1.1 对面向对象模型的支持 11.1.2 对螺旋上升式开发过程的支持 11.1.3 对往返工程的支持 11.1.4 对团队开发的支持 11.1.5 对工具的支持 11.2 Rational Rose的使用 11.2.1 系统主菜单窗口 11.2.2 模型与工作方式的组织 11.2.3 Use Case视图 11.2.4 逻辑视图 11.2.5 组件视图 11.2.6 配置视图 第12章 简易教学管理系统的分析与设计 12.1 系统需求 12.2 分析问题领域 12.2.1 确定系统范围和系统边界 12.2.2 定义活动者 12.2.3 定义Use Case 12.2.4 绘制Use Case图 12.2.5 绘制主要交互图 12.3 静态结构模型 12.3.1 建立对象类图 12.3.2 建立数据库模型 12.3.3 建立包图 12.4 动态行为模型 12.4.1 建立顺序图 12.4.2 建立协同图 12.4.3 建立状态图 12.4.4 建立活动图 12.5 物理模型 12.5.1 建立组件图 12.5.2 建立配置图

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值