1、 领域建模
-
a. 阅读 Asg_RH 文档,按用例构建领域模型。
- 按 Task2 要求,请使用工具 UMLet,截图格式务必是 png 并控制尺寸
- 说明:请不要受 PCMEF 层次结构影响。你需要识别实体(E)和 中介实体(M,也称状态实体)
- 在单页面应用(如 vue)中,E 一般与数据库构建有关, M 一般与 store 模式 有关
-
在 java web 应用中,E 一般与数据库构建有关, M 一般与 session 有关
-
b. 数据库建模(E-R 模型)
- 按 Task 3 要求,给出系统的 E-R 模型(数据逻辑模型)
- 建模工具 PowerDesigner(简称PD) 或开源工具 OpenSystemArchitect
- 不负责的链接 http://www.cnblogs.com/mcgrady/archive/2013/05/25/3098588.html
- 导出 Mysql 物理数据库的脚本
- 简单叙说 数据库逻辑模型 与 领域模型 的异同
脚本如下:
-- +---------------------------------------------------------
-- | MODEL : Task3
-- | AUTHOR :
-- | GENERATED BY: Open System Architect
-- +---------------------------------------------------------
-- | WARNING : Review before execution
-- +---------------------------------------------------------
-- +---------------------------------------------------------
-- | CREATE
-- +---------------------------------------------------------
CREATE TABLE `USER`
(
UserID INTEGER NOT NULL,
email VARCHAR(20) NOT NULL,
PRIMARY KEY (UserID)
);
CREATE TABLE `HOTEL`
(
HotID INTEGER NOT NULL,
hotelname VARCHAR(20) NOT NULL,
hoteladdress VARCHAR(100) NOT NULL,
PRIMARY KEY (HotID)
);
CREATE TABLE `RESERVATION`
(
ResID INTEGER NOT NULL,
hotelid INTEGER NOT NULL,
roomid INTEGER NOT NULL,
humannum INTEGER NOT NULL,
checkintime VARCHAR(10) NOT NULL,
checkouttime VARCHAR(10) NOT NULL,
PRIMARY KEY (ResID)
);
CREATE TABLE `CARD`
(
CardID INTEGER NOT NULL,
Cardinfo VARCHAR(200) NOT NULL,
ResID INTEGER NOT NULL,
PRIMARY KEY (CardID)
);
CREATE INDEX idxCARD1 ON CARD
(
ResID
);
CREATE TABLE `ROOM`
(
RoomID INTEGER NOT NULL,
roomtype INTEGER NOT NULL,
PRIMARY KEY (RoomID)
);
CREATE TABLE `contain`
(
ResID INTEGER NOT NULL,
RoomID INTEGER NOT NULL,
PRIMARY KEY (ResID,RoomID)
);
领域模型关心的是满足用户需求的软件的工作领域细分和各个领域之间的关系。
数据模型关注的是各个数据的类型,定义,存储以及他们之间的关系。
两者相同的点在于均考虑领域,但是前者更关注领域及关系,后者更关注领域中涉及到的数据操作。
网友评论