今天,我将和大家谈谈如何理解UML。很多人可能不太了解。为了让大家更好的了解,边肖为大家总结了以下内容。希望你能从这篇文章中有所收获。
什么是UML?
统一建模语言(Unified Modeling Language)是OMG在对象管理组中开发的一种通用的可视化建模语言标准,可用于指定、可视化、构造和记录软件密集型系统的各种构件。
UML有哪些特点?
UML的“通用性”主要是指它不仅可以用来描述软件,还可以用来描述一般企业或组织的业务流程,以及由软件和硬件组成的复杂的基于软件的系统(所谓的软件密集型系统),甚至是非软件系统。
UML的“可见性”是指通过UML的一系列图形符号,可以直观、清晰地表达系统分析和设计各方面的许多复杂概念,形成多种视图。UML主要是为人们阅读和使用而设计的,所以它是半形式化的,便于人们理解和交流。
UML是一种用于分析和设计的特殊建模语言。它本身不是编程语言,所以不能直接用来生成可执行软件。UML是一种比C、C、Java、VB、Delphi等高级文本语言抽象程度更高的图形语言,通过它我们可以抽象地表达用高级编程语言编写的文本程序的逻辑结构和行为。与传统的高级编程语言相比,UML能够更高效、更准确地反映软件设计的方案和思想,是一种真正的“设计程序”的语言。从这个意义上说,UML可以称为“非常高级”的编程语言。
基本上,UML不能算是一个全新的发明。它不是学者、教授、科研机构的研究成果,而是直接来自工业界和工程界的实践总结。它是基于归纳的理论升华的产物。其核心内容体现了全球软件业30多年来在软件设计和建设领域的* * * *实践和成功经验,具有较高的实用价值。
实践证明,面向对象方法比传统方法更能准确、全面地描述现实世界。UML是一种用来表达oo概念的语言tOOl,非常精彩。作为一个产品,它也是采用OO方法设计的,这使得UML具备了传统建模语言所不具备的强大语义表达能力和灵活的可扩展性。
UML有什么用?
UML用途广泛,可以概括为“描述、可视化、构建、记录”四大基本功能。它可以根据需要用于业务建模、需求分析、系统设计、实现和测试、数据建模、项目管理等任务。
UML建模是构建软件开发文档的有效手段。通过UML可视化描述系统需求,记录软件组成,可以显著提高文档的质量和可读性,减少编写文档的工作量。
本质上,UML是一种系统分析和设计的专用语言,可以帮助业务/系统分析师、软件架构师/设计者、程序员等各种建模者有效地描述复杂软件(或业务)的静态结构和动态行为,包括工作流(数据流和控制流)、功能需求、结构元素和关系、架构组成、设计模式、对象协作、事件响应和状态变化等。
UML不能做什么?
UML不是高度形式化的语言,一般不能用于定理证明。
UML是基于OO方法的通用建模语言,不适用于用户图形界面设计、VLSI设计、基于规则的人工智能等专业领域。
UML是一种离散建模语言,适用于由软件、固件或数字逻辑组成的离散系统建模,但不适用于工程和物理领域的连续系统建模。
作为一种语言本身,UML只是一种表达形式,而不是一种建模方法。在实际软件项目开发中,仅仅掌握一套标准的图形符号是远远不够的。要用好UML,首先要掌握OOAD的基本原理和方法,并在一定的软件开发流程(如UP/RUP、XP等)指导下使用。).
为什么要学习和掌握UML?
首先,对于当前大多数想要进一步提高质量的软件开发团队来说,UML是必不可少的或必要的。为什么这么说?由于C、Java等源代码不能直接、方便地反映复杂程序的设计,如内部逻辑结构、各种隐式依赖、运行时状态变化和特殊行为等。写得好的代码只是一种实现方式,很难反映出现象mdash背后的真实本质;mdash设计,所以对于大多数稍微复杂的项目来说,光有代码是不够的。
可视化建模一直是成功的工程实践,并不是软件行业独有的。软件设计方案在用C和Java实现之前,通常是隐藏在人们脑海中的,设计是否正确是决定软件质量的关键。一个先决条件是,它必须以适当的方式表达。通过程序代码来表达、讨论、评估和选择复杂软件的设计往往是笨拙的,这种表达的不足只能通过类似于UML的建模语言来弥补。
其次,OO方法是主流的软件开发技术。世界先进的软件团队和个人已经摆脱了如何使用特定平台API和个人编程语言特性的纠缠,将更多的精力放在了对软件质量、分析和设计有重大影响的核心要素上,如需求、架构、设计机制和模式。作为UML面向对象建模语言事实上的标准和主要的表达媒介,它可以在这些场合发挥关键作用。因此,熟练掌握和应用UML是当今系统分析师的重点,
架构师/设计师以及程序员等软件工程师所必备的一项基本技能。
看完上述内容,你们对怎么理解UML有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/113115.html