系統(tǒng)分析與設(shè)計(jì)作業(yè)5

1粹湃、 領(lǐng)域建模

? ? a. 閱讀 Asg_RH 文檔壹将,按用例構(gòu)建領(lǐng)域模型

???????按 Task2 要求府蛇,請(qǐng)使用工具 UMLet刹前,截圖格式務(wù)必是 png 并控制尺寸

? ? ?? 說(shuō)明:請(qǐng)不要受 PCMEF 層次結(jié)構(gòu)影響泳赋。你需要識(shí)別實(shí)體(E)和 中介實(shí)體(M,也稱(chēng)狀態(tài)實(shí)體)

????????????在 java web 應(yīng)用中喇喉,E 一般與數(shù)據(jù)庫(kù)構(gòu)建有關(guān)祖今, M 一般與 session 有關(guān)

????????????在 java web 應(yīng)用中,E 一般與數(shù)據(jù)庫(kù)構(gòu)建有關(guān), M 一般與 session 有關(guān)

領(lǐng)域模型

????b. 數(shù)據(jù)庫(kù)建模(E-R 模型)

? ? ·????按 Task 3 要求千诬,給出系統(tǒng)的 E-R 模型(數(shù)據(jù)邏輯模型)

? ? ? ?? 建模工具 PowerDesigner(簡(jiǎn)稱(chēng)PD) 或開(kāi)源工具 OpenSystemArchitect

????????導(dǎo)出 Mysql 物理數(shù)據(jù)庫(kù)的腳本

????????簡(jiǎn)單敘說(shuō) 數(shù)據(jù)庫(kù)邏輯模型 與 領(lǐng)域模型 的異同


E-R 模型


? -- MySQL Script generated by MySQL Workbench

-- Sun Apr 29 21:30:30 2018

-- Model: New Model? ? Version: 1.0

-- MySQL Workbench Forward Engineering

CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;

USE `mydb` ;

-- -----------------------------------------------------

-- Table `mydb`.`Location`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Location` (

? `LocationId` INT NOT NULL,

? `Name` VARCHAR(45) NULL,

? `Hotle_HotelId` INT NOT NULL,

? PRIMARY KEY (`LocationId`),

? INDEX `fk_Location_hotle_idx` (`Hotle_HotelId` ASC),

? CONSTRAINT `fk_Location_hotle`

? ? FOREIGN KEY (`Hotle_HotelId`)

? ? REFERENCES `mydb`.`Hotle` (`HotelId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `mydb`.`Hotle`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Hotle` (

? `HotelId` INT NOT NULL,

? `Name` VARCHAR(45) NOT NULL,

? `Address` VARCHAR(45) NOT NULL,

? `Location_LocationId` INT NOT NULL,

? PRIMARY KEY (`HotelId`, `Location_LocationId`),

? INDEX `fk_hotle_Location1_idx` (`Location_LocationId` ASC),

? CONSTRAINT `fk_hotle_Location1`

? ? FOREIGN KEY (`Location_LocationId`)

? ? REFERENCES `mydb`.`Location` (`LocationId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `mydb`.`Room`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Room` (

? `RoomId` INT NOT NULL,

? `Type` VARCHAR(45) NULL,

? `Hotle_HotelId` INT NOT NULL,

? PRIMARY KEY (`RoomId`, `Hotle_HotelId`),

? INDEX `fk_room_hotle1_idx` (`Hotle_HotelId` ASC),

? CONSTRAINT `fk_room_hotle1`

? ? FOREIGN KEY (`Hotle_HotelId`)

? ? REFERENCES `mydb`.`Hotle` (`HotelId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `mydb`.`Traveller`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Traveller` (

? `TravellerId` INT NOT NULL,

? `Name` VARCHAR(45) NULL,

? PRIMARY KEY (`TravellerId`))

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `mydb`.`Reservation`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Reservation` (

? `ReservationId` INT NOT NULL,

? `HotelId` INT NULL,

? `TravellerId` INT NULL,

? `CheckIn` DATE NULL,

? `CheckOut` DATE NULL,

? `Traveller_TravellerId` INT NOT NULL,

? `Hotle_HotelId` INT NOT NULL,

? `Hotle_Location_LocationId` INT NOT NULL,

? `Room_RoomId` INT NOT NULL,

? `Room_Hotle_HotelId` INT NOT NULL,

? PRIMARY KEY (`ReservationId`, `Hotle_HotelId`, `Hotle_Location_LocationId`, `Room_RoomId`, `Room_Hotle_HotelId`),

? INDEX `fk_Reservation_Traveller1_idx` (`Traveller_TravellerId` ASC),

? INDEX `fk_Reservation_Hotle1_idx` (`Hotle_HotelId` ASC, `Hotle_Location_LocationId` ASC),

? INDEX `fk_Reservation_Room1_idx` (`Room_RoomId` ASC, `Room_Hotle_HotelId` ASC),

? CONSTRAINT `fk_Reservation_Traveller1`

? ? FOREIGN KEY (`Traveller_TravellerId`)

? ? REFERENCES `mydb`.`Traveller` (`TravellerId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION,

? CONSTRAINT `fk_Reservation_Hotle1`

? ? FOREIGN KEY (`Hotle_HotelId` , `Hotle_Location_LocationId`)

? ? REFERENCES `mydb`.`Hotle` (`HotelId` , `Location_LocationId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION,

? CONSTRAINT `fk_Reservation_Room1`

? ? FOREIGN KEY (`Room_RoomId` , `Room_Hotle_HotelId`)

? ? REFERENCES `mydb`.`Room` (`RoomId` , `Hotle_HotelId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION)

ENGINE = InnoDB;

-- -----------------------------------------------------

-- Table `mydb`.`Payment`

-- -----------------------------------------------------

CREATE TABLE IF NOT EXISTS `mydb`.`Payment` (

? `Type` INT NULL,

? `Price` INT NULL,

? `Security code` VARCHAR(45) NULL,

? `Traveller_TravellerId` INT NOT NULL,

? `Reservation_ReservationId` INT NOT NULL,

? `Reservation_Hotle_HotelId` INT NOT NULL,

? `Reservation_Hotle_Location_LocationId` INT NOT NULL,

? INDEX `fk_Payment_Traveller1_idx` (`Traveller_TravellerId` ASC),

? INDEX `fk_Payment_Reservation1_idx` (`Reservation_ReservationId` ASC, `Reservation_Hotle_HotelId` ASC, `Reservation_Hotle_Location_LocationId` ASC),

? CONSTRAINT `fk_Payment_Traveller1`

? ? FOREIGN KEY (`Traveller_TravellerId`)

? ? REFERENCES `mydb`.`Traveller` (`TravellerId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION,

? CONSTRAINT `fk_Payment_Reservation1`

? ? FOREIGN KEY (`Reservation_ReservationId` , `Reservation_Hotle_HotelId` , `Reservation_Hotle_Location_LocationId`)

? ? REFERENCES `mydb`.`Reservation` (`ReservationId` , `Hotle_HotelId` , `Hotle_Location_LocationId`)

? ? ON DELETE NO ACTION

? ? ON UPDATE NO ACTION)

ENGINE = InnoDB;

相同點(diǎn)

都是對(duì)實(shí)際問(wèn)題的抽象撒踪,用于更直觀(guān)的顯示需求

兩者都注重在對(duì)問(wèn)題中的對(duì)象進(jìn)行建模。 E-R模型中大渤,問(wèn)題對(duì)象為實(shí)體制妄;領(lǐng)域模型中,問(wèn)題對(duì)象轉(zhuǎn)化為類(lèi)泵三。

兩者在構(gòu)建時(shí)有相似之處耕捞,領(lǐng)域模型需要分析所有的名詞,從中提取出業(yè)務(wù)實(shí)體烫幕,區(qū)分名詞中的屬性俺抽,角色,實(shí)體较曼,實(shí)例磷斧,形成操作實(shí)體集合;E-R模型的構(gòu)建方法與此類(lèi)似捷犹。不過(guò)稍有不同在于忽略中介實(shí)體

不同點(diǎn)

領(lǐng)域模型側(cè)重于顯示不同對(duì)象之間的關(guān)系弛饭,而不是對(duì)象內(nèi)的具體實(shí)現(xiàn)。領(lǐng)域模型需要標(biāo)注對(duì)象之間的對(duì)應(yīng)關(guān)系(one-one, one-many, many-one, many-many). E-R模型則需要八每個(gè)實(shí)體內(nèi)部也進(jìn)行詳細(xì)的設(shè)計(jì)萍歉。這里體現(xiàn)兩者抽象程度的區(qū)分

E-R 模型中只涉及具體實(shí)際可視對(duì)象侣颂,即需要被記錄的對(duì)象。而領(lǐng)域模型中顯然既包括具體的實(shí)體集E枪孩, 也包含有中介實(shí)體M

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末憔晒,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蔑舞,更是在濱河造成了極大的恐慌拒担,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,884評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件攻询,死亡現(xiàn)場(chǎng)離奇詭異从撼,居然都是意外死亡颊亮,警方通過(guò)查閱死者的電腦和手機(jī)杆煞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人桐经,你說(shuō)我怎么就攤上這事≌懵耍” “怎么了阴挣?”我有些...
    開(kāi)封第一講書(shū)人閱讀 158,369評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)纺腊。 經(jīng)常有香客問(wèn)我畔咧,道長(zhǎng)茎芭,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,799評(píng)論 1 285
  • 正文 為了忘掉前任誓沸,我火速辦了婚禮梅桩,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拜隧。我一直安慰自己宿百,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,910評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布洪添。 她就那樣靜靜地躺著垦页,像睡著了一般。 火紅的嫁衣襯著肌膚如雪干奢。 梳的紋絲不亂的頭發(fā)上痊焊,一...
    開(kāi)封第一講書(shū)人閱讀 50,096評(píng)論 1 291
  • 那天,我揣著相機(jī)與錄音忿峻,去河邊找鬼薄啥。 笑死,一個(gè)胖子當(dāng)著我的面吹牛逛尚,可吹牛的內(nèi)容都是我干的罪佳。 我是一名探鬼主播,決...
    沈念sama閱讀 39,159評(píng)論 3 411
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼黑低,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼赘艳!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起克握,我...
    開(kāi)封第一講書(shū)人閱讀 37,917評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蕾管,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后菩暗,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體掰曾,經(jīng)...
    沈念sama閱讀 44,360評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,673評(píng)論 2 327
  • 正文 我和宋清朗相戀三年停团,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了旷坦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,814評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡佑稠,死狀恐怖秒梅,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情舌胶,我是刑警寧澤捆蜀,帶...
    沈念sama閱讀 34,509評(píng)論 4 334
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響辆它,放射性物質(zhì)發(fā)生泄漏誊薄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,156評(píng)論 3 317
  • 文/蒙蒙 一锰茉、第九天 我趴在偏房一處隱蔽的房頂上張望呢蔫。 院中可真熱鬧,春花似錦飒筑、人聲如沸咐刨。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)定鸟。三九已至,卻和暖如春著瓶,著一層夾襖步出監(jiān)牢的瞬間联予,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,123評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工材原, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留沸久,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,641評(píng)論 2 362
  • 正文 我出身青樓余蟹,卻偏偏與公主長(zhǎng)得像卷胯,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子威酒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,728評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容