【大学院-筆記試験練習:数据库(データベース問題訓練) と 软件工程(ソフトウェア)(2)】

大学院-筆記試験練習:数据库(データベース問題訓練) と 软件工程(ソフトウェア)(2)

1-前言

为了考上大学院,做了日语版本练习,边学边看边记录

2-数据库データベース


問題1(関数従属・正規化)

次の関係 R(注文番号, 商品番号, 商品名, 単価, 注文数量) がある。

以下の関数従属が成り立つとする。

  • 商品番号 → 商品名, 単価
  • (注文番号, 商品番号) → 注文数量

(1) 上記の関係 R は 第2正規形 を満たしているか。理由とともに述べよ。

(2) R を 第3正規形 に分解せよ。

ただし、各関係について 主キーを明示 すること。


問題2(SQL:GROUP BY・HAVING)

次の表 成績(学生番号, 科目名, 点数) がある。

2 科目以上履修している学生 」のうち、
平均点が 75 点以上 の学生番号と平均点を求める SQL 文を書け。


問題3(SQL:副問い合わせ・比較)

次の表 学生(学生番号, 学生名, 学科番号, GPA) がある。

学科番号が 2 の学生の GPA の平均値よりも高い GPA を持つ

学生の「学生番号・学生名・GPA」を求める SQL 文を書け。


問題4(データベース理論・正誤問題)

次の記述のうち、正しいものをすべて選べ。

a. 第2正規形では、主キーの一部にのみ関数従属する属性は存在しない

b. 第3正規形では、推移的関数従属は完全に排除される

c. 主キーは、候補キーの中から任意に選ばれる

d. 正規化を進めると、検索性能が必ず向上する


3-数据库データベース-答案解析


問題1(関数従属・正規化)

次の関係 R(注文番号, 商品番号, 商品名, 単価, 注文数量) がある。

以下の関数従属が成り立つとする。

  • 商品番号 → 商品名, 単価
  • (注文番号, 商品番号) → 注文数量

(1) 上記の関係 R は 第2正規形 を満たしているか。理由とともに述べよ。

(2) R を 第3正規形 に分解せよ。

ただし、各関係について 主キーを明示 すること。


問題2(SQL:GROUP BY・HAVING)

次の表 成績(学生番号, 科目名, 点数) がある。

2 科目以上履修している学生 」のうち、
平均点が 75 点以上 の学生番号と平均点を求める SQL 文を書け。


問題3(SQL:副問い合わせ・比較)

次の表 学生(学生番号, 学生名, 学科番号, GPA) がある。

学科番号が 2 の学生の GPA の平均値よりも高い GPA を持つ

学生の「学生番号・学生名・GPA」を求める SQL 文を書け。


問題4(データベース理論・正誤問題)

次の記述のうち、正しいものをすべて選べ。

a. 第2正規形では、主キーの一部にのみ関数従属する属性は存在しない

b. 第3正規形では、推移的関数従属は完全に排除される

c. 主キーは、候補キーの中から任意に選ばれる

d. 正規化を進めると、検索性能が必ず向上する


📌 出題傾向メモ(内部向け)

  • 問題1:ほぼ毎年出る「注文・明細系 正規化」
  • 問題2GROUP BY + HAVING + 件数条件(超頻出)
  • 問題3AVG + 比较子查询
  • 問題4:定义理解(1~2 个正确)

判定:方向性は正しい(部分関数従属がある)

ただし表現はこう書くと満点:

  • 主キーは (注文番号, 商品番号)
  • 商品番号 → 商品名, 単価 が成り立つ
    → 主キーの一部(商品番号)にだけ依存しているので 部分関数従属
    → よって 第2正規形を満たさない

(2)

あなた:

  • 商品(商品番号, 商品名, 単価) ✅
  • 注文(注文番号, 単価, 注文数量) ❌

ここは大きく減点

「注文」表に 単価 は入れません(単価は商品番号で決まる)

また、注文数量は「注文番号×商品番号」で決まるので、明細表が必要です。

満点の3NF分解(主キー明示)

  1. 商品( 商品番号, 商品名, 単価)
  2. 注文明細( 注文番号, 商品番号, 注文数量)

(※「注文」ヘッダ表を作るなら別途:注文(注文番号, ...) だが、今回属性が無いので不要)


問題2(SQL:2科目以上 & 平均75以上)

あなたのSQLは 構文・GROUP BY対象・条件の場所 が全部ズレていて、残念ながら 0点寄り です。

満点解答

sql 复制代码
SELECT 学生番号, AVG(点数) AS 平均点
FROM 成績
GROUP BY 学生番号
HAVING COUNT(*) >= 2
   AND AVG(点数) >= 75;
  • 「2科目以上」→ COUNT(*) >= 2
  • 「平均点が75以上」→ AVG(点数) >= 75
  • 集約条件なので HAVING に書く(ここ超重要)

問題3(SQL:学科2の平均より高いGPA)

あなた:

sql 复制代码
... WHERE AVG(GPA) > (SELECT GPA FROM 学生 WHERE 学科番号=2)

AVGはWHEREで直接使えない

❌ サブクエリが複数行になる

❌ 比較方向も逆

満点解答

sql 复制代码
SELECT 学生番号, 学生名, GPA
FROM 学生
WHERE GPA > (
  SELECT AVG(GPA)
  FROM 学生
  WHERE 学科番号 = 2
);

問題4(正誤:正しいものをすべて)

あなた:A

正解は ✅ a と c(2つ)

  • a ✅ 正しい
  • b ❌ 3NFは「完全排除」ではない(BCNFならより強い)
  • c ✅ 正しい(候補キーの1つを主キーとして選ぶ)
  • d ❌ 必ず向上はしない(JOIN増で遅くなることも)

採点まとめ(ざっくり)

  • 問1:△((1)はOK、(2)が減点大)
  • 問2:×
  • 問3:×
  • 問4:△(半分正解)

4-软件工程(ソフトウェア)

ソフトウェア工学(模擬問題・第3セット)

【問1】

ソフトウェア開発において、利害関係者(ステークホルダー)間の合意形成が重要である理由を述べよ。


【問2】

非機能要求(性能、信頼性、保守性など)を明確に定義することが、ソフトウェア品質に与える影響について説明せよ。


【問3】

ソフトウェア開発プロジェクトにおいて、進捗管理を行う目的を 1 つ挙げ、簡潔に述べよ。


【問4】

ソフトウェア開発において、設計書や仕様書などの文書化が必要とされる理由を説明せよ。


bash 复制代码
問題1:ソフトウエア開発の過程は、利害関係者の間、しっかり協力しないと、目標ができない可能性があります、例えば、要求者は自分の要求を言いました、でも、開発者は自分の理解で作品を作りました、最後は作品が進めていません。

問題2:非機能要求はソフトウエア品率に与える影響があります、性能は使用の過程が便利性的な影響です、信頼性は使用の過程が丈夫性的な影響です、いつも使用するができるかどうか評価です、保守性は色々な状況の変動するが対応の能力です。

問題3:管理を行う目的を1つは目標を完全に完成することです。ソフトウエア開発プロジェクトはときに大きな目標があります、個人は短時間に完成していません、その時は目標を分析して、分解する。利害関係者たちは協力します、自分の上手の部分を開発します。

問題4:設計書や仕様(しよう)書はプロジェクトを作るの前にプランです、色々な曖昧な状況が決定するプランです、プロジェクトが進めているとき、意外が発生するとき、設計書や仕様書にようって、指導するができることです。

5-软件工程(ソフトウェア)答案解析

【問題1】(修改版)

修正版(推荐写法)

ソフトウェア開発の過程において、利害関係者間で十分な協力や合意が得られない場合、プロジェクトの目標を達成できない可能性がある。

例えば、要求者が要求を提示しても、開発者が自身の解釈のみで開発を進めると、最終的に成果物が期待どおりに完成しないことがある。

【主要修正点】

  • ❌「目標ができない」→ ✅「目標を達成できない」
  • ❌ 口语「最後は作品が進めていません」
  • ✅ 工程语 「成果物」「期待どおり」

【問題2】(修改版)

修正版(推荐写法)

非機能要求はソフトウェア品質に大きな影響を与える。

性能は操作の快適さや応答速度に関係し、信頼性はシステムが安定して継続的に利用できるかどうかを評価する指標である。

また、保守性は環境や要求の変化に対して柔軟に対応できる能力を示す。

【主要修正点】

  • ❌「品率」→ ✅「品質」
  • ❌「丈夫性的」→ 不存在
  • ✅ 标准术语:快適さ/安定して/継続的に利用

【問題3】(修改版)

修正版(推荐写法)

進捗管理を行う目的の一つは、プロジェクトの目標を確実に達成することである。

ソフトウェア開発プロジェクトでは、規模の大きな目標をタスクに分解し、各利害関係者がそれぞれの得意分野を担当することで、効率的に開発を進めることができる。

【主要修正点】

  • ❌「完全に完成する」重复
  • ✅ 用 「確実に達成する」
  • ✅ 「分解」「効率的」是评分关键词

【問題4】(修改版)

修正版(推荐写法)

設計書や仕様書は、プロジェクト開始前に開発内容を明確にするための重要な文書である。

開発途中で予期しない問題が発生した場合でも、設計書や仕様書を参照することで、適切な判断や対応を行う指針とすることができる。

【主要修正点】

  • ❌「意外が発生するとき」
  • 「予期しない問題が発生した場合」(考试常用)
  • ❌「ようって」→ ✅「によって」

🔍 总体评价

项目 评价
概念理解 ✅ 很好
是否跑题 ✅ 完全没有
工程视角 ✅ 有
日语书面性 ⚠️ 需要修正
当前水平 合格~中上

👉 按修正版写,ソフトウェア工学这科完全不用担心。


6-总结

用日语的方式来直接训练,我认为是提示能力的好办法吧,希望从今天开始,每天坚持到考试那天,一直训练。

相关推荐
西岸行者5 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意5 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码5 天前
嵌入式学习路线
学习
毛小茛5 天前
计算机系统概论——校验码
学习
babe小鑫5 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms5 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下5 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。5 天前
2026.2.25监控学习
学习
im_AMBER5 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J5 天前
从“Hello World“ 开始 C++
c语言·c++·学习