2008年攻读硕士学位研究生试题
考试科目:计算机专业课复试
注意:不必须抄题,答案必须另写在答题纸上,否则试卷无效。
数据库原理部分
三、(5分)
给定属性集合A,B,C,D,E,F,G,H,及其上的函数依赖集F如下:
ABHC, FAD, AD, EF, CE, BHE, BGHF
求F的最小覆盖。
四、(10分)
有并行执行的事务T1、T2,具体执行如下:T1:读x, y, 执行x+50, y+50,写x,y;T2:读x, y, 执行x+100, y+100,写x,y。请用图示举两个并发调度的实例分别描述:(1)可串行化调度;(2)导致丢失修改的调度。
五、(12分)
开发一个研究生学习管理系统。系统要求:学生按参加的课题分三类:研究型(参加纵向课题的学生),应用型(参加横向课题的学生)和其他(不参加课题的学生)。每个学生在研究生学习期间只参加一种课题的研究。根据学生的工作量和所属类型给学生发每个月的报酬,要求记下学生在读期间每个月的报酬。当每月参加课题时间大于80小时时,
月报酬E = 5 * 80 * 系数C,
否则:
月报酬E = 5 * 参加课题的时间T * 系数C,
其中,研究型学生的系数是1.2,应用型学生的系数是1.5,其他型的系数是0。每个学生的报酬只能从某个课题拨款,但不一定从学生参加的课题中拨款。一个课题可以给多个学生提供报酬。本管理系统至少要管理:学生(学生id, 学生姓名,年龄,研究方向 等):课题信息(课题类别,课题名称等)以及学生的报酬信息。不足的信息要求用户填补。要求:
(1) 画出本系统的E-R模型,并标出主要的属性;
(2) 将其转换成关系模型表示的关系模式。
六、(9分)
给定关系模式:
professor (pid, name, age, deptId)
dept (deptId, dname)
teaching (pid, cid)
course (cid, cname)
用SQL完成以下查询:
(1) 查询计算机系(CS)最年轻的教授的姓名和年龄;
(2)查询每个系的教授的人数和超过10名教授的系里教授的平均年龄;
(3)查询CS系或者不在CS系但讲授的课程名称包括‘CS’的教授的名字;
七、(4分)
简介事务、系统和介质故障的处理过程,说明检测点在恢复中的作用,并写出在检测点需完成的任务。
软件工程部分
八、单选题(每题1分,共10分)
1.在 方法中,为了开发一个计算机软件系统,开发人员首先考虑什么功能应该被实现。为此,一些开发语言,如Fortran、Pascal和C语言等鼓励开发人员从过程或函数的角度考虑问题。
A.面向过程的编程 B.面向对象的编程
C.面向方面的编程 D.面向语言的编程
2.两个模块间通过全局变量、全局数据结构、通讯缓冲区和数据库文件等进行数据交换称为 。
A.内容耦合 B.控制耦合 C.数据耦合 D.公共耦合
3.当有新模块加入时,要对原测试通过的测试模块进行重新测试,这被称为_______ 。
A.集成测试 B.边界值分析 C.回归测试 D.等价类划分
4.以下各种图不是UML使用的图是 。
A.活动图 B.用例图 C.层次图 D.时序图
5.在软件工程中,SQA是指 。
A.软件问题与回答 B.软件质量警报
C.软件质量保证 D.软件问题反馈
6.在 中,一般由软件开发企业发出邀请,客户和用户在他们的工作现场安装系统的工作版本,并进行测试。
A.α测试 B.β测试 C.集成测试 D.系统测试
7.在用例图中, 是与系统通讯并外部于系统自身的任何事物。
A.相关系统 B.角色 C.用例 D.类
8. 是一种图形化的技术,它从数据传递和加工的角度出发,体现了系统当中的数据流从输入到输出的移动和变换的过程,可以对系统功能进行抽象表达。
A.程序流程图 B.类图 C.活动图 D.数据流程图
9.在软件设计中,为了降低复杂度,应该隐藏细节或推迟考虑细节,这在软件工程中被称为 。
A.分治 B.抽象 C.代码隐藏 D.封装
10.下图中的两个类之间的关系是 关系。
A. 依赖 B. 单向关联 C.合成(聚合) D.聚集
九、简答题(每题5分,共10分)
1.请解释接口和抽象类的区别。
2.请解释耦合的概念及其分类。
十、下面是一则虚构的故事,请阅读完后答题:
假设您是一家软件公司的项目经理。东北大学信息科学与工程学院请您开发一个《软件工程》课程网站。您将要率领一个团队用C#语言开发这个网站。但作为项目经理,您从来没有做过类似的教学网站,并且您的团队也不熟悉C#语言。该网站的主要需求包括:
(1) 课程主讲教师可以管理其课程课件、教学日历、教师简介、课堂录像、演示案例、课程作业、试题库等资料,可以查看学生花名册、查看并批阅学生上传的作业、回答学生在课程BBS上的提问、发布课程公告和考试成绩,以及浏览学生对课程的评价信息。
(2) 学生可以浏览课程信息、注册课程、下载课件、上传作业,在课程BBS上可以提问或进行讨论,能够在线答题、查询考试成绩,以及对主讲教师进行评价。
(3)系统提供用户登录身份验证功能。
问题1:假设您的人力资源并不充裕,从开发过程的角度看,那么如何做才能有效地控制整个开发进程,并缩短开发周期、减少开发风险?(5分)
问题2:假设您有足够的人力资源,从人力资源的角度看,请为本项目制定一个合理的人力资源使用策略,即涉及到的开发角色、职责和人数,以及这些人力的项目投入计划。(5分)
问题3:请根据您对这个项目的理解,绘制出本系统的用例模型(10分)。