领域建模
阅读 Asg_RH 文档,按用例构建领域模型。
数据库建模(E-R模型)
导出Mysql脚本:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65-- +---------------------------------------------------------
-- | MODEL : ReserveHotel
-- | AUTHOR : Jarvis
-- | GENERATED BY: Open System Architect
-- +---------------------------------------------------------
-- | WARNING : Review before execution
-- +---------------------------------------------------------
-- +---------------------------------------------------------
-- | CREATE
-- +---------------------------------------------------------
CREATE TABLE `Hotel`
(
hotel_id INTEGER NOT NULL,
hotel_name VARCHAR(64) NOT NULL,
rooms_available INTEGER NOT NULL,
PRIMARY KEY (hotel_id)
);
CREATE TABLE `Reservation`
(
reserve_id INTEGER NOT NULL,
city VARCHAR(64) NOT NULL,
check_in_date DATE NOT NULL,
number_of_nights INTEGER NOT NULL,
hotel_id INTEGER NOT NULL,
required_rooms INTEGER NOT NULL,
number_of_adults INTEGER NOT NULL,
number_of_children INTEGER NOT NULL,
price INTEGER NOT NULL,
PRIMARY KEY (reserve_id)
);
CREATE TABLE `Customer`
(
user_id VARCHAR(64) NOT NULL,
user_full_name VARCHAR(64) NOT NULL,
email VARCHAR(64) NOT NULL,
PRIMARY KEY (user_id)
);
CREATE TABLE `Order`
(
order_id INTEGER NOT NULL,
user_id VARCHAR(64) NOT NULL,
user_full_name VARCHAR(64) NOT NULL,
card_id INTEGER NOT NULL,
PRIMARY KEY (order_id)
);
CREATE TABLE `CreditCard`
(
card_id INTEGER NOT NULL,
user_id VARCHAR(64) NOT NULL,
balance INTEGER NOT NULL,
PRIMARY KEY (card_id)
);
CREATE TABLE `Room`
(
room_id INTEGER NOT NULL,
state BIT NOT NULL,
check_out_date DATE,
PRIMARY KEY (room_id)
);
数据库逻辑模型与领域模型的异同
数据库逻辑模型,是具体的DBMS所支持的数据模型,此模型既要面向用户,又要面向系统 ,主要用于反映的是系统分析设计人员对数据存储的观点,是对概念数据模型进一步的分解和细化。该模型主要是面对开发人员的。例如,中介实体不会出现在数据库逻辑模型中。
而领域模型,反映的是相关业务概念以及其关系,是用户业务描述的高度抽象。它专注于分析问题领域本身,发掘重要的业务领域概念,并建立业务领域概念之间的关系。
两者的相同点在于,都属于对于抽象对象的可视化表示。
本文为博主原创文章,转载请注明出处。