某集团公司在各省均设有分公司,现欲建立全国统一销售管理信息系统,以便总公司及时掌握各分公司销售情况。公司成立专门项目组进行该系统研发工作,其中张工负责其中数据库设计工作。张工和需求分析小组紧密合作,在设计出数据流图和数据字典基础上,给出了数据库关系模式和相应索引设计。同时考虑到未规范化关系模式可能引起各类数据错误,对关系模式进行了全面规范化处理,使所有关系模式均达到了3NF或BCNF。在项目实施过程中,应用开发小组认为该设计方案未考虑应用功能实际需求。如果严格按照设计方案实施,会对应用系统中整体性能产生较大影响。主要原因在于进行数据查询时,会产生大量多表连接操作,影响性能。而设计方案中索引设计,并不能完全满足数据查询性能要求。应用开发小组还认为,该设计方案未考虑到信息系统中核心销售数据处理特点:各分公司在使用该信息系统时只能操作自己分公司销售数据,无权操作其它分公司销售数据;只有总公司有权利操作所有销售数据,以便进行统计分析。应用开发小组要求,在数据库设计方案中,必须针对实际应用功能实现来考虑关系模式规范化,必要时需要采用逆规范化或解除规范化方法来保证性能要求。【问题1】系统需要管理供应商和货物等信息,具体包括供应商姓名、地址以及货物名称、价格等,供应商可以提供0~n种货物,其公司地址也可能发生变化。请以供应商关系模式supplier(name,address,product,price)为例,解释不规范关系模式存在哪些问题。【问题2】应用开发小组认为张工规范化设计虽然解决了未规范化关系模式带来问题,但实际实现功能时会造成系统性能下降,请解释其原因。【问题3】请解释逆规范化方法,说明其优缺点。【问题4】针对该信息系统中核心销售数据处理特点,如采用关系表水平分割逆规范化方法,请给出具体解决方案,并说明该方案存在问题。
一、试题分析本题是一个数据库设计方面考题,考查知识点包括规范化理论和反规范化理论(逆规范化)。规范化基本思想是逐步消除不合适函数依赖,使数据库中各个关系模型达到某种程度分离。规范化解决主要是单个实体质量问题,是对于问题域中原始数据展现正规化处理。规范化理论给出了判断关系模型优劣理论标准,帮助预测模式可能出现问题,是数据库逻辑设计指南和工具,具体有:(1)用数据依赖概念分析和表示各数据项之间关系。(2)消除E-R图中冗余联系。若不进行规范化处理,可能产生问题包括:数据冗余、修改异常、插入异常、删除异常。下面举例说明这些问题具体表现形式。设有一个关系模式R(SNAME,CNAME,TNAME TADDRESS),其属性分别表示学生姓名、选修课程名、任课教师姓名和任课教师地址。仔细分析一下,就会发现这个模式存在下列存储异常问题:(1)数据冗余:如果某门课程有100个学生选修,那么在R关系中就要出现100个元组,这门课程任课教师姓名和地址也随之重复出现100次。(2)修改异常:由于上述冗余问题,当需要修改这个教师地址时,就要修改100个元组中地址值,否则就会出现地址值不一致现象。(3)插入异常:如果不知道听课学生名单,这个教师任课情况和家庭地址就无法进入数据库;否则就要在学生姓名处插入空值。(4)删除异常:如果某门课程任课教师要更改,那么原来任课教师地址将随之丢失。在本题中,也存在同样问题:(1)数据冗余:关系模式中多次重复记录了同一供应商地址。(2)插入异常:如果还未确定一个供应商有哪些货物,只是想添加一个供应商地址信息,则会产生产品与价格均为空记录。(3)修改异常:当修改一个供应商地址时,需要将多条记录同时更新,若未同时更新,则数据产生不一致。(4)删除异常:当删除一个供应商货物时,其地址信息被一并删除。数据库中数据规范化优点是减少了数据冗余,节约了存储空间,相应逻辑和物理I/O次数减少,同时加快了增、删、改速度,但是对完全规范数据库查询,通常需要更多连接操作,从而影响查询速度。因此,有时为了提高某些查询或应用性能而破坏规范规则,即反规范化(非规范化处理)。因此,题目中所说“应用开发小组认为张工规范化设计虽然解决了未规范化关系模式带来问题,但实际实现功能时会造成系统性能下降”,主要就是查询效率下降。其原因是规范化过程中对数据表进行了不断拆分,导致一个查询需要进行多表连接,效率自然就下降了。具体来说,常见反规范化技术包括:(1)增加冗余列增加冗余列是指在多个表中具有相同列,它常用来在查询时避免连接操作。例如:以规范化设计理念,学生成绩表中不需要字段“姓名”,因为“姓名”字段可以通过学号查询到,但在反规范化设计中,会将“姓名”字段加入到表中。这样查询一个学生成绩时,不需要与学生表进行连接操作,便可得到对应“姓名”。(2)增加派生列增加派生列指增加列可以通过表中其它数据计算生成。它作用是在查询时减少计算量,从而加快查询速度。例如:订单表中,有商品号、商品单价、采购数量,我们需要订单总价时,可以通过计算得到总价,所以规范化设计理念是无须在订单表中设计“订单总价”字段。但反规范化则不这样考虑,由于订单总价在每次查询都需要计算,这样会占用系统大量资源,所以在此表中增加派生列“订单总价”以提高查询效率。(3)重新组表重新组表指如果许多用户需要查看两个表连接出来结果数据,则把这两个表重新组成一个表来减少连接而提高性能。(4)分割表有时对表做分割可以提高性能。表分割有两种方式:水平分割:根据一列或多列数据值把数据行放到两个独立表中。水平分割通常在下面情况下使用:情况1:表很大,分割后可以降低在查询时需要读数据和索引页数,同时也降低了索引层数,提高查询速度。情况2:表中数据本来就有独立性,例如表中分别记录各个地区数据或不同时期数据,特别是有些数据常用,而另外一些数据不常用。情况3:需要把数据存放到多个介质上。垂直分割:把主码和一些列放到一个表,然后把主码和另外列放到另一个表中。如果一个表中某些列常用,而另外一些列不常用,则可以采用垂直分割,另外垂直分割可以使得数据行变小,一个数据页就能存放更多数据,在查询时就会减少I/O次数。其缺点是需要管理冗余列,查询所有数据需要连接操作。 问题4要求提出水平分割方案,实际上就是把数据表按记录进行拆分,并存储于不同位置。由于本题中数据使用存在这样特性——“各分公司在使用该信息系统时只能操作自己分公司销售数据,无权操作其它分公司销售数据;只有总公司有权利操作所有销售数据,以便进行统计分析”,所以按省,每个分公司存储自己数据,这样能达到高效查询目,只是这样会让总公司统计分析变得十分低效。二、参考答案【问题1】(1)数据冗余:关系模式中多次重复记录了同一供应商地址。(2)插入异常:如果还未确定一个供应商有哪些货物,只是想添加一个供应商地址信息,则会产生产品与价格均为空记录。(3)修改异常:当修改一个供应商地址时,需要将多条记录同时更新,若未同时更新,则数据产生不一致。(4)删除异常:当删除一个供应商货物时,其地址信息被一并删除。【问题2】数据库规范化过程,实际是对数据表不断拆分,以达到更高规范程度。这样处理,带来问题是:系统中大量查询不能通过单表完成,而需要将多表进行连接查询,所以表拆分得越多,查询性能也就越差。【问题3】逆规范化方法优点:提高统计、查询效率。逆规范化方法缺点:增加了数据冗余,浪费存储空间,增、删、改操作效率降低,可能导致数据不一致,可能产生添加、修改、删除异常。【问题4】解决方案:将各省数据存放于各省分公司。该方案主要问题在于总公司进行全国数据统计时,需要从各省服务器调取数据,效率较低。
EAI(企业应用集成)可以包括表示集成、数据集成、控制集成和业务流程集成等多个层次和方面,下图所便是的是( ),适合于使用这种集成方式的情况是(请作答此空)。
某公司要建设一个网站,下表是建设中各项活动时间需求及人员需求预算值。
13、[问题1]
按每项活动最早开始时间画出该项目计划安排甘特图。
14、[问题2]计算:(1)该项目每周所需人工数
(2)周人工数最大差值。
15、[问题3]为使资源配置均衡,调整项目活动起始时间,使每周所需人工数最大差值为7。调整结果为:活动(3)推后(4)周开始,活动(5)推后(6)周开始。
某建材公司电子商务网站主要完成网上直销、产品宣传、技术咨询、信息收集和客户管理等工作。网站管理小组一方面负责网站推广、信息发布和信息采集,另一方面负责网站管理和维护。
10、[问题1]公司前期研制了一种新型建材产品,决策层想通过在线问卷调查方式了解这种产品推广情况。请叙述实施在线问卷调查关键步骤及每个步骤主要完成任务(不超过200字)。
11、[问题2]公司网站推广碰到一些问题,网站管理小组发现在搜索引擎中公司网站排名靠后。公司要求对网页进行优化,以提高网站在搜索引擎列表中排名。请叙述如何对网页进行优化(不超过300字)。
12、[问题3]电子商务网站正常运行离不开必要监控。请指出:(1)对Web站点三种监视尺度分别是什么?(2)它们各自主要监控内容是什么?
某测试小组对两个网站进行了系统测试。以下是连接速度测试界面。
7、[问题1]右图是该测试小组对网站制定测试流程图,请将其补充完整。
8、[问题2]Web测试包括:Cookie测试、数据库测试、连接速度测试、设计语言测试、负载测试、表单测试、压力测试、链接测试等。请将它们按功能测试和性能测试进行分类。
9、[问题3]说明中链接测试页面实现功能是:如果10秒链接不上指定网站,则显示“链接超时”,否则显示链接时间(单位为秒)。请根据以上功能描述,补齐代码:<script>tim=1//时间初值(1)("tim++",100);//定时调用时间设定bTestFinish=0c=1var b=1var autour1=new Array ( ) autourl[1]="61.236.219.100"autourl[2]="220.181.26.132"//测试网站IP地址function butt(){document.write("<form name=autof>")for(var i=1;i<autour1.1ength;i++){if(i==1|i==3||i==5){document.write("<input type=text class=noborder name==url"+i+"value=http://"+autourl[i]+" ;size=40>→ ; ;<input type=text name=txt"+i+"size=10 class=noborder value=测试中…><br><br>")}else{document.write("<input type=text class=noborder name=url"+i+" value=http://"+autourl[i]+" ;size=40>→&ubsp; ;<input type=text name=txt"+i+" size=10 class=noborder value=测试中…><br><br>")}}document.write("<br><div align='center'><input type=submit value=重新测试></div></form>")//初始测试页面}butt()function auto(c){if(tim>(2) ){document.forms[O]["txt"+c).value="链接超时"}else{document.forms[0]["txt"+c].value="时间"+tim/10+"秒"}}//测试结果判断function run ( ){for(var i=1;i<autour1.1 ength;i++){document.write("<img src=http://"+autourl[i]+"/"+Math.random()+"width=1 height=1 onerror= (3) ("'+i+'")>");}}//运行测试run();</script>
某企业决定开发一个企业仓储管理系统,由李工承担系统设计工作。该系统网络连接如图2-1所示。[图2-1]
该企业有多个仓库,图2-1所示中心数据库存储了各个仓库中每种货物库存信息。每个仓库配备一台前端机,进出货物均由前端机辅助实现。管理员每天上班时,通过前端机从中心数据库库存表中读取本仓库各种货物库存数,每个仓库当日业务数据也都暂存在前端机,当天业务结束后,再将前端机中存储数据传输到主机进行存储与汇总。每个仓库可以存放多种货物,但同一种货物不能存放在不同仓库中。每个仓库有多个管理员,但每个管理员只管理一个仓库。货物出库/入库时,由仓库管理员将货物条码通过阅读器输入前端机中,货物数量默认值为1,可以由管理员修改。前端机根据输入货物信息,打印“出库/入库”清单。出库/入库单中同一种货物最多只出现一次,每份出库/入库单由流水号唯一标识。图2-2是一个出库单实例。[图212]
管理员:01105出库/入库:出库该系统处理业务过程如下。①初始化:前端机根据仓库号从货物表中读取本仓库中每种货物货物编码、库存量、货物名称和单价;②登记出库/入库信息:由前端机存储每一笔“出库/入库”记录;③汇总:在每个工作日结束前汇总当日各种货物“出库/入库”量至日汇总表;④更新库存表:根据当日汇总信息更新货物库存。李工经过分析,设计出如图2-3所示关系模式。[图2-3]出入库单(流水号,出入库标志,管理员号,时间)出入库记录(货物编码,数量,流水号)日汇总表(日期,货物编码,数量,出入库标志)仓库(仓库号,仓库名,仓库电话)管理员(管理员号,姓名,仓库号)货物((a) )注:时间格式为年-月-日时:分;日期格式为年-月-日。实体联系图表示方法如图2-4所示,其中方框表示实体,菱形表示联系,联系类型在实体与联系边上标出。图2-5为与该系统对应实体联系图。[图2-4]
4、[问题1]根据题意,补充图2-3中(a)处空缺,即货物关系模式属性。
5、[问题2]根据题意,补充图2-5中缺失联系和联系类型,使其成为完善实体联系图。其中,联系名分别取名为联系1,联系2,联系3,……。
6、[问题3]写出每种关系模式主键,将其填写在答题纸对应栏内。
某图书管理系统主要功能是图书管理和信息查询。对于初次借书读者,系统自动生成读者号,并与读者基本信息(姓名、单位、地址等)一起写入读者文件。系统图书管理功能分为四个方面:购入新书、读者借书、读者还书以及图书注销。1.购入新书时需要为该书编制入库单。入库单内容包括图书分类目录号、书名、作者、价格、数量和购书日期,将这些信息写入图书目录文件并修改文件中库存总量 (表示到目前为止,购入此种图书数量)。2.读者借书时需填写借书单。借书单内容包括读者号和所借图书分类目录号。系统首先检查该读者号是否有效,若无效,则拒绝借书;若有效,则进一步检查该读者已借图书是否超过最大限制数(假设每位读者能同时借阅书不超过5本),若已达到最大限制数,则拒绝借书;否则允许借书,同时将图书分类目录号、读者号和借阅日期等信息写入借书文件中。3.读者还书时需填写还书单。系统根据读者号和图书分类目录号,从借书文件中读出与该图书相关借阅记录,标明还书日期,再写回到借书文件中,若图书逾期,则处以相应罚款。4.注销图书时,需填写注销单并修改图书目录文件中库存总量。系统信息查询功能主要包括读者信息查询和图书信息查询。其中读者信息查询可得到读者基本信息以及读者借阅图书情况:图书信息查询可得到图书基本信息和图书借出情况。[数据流图1-1]
[数据流图1-2]
[数据流图1-3]
1、[问题1]数据流图1-2中有两条数据流是错误,请指出这两条数据流起点和终点。
2、[问题2]数据流图1-3中缺少三条数据流,请指出这三条数据流起点和终点。
3、[问题3]根据系统功能和数据流图填充下列数据字典条目中(1)和(2):查询请求信息=[查询读者请求信息|查询图书请求信息]读者情况=读者号+姓名+所在单位+{借书情况}管理工作请求单=(1)入库单=(2)
某国大选中,竞选人A充分利用互联网 web2.0优势,吸收了大量“长尾”和草根力量,成就了自己梦想。竞选活动体现了广告、营销、公关手段进化和发展,伴随着新媒体和数字技术飞速发展,以更深入和互动方式建立起与选民之间关系,获得选民忠诚度和信任度。互联网是民众获取信息和参政议政重要渠道首先互联网成为该国政治竞技台主角已经成为事实。某研究中心调查显示,该国情信息虽然电视仍以72%比例稳居首位,但网络已经超过报纸29%比例,成为该国民众获取选情信息第二大渠道。另外该研究中心一份调查显示,11%受访对象曾在网上转发过关于选情消息,5%曾在网上发贴评论竞选,6%曾通过互联网向竞选阵营或候选人捐款,其中在竞选人A6.4亿美元募集款中87%是网络募来。积极参与网上互动竞选人A曾经是一个社区创建者,深知网络社区在他本次竞选中发挥力量,竞选团队通过创建社交网络来增强竞选人 A 影响力。他在 Facebook拥有一个包含 230万拥护者群组,并在视频网站YouTube上,仅仅一星期就上传了70个竞选人 A 相关视额。这些网络竞选视频节目非常草根,但它们看起来更平实而更让人容易接近,所以实际上这些视频所获取关注不比那些制作精美电视广告差。其中竞选人 A关于种族问题37分钟演讲,从上传至网络以来查看率已经超过500万次,使他成为网络“红人”中一颗闪亮明星。精准狙击竞争对手竞选人A购买了Google “关键字广告”。如果一个选民在Google中输入竞选人A 英文名字,搜索结果页面右侧就会出现竞选人A视频宣传广告以及对竞争对手B 政策立场批评等。竞选人A购买关键字还包括热点话题,如“油价”、“伊拉克战争”和“金融危机”。一搜,即知道候选人A对这些敏感问题观点评论,有助于人们更好了解这位竞选人。高效信息传播一封名为《我们为什么支持竞选人 A一一写给华人朋友一封信》邮件到处传播。邮件内容有针对性地采用了中文,非常详细地阐述了竞选人A当选对该国当地华人选民好处,最后他们说“请将这封信尽快转送给您亲朋好友,并烦请他们也能将这封信传下去,这是您在最后几天里所能帮助竞选人A最为有效方式之一”。让每个人都有自己媒体博客一开始是网民共享个人思想一种方式,但是现在博客在该国已经被列入媒体范畴,并将拥有媒体活动豁免权,不受竞选募款法案限制。竞选人A竞争者之一C通过自己博客发布了自己竞选宣言,并且不断通过博客展示自己政见和观点。选民可以在他博客发表对她看法,C团队则会选择好博客放在首页进行推广。而竞选人A则通过自己网络博客为自己鲜明地树立起清新、年轻、锐意进取候选人形象。拉近了选民与自己距离,更具亲和力和竞争力。竞选活动已然结束,竞选人A胜利代表着太多革新,尤其是网络互动应用。竞选人A筹集超过6.4亿美元竞选经费,超过87%来自互联网,其中绝大部分是不足100美元小额捐款。凭借着网络力量,竞选人A互动手法赢得不仅仅是捐款,更是一张张珍贵选票,以及网络营销神奇力量。
问题:5.1 (5分)竞选人A在竞选活动中,充分利用了直联网web2.0优势,本案例体现web2.0模式下互联网应用(1)、(2)、(3)、(4)、(5)特点。(1)~(5)备选答案:A. 开放平台,活跃用户 B. 用户是互联网信息被动接受者C. 互联网内容由编辑人员(或站长)定制 D. 更加注重交互性E. 以兴趣为聚合点社群 F. 单纯通过网络浏览器获取内容信息G. 人人都是内容制作者和传播者 H. 用户分享J. 基本都采用技术创新主导模式 K. 采用C/S架构
问题:5.2 (5分)结合案例材料分析,本次竞选活动运用网络营销方式包括:(6)、(7)、(8)、(9)等,候选人A运用博客主要目是(10)。(6)~(9)备选答案:A.博客营销 B.BBS营销 C.体验营销 D.口碑营销E.饥饿营销 F.搜索引擎营销 G.RSS营销 H.社区营销(10) 备选答案A.发布消息 B.树立形象
问题:5.3 (2分)案例中竞选人A采用(11)方式精准狙击竞争对手,该方式通过(12)来实现。(11)~(12)备选答案:A.搜索引擎广告 B.竞价排名 C.引擎优化D.购买关键字广告 E.PPC(Pay Per Call)
问题:5.4 (3分)竞选人A在竞选中充分发挥了病毒性营销神奇力量,本案例实现病毒性营销采用方式有:(13)、(14)和(15).(13)~(15)备选答案:A.有吸引力信息载体 B.免费产品或服务 C.提供有价值信息D.利用便捷传播工具 E.良好口碑 F.树立独特个人形象
刘某和李某分别是一个软件公司项目经理和合同经理,该软件公司给某客户完成一个软件项目,根据分析该软件项目网络计划如图4-1所示,箭线下方(或右方)括号外为正常持续时间,括号内为最短工作历时,假定计划工期为100天,根据实际情况和考虑被压缩工作选择因素,缩短顺序依次为B、C、D、E、G、H、I、A ,试对该网络计划进行工期优化
问题:4.1 (4分)请在下表空白处填写该任务紧前工作。
问题:4.2 (4分)运用网络图 4-1,确定该项目关键路径为(5);该软件项目完成总工期为(6)天。
问题:4.3 (7分)计算应缩短工期为(7)天。根据已知条件,首先应将任务(8)压缩到(9)天,再重新计算网络计划和关键线路;再根据实际情况和考虑被压缩任务选择因素,将任务(10)压缩(11)天及任务(12)压缩到(13)天,使关键路径工期达到100天要求。
某公司需开发二千套电子商务系统,为保证开发进度和开发质量,专门组建测试小组对开发全过程进行测试,其中,某测试员需要对如图3-1所示程序进行测试,采用方法是白盒测试动态测试方式。该程序共有3条路径,分别为P1 (AD)、P2 (BD) 和P3(BCD) 。
问题:3.1 (2分)如果采用语句覆盖法进行测试,满足条件路径是 (1)、(2)。
问题:3.2 (4分)如果采用判定覆盖法进行测试,测试用例表如表3-1所示(用例不分顺序)。注:答案必须从备选答案中选出。
某软件公司采用ASP.NET+SQL Server 技术,前端页面采用HTML+CSS +JavaScript方式,开发一套电子商务网站,主要包括用户注册与登录、商品展示与销售、订单处理等功能,项目团队某成员被分配设计实现用户注册与登录部分。
问题:2.1 为了提高网站访问效率,采用JavaScript 进行客户端验证,用户注册页面中,需要验证用户各信息合法性。假定页面中用户名控件ID为“myname”,密码控件ID为“mypwd1”,确认密码控件ID为“mypwd2”,以下程序验证用户名非空且长度至少6位,密码及确认密码一致、非空且必须是数字(其他信息验证忽略)。根据题目描述,完成以下程序。
问题:2.2 (7分)以下程序表示用户登录过程,假定数据库连接字符串正确无误,用户信息表名为"users",登录页面中包括用户编号控件(ID 为 myUserID) 、密码控件(ID为 mypwd) 等。采用 SQL 参数化方式实现数据库查询,登录成功时,跳转至"userCenter.aspx" 页面,登录失败时,弹出错误提示。根据题目描述,完成以下程序。