オブジェクトモデルの設計

教務情報システムにおける事例


  1. オブジェクトクラスの識別
  2. データ辞書の用意
  3. 関連の識別
  4. 属性の識別
  5. 継承による洗練
  6. アクセスパスのテスト
  7. オブジェクト図


1.オブジェクトクラスの識別

入学者の登録

入学生,登録,アクター,入試課,学籍簿,システム,(学生の)氏名,学籍番号,所属学科,入学年度,履修状況

開講科目の登録

学科,開講科目,開講科目一覧,学科名,科目名,科目番号,担当教官,必修/選択,単位数,曜日,校時,(教官の)氏名

開講科目の消去

消去

履修届の受付開始

教務係,履修届,受付開始

履修届の登録

学生,科目,成績

履修届の受付終了

受付終了

開講科目一覧の表示

教官,表示

受講者一覧の表示

受講者

成績の登録

成績,点数

学生の成績一覧の表示

 

学科学生の成績集計の表示

 

4年生の成績集計の表示

教授会

成績集計

必修単位数,選択単位数

学生の抹消

抹消

冗長なクラス

入学生(学生と同一)

開講科目(科目と同一)

点数(成績と同一)

問題とは無関係なクラス

入試課,教授会

あいまいなクラス

アクター(複数の意味で使用されている)

システム(より具体的なクラスが存在する)

属性(個々のオブジェクトを説明,記述するために使われる名前)

学籍簿の属性:履修状況,成績

学科の属性:学科名

学生の属性:氏名,学籍番号,所属学科,入学年度,必修単位数,選択単位数

科目の属性:科目名,科目番号,教官,必修/選択,単位数,曜日,校時

教官の属性:氏名

操作(‥する)

登録,消去,受付開始,受付終了,表示,抹消

ロール(役割)

学生のロール:受講者

教官のロール:担当教官

実装の構成要素(実世界と無関係な要素)

 


2.データ辞書の用意

モデル化された実体(クラス,関連,属性,操作)の定義をまとめる.以下にはクラスの定義のみを示す.

学生(Student)

科目を履修できる人であり,唯一に識別できるように学籍番号を割り当てられている.学生はいずれかの学科に所属しており,複数の講義を同時に受講できる.

学科(Department)

大学における専門を同じくする学生の集合である.複数の学科に同時に所属する学生は存在しない.

科目(Subject)

個々の授業である.それぞれの科目には単位数と開講学科があり,必修科目と選択科目に区別される.各科目は一人の教官が担当する.

学籍簿(Record)

学生の履修状況を管理するための帳簿であり,各学生について氏名,学籍番号,所属学科,入学年度,履修登録した科目,その科目の成績が登録されている.

教官(Instructor)

科目を担当する人である.各教官には氏名があり,科目を担当できる.また,担当した科目について成績をつける.


3.関連の識別

入学者の登録

  • 入試課は入学者を登録する.
  • 学生は学科に所属する.
  • 学籍簿は,学生に関する情報を記録する.

開講科目の登録

  • 学科は科目を開講する.
  • 教官は科目を担当する.

開講科目の消去

  • 学科は科目の開講を取りやめる.

履修届の受付開始

  • 教務係は履修届の受付を開始する.

履修届の登録

  • 学生は科目を受講する.
  • 学籍簿は学生の受講状況を記録する.

履修届の受付終了

  • 教務係は履修届の受付を終了する.

開講科目一覧の表示

  • 教官は担当科目の一覧を表示する.

受講者一覧の表示

  • 教官は科目の受講者一覧を表示する.

成績の登録

  • 教官は学籍簿に成績を登録する.
  • 学籍簿は学生が履修科目で取った成績を記録する.

学生の成績一覧の表示

  • 学生は成績一覧を表示する.

学科学生の成績集計の表示

  • 学科は所属学生の成績集計を表示する.

4年生の成績集計の表示

  • 教授会は,4年生の成績集計を表示する.

成績集計

 

学生の抹消

  • 教務係は学生を学籍簿から抹消する.

暗黙に仮定されているもの

  • 学生は大学に所属する.
  • 大学は学科から構成される.
  • 教官は学科に所属する.

  • 不要な関連を除去する.
  • 除去されたクラスを含む関連

    • 入試課は入学者を登録する.
    • 教授会は,4年生の成績集計を表示する.

    問題とは無関係な関連

     

    実装時の構成要素

     

    動作を表わす関連

    • 学科は科目の開講を取りやめる.
    • 教務係は履修届の受付を開始する/終了する.
    • 教官は担当科目の一覧を表示する.
    • 教官は科目の受講者一覧を表示する.
    • 教官は学籍簿に成績を登録する.
    • 学生は成績一覧を表示する.
    • 学科は所属学生の成績集計を表示する.
    • 教務係は学生を学籍簿から抹消する.

    2項関連で表わせる3項関連

     

    他の関連で表現できる関連(派生した関連)

    • 学生は科目を受講する.
    • 学籍簿は学生の受講状況を記録する.
    • 学生は大学に所属する.

  • 関連に対する意味付けを指定する.
  • 学生は学科に所属する.

    学籍番号は学生の限定子

    学科と学生は1対多対応する.(関連名:所属する)

    学科は科目を開講する.

    科目番号は科目の限定子

    学科と科目は1対多対応する.(関連名:開講する)

    教官は科目を担当する.

    科目番号は科目の限定子

    教官と科目は1対多対応する.(関連名:担当する)

    学籍簿は学生が履修科目で取った成績を記録する.

    成績は,科目と学生の関連「履修」の属性

    関連クラス「履修」は学籍簿の構成要素

    学籍簿と履修は1対多対応する.

    大学は学科から構成される.

    学科は大学の構成要素

    大学と学科は1対多対応する.

    教官は学科に所属する.

    学科と教官は1対多対応する.(関連名:所属する)


    4.属性の識別

    入学者の登録

    学生:氏名,学籍番号,所属学科,入学年度

    開講科目の登録

    学科:科目登録

    科目:成績登録,学科名,科目名,科目番号,担当教官,必修/選択,単位数,曜日,校時

    教官:氏名

    開講科目の消去

     

    履修届の受付開始

    学生:履修届受付

    履修届の登録

    履修:学籍番号,科目番号

    履修届の受付終了

     

    開講科目一覧の表示

    教官:担当科目

    受講者一覧の表示

    科目:履修者

    成績の登録

    履修:成績

    学生の成績一覧の表示

     

    学科学生の成績集計の表示

    学科:学生

    4年生の成績集計の表示

    学部:学生

    学生:学年

    成績集計

    学生:必修単位数,選択単位数

    学生の抹消

     

    オブジェクト

    学科,学生,教官,科目

    限定子

    学籍番号,科目番号

    派生属性

    学年(当該学生の学籍番号と現在の年度より計算できる)

    必修単位数,選択単位数(当該学生の履修情報より計算できる)

    名前

     

    オブジェクトID

     

    リンクに付随する属性

    成績(履修は関連クラスなので)

    オブジェクトの内部状態を記述する属性

     

    副次的な属性

     

    他の属性と関係のない属性

     


    5.継承による洗練


    6.アクセスパスのテスト

    ユースケース

    問い合わせ(事前条件・基本系列・代替系列・事後条件より抽出)

    入学者の登録

    • 同一の学籍番号を持つ学生が既に登録されているか検査する.

    開講科目の登録

    • 指定された学科が開講する科目に関する情報を求める.
    • 学科の科目登録フラグを検査する.

    開講科目の消去

     

    履修届の受付開始

    • 指定された学生が履修届を提出済みか検査する.

    履修届の登録

    • 登録科目が開講される曜日と校時を調べる.
    • 同一曜日の同一校時に複数科目が登録されていないことを確認する.
    • 登録科目を開講している学科を調べ,受講者の所属学科と一致することを確認する.

    履修届の受付終了

     

    開講科目一覧の表示

    • 指定された教官が担当する講義について,科目番号と科目名の一覧を検索する.

    受講者一覧の表示

    • 指定された科目について,受講者の学籍番号一覧を学籍簿から検索する.

    成績の登録

    • 指定された学生が指定された科目を履修していることを確認する.
    • 指定された科目の全受講者を求める.

    学生の成績一覧の表示

    • 指定された学生の履修科目名と点数を一覧表示する.

    学科学生の成績集計の表示

    • 学科の開講科目一覧を求める.
    • 科目の成績登録が完了しているか検査する.
    • 学籍番号で指定された学生の所属学科を求める.

    4年生の成績集計の表示

    • 開講科目の一覧を求める.
    • 学籍番号で指定された学生の学年を求める.

    成績集計

    • 全学生を検索する.
    • 各学生が取得した必修単位数と選択単位数を求める.

    学生の抹消

    • 学籍番号で指定された学生を求める.


    7.オブジェクト図


    質問,コメントは掛下(kake@is.saga-u.ac.jp)まで.


    sitemap