系统分析与设计 hw5

领域建模

  • 阅读 Asg_RH 文档,按用例构建领域模型

    task2
  • 数据库建模(E-R 模型)

    physicalmodel

    导出的 MySQL 脚本:

    drop table if exists Hotel;
    
    drop table if exists "Order";
    
    drop table if exists Room;
    
    drop table if exists User;
    
    /*==============================================================*/
    /* Table: Hotel                                                 */
    /*==============================================================*/
    create table Hotel
    (
       hotelID              integer not null,
       roomID               Integer,
       city                 char not null,
       name                 char not null,
       primary key (hotelID)
    );
    
    /*==============================================================*/
    /* Table: "Order"                                               */
    /*==============================================================*/
    create table "Order"
    (
       indateTime           datetime not null,
       outdateTime          datetime not null,
       hotelID              integer not null,
       roomType             char not null,
       orderID              integer not null,
       userID               char(20),
       primary key (orderID)
    );
    
    /*==============================================================*/
    /* Table: Room                                                  */
    /*==============================================================*/
    create table Room
    (
       roomID               Integer not null,
       type                 varchar(20) not null,
       price                integer not null,
       hotelID              integer not null,
       primary key (roomID)
    );
    
    /*==============================================================*/
    /* Table: User                                                  */
    /*==============================================================*/
    create table User
    (
       userID               char(20) not null,
       orderID              integer,
       name                 char(20) not null,
       phone                integer(11) not null,
       email                char(30) not null,
       primary key (userID)
    );
    
    alter table Hotel add constraint FK_Reference_2 foreign key (roomID)
          references Room (roomID) on delete restrict on update restrict;
    
    alter table "Order" add constraint FK_Reference_1 foreign key (hotelID)
          references Hotel (hotelID) on delete restrict on update restrict;
    
    alter table "Order" add constraint FK_Reference_4 foreign key ()
          references User (userID) on delete restrict on update restrict;
    
    alter table "Order" add constraint FK_Reference_5 foreign key ()
          references User (userID) on delete restrict on update restrict;
    
    alter table "Order" add constraint FK_Reference_6 foreign key (userID)
          references User (userID) on delete restrict on update restrict;
    
    alter table User add constraint FK_Reference_3 foreign key (orderID)
          references "Order" (orderID) on delete restrict on update restrict;
    
    
  • 数据库逻辑模型 与 领域模型 的异同

  1. 相同:都是用来抽象出主要的类,描述不同类之间的关系,从而辅助分析与设计

  2. 不同处:领域模型是对用户业务的领域描述的高度抽象,可以帮助需求分析人员快速熟悉目标领域的词汇和操作,从而更好的理解业务需求;不涉及到具体的实现。但数据库逻辑模型涉及到数据库的具体实现,对象是实体和关系(ER),描述了具体的实现方法。

    用户只需要关心领域模型,开发人员通过领域模型的描述,构建数据库逻辑模型。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、 领域建模 a. 阅读 Asg_RH 文档,按用例构建领域模型。按 Task2 要求,请使用工具 UMLet,...
    YuhiDiary阅读 297评论 1 0
  • 2017/3/14 RDBMS:关系型数据库管理系统 关系模型独立于语言 SQL有几种不同类型的语言:数据定义语言...
    ancherl阅读 1,683评论 0 6
  • 2017年最大的变化莫过于我从一名学生变成了一名老师。 2017年1月,我在实习学校和好朋友一起度过了二十岁生日,...
    有肌肉的雪姨阅读 448评论 1 5
  • 宝贝,我想你。 你走之后,每次带七七去医院,看到那些生病需要打针又垫着垫子的孩子们,我都心里一沉,我怕他们得的病跟...
    Alison_刘阅读 828评论 0 0
  • 文/孤鸟差鱼 《你受了伤》 我的天真 伤害了你的莽撞 你受了伤 《别太善良》 你叫我别太善良 可是你 却把我伤害了...
    孤鸟差鱼阅读 302评论 5 4