大多数软件人员应该对UML并不陌生,什么是UML?它是Unified Modeling Language,它是一种建模语言,它是进行需求分析和概要设计的利器。在您的理解中,什么是UML呢?它仅仅是那些图形、文本和符号的集合吗?还是一种用文本、图形和符号的集合来描述现实生活中各类事物、活动、及其之间关系的语言呢?我听到过两种声音:有许多软件从业人员甚至软件企业认为,UML是非常重要的,系统分析员、软件设计师必须精通UML,这一观点可以从大多数企业的招聘信息中得到:“xxx职务,精通UML……”。又有一部分人说,UML似乎也没多大用处,使用UML的图形来画画流程图倒是不错的选择。对于前者,有过分夸大UML之嫌疑,这也直接导致国内很多初学者在还没有弄清楚UML是什么的情况下盲目地学习和追捧UML,最后收效甚微;而后者呢?认为完全没有必要使用UML,这将使得系统中各角色之间的直观交流变得困难。
UML是什么?
1. UML是一种标准。在这里说标准,似乎太深奥了,说协议或许更好些。UML是一种协议,它是系统分析人员和设计人员之间、软件从业人员与客户之间所应遵循的一种通讯协议。就好像FTP服务器程序与客户端程序需要通讯,首先大家都要遵循一种协议(FTP协议)。通过使用UML,系统分析人员不仅可以很直观地记录客户需求,为系统设计提供具体的、可参考的系统分析模型,而且可以很方便地与设计人员甚至客户进行交流,因为大家都遵循同一协议,交流就变得容易和直观了。从客户角度来讲,如果希望更好的表达自己的需求信息,并能够很好的与专业人员进行交流,是不是也应该多关注一下UML呢?
2. UML是统一建模语言。什么是“统一”?它表示UML并不仅仅是软件系统的“专利”,非软件行业同样可以使用UML进行建模描述。同时,它也更好地证实了“UML是一种标准”这一说法。什么是“语言”?因为它有自己的语法和语义。UML的各个元素有着自己的语义,而元素的组织形式却遵循着一定的语法规则。从语法强度来讲,UML应该和自然语言的语法强度平级,因此UML应该会出现二义性问题。UML应该是一种描述性语言(DL),描述对象就是系统分析与系统设计的思想。
UML不是什么?
1. UML不是方法论。UML不能对问题域提供一套解决方案,这是系统分析员和软件设计师的职责。它仅仅是一种语言,支持UML标准的软件也仅仅是一套系统建模工具,它就像一般的编程语言一样,比如C#语言本身并不能帮你解决实际的业务问题,具体问题如何解决,就需要编程人员很好地使用C#语言来编程实现。总的来说,系统的分析思路、设计与构架思想是来自于系统分析员与软件设计师本身的,而不是来自于UML。而系统分析员和软件设计师对系统的分析与设计能力却是来源于多年的项目分析、设计经验。
2. UML不是必须的。一个伟大的系统分析师或软件构架师可以不懂UML,但不能没有超强的分析设计能力。不懂UML会使得互相之间直观的交流变得困难,但不一定会影响分析师与构架师的表达和交流能力,如果他们之间使用另一种方式进行交流,或许效果会比UML更好。
3. UML不是一定的。在使用UML建模的时候,并没有一个“绝对正确”或者“绝对错误”的模型,只能说模型的合理或者不合理。例如使用UML来对一个基于两层(Two-layer)结构的学籍管理系统进行建模是完全可以的,但或许使用三层(Three-layer)结构会更加合理。这也充分证明了“系统分析与设计的好坏在于人,而不在于UML”这一结论。
由此可见,我们应该正确对待UML,只有在了解了这些问题后,才能更好地学习、使用UML,让UML更好地服务于我们的分析与设计。
分享到:
相关推荐
UML(统一建模语言)自诞生以来,已经成为软件工程领域的关键工具之一。它源于对软件建模的共同追求,旨在提供一种统一、标准化的方式来描述、构建和记录软件系统。UML的出现,不仅为软件开发人员提供了一个共同语言...
UML简介,主要介绍UML建模知识,让软件设计更加轻松和专业
首先,我们来了解什么是UML。UML是一种通用的、直观的建模语言,用于描述、构建和文档化软件系统的设计。它包括多种图表类型,如用例图、类图、序列图、状态图等,每种图表都有其特定的用途,能够帮助开发者从不同...
什么是UML? UML(Unified Modeling Language,统一建模语言)是一种标准的图形化建模语言,被广泛应用于软件工程领域。它为描述系统的结构和行为提供了一种可视化的方法,有助于提高团队成员之间的沟通效率,并...
**什么是UML?** UML是统一建模语言的缩写,它提供了一组图形符号和规则,用于描述系统的静态和动态特性。UML不仅适用于对象导向设计,也适用于非对象导向的系统建模。它的目标是通过可视化工具促进软件开发过程中的...
首先,让我们来了解一下什么是UML。UML是软件工程领域中一种标准化的建模语言,用于可视化、构建和文档化软件系统。它包括多种图表类型,如类图、对象图、序列图、用例图等,其中类图是表示类、接口以及它们之间的...
什么是UML类图? UML(Unified Modeling Language)是一种标准化的建模语言,用于描述软件系统的结构、行为和关系。UML类图是UML中的一种常见的图表类型,用于描述类、接口、继承关系、关联关系等。UML类图可以帮助...
1.1 什么是 UML 1.2 标准建模语言UML的发展历史 1.3 标准建模语言UML的主要内容 ....... ....... 第二章 UML概述 第三章 然见开发过程概述 第四章 用例 第五章 类图 第六章 类图的高级概念 第七章 包图 第八章 交互...
统一建模语言(UML)是一种标准化的建模语言,用于软件工程领域中的可视化、详细描述、构造和文档化软件系统的各种方面的蓝图。UML 2.4.1是UML的版本之一,它包含了对UML的各种改进和错误修正。 首先,UML是被国际...
**2.1 什么是 UML?** UML是一种建模工具,它通过图形符号来表达系统的结构、行为和关系。UML不仅仅是一个绘图工具,而是一套完整的建模框架,涵盖了从需求分析到系统实现的全过程。 **2.2 UML 的目标** UML的...
### 一、什么是UML? UML(Unified Modeling Language,统一建模语言)是一种广泛使用的标准化建模语言,用于软件工程中对系统进行可视化描述、构造及文档化。UML不仅能够帮助开发者更好地理解和表达系统的设计,还...
首先,让我们来了解什么是UML。UML是一种统一的建模语言,用于描述软件系统的结构、行为和架构。它提供了一种通用的语言和notation,帮助开发团队成员之间进行有效的沟通和协作。 在软件开发过程中,UML可以帮助...
UML精粹一书中介绍了UML的基本元素、结构以及各种UML图,目的是为了帮助读者快速理解和掌握UML的核心知识,整理业务逻辑。 本书详细介绍了UML的几种重要图,包括用例图、类图、序列图、活动图等。用例图关注于系统...
#### 什么是UML? UML是一种标准化的图形化语言,用于软件工程领域中的系统设计和文档编写。它提供了一组通用的符号和技术,可以帮助开发团队有效地沟通、规划、设计和构造软件系统。UML 2是UML的一个版本,相比...
**什么是UML** UML是一种可视化建模语言,通过图形符号来描绘软件系统的结构和行为。它包括了多种图表类型,如用例图、类图、对象图、序列图、协作图、状态图、活动图、组件图、部署图等,这些图表可以用来表示不同...
**UML(统一建模语言)是软件工程领域中一种重要的可视化建模工具,用于描述、构建和文档化软件系统的设计。本课件主要涵盖了UML的基础知识、核心概念以及在实际开发中的应用。** **一、UML的起源与目的** UML,...
什么是UML? UML是一种标准化的建模语言,用于对软件系统的结构和行为进行可视化表示。它通过一套统一的符号系统来描述软件系统的各个方面,从而帮助开发者更好地理解、设计、构建和维护软件系统。 #### 2. UML的...