首先在我们学习建模之前我觉得应该了解建模是什么?为什么要建模?

建模是什么?

对于建模,百度百科上是这样解释的:建模就是建立模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。也就是说,建模是对现实的简化。

为什么要建模?

就好比如若你自己要建造一座小房子,首先得先给要建造的房子设计一张草图甚至是蓝图;若要建造一座大厦,首先要做的肯定不是先去所需买材料,而是需要对建筑物的大小,形状和样式做一个规划,做出相应的图纸和模型。可能在规划中突然有了更好的想法,还可以对图纸或模型进行不断的修改。这样直到对图纸、对模型满意之后再进行施工。这样不仅建造出满意的大厦还能提高施工的效率。

建筑物需要建模,同样,软件也需要建模,就像之前没有任何建模的情况下直接进行《机房收费系统》的软件开发,而且还妄图开发出高质量的产品,结果就是软件不断地有bug,甚至有时候都不知道问题出在了哪里。

所以说,如果没有对代码结构、过程和工具的详细计划,很大的可能都会是一个失败的产品。看到一句话是:每一个失败的软件项目都有其特殊的原因,但是成功的项目在许多方面都是类似的,软件组织获得成功的因素有很多,但是一个基本的因素就是对建模的使用。

建模的目标

1、便于开发人员展现系统
2、允许开发人员指定系统的结构或行为
3、提供指导开发人员构造系统的模板
4、记录开发人员的决策

通用建模语言的必要性

对比项目的复杂度会发现,越简单的项目,使用规范建模的可能性越小。实际上,即便是最小的项目,开发人员也要建立模型,虽然说很不规范。开发者可以在一块黑板或者一小片纸上概略地描述一下系统的某个部分,团队可以使用CRC(类一责任一协作者模型)卡片来验证设计的可行性。这些模型本身没有任何错误,只要有用就尽可能地使用。但是这种不正规的模型通常情况下很难被其他开发者所共享,因为太有个性色彩了。正因为这样,通用建模语言的存在成为必然。

每个项目都可以从建模中受益。甚至在自由软件领域,模型可以帮助开发小组更好的规划系统设计,更快地开发。所有受人关注的有用的系统都有一个随着时间推移越来越复杂的趋势,如果不建立模型,那么失败的可能性就和项目的复杂度成正比。

建模四原则

1、选择建立什么样的模型对如何发现和解决问题具有重要的影响。就是说选择正确的模型。
2、每个模型可以有多重表达方式
3、最好的模型总是能够切合实际
4、孤立的模型是不完整的

面向对象建模

面向对象建模主要模块是对象或者类。对象通常是从问题字典或者方法字典中抽象出来的,类是对一组具有共同特点的对象的描述,每一个对象都有自己的标识、状态和行为。
也就是说,他可以描述一个软件从需求分析直到实现和测试的开发全过程。

[UML]建模是什么?为什么要建模?相关推荐

  1. UML 10 种常见的域建模错误

    Technorati 标签: uml 这段时间在学 UML 建模,UML 10 中常见的域建模错误摘录如下: 1.立即关联指定多重度,确保每个关联都有明确的多重度 类图上有些关联度表示的是一对一的关系 ...

  2. UML与软件建模之面向对象的软件建模概述

    好久没有写写新东西了,最近闲下来了,看了一本名叫<URL与软件建模>这边书,感觉里面讲的不错,现在将我学习到的东西和大家做一个简单的分享. 横竖都是写,建模和不建模有什么区别呢?如果你是一 ...

  3. uml点餐系统活动图_UML建模——活动图(Activity Diagram)

    活动图概述 •活动图和交互图是UML中对系统动态方面建模的两种主要形式 •交互图强调的是对象到对象的控制流,而活动图则强调的是从活动到活动的控制流 •活动图是一种表述过程基理.业务过程以及工作流的技术 ...

  4. 计算机论文数据建模怎么写,如何撰写建模论文?

    当我们完成一个建模的全过程后,就应该把所作的工作进行小结,写成论文.撰写建模论文和参加大学生建模时完成答卷,在许多方面是类似的.事实上建模竞赛也包含了学生写作能力的比试,因此,论文的写作是一个很重要的 ...

  5. 3d建模电脑配置要求_3D建模学习对于电脑配置要求高不高?

    点击上方蓝字,关注我们了解更多建模知识 一 电脑配置需要高配还是低配? 这个必须是高配,低配你电脑卡的就直接就跑不动了,你平时用的那种一般的电脑,顶多算个小皮卡车,拉点一般的东西,还能跑起来,整点大吨 ...

  6. 13- 数据建模-建模方法三:实体建模

     实体建模法并不是数据仓库建模中常见的一个方法,它来源于哲学的一个流派.  从哲学的意义上说,客观世界应该是可以细分的,客观世界应该可以分成由一个个实 体,以及实体与实体之间的关系组成.我们在数据仓库 ...

  7. 2020Revit又是怎样进行正向建模的呢?适合Revit建模插件工具

    Revit2020是一款三维建筑信息模型建模软件,适用于建筑设计.MEP工程.结构工程和施工领域. Revit的默认单位是mm当一栋大楼完成打桩基础(包含钢筋).立柱(包含钢筋).架梁(包含钢筋).倒 ...

  8. 3d游戏建模基础教程:3D建模应用领域和四种常用建模方法

    3D建模应用领域 影视动画表现 电影行业将它们用于活动的任务.物体以及现实电影:视频游戏产业将它们作为计算机与视频游戏中的资源,通过设计稿,建模,最终完成. 游戏美术表现 多用于游戏类建模,包括:角色 ...

  9. 在数学建模中微型计算机,“在数学建模中培养学生思维能力的研究”课题研究情况汇报...

    自2006年9月本课题开展以来,学校领导高度重视本课题的研究和进展情况,全体课题组成员也积极投入到课题的研究实践中,课题得以顺利地按计划进行,并取得了阶段性的成果.现将本课题实验的进展情况汇报如下: ...

最新文章

  1. [C语言] qsort 快速排序函数讲解
  2. systemd下supervisord服务开机自启动以及注意事项
  3. 号召,有兴趣做博客园自己的网络游戏的请举手..
  4. zabbix 3.2.1 升级3.4.1
  5. fatal error C1900: Il mismatch between 'P1' version '20060201' and 'P2' version '20050411'
  6. Python语言学习:利用sorted对字典按照value进行递减排序,输出列表,并给定排名索引,组成新字典输出
  7. 阻尼衰减曲线用python_高阻尼隔震橡胶支座结构及防震效果
  8. 当安全遇到大数据 “永恒之蓝”也将无所遁形!
  9. NOIP模拟测试29「爬山·学数数·七十和十七」
  10. (非)对称加密算法在https中的应用(加密过程以及CA颁发、验证)
  11. 备份有困难?Oracle DBA详述RMAN备份
  12. flutter用英语怎么说_碍手碍脚用英语怎么说?
  13. jQuery学习笔记01
  14. c语言里编译错误c131,C语言题库2.doc
  15. Keil软件的汇编使用
  16. 289页初中级前端题助你拿下Offer,附面试题答案
  17. RTK差分通讯链路---电台
  18. 大数据技术在银行业中的应用场景,主要有哪些?
  19. 新GRE词汇按部就班的学习方法
  20. css border:solid实线,dashed虚线;dotted点状,,double双线

热门文章

  1. ggplot2 theme主题参数详解
  2. 【新年福利】2019年值得一用的8款协作工具
  3. 【Unity3D】基于AssetBundle实现资源热更新
  4. hbase和es在搜索场景的应用
  5. 越狠越有饭吃,越不狠越没饭吃
  6. 春节了,上张祝福图片,顺祝大家新年好运,工作顺利!
  7. http://blog.csdn.net/LANGXINLEN/article/details/50421988
  8. 微软Project Server 2016正式版下载:支持项目组合管理-搜狐
  9. 数据可视化——echarts
  10. 编程java好学吗,java初级编程好学吗