UML学习笔记---了解UML,UML相关知识,相关概念
6.uml统一建模语言;
面向对象分析和设计(OOA/D)
up过程与瀑布模型;
a.软件职责分配;
--------------------------------------
1.uml不是OOA/D,也不是方法,它仅仅只是一种图形表示法;
2.如果没有对象思想,则uml或任何case工具都没有意义
3.我们需要一种用于OOA/D的语言,这既是一种思考工具,也是一种沟通的形式
4.因此,我们将在OOA/D中应用uml
5.分析(analysis):对问题和需求的调查研究
6.设计(design):满足需求的概念上的解决方案
7.面向对象分析(object-oriented analysis):在问题域内发现和描述对象
8.面向对象设计(object-oriented design):如何定义软件对象以及它们之间如何协作以实现
要求
----------------------------------------------------------
7.uml图形表示法:
例子:开发一个骰子游戏
如果总点数是7则赢得游戏,否则输;
过程:定义用例-->(用软件的时候怎么用它,就是用例,也就是先要确定目标)--->定义领域模
型(业务模型:游戏者,骰子)--->定义交互图(游戏者玩骰子游戏,骰子游戏包含骰子,游戏者投
掷骰子,骰子有什么属性,定义模型间的交互)--->定义设计类图
1.分配对象职责并绘制交互图:ood关注的是:软件对象的定义--职责与写作;
注意:职责是一种行为,行为是一种方法;
2.定义设计类图:填充类,从领域模型以及交互图获得启示.定义软件类,包括属性,方法等等,
比如有投掷方法,和获取点数方法,也就是有相应的职责;
3.骰子游戏的局部设计类图示例
4.骰子游戏的领域模型;相当于设计数据库,er图,他们之间的交互
------------------------------------------------------------------
1.什么是uml
标准定义:统一建模语言是描述构造和文档化系统制品的可视化语言;
uml:是一个庞大的图形化表示法体系
应用uml的三种方式:
草图
蓝图
编程语言
---------------------------------------------------
学习uml的要素:
表示法.图形
过程(uml与过程无关,但最好用于rup)
工具.(比如:Ratinal Rose);
有些公司不用:如果你在设计设计的不好的话,有一个脱节的过程;比如一个程序的话,前期设
计的话,可能随着编程的话,又会有变化,就不按照uml的设计来做了.
---------------
1.所以要在uml设计的时候:要从需要的时候应用,不应该做的太细,需要大体理 解
2.图在分析和设计的时候,指导开发
3.可能在开发过程中,需要画图,或者开发完之后,画uml图,这样为了后续维护 人员,便于维
护;
4.可以通过mba,模型驱动,生成代码;
5.比如只要写一个user的类图,就可以得到这个类的代码;uml图可以直接转换为代码;
6.可以根据与平台无关的模型,生成与平台有关的模型,然后生成代码;
7.画图形的工作:Ratinal Rose(不重要)
-------------------------------------------------------------------
1.UML:UP与瀑布模型
什么是up?
软件开发过程(sofware development process)描述了构造,部署以及维护软件的方式,统一
过程(the unified software development process)是一种流行的构造面向对象系统的迭代
软件开发过程,特别是,rational统一过程(Rational unified process rup)是对统一过程的
详细精化,并且已经被广泛采纳
up也可以引进其他方法中的有用的实践,比如极限编程(Extreme Programming,xp) xp中的
测试驱动开发(test-driven development) 重构(refactoring) 和持续集成(continuous
integration)等..
-------------------------------------------------
2.up中的构架,就是各种模型;用例:就是开发软件的目标;
3.迭代:表示一段时间段,一部分,一部分的做;要和用户交互,用户提出意见再 改.
增量式开发:慢慢的不断的增加软件扩展功能
4.什么是瀑布生命周期:试图在编程之前定义所有或大部分需求
而且通常用于编程之前创建出完整的设计;
试图在开始前定义可靠的计划或时间表
在开发的时候总会有不停的变化,但是瀑布模型就是想消除这种变化,在编程之前做好许多详
细设计;
UML学习笔记---了解UML,UML相关知识,相关概念相关推荐
- Java学习笔记 0、计算机相关知识了解
文章目录 前言 一.计算机基本知识 1.认识CPU 2.认识内存 二.三大定律 三.IT两大鼻祖 四.万维网 五.windows下的常用命令 六.各类语言及应用 七.各种进制数 四个进制介绍 原码.反 ...
- JDBC 学习笔记(一)—— 基础知识 + 分页技术
2019独角兽企业重金招聘Python工程师标准>>> 本文查阅方法: 1.查阅目录 -- 查阅本文目录,确定想要查阅的目录标题 2.快捷"查找" ...
- MATLAB学习笔记2:MATLAB基础知识(下)
阅读前请注意: 1. 该学习笔记是华中师范大学HelloWorld程序设计协会2021年寒假MATLAB培训的学习记录,是基于培训课堂内容的总结归纳.拓展阅读.博客内容由 @K2SO4钾 撰写.编辑, ...
- amazeui学习笔记--css(布局相关3)--辅助类Utility
amazeui学习笔记--css(布局相关3)--辅助类Utility 一.总结 1.元素清除浮动: 添加 am-cf 这个 class 即可 2.水平滚动: .am-scrollable-horiz ...
- amazeui学习笔记--css(布局相关2)--等分网格 AVG Grid
amazeui学习笔记--css(布局相关2)--等分网格 AVG Grid 一.总结 1.与grid区别:网格中:am-g + am-u-xx-n 等分网格中只有一个: am-avg-sm-4(在u ...
- 【Python学习笔记】第一章基础知识:格式化输出,转义字符,变量类型转换,算术运算符,运算符优先级和赋值运算符,逻辑运算符,世界杯案例题目,条件判断if语句,猜拳游戏与三目运算符
Python学习笔记之[第一章]基础知识 前言: 一.格式化输出 1.基本格式: 2.练习代码: 二.转义字符 1.基本格式: 2.练习代码: 3.输出结果: 三.输入 1.基本格式: 2.练习代码: ...
- GDAL学习笔记02:GDAL基础知识
你的习惯决定了你会成为什么样的人. GDAL学习笔记02:GDAL基础知识 前言 1. 版本 2. 摘要 3. 说明 4. 微信公众号GISRSGeography 一.GDAL简介 二.导入GDAL ...
- alin的学习之路:加密相关知识(加密和解密,常见加密算法,消息验证码HMAC,数字签名)
alin的学习之路:加密相关知识(加密和解密,常见加密算法,消息验证码HMAC,数字签名) 1. 加密和解密 1.1 加密的三要素 原始数据 加密操作: 明文 -> 密文 解密操作: 密文 -& ...
- 陈宝林《最优化理论与算法》超详细学习笔记 (二)————补充知识(凸集) 第二章 线性规划的基本性质
陈宝林<最优化理论与算法>超详细学习笔记 (二)----补充知识 凸集 & 第二章 线性规划的基本性质 补充知识 凸集 方向与极方向 表示定理 择一定理 第一章 线性规划的基本性质 ...
- UML学习笔记——顺序图(时序图)
文章目录 顺序图(时序图) 顺序图的引入 顺序图的概念 顺序图的组成 ①对象( Object) ②生命线( Lifeline ) ③激活(Activation) (控制焦点focus of contr ...
最新文章
- SpringBoot+jquery实现post提交表单并添加隐藏域属性完成编辑功能
- 云信小课堂丨视频“双录”知多少?
- 《数据结构与算法》课程设计任务书——赫夫曼编码/译码器
- 项目的包结构 mybatis三剑客
- android 属性动画实例,Android 属性动画Animator工具类代码案例
- UVM的factory机制
- 快速理解卷积神经网络VGG16/VGG19,以及每个模块的作用及意义。
- swfupload 无法加载_解决 KindEditor SWFUpload 批量上传检测用户登录状态的问题
- codevs1253 超级市场(dp)
- 335x系列-解决爆破音导致的调用延迟问题
- Android遥控车软件设计,手机APP控制,Wifi遥控小车设计资料分享
- 凸优化第三章凸函数 3.3 共轭函数
- Leetcode C语言 “加一”
- Eclipse启动加载工作空间突然闪退
- 有钱任性的瑞幸,谁是它的对手? | Alfred数据室
- word图文混排复制到CuteEditor图片不显示
- 带感小说:程序员坐牢会被安排写代码吗?
- 图论—简化图数据结构和遍历算法
- 【重要通知】中国图象图形学学会2022年度系列奖励推荐工作启动
- 一些上网使用体验(1)