您的位置:首页 > 其它

回忆(会议)记录——从文档,UML 画图,到三层

2013-01-30 00:22 169 查看
一、UML
1、每种图中主要关系
用例图:包含(include),扩展(extend),泛化(继承)。
类图:依赖,关联(聚合,组合),泛化。
包图,构件图:依赖,实现
部署图:依赖,关联
其它图中基本有各自特定的线型来连接。

综合以上几种关系:UML
中主要有四种关系:依赖,关联,泛化,实现

这是按照图来区分的图的关系,这些图给了我们一些框框,其实我们也可以不要这些框框。按照这些“类”的相处来分析一下:
类与类之间可以是:依赖,关联,泛化。这儿的关联有聚合和组合两种。
类与接口之间可以是:实现。
用例之间的关联关系就是:包含,扩展。

2、扩展和包含
包含:A用例是B用例的必要组成部分。扩展:A
用例对B
用例来说,可有可无。
好比我们说电脑的时候,无形中就包含了鼠标,键盘,因为单单只有显示器或者主机,电脑是不完整的。还记得电脑的组成吗?主机,输入设备和输出设备,所以,这些都是包含关系。而打印机,和投影仪,耳机这些东西就是扩展设备。

3、各种图之间的侧重点:主线图,辅助图。
UML
中的主线图:用例图——类图——时序图。
Why?
用这么几个词来说明给问题:who,What,How,When(谁,干什么,怎么做,什么时候做?)
用例图解决的是:who ,what
的问题。
类图解决:How的问题。
时序图解决的是:When的问题。
既然这样,还要其他图干嘛?存在既有它们的道理。
从两方面说:一静一动。
静态图:
一个系统中的类不是一两个,多的时候,想要清楚的表述他们之间的关系我们需要单个来对类进行分析——状态图。
宏观分析系统——包图,构件图
动态图:
了解系统流程——活动图。
表述两两类之间的合作情况——协作图。

系统做完了,在时间环境中的安排——部署图。

补充:
包图怎么分?
1.按功能划分:每个模块都可以单独运行,模块之间的联系不是太大,但是可能会造成类的冗余
2、按层划分:结构清晰,层与层的封装性好,对外只有接口,但是必须组合起来才可以运行,So,在团队中沟通良好的环境适合,大家约定好,系统才可以运行起来。

二、文档
各个文档的内容如何安排
原则:让读者明白软件产品的用途及其如何使用。具体格式,视情况而定,没有统一的标准。
数据:在文档中,有专门的数据库设计文档,在数据可设计文档中,要对数据的设计进行详尽的描述,而其他文档中涉及的数据库的知识,不需要长篇大论,说明即可。
文档中的图:主要有程序流程图,数据流图。
测试文档:制定好测试计划,怎么测试,测试要求,具体负责人,达到什么样的结果。

三、三层
Dataset
和实体类的使用。
DataSet:在程序中的数据集,存储从数据库中取出的数据。
实体类:即Model。同样是数据库在程序中的映射。
相同:都是根据预设,从数据库中取出数据,用户程序操作。
不同:预设不同。前者是根据SQL
语句取出,后者是通过定义实体类取出。
由他们的不同也可以分析出他们之间的优缺点:
DataSet一般用户集体取数据,因为在DataSet中有跟数据库库一样完善的表,列,行结构。这就决定了它的操作复杂性。
实体类:是用户自己定义,使用灵活,一般适合少量字段的访问,操作简单。

逻辑:并不是有力逻辑层,所有的逻辑都可以放到逻辑层进行处理。
一些不需要访问数据库的,跟界面有关的简单逻辑,放在U
层还是比较方便的,如果是很长的判断逻辑,那么可以以一个方法的形式封装在L层。

总之就是一句话,这些都是都是视情况而定,具体情况,具体分析,变是永远不变的。
实践才是最好的老师。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: