系統分析與設計【lesson 7】
阿新 • • 發佈:2018-12-26
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
- 匯出 Mysql 物理資料庫的指令碼
- 簡單敘說 資料庫邏輯模型與領域模型 的異同
E-R模型如下:
匯出指令碼:
-- +---------------------------------------------------------
-- | MODEL : test
-- | AUTHOR :
-- | GENERATED BY: Open System Architect
-- +---------------------------------------------------------
-- | WARNING : Review before execution
-- +---------------------------------------------------------
-- +---------------------------------------------------------
-- | CREATE
-- +---------------------------------------------------------
CREATE TABLE ``
(
);
CREATE TABLE `customer`
(
id INTEGER(16) NOT NULL,
name VARCHAR(30),
email VARCHAR (18),
PRIMARY KEY (id)
);
CREATE TABLE `reservation`
(
id INTEGER(16) NOT NULL,
check_in DATE,
check_out DATE,
total_cost FLOAT,
roomID INTEGER(16),
customerID INTEGER(16),
PRIMARY KEY (id)
);
CREATE TABLE `city`
(
id INTEGER(18) NOT NULL,
name VARCHAR(30),
PRIMARY KEY (id)
);
CREATE TABLE `hotel`
(
id INTEGER(16) NOT NULL,
name VARCHAR(30),
cityID INTEGER,
PRIMARY KEY (id)
);
CREATE TABLE `room`
(
id INTEGER(16) NOT NULL,
hotelID INTEGER(16) NOT NULL,
type VARCHAR(20),
cost FLOAT,
PRIMARY KEY (id,hotelID)
);