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相关知识,相关概念)