UML(1)(面向对象和面向过程,uml的作用)
1,面向对象和面向过程的例子:
面向过程:
调研需要时,最先弄清楚有多少业务流程,先画出业务流程图,
然后顺藤摸瓜找出业务流程中每一步参与的部门和岗位,
弄清楚这一步参与者所做的事情和填写表单的结果,
并关心用户是如何把结果传递下一个环节,这就是面向过程分析。
面向对象:
调研需求时,最先弄清楚有多少个部门,多少个岗位,
并且找个每个部门的业务代表,问他们类似的问题,你平时做什么,都是谁交代做的,
做完之后,你需要通知或者传递给谁吗,做这件事情都需要填写什么表格吗,这就是面向对象。
2,UML的产生:
现在面向对象方法的前身通用面向对象开发(GOOD),层次面向对象设计(HOOD),面向对象结构设计(OOSE)等,面向对象方法设计的统一。
最初叫“统一方法”,后来正式叫“统一建模语言”(uml),
因为UML本身是一种语言,并没有包含软件方法。
UML是一种建模语言,也是由基本词汇和语义组成。
定义了一些建立模型需要的,表示特定含义的元素,这些元素叫做元模型,也就是基本词汇,比如用例,类。
还定义了这些元模型互相之间的关系规则,以及如何使用这些元素和规则绘制图形建立模型来表示现实世界的映射,
这些规则和图形就是表示法或者说视图,也就是语法。
UML和其他自然和编程语言的区别是,这种语言是用来写说明文的,用自然界和计算机逻辑都能理解的表达来说明现实世界。
因为专业化和角色分工,划分为:需求,分析,设计,开发。
为了更好沟通需要一种统一的语言来描述同一个问题,出现了统一建模语言UML.
可视化:
可视化并非只是可见,而是:
UML通过元模型和表示法,将那些通过文字和其他表现方法很难表达清楚,隐晦的前台词,
用简单的图形表达和暴露出来,准确而直观的表达复杂的含义。
3,从现实世界到业务
建立模型是指通过对客观事物建立一种抽象的方法,
用来表征事物并获得对事物本身的理解,
再把这种理解概念化,并将这些逻辑概念组织起来,
形成对所观察的对象的内部结构和工作原理的便于理解的表达。

ps:世界的模型是,“人” 遵守 “规则” 做 “事” 对某 “物” 产生影响。
UML提供了什么元素为现实世界建立模型。
1,UML采用参与者(actor)作为信息来源的提供者,即“人”,也是驱动着。 建立模型的意义由参与者觉得,也是为参与者服务,参与者是建立模型过程的中心。 2,UML采用用例(use case)的元模型来表示驱动者的业务目标,也就是参与者想做什么获得什么,即“事”。 怎么做事,需要遵守什么规则,这个"规则"用UML视图的业务场景(business)和用例场景(use case )来表示. 最后,UML通过业务对象模型的元素的视图来说明达到这个业务目标过程所涉及到的事物,即“物”,
用逻辑概念来表示它们,并定义它们之间的关系。
4,从业务模型到概念模型

ps:
概念化的过程就是建立分析模型,
分析模型介于原始需求和实现模型之间,可以追溯到需求,还是计算机实现的一种高层次抽象,
这种抽象对计算机实现可执行代码设计提供非常容易遵守的指导和约束。
分析模式的最主要的元模型有:
1,边界类,2,实体类,3,控制类 ps: 类是某种类型,一类的抽象;理解成一种特定属性的物件,可以是具体是物品,对象,规则
1,边界类:

ps: 边界即区别两个东西各自的范围。
2,实体类:

ps:具体某个东西,并且可以添加上属于计算机相关的信息
3,控制类:

ps:控制类即,东西之间的动作行为
有这样一个游戏:
由4张制片分别写上:1,什么人;2,在哪里;3,做什么;4,什么物体 随便组合成一句话。


ps:
形成概念模型后,该模型介与现实业务和计算机思维之间。
补充:
ps:
上面说的分析类,应该是分析模型的各个组成部分。
因为是面向对象分析,一切都可以称为类
5,从概念模型到设计模型




ps:
设计模型就是具体用软件相关元素来表示概念模型。
6,面向对象的问题解决
6.1, 面向对象存在的问题:


一切问题都是因为抽象,如何保证抽象的真确性,需要:

6.2,那么UML如何解决的:
1,从现实世界到业务模型
UML采用用例这一关键元素捕获现实世界的人要做的事,
再通过用例场景,领域模型等视图将现实世界的人,事,物,规则,
这些构成现实世界的元素用UML这种语言描述出来。
而UML本身设计成为一种不但适于现实世界理解,也适于对象世界理解的语言。
即现实世界被我们用一种对象型语言描述。
2,从业务模型到概念模型 当业务模型用分析类来描述的时候,我们实际上采用了对象视角。 用例所代表的现实的业务过程,被“边界”,“控制”,“实体”以及“包”,“组件”,等概念代替。 而这些概念是可以被计算机理解的,是抽象化了的对象。 现实世界千差万别的业务,都采用“边界”,“控制”,“实体”这些固定的元素来描述,也就是说现实具体的业务被抽象成了几个固定概念。 这些概念还可以用“包”,“组件”等这些现实世界毫不相干的纯计算机逻辑术语包装,这说明概念模型是计算机视角,或者对象视角的, 而且这些对象视角的分析类所描述的信息是从映射了现实世界的业务模型转化而来的。 即是一种从对象世界来描述现实的方法。
3,从概念模型到设计模型 这是验证对象世界算法正确反映了现实世界的方法。 “边界”,“控制”,“实例”这些对象化的概念,虽然是计算机可以理解的,但它并不是真正的对象实例, 即它们并不是可执行代码,概念模型只是纸上谈兵。 真正的对象世界行为是由java类,c++类,EJB等这些可执行代码构成。 如果缺少了从概念模型到设计模型这个过程,java类,C++类也好,它们的行为是否正确凭什么去验证呢。 设计模型是概念模型在特定环境和条件下的“实例”化,实例化后的对象行为“执行”了概念模型描述的那些信息, 因此设计得以通过概念模型追溯到元素需求来验证对象世界是否正确反映了现实世界。
UML是一种建模语言,但我们还需要一种建模指导方法。

浙公网安备 33010602011771号