介绍

大象-Thinking in UML》以uml为载体,将面向对象的分析设计思想巧妙地融入建模过程中,通过贯穿全书的实例将软件系统开发过程中方方面面的知识有机地结合在一起,用生动的语言和精彩的事例将复杂枯燥的软件过程讲解得津津有味。
大象-Thinking in UML》分为四个部分。第一部分讲述面向对象分析的一些基本概念,及学习建模需要了解的一些基本知识。第二部分对uml的基础概念重新组织和归纳整理,进行扩展和讨论,引申出针对uml的这些概念在面向对象方法中应用方法的思考。第三部分以一个实例贯穿全篇,阐述如何使用uml从头到尾地实施一个项目。第四部分针对在现实中经常遇到并且较难掌握的问题进行深入的探讨,升华在前几篇学习到的知识。
大象-Thinking in UML》可供正在学习编程、软件工程等知识,准备将来从事it行业的读者、正努力向设计师或系统分析员转变的技术人员及期望对软件分析设计更上一层楼的设计人员学习和提高之用。

几个UML名词理解

建模:指通过对客观事物建立一种抽象的方法,用以表征事物并获得对事物本身的理解,同时把这种理解概念化,将这些逻辑概念组织起来,构成一种对所观察的对象的内部结构和工作原理的便于理解的方法。简单说,就是回答两个问题:什么是“模“?和怎么“建”?关于如何“建”,本质上是区别与不同的世界观价值观的。比如面向对象和面向过程的建模方式就不同。具体上,如何建取决于对事物的抽象角度,抽象角度也因为建模的目的不同而不同。关于什么是“模”,则是依赖于确定了抽象角度下的场景模拟。一旦决定了抽象角度,就明确了一个目标。然后我们往往通过“过程化”的手段(有动作附着到静态的实物上,并产生一定的效果。)找到满足这一目标的事物。所以“模”就是:今天的事物(物)+特定的条件(规则)+特定的动作(参与者的驱动)=特定的场景(事件)。简单说,模是“人、事、物、规则”。

工件:工件也称为成果或者制品(Artifact),它与可交付物(Deliverable)是有一些差别的。当某一个或者某一些工作是最终产品的一部分需要交付出去时,才被称为可交付物。而在软件生产过程中,任何留下记录的事物都可称为工件。

对象:观点——一切有名字的东西都是对象,对象与对象之间都是天然独立的。在同一抽象层次上,分析过程中都应当将对象视作不可分割的“原子”,不应当打破对象的边界去窥探对象内部。对象参与一个场景时会表现出它的一个方面,总可以抽象出一个方面,让其作为对象的代表参与场景交互,这个抽象通常以接口命名。对象参与的场景越多,其抽象价值越高,应当多关注参与了很多场景的对象。对象有着抽象层次,分析过程中,应当根据问题领域的复杂程度设定多个抽象层次,每个层次上使用合适的抽象程度的对象描述,这有助于减少分析的难度和工作量。

边界:“边界”是对象方法的一个重要概念,与“封装”概念同源。对象方法中,每一个对象都有边界,外界只能依靠边界来认识对象,与对象打交道,对象的内部是一个禁区。在现实世界中,我们也是通过“边界”来认识事物的。我们往往会先预设一个系统边界,然后在预设的边界内寻找需求。最终的需求的集合又反过来决定了边界的大小。

推荐阅读书籍—《大象---thinking in UML》相关推荐

  1. 1、阅读和了解什么是形式化方法 2、推荐阅读书籍《大象——thinking in UML》

    什么是软件形式化方法 软件形式化方法是指建立在严格数学基础上的软件开发方法.形式化方法模型的主要活动是生成计算机软件形式化的数学规格说明.形式化方法使软件开发人员可以应用严格的数学符号来说明.开发和验 ...

  2. Java程序员到架构师的推荐阅读书籍

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  3. Java程序员的推荐阅读书籍

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  4. Java程序员推荐阅读书籍

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  5. 《Java程序员的推荐阅读书籍》

    <Java程序员的推荐阅读书籍> JavaEye (http://www.javaeye.com) 范凯(http://robbin.javaeye.com) 作为Java程序员来说,最痛 ...

  6. Java程序员进阶架构师推荐阅读书籍

    [IT168 技术]作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些 ...

  7. Java程序员的推荐阅读书籍 (转载robbin)

    作为Java程序员来说,最痛苦的事情莫过于可以选择的范围太广,可以读的书太多,往往容易无所适从.我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水 ...

  8. 推荐阅读书籍《大象–thinking in UML》【软件工程】

    书籍简单了解 <大象–thinking in UML>是一本结合了面向对象 方法.软件工程方法.基于 UML 的建模方法的全程建模的书.以UML为载体,将面向对象的分析设计思想巧妙地融入建 ...

  9. 推荐阅读书籍:大象:Thinking in UML

    大象:Thinking in UML @in桂林理工大学 来源:搜狗百科 大象:Thinking in UML(第2版)>以UML为载体,将面向对象的分析设计思想巧妙地融入建模过程中,通过贯穿全 ...

最新文章

  1. iOS开发中用到的一些第三方库
  2. 第十、十一周项目-阅读程序,写出这些程序的运行结果(1)
  3. BENDR for BCI : 多伦多大学研究者提出受BERT启发的深度神经网络学习​海量EEG 数据...
  4. WebCore中的渲染机制(一):基础知识
  5. spyder中以html输出图形,交互(?)用matplotlib在Spyder中绘图
  6. Windows电脑安装Linux系统的方法-Ubuntu版
  7. CSS权威指南阅读笔记
  8. nod32 破解的用户名密码
  9. SPSS聚类分析——一个案例演示聚类分析全过程
  10. 伺服舵机匀加速和匀减速程序控制
  11. Arduino+WZ指令+Onenet
  12. 平头哥RVB2601开发板开发环境CDK
  13. android农历计算器,农历生日计算器,虚岁计算器
  14. Unity项目 - 捡苹果 Apple Picker
  15. 西南科技大学计算机综合大纲,西南科技大学(专业学位)计算机技术研究生考试科目和考研参考书目...
  16. sklearn 命令行安装_sklearn安装
  17. Apache 实现AJAX跨域请求
  18. D3.js(v3版本)
  19. 金山爆出360收集用户隐私:之我的的看法
  20. koa2的脚手架koa-generator

热门文章

  1. 全平台chrome添加ublock-origin拓展程序
  2. 写作之路,以梦为马,不负韶华
  3. 计算机零基础培训多少钱,零基础学CAD设计师培训?培训费用高不高?CAD制图工资一般多少?...
  4. 我开通留言了 !!!
  5. 如何看待Java饱和难找工作的现象?
  6. LOTO示波器 软件功能 井字测量光标的锁定功能用于跨屏幕测量
  7. Core Journal Ranking 2020 期刊 排名 列表
  8. 关于星云图获取最大面积的C++案例的DEMO
  9. 项目-企业客户关系管理系统(登录+首页操作菜单)
  10. EXT--Ext.get() 和 Ext.query() 组合使用实现最灵活的取元素方式