《GO Home Trash!》UML类图,ER图以及数据库设计
《Go Home Trash!》UML类图 ER图以及数据库中数据表
分析:
这款软件经过我们前期的讨论以及需求分析,确定了用户,客服以及管理员三个实体。在设计UML类图时,对各个实体之间的关系进行了更加细节的分析,完成了UML类图。
ER图分为实体、属性、关系三个核心部分,其中
实体(entity):
即数据模型中的数据对象(即数据表),用长方体来表示,每个实体都有自己的实体成员(entity member)或者说实体对象(entity instance),例如学生实体里包括张三、李四等。
属性(attribute):
即实体所具有的属性,例如学生具有姓名、学号、年级等属性,用椭圆形表示,属性分为唯一属性( unique attribute)和非唯一属性,唯一属性指的是唯一可用来标识该实体实例或者成员的属性,用下划线表示,一般来讲实体都至少有一个唯一属性。
关系(relationship):
用来表现数据对象与数据对象之间的联系,例如学生的实体和成绩表的实体之间有一定的联系,每个学生都有自己的成绩表,这就是一种关系,关系用菱形来表示。
我们在分析时,发现有些之前没有注意到的实体。比如一些可供识别的垃圾的信息,因为我们设计了一个激励用户继续使用的机制,所以还设计了商城。因此,根据实体以及属性的概念,这个商品也应该独立为一个实体。在分析管理过程时,我们觉得有必要存储一下每一次的管理或者操作记录,而且,这些操作记录应该是操作的时候才会产生,所以对应属性应该连在关系操作上。设计如下(如果有不对或者不完善的地方希望大家能够指出,共同进步!)
UML类图:
ER图:
数据库中数据表:
用户表
列 |
数据类型 |
约束 |
ID |
整数 |
主键 |
积分 |
整数 |
>0 |
密码 |
CHAR(15) |
|
地址 |
CHAR(30) |
管理员
列 |
数据类型 |
约束 |
账号 |
整数 |
主键 |
权限 |
整数 |
垃圾
列 |
数据类型 |
约束 |
类别 |
CHAR(25) |
主键 |
性质 |
CHAR(30) |
NOT NULL |
客服
列 |
数据类型 |
约束 |
客服ID |
整数 |
主键 |
密码 |
CHAR(15) |
宣传视频
列 |
数据类型 |
约束 |
视频编号 |
CHAR(10) |
主键 |
URL链接 |
CHAR(50) |
商品
列 |
数据类型 |
约束 |
编号 |
整数 |
主键 |
价格 |
整数 |
〉0 |
积分可抵扣的金钱数 |
整数 |
操作记录
列 |
数据类型 |
约束 |
操作编码 |
整数 |
主键 |
操作记录 |
CHAR(100) |
总结和感悟:
在这一次实验中,我发现对这些图的细节概念还存在许多问题,在做的过程中也查阅了很多资料(CSDN各位),最后的结果可能还有不足甚至错误,但在过程中确实学到了不少东西,继续学习
《GO Home Trash!》UML类图,ER图以及数据库设计的更多相关文章
- 关于ER图和UML图之间的对比
ER图与UML图 ER图:实体-联系图(Entity-Relation Diagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象).属性和联系的方法,用来 ...
- 从 Java 代码逆向工程生成 UML 类图和序列图
from:http://blog.itpub.net/14780914/viewspace-588975/ 本文面向于那些软件架构师,设计师和开发人员,他们想使用 IBM® Rational® Sof ...
- 在EA中用ER图生成数据库
ER图 E-R图也称实体-联系图(Entity Relationship Diagram).提供了表示实体类型.属性和联系的方法.用来描写叙述现实世界的概念模型. 实体就是看的见摸得着或者能被人感知接 ...
- 数据库设计E-R图
项目数据库的设计主要划分为以下6个阶段,本篇主要着重来介绍概念设计阶段 A.系统需求分析阶段B.概念结构设计阶段C.逻辑结构设计阶段D.物理结构设计阶段E.数据库实施阶段F.数据库运行与维护阶段 E- ...
- 数据库设计规范、E-R图、模型图
(1)数据库设计的优劣: 糟糕的数据库设计: ①数据冗余冗余.存储空间浪费. ②数据更新和插入异常. ③程序性能差. 良好的数据库设计 ①节省数据的存储空间. ②能够保证数据的完整新. ③方便进行数据 ...
- powerdesign、navacat、ER图、uml、类图、时序图
关于建表和生成实体以及ER图的简便方法 a:用navacat客户端生成简单的ER图,并生成建表sql,执行生成表. b:用powerdesign连接数据库,反向生成带有注释的ER图. c:用ideal ...
- 软件工程 #02# Entity Relationship Diagram VS. 用 UML 中的类图表示 E-R 图
不同的老师叫我们画 E-R 图居然是不一样的,于是我仔细研究了一番.. 通常所说的 E-R 图(外文全称 Entity Relationship Diagram,简称 ERD)长这个样子: 而有时候它 ...
- uml类图和er图中主外键的表示区别
在er图也就是数据库中,无论是mysql/oracle都是从表引用主表的pk作为外键. 而在uml类图表示法中,他们的顺序则刚好相反,从主对象导向到子对象,如下: 主体是资金借款方,征信信息和资金借款 ...
- ER图与UML图
ER图:实体-联系图(Entity-Relation Diagram)用来建立数据模型,在数据库系统概论中属于概念设计阶段,ER图提供了表示实体(即数据对象).属性和联系的方法,用来描述现实世界的概念 ...
随机推荐
- Html5web全栈前端开发_angular框架
昵称领取全套angular视频教程 一.Typescript typescript简称ts,是js语法的超集,很多js新的语法就借鉴了ts语法.ts是由微软团队维护的 1.1 TS简介 1.1.1 G ...
- 【Android Studio】提示代码忽略大小写
在 Preference... 中找到如下,设置 Case sensitive completion 为 None 即可,如下图: PS: 该截图是 Intellij IDEA (Android St ...
- 使用Kubeadm创建k8s集群之节点部署(三十一)
前言 本篇部署教程将讲述k8s集群的节点(master和工作节点)部署,请先按照上一篇教程完成节点的准备.本篇教程中的操作全部使用脚本完成,并且对于某些情况(比如镜像拉取问题)还提供了多种解决方案.不 ...
- mysql新增一列为主键
mysql新增一列为主键 由于一次疏忽在建表的时候忘记加上主键了, 但是目前来说表里面又有数据了,所以不能删表重建,所以需要新加一列主键 然后我就新加一列,并且为auto_increment,然后设置 ...
- React-Native之打包发布(Android)
React-Native之打包发布(Android) 一,介绍与需求 移动端打包发布到应用市场 二,发布配置 注意:以下所有操作都在win10下进行,React Native版本0.59.5,andr ...
- 【数据结构学习】关于HashMap的那些事儿
涉及数据结构 红黑树 链表 哈希 从CRUD说起 预热知识: DEFAULT_INITIAL_CAPACITY = 1 << 4, HashMap默认容量为16(n << m意 ...
- PDF.js 详情解说
pdf.js资源下载 点我下载 自定义默认加载的pdf资源 在web/view.js中我们可以通过DEFAULT_URL设置默认加载的pdf.通过上面代码我们也可以看出来可以通过后缀名来指定加载的pd ...
- xtuils
xutils的使用必须导入一个依赖 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceS ...
- API开发之接口安全(二)-----sign校验
上一章 我们说了 sign的生成 那么 我们如何确定这个sign的准确性呢 下来 我们说说 校验sign的那些事 在拿到header里面的内容之后 我们首先需要对其内容的基本参数做一个校验 我们补充下 ...
- Kafka 系列(五)—— 深入理解 Kafka 副本机制
一.Kafka集群 Kafka 使用 Zookeeper 来维护集群成员 (brokers) 的信息.每个 broker 都有一个唯一标识 broker.id,用于标识自己在集群中的身份,可以在配置文 ...