统一建模语言(Unified Modeling Language,UML)的目的是提供一种不受语言约束和不受平台约束的建模符号。UML工具是通用的,因为UML是基础。本文是一种UML基本概念初级读物,同时提供了对建模目的的理解。这不意味着它是入门指导手册,但是它提供了许多链接,在合适的位置,把我们引导到一些优秀的教材,向我们介绍使用NetBeans IDE中UML功能的步骤。
有些工程师在开始编码之前没有时间对项目进行建模,有些工程师没有考虑在编码之前创建系统的模型。本文就是针对这些工程师们编写的。本文提供了一些方法和策略,能帮助您更加有效,并能尽可能地节省时间。本文中的信息甚至能让我们能够挑战传统,“我们没有时间做好,但是总是有时间重做”。
简介
在咖啡店,当想到“一段令人激动”的软件片段时,您激动地抓过一片纸巾,在上面勾画,使自己的思路更加明晰。这些图像就像一些鸡爪的划痕,只有您自己才能了解它们的含义。
但是它对您来说确实是有意义的:这些鸡爪划痕是一个想法的说明,可能要再花费两年的时间才能实现。您创建的是一个尚未发展完全的模型。在想象中,方框代表一种元素,而圆圈、三角以及直线则代表另一种元素。在纸巾的背后发明了一种建模语言。如果能够编译和运行纸巾,您可能会成功实现您的想法。但这是不可能的。如果再花费两个月的时间教会计算机每个纸巾对象所代表的含义,如何为每个对象生成源代码,则编译纸巾是有可能的。
经过25年的纸巾建模,创建了几种非常好的建模语言。世界已经进入统一建模语言(UML)时代。建模器收集所有的纸巾,并统一每种对象的定义以及对象间的关系。特定语言的编程人员使用这种统一建模语言,启动开发模板为不同的对象创建代码。现在,只要在作为UML一部分的纸巾上勾画对象,就可以对纸巾进行编译。
“为什么要建模?”,这是个很好的问题!在本文中,提供了两种供考虑的答案:将它们想象成UML用例。第一个答案,在“编译纸巾”部分,重点放在那些在白板或者咖啡店纸巾上勾画想法的工程师身上。本节的目的是:介绍项目计划阶段建模的优点。该部分多处链接的教材将介绍执行建模的详细情况。
“为什么选用模型”问题的第二个答案,在“他们在想什么”一节中,重点放在那些曾因处理300000行代码并对其进行维护和修复错误而倍受困扰的工程师。他很高兴地看到程序的原作者了解封装,但是仍然看不到封装是如何结合在一起的。您也希望见到系统的图示,了解程序原作者的想法。这是UML工具的一种通用用例。有效地分析代码,创建一个模型(称为“逆向工程”),利用该模型可以创建图示。
下表列出了可以在许多地方在线找到的不同类型的UML图示,为方便起见,将它们归纳于此。单击缩略图,查看某特定图示的样本。
用例图
主要由参与者和用例构成。用例图示帮助捕捉功能需求。这永远是启动一个项目的好图示。
组件图
主要由主要系统组件和它们的关系构成。这意味着是一种高级的复杂系统观查图示。无论是在头脑中、在纸巾上,或者是使用UML工具,已经为每一个已经处理的项目创建了该图示。
类图
主要由类、接口及其关系组成。类和接口很容易理解,但关系可能有些复杂。在您知道系统中有哪些组件后,接下来自然是绘制组成组件的类图。
活动图
主要由活动和决定构成。这些图示基本上是流程图和数据流图表,该图示用来获取常规的代码流。
协作图
主要由对象和消息构成。该图示将重点放在对象之间的通信,类似于程序表。
部署图
主要由服务器等部署元素以及它们的关系构成。这是系统的逻辑剖析图。
程序图
主要由对象(带生命线)和调用消息构成。程序图示描述系统中调用的顺序,以及不同对象的创建。
状态图
主要由状态、转换、事件,以及动作构成。很少需要状态图示,除非逻辑非常复杂。
编译“纸巾”
文章来源于领测软件测试网 https://www.ltesting.net/