大学院-筆記試験練習:数据库(データベース問題訓練) と 软件工程(ソフトウェア)(3)
- 1-前言
- 2-数据库データベース
-
- [問題1(GROUP BY + HAVING)](#問題1(GROUP BY + HAVING))
- 問題2-(相関サブクエリ)
- [問題3(NOT EXISTS:全称条件)](#問題3(NOT EXISTS:全称条件))
- 問題4(集合比較/最大値条件)
- 3-数据库データベース-答案解析
- 4-软件工程(ソフトウェア)
-
- [❖ ソフトウェア工学(Software Engineering)](#❖ ソフトウェア工学(Software Engineering))
- 5-软件工程(ソフトウェア)答案解析
- [問1 评分解析(最重要)](#問1 评分解析(最重要))
-
-
- 你写了什么(核心问题)
- 「期待答案的骨架」
- [✅ 問1【本番合格答案】](#✅ 問1【本番合格答案】)
-
- [問2 评分解析(你完全跑题)](#問2 评分解析(你完全跑题))
- [問3 评分解析(唯一合格)](#問3 评分解析(唯一合格))
-
-
- 你的内容评价
- [✅ 問3【精简高分版】](#✅ 問3【精简高分版】)
-
- [問4 评分解析(方向性完全错误)](#問4 评分解析(方向性完全错误))
- 6-总结
1-前言
为了考上大学院,做了日语版本练习,边学边看边记录

2-数据库データベース
問題1(GROUP BY + HAVING)
次の学生テーブルがある。
学生(学生番号, 学生名, GPA, 学科番号)
学科番号ごとに GPA の平均値を求め,
その平均値が 3.0 以上である学科番号と平均 GPA を求めよ。
問題2-(相関サブクエリ)
次の学生テーブルがある。
学生(学生番号, 学生名, GPA, 学科番号)
各学科において,
その学科の平均 GPA よりも高い GPA を持つ学生番号をすべて求めよ。
※ 学科ごとに判定することに注意せよ。
問題3(NOT EXISTS:全称条件)
次の履修関係がある。
履修(学生番号, 科目番号)
科目(科目番号)
すべての科目を履修している学生番号を求めよ。
問題4(集合比較/最大値条件)
次の学生テーブルがある。
学生(学生番号, GPA, 生年)
1985 年以降に生まれた学生の GPA の最大値よりも
大きい GPA を持つ学生番号を求めよ。
3-数据库データベース-答案解析
問題1(GROUP BY + HAVING)
你的答案
sql
(1)
SELECT 学科番号, AVG(GPA)
FROM 学生
GROUP BY 学科番号;
(2)
SELECT 学科番号, AVG(GPA)
FROM 学生
GROUP BY 学科番号
HAVING AVG(GPA) >= 3.0;
判定
✔ 完全正确
📊 得分:25 / 25(满分)
問題2(相関サブクエリ)
你的答案
sql
SELECT 学生番号
FROM 学生
WHERE GPA >= (
SELECT AVG(GPA)
FROM 学生
GROUP BY 学科番号
);
判定
❌ 不合格(致命逻辑错误)
致命问题
- 子查询 返回多行
- 且没有按"同一学科"进行比较
- 违反题目「各学科において」
👉 判定:逻辑不成立,0 分
最小修正(保分版)
sql
SELECT 学生番号
FROM 学生 s
WHERE GPA >
(
SELECT AVG(GPA)
FROM 学生
WHERE 学科番号 = s.学科番号
);
📊 得分:0 / 25
問題3(NOT EXISTS・全称条件)
你的答案
sql
SELECT 学生番号
FROM 履修
GROUP BY NOT EISTS 科目番号;
判定
❌ 不合格(语法与逻辑均错误)
错误点
NOT EXISTS不能写在 GROUP BY- 没有体现「所有科目」
- SQL 语法本身不成立
👉 本番:直接 0 分
最小修正
sql
SELECT DISTINCT r.学生番号
FROM 履修 r
WHERE NOT EXISTS (
SELECT *
FROM 科目 k
WHERE NOT EXISTS (
SELECT *
FROM 履修
WHERE 学生番号 = r.学生番号
AND 科目番号 = k.科目番号
)
);
📊 得分:0 / 25
問題4(集合条件・最大值)
你的答案
sql
SELECT 学生番号
FROM 学生
WHERE MAX(GPA)
AND 生年 >= 1985;
判定
❌ 不合格(SQL 概念错误)
致命问题
MAX(GPA)不能直接写在 WHERE- 没有「与谁比较」
- 逻辑与题意不符
最小修正(保分版)
sql
SELECT 学生番号
FROM 学生
WHERE GPA >
(
SELECT MAX(GPA)
FROM 学生
WHERE 生年 >= 1985
);
📊 得分:0 / 25
4-软件工程(ソフトウェア)
❖ ソフトウェア工学(Software Engineering)
【問1】要求定義に関する設問
業務システムの開発において、要求仕様書が作成されたにもかかわらず、完成したシステムが利用者の期待と一致しない事例が少なくない。
このような問題が発生する原因の一つ について、
利用者と開発者の立場の違いに着目して説明せよ。
【問2】開発手法に関する設問
要求分析の段階において、顧客の要求が十分に明確でない場合がある。
このような状況に対して、プロトタイプを用いることが有効とされる理由 について、
要求仕様の観点から説明せよ。
【問3】品質保証に関する設問
ソフトウェア開発においては、「テスト」と「デバッグ」という工程が存在する。
それぞれの目的の違いについて説明せよ。
【問4】保守・改善に関する設問
既存ソフトウェアに対して、外部的な振る舞いを変更せずに内部構造のみを改善する作業が行われることがある。
この作業の目的について説明せよ。
5-软件工程(ソフトウェア)答案解析
問1 评分解析(最重要)
你写了什么(核心问题)
「要求書は利用者と開発者の意見を一致することです」
❌ 致命错误 1
- 这句话在逻辑上就是错的
- 要求书不是"一致的结果"
- 而是**"为了缩小差距而写的文档"**
「十分な交流がよく発生し」
❌ 致命错误 2
- 你想说「交流不足」
- 实际写成了「交流频繁发生」
- 语义完全反了 → 本番直接致命
「段階的な目標を完成していない」
❌ 不看这个
- 出题点不是项目管理
- 是需求认知差异
「期待答案的骨架」
关键词只有 3 个:
- 利用者:业务知识丰富、系统知识不足
- 開発者:系统知识丰富、业务知识不足
- ⇒ 要求仕様の解釈が異なる
✅ 問1【本番合格答案】
要求仕様に関する問題が発生する理由の一つとして、利用者と開発者の知識の違いが挙げられる。
利用者は業務に関する知識を豊富に持っている一方で、システム開発に関する知識は十分ではない。
反対に、開発者はシステム開発の専門知識を持っているが、業務内容に関する理解が不足している場合がある。
そのため、同じ要求仕様であっても、利用者と開発者の間で解釈が異なり、期待と異なるシステムが開発されることがある。
✔ 这就是满分结构
問2 评分解析(你完全跑题)
你写了什么
- 社会调查
- 技术说明
- 支持自己论点
❌ 全部不是软件工程考点
真正想问什么?
一句话:
为什么「原型」能减少「需求的模糊性」
❌ 常见 0 分原因
- 不写「プロトタイプ」的作用
- 不提「曖昧さ」
- 写成"说服客户"
✅ 問2【本番合格答案】
要求分析の段階では、顧客自身も要求を明確に言語化できない場合がある。
このような場合にプロトタイプを作成し、顧客に実際に試用してもらうことで、
顧客は自分の要求を具体的に把握できるようになる。
その結果、要求仕様の曖昧さを減らし、より正確な要求仕様を作成することができる。
✔ 完全命中出题意图
問3 评分解析(唯一合格)
你的内容评价
✅ 概念正确
❌ 句子稍微冗长
❌ 「工程が存在する」是废话
✅ 問3【精简高分版】
テストの目的は、ソフトウェアに含まれる誤りを発見することである。
一方、デバッグの目的は、テストによって発見された誤りの原因となる欠陥を取り除くことである。
✔ 这是官方解答级别
問4 评分解析(方向性完全错误)
你写了什么
- 用户体验
- 服务更好
- 世界在进步
- 性能提升
为什么?
👉 因为完全没提"外部的挙動を変えない"
问的是哪个概念?
リファクタリング(Refactoring)
核心只有一句话:
不改变外部行为,提高内部结构质量
✅ 問4【本番合格答案】
この作業の目的は、既存ソフトウェアの設計の理解性や変更容易性を向上させることである。
外部的な挙動を変更せずに内部構造を改善することで、
将来の保守や機能追加を容易にすることができる。
✔ 这就是标准答案
6-总结
用日语的方式来直接训练,我认为是提示能力的好办法吧,希望从今天开始,每天坚持到考试那天,一直训练。