スキップしてメイン コンテンツに移動

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ 問1 設問2 (2)


平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ
http://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2014h26_1/2014h26h_db_pm1_qs.pdf

問1

 設問2 図1,図2及び〔D部長の指摘事項〕について,(1)~(4)に答えよ。

 (2) 指摘事項①について,図2中の  a    d  に入れる属性名を答えよ。



  工程 (工程ID,工程名,順序番号)

  バグ種別 (バグ種別ID,バグ種別名,修正有無)

  優先度 (緊急度コード,スケジュール影響度,重大度コード,ソフトウェア影響度,
        優先度コード,リソース投入度)

  チーム (チームID,チーム名,リーダメンバID)

  メンバ (メンバID,氏名,主担当チームID,兼任担当チームID)

  バグ (バグID,発見日,発見工程ID,発見メンバID,発見内容,緊急度コード,
       重大度コード,同一原因バグID,バグ種別ID,作り込み工程ID,
       発見すべき工程ID,  a    b  

  対応 (バグID,対応連番,  c    d  ,開始日時,終了日時)

  調査 (バグID,対応連番,調査内容,確認方法)

  修正 (バグID,対応連番,修正内容)

  確認 (バグID,対応連番,確認結果)


図2 C君が設計した関係スキーマ(未完成)


未完成の属性となっているのは、バグと対応である。

問題を深堀して、ここに存在しない属性候補を検討する。

確認漏れを防ぐため、バグの属性、対応の属性に対して、問題用紙にIDをつけて、
問題のどこがどの項目を示したものかを印をつけて、後戻りや再検討などに時間を
取られないようにする。

バグの属性 bXX

b01 バグID,b02 発見日,b03 発見工程ID,b04 発見メンバID,b05 発見内容,
b06 緊急度コード,b07 重大度コード,b08 同一原因バグID,b09 バグ種別ID,
b10 作り込み工程ID,b11 発見すべき工程ID

対応の属性 tXX

t01 バグID,t02 対応連番,t03 開始日時,t04 終了日時

調査、修正、確認の属性 aXX

a01 調査内容,a02 確認方法,a03 修正内容,a04 確認結果

表1 バグ解決プロセスより

バグの登録
  • バグを発見しメンバは,バグの発見日(b01),発見した工程(b03),発見したメンバ(b04),発見内容(b05)を登録する。登録時のバグのステータスは’未着手’である。

   ステータス バグの属性が1つ見つかった。登録時に設定すべきものである。

バグの発見内容の確認
  • リーダは,ステータスが’未着手’のバグを対象に,バグの発見内容(b05)を確認し、スケジュール影響度(b06)及びソフトウェア影響度(b07)を決定し,ステータスを’調査中’に変更する。
   すべての属性は、定義済み

バグへの対応
  • バグの原因調査,バグの修正,バグの修正内容の確認の各作業を総称して対応と呼び,その対応がどの作業であるかを,対応区分として記録する。
  • 対応ごとにメンバを1人割り当てて登録する。
  • 各対応を開始したら開始日時(t03)を,終了したら終了日時(t04)を,それぞれ更新する。
  対応区分 対象の属性を1つ見つけた。
  対応ごとにメンバを1人割り当てる となれば、 属性として メンバID が必要ということ。

バグへの対応/バグの原因調査
  • バグの原因調査担当に割り当てられたメンバは,バグの原因調査を行い,調査内容(a01),再現方法(a02)を記録する。
  • 既知のバグと同一原因のバグの場合は,その既知のバグ(b08)を記録し,ステータスを’解決済’に更新する。
  • 既知のバグと同一原因でなかった場合は,バグ種別(b09)を記録し,成果物の修正が必要なバグ種別の場合,ステータスを’修正中’に,不要な場合,ステータスを’解決済’に更新する。
  すべての属性は、定義済み

バグへの対応/バグの修正
  • バグの修正担当に割り当てられたメンバは,バグの原因調査の結果に基づいて,一つまたは複数の成果物の修正を行う。
  • 修正後に,修正内容(a03)と修正した成果物を記録し,ステータスを’確認中’に更新する。
  修正した成果物を記録する為には、成果物ID が必要ということ。
  成果物IDは、〔Bプロジェクトの概要〕の(5)に示されている。

  (5) 各開発工程では,設計書,ソースコードなどのさまざまな成果物が作成される。成果物は成果物IDで一意に識別される。成果物には,成果物名,成果物の作成工程,作成担当チームが記される。

  4つの属性を発見したので、試験ならば、時間が惜しいので、属性候補検討を中断するが、今は勉強なので最後まで進める。

バグへの対応/バグの修正内容の確認
  • バグの修正内容の確認担当に割り当てられたメンバは,バグが解決したかどうかの確認テストを実施し,確認結果(a04)を記録する。
  • 確認テストの結果,バグが解決していた場合は,ステータスを’解決済’に更新する。
  • 確認テストの結果,バグが解決していない場合は,ステータスを’調査中’に更新し、バグの原因調査(a01)を新たな対応として実施する。
    新たな属性候補は、発見できず。

バグのクローズ
  • リーダは,ステータスが’解決済’のバグを対象に,成果物の修正が必要なバグ種別(b09)のバグの対応内容(a03)を確認し,バグの原因を作り込んだと考えられる工程(b10),バグを発見すべきと考えられる工程(b11)を記録する。
  • ステータスが’解決済’のバグについて完了日を記録し、ステータスを’クローズ済’に更新し、一連のバグ解決プロセスを完了する。
   しまった!5つめの属性が見つかった。しかも、これこそバグの属性の本命だ。
   試験でも、同様に早合点せず、最後まで検討しないと、見落として誤りの結果をこじつけして
   しまうことになりそうである。

5つの属性の検討

  バグの属性
   ステータス と 完了日

  対応の属性
   対応区分 と 対応担当メンバID(○○担当に割り当てられたメンバとあり、より適切)
   成果物IDは、勘違い

成果物IDについての再検討

  対応と成果物は、対応からみると1対多の関係になる。
  成果物からみると、1対多の関係になる。
  つまり、対応エンティティと成果物エンティティを結びつけるエンティティを間に持つ
  リレーションシップとなるため、対応側にも、成果物側にもPKとなる属性は持たない。

【回答】

 (a) ステータス
 (b) 完了日
 (c) 対応区分
 (d) 対応担当メンバID


   
  

コメント

このブログの人気の投稿

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ 問3 設問3 (1)

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ http://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2014h26_1/2014h26h_db_pm1_qs.pdf 問3 テーブルの設計及びSQLの設計に関する次の記述を読んで,設問1~3に答えよ。  設問3 〔注文トランザクションの設計〕について,(1),(2)に答えよ。  (1) 次のTR1~TR4のうち,いずれか二つの組合せのトランザクションを同時に実行したとき,デッドロックが起こるおそれがある。次の表中の  ウ  ~  カ   にデッドロックが起きない組合わせには○を,起きるおそれがある組合わせには×を記入せよ。   TR1:単品商品2個を注文する。   TR2:単品商品1個とセット商品1個を注文する。   TR3:セット商品1個を注文する。   TR4:セット商品2個を注文する。 \ TR1 TR2 TR3 TR4 TR1 ○  ウ   エ  × TR2 \ × × × TR3 \ \  オ   カ  TR4 \ \ \ × 問題の対象となっているのは、以下の内容である。 〔注文トランザクションの設計〕  Fさんは,注文トランザクションについて,次のように設計した。 (1) 注文単位を一つのトランザクションで処理し,最後にCOMMIT文を発行する。 (2) 注文に基づいて,”注文”テーブル及び”注文明細”テーブルに行を挿入する。 (3) 商品については,商品一覧画面に表示された順番に”在庫”テーブルの  引当可能数を調べ,引当可能ならば注文数を減算した値で引当可能数を更新する。 (4) セット商品が在庫不足のとき,”在庫”テーブルの不足セット商品数に不足数を  加算する。”セット商品構成”テーブルから,主キー順に当該セット商品を構成する  単品商品の構成数を調べ,必要数を計算する。単品商品については,”在庫”  テーブルの引当可能数には必要数を減算した値で、不足セット商品用引当済には  必要数を加算した値で更新する。 (5) トランザクションのISOLATIONレベルは,READ COMMITTEDとする。 検討す...

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ 問2 設問1 (1)

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ http://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2014h26_1/2014h26h_db_pm1_qs.pdf 問2  設問1 会議室予約システムについて,(1)~(4)に答えよ。  (1) 図2中のSQL文の  a  ~  c  に入れる適切な字句を答えよ。 〔会議室予約システムのテーブル〕  会議室予約システムの主要なテーブルのテーブル構造,概要は,図1,表1のとおりである。  社員( 社員番号 ,社員氏名,…)  会議室( 会議室番号 ,収容可能人数,階数,プロジェクタ設置有無,TV会議設備設置有無,…)  会議室予約( 会議室番号 , 予約日 , 予約開始時刻 ,予約終了時刻, 社員番号 ) 図1 主要なテーブルのテーブル構造(一部省略) 表1 主要なテーブルの概要 テーブル名 概要 社員 ・社員の情報を管理する。社員番号で社員を一意に識別する。 会議室 ・会議室の情報を管理する。会議室番号で会議室を一意に識別する。 ・会議室ことに収容可能な人数,階数,設備の設置有無が設定されている。 会議室予約 ・会議室の予約状況を管理する。会議室番号,予約日,予約開始時刻で 会議室予約を一意に識別する。 ・予約開始時刻及び予約終了時刻の分の指定は00分または30分とする。 〔会議室予約システムでの検索〕  会議室予約システムで空き会議室の検索結果一覧を表示する際に必要な情報を得るために実行するSQL文の例を図2に示す。  なお,図2中のホスト変数のhv1は予約希望日,hv2は予約希望開始時刻,hv3は予約希望終了時刻を表す。 SELECT * FROM 会議室 X WHERE  a  (SELECT * FROM 会議室予約 Y WHERE X.会議室番号 = Y.会議室番号 AND Y.予約日 = :hv1 AND Y.予約開始時刻  b  :hv3 AND Y.予約終了時刻  c  :hv2) 図2 検索で実行するSQL文の例 図2のSQLから、判明できることは、 対象となる...

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ 問3 設問2 (2)

平成26年度 春期 データベーススペシャリスト試験 午後Ⅰ http://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2014h26_1/2014h26h_db_pm1_qs.pdf 問3 テーブルの設計及びSQLの設計に関する次の記述を読んで,設問1~3に答えよ。  設問2 〔SQL分の設計〕について,(1)~(3)に答えよ。  (2) SQL4及びSQL5,指定した注文について,注文されたセット商品を構成する単品商品の合計数を求めるSQL文です。SQL4及びSQL5の実行結果が同じにように,  h   に入れる適切な字句を答えよ。 問題の対象となっているのは、以下の内容である。 〔SQL文の設計〕  Fさんが,案1と案2のそれぞれについて設計した主なSQL文を表4に示す。 表4 案1と案2について設計した主なSQL文(未完成) 案 SQL SQL文 案1 SQL1 SELECT M.商品番号,P.社内原価,P.化粧箱番号 FROM 注文明細 M,商品 P WHERE M.商品番号 = P.商品番号 AND M.注文番号 = :hv 案2 SQL2 SELECT M.商品番号,T.社内原価,S.化粧箱番号 FROM 注文明細 M  f   JOIN 単品商品 T ON M.商品番号 = T.商品番号  f   JOIN セット商品 S ON M.商品番号 = S.商品番号 WHERE M.注文番号 = :hv 案2 SQL3 SELECT M.商品番号,T.社内原価,CAST(NULL AS INT) 化粧箱番号 FROM 注文明細 M   g   JOIN 単品商品 T   ON M.商品番号 = T.商品番号 WHERE M.注文番号 = :hv UNION ALL SELECT M.商品番号,CAST(NULL AS INT) 社内原価,S.化粧箱番号 FROM 注文明細 M   g   JOIN セット商品 S   ON M.商品番号 = S.商品番号 WHERE M.注文番号 = :hv 案1 SQL4 SELECT K.単品.商品番号,SUM(  h   ...