【UML入门教程】——总结和自我补充
来源:互联网 发布:软件国产化 东方通 编辑:程序博客网 时间:2024/05/16 04:26
UML和我们之前学习的软件工程密不可分,两者强强联合,为软件的开发奠定了重要的基础。UML图和文档把整个系统的宏观和微观,一一展现在我们的面前。
写软件文档就像建造大楼前的图纸一样重要,没有合理的规划、分析,仅仅凭空想象,是不足以完成这一浩大的工程的。
一、插入文档的UML图——必选项
用例图存在于软工文档的需求分析阶段,《软件需求说明书》中有一项是需求规定,它的子项目对功能的规定,可以放置我们的用例图。
PS:用例图的作用就是从用户的角度描述系统静态功能。
类图存在于《概要设计说明书》,功能需求与程序关系可以放置类图。
PS:类图主要用来描述系统所包含的类、类的内部结构和类之间的关系。
类图、包图、时序图存在于《详细设计说明书》中,程序系统的结构可以先放置一个宏观的包图,然后在放置类图。在设计实现可以放置细化的类图,并标注出返回值和参数。流程图可以被时序图完全替换。
PS:包图是非正式的UML图,但是它却能够把用例或类之类模型元件组织为组。是需求、设计的高阶概述,并从逻辑上让复杂的图模块化。时序图通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。时序图中的对象源自于类、用例。是直接从用例图和类图中拖拽过来的。
对象图就是类图的实例化。类图之于对象图,就好像人类之于张三。
二、插入文档的UML图——可选项
还有一些图也可以放在详细设计里面,但是要根据系统设计的必要,择优而取。
活动图就是变体的流程图,但是它比流程图更高级一些,它能够进行并发活动而流程图不能。另外流程图是面向过程的思想,活动图是面向对象的思想。
状态图描述一个对象在其生命周期中的动态行为,表现为一个对象所经历的状态序列,引起状态转移的事件,及因状态转移而伴随的动作。
时序图和协作图相似,就是侧重点不同。时序图侧重于对象间消息传递时间的先后,协作图侧重于对象间交互过程和对象间联系。
构件图、部署图存在于系统的实现阶段。
三、机房收费系统——查漏补缺
结合了之前的软工文档,还有如今的UML图,发现自己还是有很多可改进的地方,暂时记录在这里,下次机房的时候会更加注意这些细节。
软件需求:原型图(没画)、IPO图(没画)、用例图。
类图抽象方式可以总体分成两种:1.根据数据库表抽象。2.根据功能抽象。以
时序图我画的也很不标准,以下是应该修改的地方:
四、总结
一图胜过万语千言。UML图真的是人类智慧的结晶,直观的图形让我们对整个软件系统了然于胸。一开始画图的时候虽然有些磕磕绊绊,但是后来,随着查资料的增多,对它的了解也深刻了许多。
要有全局观。九种图并不是单独存在的个体,画图的时候一定要把它们画到一个文件里面,这样才不会把它们的关系割裂开。另外对比学习真的很重要,比如顺序图、协作图,活动图、流程图等等,因为特殊性,才由了它存在的价值。就像人一样,因为不同,所以每个人都有值得我们学习的地方。
要坚持。当你坚持做一件事情的时候,你才会发现,什么是柳暗花明。
希望我的博客能够对大家有所帮助,也希望大家能够给我提出改进的建议!
- 【UML入门教程】——总结和自我补充
- 【UML入门教程】——Hello,UML!
- 【UML入门教程】——UML关系
- JAVA自我总结和分享—JVM
- mysql数据库的备份和转移[自我总结,是之前一篇文章的补充]
- 自我总结——slab
- 《精通CSS》第八章——总结和补充
- UML—小总结
- UML总结——UML的九种图
- UML总结——UML画图
- UML总结——UML学习
- 【UML】——UML入门总结
- 【UML视频总结】——UML概述
- UML总结之——UML技术
- 【UML入门教程】——静态结构(上):用例图
- 【UML入门教程】——静态结构(下):类图
- 【UML入门教程】——构件图、部署图、包图
- linux基础命令——自我总结
- ios 程序发布成ipa 文件 通过 web 下载和安装。install App via OTA
- Java5实现的线程池
- java学习记录5
- Java 序列化的高级认识
- linux系统 - linux下core文件设置
- 【UML入门教程】——总结和自我补充
- Java学习记录6
- 23种设计模式之python实现--抽象工厂
- 点发大幅度
- 数据结构之二叉树
- 如何成为一名黑客
- 黑马程序员__ ArrayList 与HashSet 去除重复函数的 区别 equals
- java中有几种方法可以实现一个线程
- 2014.4.1