前言
之前讲的内容大都是理论的知识,对我们之后的画图有很大的帮助,不过还是远远不够的,需要我们在真正用到的时候不断的查阅资料去帮助我们建立理解,今天总结博客只有一个目的,就是可以画简单的用例图和例图。
用例图(use case)
目的
用例图使用用来描述用户的需求,放在需求分析阶段,将用户的需求以图的形式表现,师傅的建议很好,用例图是给用户看的,那么用例名是不是用中文来写会更好呢。
要素
- 1 角色:用来触发事件,需要注意的是不是狭隘的指人。
- 2 用例:我现在的理解是对一个功能的描述,即为用户想要实现的功能。
- 3 关系
当然这里的关系还是要包含我们说的那四种关系的,详细的关系,请参考博客:(http://blog.csdn.net/sweetyoyy/article/details/52101700)
- 3.1 包含
包含关系可以理解为一个功能包含的其他的功能,举例说明:如果A包含B那么,B是不可少的,少了B对系统是有关键影响的,需要强调的是这时箭头指向B。 - 3.2 扩展
扩展是之前有A功能,现在有一个B功能来补充说明功能A,需要注意的是现在B功能对系统没有关键影响,也就是说少了B功能系统仍然可以正常的运行,需要强调的是这时箭头指向A。
- 3.1 包含
举例
对于机房的用例图,我的理解是,每一个功能一个用例,这个是粗略的用例图:
然后我们可以把用例图细化,将功能进一步展开,这是截取的一般用户的用例图:
静态图
类图
目的
建模工具主要是根据类图来生成代码,可见类图的核心地位。何为类图,即为类加上他们之间的关系成为了类图。这就需要我们把类抽象出来了。对于类图我还想说一点的是:世上万物都可以看作对象,都可以抽象出类来。
元素
- 1类
类应包括:类名,属性(静态),方法(动态) - 2关系
是我们常说的四种关系(上面的链接已给出),我想强调的是关系要用准确,他们的优先级是:实现=泛化>组合>聚合>普通关联>依赖。
举例
我的类图是画的很心酸的,画了好多遍,最开始的类图,就像数据库中说的ER图差不多,然后画了一个这样的(这是一个半成品):
后来去查资料,又想起之前师哥师姐说的三层和七层,我也不是太理解,就去查了查,现在的理解是,如果拿蒙牛生产过程来说,D层就像是从大草原上的牛刚挤出来的牛奶,B层是数据逻辑层,可以理解为对这些牛奶进行加工处理,这样说他更像是一个加工厂,U层可以是直接面向用户的市场,比如是超市或者各种小卖店。然后把他和机房联系起来,D层是对数据库的操作,我的理解是增,删,改,查;U层是面向用户的窗体,有多少窗体就可以有多少类。B层是将U层和D层联系起来的一些逻辑操作。按照这个思路,我又重新画了类图,下面截取了一般用户的部分类图:
打包之后的图是这样的:
对象图
对象是类的一个实例,对象不是抽象的,类是对象的抽象形式,我们画对象图的时候要参考着类图来,可以说对象表现的关系也是类图表现的,对象图是程序在某一时刻的表现。
这时我画的操作员工作的对象图:
结语
这些还是不够的,我们能做的就是继续学习,不断学习,同时也要加上自己的思考!