据我所知,目前多数J2EE工程都未使用UML作为设计工具。原因不外乎大家觉得开发团队不精通UML的各种图例,或不懂得取舍过于追求文档格式造成的。
UML应该是团队成员用于交流各自想法的工具,可能用语言表述的不够清楚和完整,UML才有存在的意义,加之可以存储复用,而语言交流的话,需要重复再讲一遍(不过可以录视频或录音)。
UML的图例有很多种,如类图,顺序图(时序图),包图,对象图,状态图等等。一般开发中只会用到1或2种,最常用的是顺序图,类图。
顺序图业务性和技术性皆强的一种文档。能表述清楚流程即可,主要是理清思路,既理清设计者自己的思路,也可以是别人很好的参考文档。
类图是代码技术架构的文档。通过你的UML图,最好能看出你准备搭建怎样的架构。取个例子吧:
这个我在开发过程中创建的一个类图,这个类图起始于CreateIndicatorController,这个类实现了抽象类AbstractController,而这个类正是SpringMVC的接口类,可以看出我用到了SpringMVC框架。再看各条关联曲线上的英文单词,这是构造型,一般有create,local,parameter,delegate这四种。分别意味着这些关联对象是如何创建出来的,这意味着你使用了何种模式或实现方法。
我的原则是尽量简单(其实是Robert C. Martin的原则)。只要UML图所要表达的内容清晰的表达出来就可以了。
总结UML的要素:
1。各种对象是需要区分的,接口要《interface》标识,抽象类斜体标识。
2。继承三角形箭头线,关联普通箭头线。虚线实现没关系。至于其他的如聚合,组合之类的关系最好放弃使用,因为很多人不知道其含义。即时知道的,理解也不能达到一致。又耗费成本,实在有画蛇添足的感觉。
3。写出其中的关键方法,不确认的别写。关键方法是辅助表现自己实现方案的良好补充。
简单原则,我说的够简单了吧。
- 大小: 23.8 KB
分享到:
相关推荐
在给定的"uml设计模式ppt"资料中,包含了多种经典的设计模式,这些模式在实际的软件开发中具有广泛的应用。以下是每个PPT文件所涵盖的设计模式的详细介绍: 1. **7 设计模式(1)--Facade,Adapter模式.ppt** - **...
**UML(统一建模语言)程序设计:深入解析计算器应用** 在软件开发过程中,UML(Unified...总的来说,UML是软件设计中不可或缺的一部分,它使得复杂系统的设计变得可视化,提高了团队沟通效率,也便于后期维护和扩展。
startUML提供了一个直观的界面,使得构建活动图变得简单。 6. 构件图(Component Diagram):构件图描述软件系统中的物理组件及其关系,如模块、文件、库等。虽然startUML可能不直接支持构件图,但可以通过第三方...
它提供了一个直观的拖放界面,使得绘制UML图变得简单而高效。对于那些对英语不太熟悉的开发者来说,JUDE的中文版无疑降低了学习UML的门槛,使得更多人能够轻松掌握这一强大的设计语言。 在使用JUDE的过程中,我们...
工具提供直观的拖拽界面,使得创建这些复杂图表变得简单。 4. **状态图与活动图**:状态图展示了对象在其生命周期中的不同状态转换,而活动图则关注系统内执行的流程和决策。在简单UML工具中,你可以方便地构建和...
### 图书馆管理系统UML设计知识点解析 #### 一、系统简介 图书馆管理系统是一种通过集中的数据库管理模式来实现对图书、读者以及借阅记录的有效管理的系统。它不仅简化了传统图书馆手工操作流程,还提高了工作效率...
UML作为一套强大的建模工具,它为软件开发提供了一种标准化、图形化的表达方式,使得复杂系统的设计、分析和实现变得更加直观和高效。在嵌入式系统领域,这种可视化建模方法尤为重要,因为这里的系统通常具有严格的...
而Smarcha是一款优秀的UML设计工具,它为开发者提供了直观易用的界面,支持多种UML图的绘制,使复杂的设计工作变得简单明了。 二、Smarcha的核心功能 1. **多图种支持**:Smarcha能够绘制多种UML图,包括用例图、...
通过这款工具,开发者可以更直观地表达设计思路,提高团队协作的效率,同时,它的易用性和导出功能也使得成果的分享和交流变得更为顺畅。在快速发展的软件行业中,一款优秀的UML建模工具无疑是提升开发效率和质量的...
《UML设计工具详解:小巧而实用的选择》 ...它的易用性和全面的UML支持,使得软件开发的各个阶段变得更加顺畅。无论你是独立开发者还是大型团队的一员,这款工具都能助你在UML建模的道路上事半功倍。
为了弥补这一空白,"UML、泳道图、流程图.rplib.zip"压缩包应运而生,它为Axure RP9用户带来了定制的元件库,使得创建这些专业图表变得轻而易举。 首先,我们来了解一下UML。UML是一种标准化的通用建模语言,用于...
由于这种误解,建模活动往往变得非常机械和形式化。事实上,UML模型应当被视作项目团队共同思考和讨论问题的媒介,它们可以是快速绘制的草图,也可以是临时的白板设计,而不应成为制作精良却僵化的文档。在项目的...
这款插件使得从源代码自动生成UML图变得简单易行,有助于软件设计师和开发者更好地理解和管理项目结构。 首先,让我们深入了解UML,它是一种标准的建模语言,用于描述软件系统的设计、结构和行为。UML包括多种图表...
作为一个强大的建模工具,startUML使得复杂的系统设计过程变得更加直观和简单,极大地提高了开发效率。 UML是一种标准化的通用建模语言,它提供了图形化的方式来描述、可视化、构造和文档化软件系统。在Web开发中,...
总之,js uml2是JavaScript开发者进行UML建模的强大工具,它的易用性和灵活性使得在Web应用中绘制UML图变得简单而高效。通过深入理解和实践,你可以在项目管理、需求分析和代码设计等多个环节中充分利用这一框架的...
### 利用UML设计高校网上选课系统 #### 概述 随着高等教育的普及和技术的进步,越来越多的高校开始采用网上选课系统来简化教学管理流程。为了更好地满足这一需求,利用UML(统一建模语言)来进行系统设计变得尤为...
startUML支持导入和导出多种格式的文件,如XMI(XML Metadata Interchange),这使得与其他UML工具的数据交换变得简单。 **10. 自定义快捷键与模板** 为了提高效率,你可以根据个人习惯设置快捷键,并保存常用的...
本书的核心理念是使UML变得简单易懂,并将其作为沟通软件分析和设计的有效工具。虽然市场上存在许多关于过程和方法论的书籍,但《UML DeMystified》的独特之处在于它不仅仅停留在理论层面,而是提供了一种实用的方法...
《Jude:一款高效易用的UML建模工具》 ...它的存在,无疑为我们的软件开发工作带来了极大的便利,让复杂的设计过程变得更加清晰和高效。如果你还没有尝试过Jude,那么现在就是开始探索其魅力的最佳时机。
**对象助手(ObjectAid)**是一款强大的Java程序辅助UML设计工具,它极大地简化了在开发过程中创建和理解代码结构的过程。通过ObjectAid,开发者可以快速地生成UML类图,帮助他们可视化和理解复杂的Java项目。这款...