UML之一、为什么需要UML?
think in uml学习
面向对象和面向过程是两种不同描述世界的方法。
面向过程:世界视为过程,世界由一个个相互关联的小程序构建来的,是精密的。
但是构成一个系统的因素太多,要把所有可能的因素都考虑到,把所有因素的因果分析都分析清楚,再把这个过程模拟出来实在是太困难了。
面向对象:世界视为对象,世界由一个个相互独立、相互之间没有因果关系的对象构成,是独立的。
但是难点在于为什么这样抽象对象?怎样组合对象?对象的组合表达了怎样的含义?(面向对象存在的问题why how what )
例如:把大象装进冰箱的两种方式
面向过程-每个过程有一个阶段性的目标,依次完成这些过程,就能把大象装进冰箱:
冰箱开门(打开门的冰箱)
冰箱装进(冰箱, 大象)
冰箱关门(冰箱)
面向对象-依次做这些动作(动作的执行者就是对象),就能把大象装进冰箱
冰箱.开门(),
冰箱.装进(大象.进冰箱),
冰箱.关门()
面向对象是把世界看作是由许多对象组成的,UML是一种是面向对象软件的标准化建模语言:
- 把现实世界映射到对象世界的方法;
- 从对象世描述现实世界的方法;
- 验证对象世界行为是否正确反映了现实世界的方法;
UML优点:可视化、统一标准、人和机器皆可理解;
UML建模要素:参与者(actor)、用例(use case)、业务对象模型 、业务场景(现实:人驱动,事体现过程,物记录结果,规则是控制)
模型为参与者服务,用例体现业务目标,业务场景描述怎么做,用例场景依据的规则
现实世界-》业务模型-》概念模型-》设计模型
业务模型--参与者(actor),用例(usecase)
概要模型(分析模型)--边界类、实体类、控制类
UML基本概念
建模(Modeling)-构成一种对所观察的对象的内部结构和工作原理的便于理解的表达
怎么建?做需求的时候,首要目标不是要弄清楚业务是如何一步一步完成的,而是要弄清楚有多少业务的参与者?找出问题领域里包含的抽象角度,每个参与者的目标就是抽象角度,也就是用例
什么是模?静态的事情(物)+特定的条件(规则)+特定的动作(参与者的驱动)=特定的场景(事件)(人、事、物、规则)。
建模公式
用例驱动
实现用例必须要做的工作,用例实现了,问题领域就解决了;
用例驱动包括:逻辑视图、进程视图、实施视图、部署视图
抽象
视图
组织UML元素反映模型的含义,观察事物的角度;
对每个视图,不同的视角展示了同样信息的不同认知角度以便于理解;
一个好的模型,需要为特定的信息选择正确的视图,为特定的干系人展示正确的视角;
对象分析方法
一切都是对象、对象都是独立的、对象都具有原子性、对象都是可抽象的、对象都有层次性
UML之一、为什么需要UML?的更多相关文章
- UML系列04之 UML时序图
概要 本章对UML的时序图进行介绍,主要内容包括:时序图介绍时序图组成 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3523355.html 时序图介绍 ...
- UML系列03之 UML类图(二)
概要 在"UML系列02之 UML类图(一) "中介绍了类图的基本构成--类的UML表示方法.本文是接着前文,继续对"UML的类图"中几种关系进行介绍.介绍的主 ...
- UML系列02之 UML类图(一)
概要 本章介绍类图中类的UML表示方法.内容包括:类图介绍实体类的UML表示抽象类和接口的UML表示 转载请注明出处:http://www.cnblogs.com/skywang12345/p/352 ...
- 【UML 建模】在线UML建模工具 ProcessOn 使用详解
总结 : -- 推荐理由 : 最近从 Windows 操作系统 转到 MAC 上, 正在看设计模式 和 重构, 找不到好用的 UML 工具, 因此在网上找了一款可以在线使用的 UML 工具, 用起来发 ...
- 【UML】NO.54.EBook.6.UML.2.002-【Thinking In UML 大象 第二版】- UML 核心元素
1.0.0 Summary Tittle:[UML]NO.54.EBook.6.UML.2.002-[Thinking In UML 大象 第二版]- UML 核心元素 Style:DesignPat ...
- 【UML】NO.53.EBook.6.UML.2.001-【Thinking In UML 大象 第二版】- 概述
1.0.0 Summary Tittle:[UML]NO.53.EBook.6.UML.2.001-[Thinking In UML 大象 第二版]- 概述 Style:DesignPattern S ...
- 【UML】-NO.40.UML.1.UML.1.001-【UML】- uml
1.0.0 Summary Tittle:[UML]-NO.40.UML.1.UML.1.001-[UML]- uml Style:DesignPattern Series:DesignPattern ...
- [转]解析UML建模语言中的UML图分类、 UML各种图形及作用
本文向大家介绍一下UML图分类,作为一种建模语言,UML的定义包括UML语义和UML表示法两个部分. UML图大致可分为五类,共有九种图形. AD: 本文和大家重点讨论一下UML图分类,标准建模语言U ...
- 【UML 建模】在线UML建模工具 ProcessOn 使用具体解释
总结 : -- 推荐理由 : 近期从 Windows 操作系统 转到 MAC 上, 正在看设计模式 和 重构, 找不到好用的 UML 工具, 因此在网上找了一款能够在线使用的 UML 工具, 用起来发 ...
- 【UML】如何记忆UML类图的画法
前言 UML类图形象反映系统类之间的关系,大家非常常用.小弟不才,偶尔使用,往往每次使用都得查询各种关系的表示方式.终于,这次认真看了几遍,打算记起来. 注意 记忆方法只是本人联想,用于加强记忆.与该 ...
随机推荐
- C++ lambda 分析
lambda 表达式分析 构造闭包:能够捕获作用域中变量的匿名函数的对象,Lambda 表达式是纯右值表达式,其类型是独有的无名非联合非聚合类类型,被称为闭包类型(closure type),所以在声 ...
- 如何取消chrome的自动翻译
设置中搜索“翻译” 然后关掉“询问是否翻译非您所用语言的网页”的选项即可 需要翻译的时候在目标网页右键“翻译成中文”即可 用github的时候烦的要死,翻译的贼不准.
- jquery的版本 纵多 , 各个版本的插件的融合 ,
有些插件在哪些版本下没有 插件之间因为版本冲突 是得不偿失的事情
- Ogre源码学习-Image和Texture
以下文字来自源码注释: Image类:保存未压缩的图片数据,是唯一一个可以加载纹理的类.Image对象调用Codec对象来为图片数据解码. 通常,当在图片被加载前需要对它进行额外的处理,或者你想把它复 ...
- mysql数据库的备份与数据恢复
一.定时备份数据库 前段时间工作中搭建了HttpRunnerManager的接口自动化测试平台,由于平台中没有提供用例下载的功能及权限管理功能,自己也不会写前端,于是就想了办法,那就是备份数据库,如 ...
- centos MySQL安装与卸载
1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:https://dev.mysql.com/downloads/repo/yum/ wget http://dev.mysql.com/g ...
- 20190708三人开黑CF模拟赛
7月8号晚上8点和两位巨佬开了一场虚拟cf: [Helvetic Coding Contest 2018 online mirror (teams allowed, unrated)] 我这么蔡,只A ...
- 秒秒钟破解eval加密
前言 准确的说eval处理过的代码应该叫做压缩代码,不过效果上算是加密过了一样!很多小伙伴不想直接让别人看到自己的js代码往往就会采取这样的处理措施.不过,其实这样的方法只能防御那些小白.对于真正的 ...
- GitHub注册与Git安装
注册GitHub GitHub官网 ☞☞☞☞[戳我] 一.打开,如下图所示, 按照要求进行注册. 安装Git Git官网下载☞☞☞☞ [戳我] 一.打开,根据自己的电脑系统选择不同的版本,这里主要是以 ...
- Http POST 提交 415错误 Unsupported Media Type 解决方案
1 问题 在调用webapi post 提交时出现 415 Unsupported Media Type 错误 前端代码如下: $.post("/api/student/poststuden ...