北京大学2000年软工数据库真题
2000年北大软工数据库真题
软件工程部分
一、简答题(15分)
1.软件工程及其“属性”
2.面向对象系统建模中,
连接及其分类
实体状态及其与活动的关系
3.软件工程环境SEE模型
4.软件测试过程要素及其关系
二、针对以下的程序伪码(10分)
建立它的测试模型(即被测对象模型)
给出实现分支覆盖所需要的测试用例(表达用例的方法试任意的)
BEGIN
输入一元二次方程的系数A,B,C;
为根变量赋初值;
IF平方项的系数A=0且一次项系数B0
THEN BEGIN
Root1:=-CB;输出“A=0”;
Root2:=-CB;
END;
IF平方项的系数A0且一次项系数B=0
THEN BEGIN
IF (-CA)=0
THEN BEGIN
Root1:=SQR(-CA);输出“B=0”;
Root2:= SQR(-CA)
END
END;
IF平方项的系数A0且一次项系数B0
THEN BEGIN
IF (B^2-4AC)=0
THEN BEGIN
Root1:=SQR(-B+SQR(B^2-4AC))2A;
Root1:=SQR(-B-SQR(B^2-4AC))2A
END
ELSE输出“此方程无实根”;
输出Root1和Root2的值;
END;
三、解答题(8分)
若表示系统或对象的行为,应该给出什么概念,并举例说明之。
四、问题陈述:(17分)
在要建立的出租车管理系统中,每天记录每一辆出租车运营情况(司机名;每次服务的时间,里程和毛收入),其中,规定的收费价为:早8时至下午6时,每公理1.2元,其余时间每公理1.8元,出租车公司管理人员按月统计每辆出租车的毛收入,分析月平均毛收入,及白天与夜间收入的比例。
针对上述的问题陈述,请用结构化分析方法,建立该系统的模型;并用你所熟悉的一种面向对象方法,建立该系统的对象关系模型。
数据库部分
一、请简单叙述下列术语的含义,并各举一例说明之。(12分)
1.E-R模型中的二元1对多联系
2.DBTG系统中的系型
3.事务的并发执行中可能发生的丢失修改问题
4.分布式数据库系统中的分片透明性
二、请简要回答下列问题。(10分)
1.全关系系统的12条准则之一时“数据完整性的独立性”,请叙述其含义和重要性。
2.请简述SQL语言中体现的对数据独立性的支持
三、查询表达题(16分)
已知一个关系数据库的模式如下:
S(SNO,SNAME,SCITY)
P(PNO,PNAME,COLOR,WEIGHT)
J(JNO,JNAME,JCITY)
SPJ(SNO,PNO,JTO,QTY)
其中的S表示供应商,它的各属性依次为供应商号,供应商名,供应商所在城市;
P表示零件,它的各属性依次为零件号,零件名,零件颜色,零件重量;
J表示工程,它的各属性依次为工程号,工程名,工程所在城市;
SPJ表示供货关系,它的各属性依次为供应商号,零件号,工程号,供货数量。
1.请分别用关系代数表达式,元组关系演算ALPHA语言,SQL表达一下查询要求:找出不向北京的供应商购买红色零件的工程的工程号。
2.请用SQL表达一下查询要求:列出“需求量小”的零件的零件号,“需求量小”的含义时任何工程购买该软件的总量都不超过500.
四、请解答下列关于关系数据理论的问题。(12分)
1.有关系数据库模式R
U={A,B,C,D,E}
F={A-BC,CD-E,B-D,E-A}
请找出R的所有的候选码,并判断R的规范化程度达到了低级范式。
2.判断一下结论正确与否,若正确请证明之,若不正确请给出反列。
设U为属性集合,X,Y为U的自己,Y‘-Y在R(U)上成立,则X--Y’在R(U)上成立。