システム分析と設計-5回目の作業


システム分析と設計-5回目の作業
a.Asg_を読むRHドキュメントは、使用例に従ってレルムモデルを構築します.
Task 2の要件に従って、ツール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物理データベースをエクスポートするスクリプト
  • データベース論理モデルと分野モデルの異同
  • を簡単に述べる.
    データロジックモデル
    データ物理モデル
    Mysqlエクスポートスクリプト
    if exists(select 1 from sys.sysforeignkey where role='FK_HOTELS_REFERENCE_LOCATION') then
        alter table hotels
           delete foreign key FK_HOTELS_REFERENCE_LOCATION
    end if;
    
    if exists(select 1 from sys.sysforeignkey where role='FK_HOTELS_REFERENCE_ROOMS') then
        alter table hotels
           delete foreign key FK_HOTELS_REFERENCE_ROOMS
    end if;
    
    if exists(select 1 from sys.sysforeignkey where role='FK_ORDERS_REFERENCE_HOTELS') then
        alter table orders
           delete foreign key FK_ORDERS_REFERENCE_HOTELS
    end if;
    
    if exists(select 1 from sys.sysforeignkey where role='FK_ORDERS_REFERENCE_ROOMS') then
        alter table orders
           delete foreign key FK_ORDERS_REFERENCE_ROOMS
    end if;
    
    if exists(select 1 from sys.sysforeignkey where role='FK_ORDERS_REFERENCE_PAYMENT') then
        alter table orders
           delete foreign key FK_ORDERS_REFERENCE_PAYMENT
    end if;
    
    if exists(select 1 from sys.sysforeignkey where role='FK_ROOMS_REFERENCE_DESCRIPT') then
        alter table rooms
           delete foreign key FK_ROOMS_REFERENCE_DESCRIPT
    end if;
    
    drop table if exists description;
    
    drop table if exists hotels;
    
    drop table if exists location;
    
    drop table if exists orders;
    
    drop table if exists payment;
    
    drop table if exists rooms;
    
    /*==============================================================*/
    /* Table: description                                           */
    /*==============================================================*/
    create table description 
    (
       description_id       integer                        not null,
       type                 long varchar                   null,
       price                float                          null,
       "num of people"      integer                        null,
       constraint PK_DESCRIPTION primary key clustered (description_id)
    );
    
    /*==============================================================*/
    /* Table: hotels                                                */
    /*==============================================================*/
    create table hotels 
    (
       hotel_id             integer                        not null,
       loacation_id         integer                        null,
       room_id              integer                        null,
       names                long varchar                   not null,
       rating               float                          not null,
       constraint PK_HOTELS primary key clustered (hotel_id)
    );
    
    /*==============================================================*/
    /* Table: location                                              */
    /*==============================================================*/
    create table location 
    (
       loacation_id         integer                        not null,
       code                 text                           not null,
       name                 text                           not null,
       hot                  bit                            not null,
       constraint PK_LOCATION primary key clustered (loacation_id)
    );
    
    /*==============================================================*/
    /* Table: orders                                                */
    /*==============================================================*/
    create table orders 
    (
       order_id             integer                        not null,
       hotel_id             integer                        null,
       room_id              integer                        null,
       payment_id           integer                        null,
       "check in date"      date                           null,
       "check out date"     date                           null,
       constraint PK_ORDERS primary key clustered (order_id)
    );
    
    /*==============================================================*/
    /* Table: payment                                               */
    /*==============================================================*/
    create table payment 
    (
       payment_id           integer                        not null,
       "credit card type"   long varchar                   null,
       "card number"        long varchar                   null,
       "card secruity code" long varchar                   null,
       "cardholder's address details" long varchar                   null,
       constraint PK_PAYMENT primary key clustered (payment_id)
    );
    
    /*==============================================================*/
    /* Table: rooms                                                 */
    /*==============================================================*/
    create table rooms 
    (
       room_id              integer                        not null,
       description_id       integer                        null,
       num                  integer                        not null,
       constraint PK_ROOMS primary key clustered (room_id)
    );
    
    alter table hotels
       add constraint FK_HOTELS_REFERENCE_LOCATION foreign key (loacation_id)
          references location (loacation_id)
          on update restrict
          on delete restrict;
    
    alter table hotels
       add constraint FK_HOTELS_REFERENCE_ROOMS foreign key (room_id)
          references rooms (room_id)
          on update restrict
          on delete restrict;
    
    alter table orders
       add constraint FK_ORDERS_REFERENCE_HOTELS foreign key (hotel_id)
          references hotels (hotel_id)
          on update restrict
          on delete restrict;
    
    alter table orders
       add constraint FK_ORDERS_REFERENCE_ROOMS foreign key (room_id)
          references rooms (room_id)
          on update restrict
          on delete restrict;
    
    alter table orders
       add constraint FK_ORDERS_REFERENCE_PAYMENT foreign key (payment_id)
          references payment (payment_id)
          on update restrict
          on delete restrict;
    
    alter table rooms
       add constraint FK_ROOMS_REFERENCE_DESCRIPT foreign key (description_id)
          references description (description_id)
          on update restrict
          on delete restrict;
    

    データベース論理モデルとレルムモデルの異同
  • データベースロジックモデルは相対的に抽象的で、ロジックが統一され、構造が安定した構造を借りて、データ倉庫システムが要求するデータストレージ目標を実現し、大量の分析応用をサポートし、業務知能を実現する重要な基礎であり、同時にデータ管理分析のツールと交流の有効な手段でもある.
  • レルムモデルは、ビジネスロールとビジネスエンティティとの間でビジネスを実行するためにどのように連絡し、協力すべきかを抽象化しています.オブジェクト・モデルは、ビジネス・ロールの内部の観点からビジネス・インスタンスを定義します.このモデルは、予想される効果を生成するために、ビジネス・スタッフと彼らが処理および使用するオブジェクトとの間に持つべき静的および動的関係を決定し、ビジネスで担うロールと現在の職責を重視します.
  • 同じ点:エンティティオブジェクト間の関係を定義します.
  • 差異点:データベース論理モデルはオブジェクト属性間の関係を強調し、レルムモデルはオブジェクト間の動作間の関係を強調する.