【试题一】
某软件企业为网络音像制品销售公司W重新开发一套影音产品在线管理及销售系统,以改进原有系统AVMSS中存在的问题。在系统需求分析阶段,完成的工作包括:
系统分析员老王利用PIECES框架组织了系统需要获取的非功能性需求,如表1-1所示。
【问题1】
PIECES框架的主要作用是什么?请将以下需要获取的需求(1)〜(8)根据PIECES框架进行分类并将序号填入表1-1对应的单元格内。
(1)系统能否采用新方法以降低使用资源的成本?
(2)系统可接受的吞吐率是多少?
(3)系统可接受的响应时间是多少?
(4)应该减少多少开支或增加多少收益?
(5)对用户隐私有什么要求?
(6)对系统的可靠性和可用性有什么要求?
(7)系统中需要包括哪些文档和培训材料?
(8)对外部系统的接口是什么?【问题2】
请将下列问题按照不同的类型序号填入图1-1所示的鱼骨图(g)〜(n)中。
(1)缺少强制履行合同的规定;
(2)合同相关信息没有通知到会员;
(3)没有催单提示客户;
(4)没有跟踪执行情况;
(5)设备成本太高造成价格不合理;
(6)合同的履行缺乏灵活性;
(7)账务问题或者隐瞒相关内容;
(8)价格太高并且无法修改。
【问题3】
一份需求定义文档应该包括哪些内容?对于与系统开发相关的人员:系统所有者、用户、系统分析人员、设计人员和构造人员、项目经理,需求定义文档各有什么作用?
本题要求考生能够准确掌握需求定义文档的组成部分,和需求定义文档对不同的系统开发关联人员对其工作的具体作用。
在我的答案中需求变更的控制没有提及,比较遗憾。
【试题二】
A市经过软课题研究己经形成了一整套宏观经济指标体系,用于描述该市的经济状态,涉及包括区域GDP、人口与就业、城市建设与投资、财政收入和支出、土地、进出口贸易、社会保障、人民生活、制造业和高新技术产业等方面,并为主要指标建立了计算模型。与宏观经济指标有关的数据称为宏观经济数据,主要的宏观经济数据广泛地分布于政府统计部门、计划部门、财政部门、税收部门、教育部门、商业部门、物价部门、农业生管部门、工业信息化主管部门等等,还分布于金融部门、大中型企业等。这些部门针对自身业务,多数都有自己的管理信息系统或者办公自动化系统,主要的宏观经济数据都已经实现了电子化。
目前,A市宏观经济指标的获得还采取传统方式,即通过有关部门逐级报表汇总宏观经济数据的方式和统计调査的方式得到。统计调查方式存在系统性的误差,而报表汇总方式则存在基础数据不准确、人为影响较大、指标分析灵活性差等问题。
为准确掌握经济动态信息,进一步规范各级经济信息资源管理行为,加快信息资源共享,提髙政府的管理科学化和服务社会化水平,该市决定建设宏观经济数据库,将宏观经济数据统一管理。
【问题1】
为稳步推动A市宏观经济数据库建设,A市市政府委托咨询公司B进行项目原型研究。B公司经过调研,认为A市电子政务网络、存储和计算平台非常完善,为宏观经济数据库的建设奠定了良好的基础。请用200字以内文字指出此时B公司在进行原型分析的时候应重点做好哪几方面的工作?
【问题2】
经过分析比较,B公司确定了“物理分散,逻辑集中”的建设思路,因此未来宏观经济数据库是一个分布式数据库系统。请用200字以内文字简要分析,除了数据交换机制外,是否还需要建设一个集中的数据库?并叙述理由。
【问题3】
小张是B公司的开发经理,在开发A市宏观经济数据库原型的时候,用前端分析工具按照指标计算模型,计算“宏观投资现状”指标,该指标计算模型的输入参数包括:交易额,信息来源是市国税局和市地税局的税收征管系统;
项目立项信息,信息来源是市发改委的立项审批管理系统; 资金拨付信息,信息来源是市财政局的统一支付系统;
贷款信息,信息来源于银行的信贷管理系统等; 资源消耗信息,信息来源于电力公司、自来水公司等。
……
小张按照输入参数来源单位提供的数据接口说明取得了输入参数,经过计算得到了“宏观投资现状”指标,但发现该指标与传统方式得到的指标差别很大。
请用200字以内文字,指出存在差别的可能技术原因。
【试题三】
某公司长期从事嵌入式商用软件的开发工作。随着业务范围的扩展,公司最近签署了一项大型客机信息综合处理的软件研制合同,作为机载软件,其可靠性和安全性直接影响着大型客机的安全特性。合同要求承制方在开展工作之前必须完成安全性、可靠性分析报告,在软件开发过程中应严格遵循相关工程化标准。
公司总经理将此项任务交给了张工程师,要求他尽快掌握航空软件研制的各项要求,并拿出项目的策划书。张工在深入研究了可信计算等相关知识的基础上,结合航空软件的特点,提出了一项项目实施策划方案。此方案在安全性设计方面借鉴了可信计算的相关技术,得到了甲方的认可,但是,针对此方案,公司领导层存在极大争议,问题主要焦点在于若按此方案实施,公司的人员、成本和资源投入将远远超过本公司的承受能力,张工指出,传统商用软件的开发模式不能满足航空用户的需要,软件可信度太低,对后续发展不利。经过认真讨论,公司领导层形成了统一认识,按可信计算的技术要求,提升公司的整体软件开发水平。【问题1】
ISO/IEC154d8标准定义可信为:参与计算的组件,其操作或过程在任意的条件下是可预测的,并能够抵御病毒和物理干扰。而航空设备的基本特点就是要求设备工作的实体行为应该总是以预期的方式达到预期的目的(即行为、资源的确定性要求)。基于这种思想,张工依据可信计算组织定义的可信链模型(即可信测量根(RTM)—BIOS—OSLoader—OS构成链式信任链模型)理论,给出了一种适应本项目的带数据恢复的星型信任模型(见图3-1)。该模型的中心思想是将可信测量根植入机载设备平台模块内部NVRAM(非易失存储器)中,在信任链中增加数据恢复功能,并将信任链延伸到应用。请根据张工设计思想,完善图3-1所示的带数据恢复星型信任模型的空白部分。并用100字以内的文字,解释该模型与链式信任链模型相比的特点。
【问题2】
交叉编译器是嵌入式软件开发必备的基础工具软件之一。目前比较流行的交叉编译器是GNU系列产品,它是一种开源软件。编译器生成代码正确与否严重影响机载设备的安全,因此,张工在方案中提出对本项目采用的交叉编译器开展可信技术研究。可信编译器包括两方面含义,其一是编译器自身的可信性,即必须保证整个编译操作的可信性,保证编译器在编译过程中不会给编译处理对象带来任何安全问题;其二是必须保证编译器编译所得程序可执行代码的可信,即编译器必须保证,通过其编译生成的程序代码是安全和可靠的。因此,张工提出在传统编译操作的基础上加入代码安全性加强机制、代码可信性验证机制和可执行代码保护机制。图3-2给出了可信编译系统的框架。
请说明三种可信机制在传统编译操作步骤中的位置,并给出图3-2的(a)〜(c) 对应的可信机制名称。
根据表3-1所示的信息流名称,给出图3-2中(d)〜(h)对应的功能模块间的信息流编号。
【问题1标准答案】
(1)OSLoader
(2)操作系统
(3)应用
(4)恢复
带数据恢复星型信任模型的特点:
(1)可信测量根被保护,安全性更高。
(2)具有数据恢复功能,安全性更高。
(3)都是一级测量,没有多级信任传递,信任损失少
【问题1分析部分】
可信计算的基本思想是:首先在计算机系统中建立一个信任根,再建立一条信任链,从信任根开始,经过硬件平台和操作系统,再到应用,一级测量认证一级,一级信任一级,从而把这种信任扩展到整个计算机系统。
可信计算组织的信任链采用了一种链式的信任测量模型,即由RTM(可信测量根)→BIOS→OSLoader→OS构成一个串行链。由于采用了一种迭代计算哈希值的方式,即将现值与新值相连,再计算哈希值并作为新的完整性度量值存储起来。
链式信任链具有如下缺点:信任链越长,信任损失的可能性就越大。在链中加入或删除一个部件,PCR的值需要重新计算,很麻烦。信任链中的软件部件可能会更新(如BIOS升级,OS打补丁等),而PCR的值也得重新计算,这样一来使得部件更新工作很麻烦。
它将可信测量根置入可信平台模块内部NVRAM(Non-VolatileRandom Access Memory,非易失性随机访问存储器),在信任链中增加了数据恢复功能,并将信任链延伸到应用。与可信计算组织的链式信任链相比,该模型具有如下特点:可信测量根被保护,安全性更高;具有数据恢复功能,安全性更高;都是一级测量,没有多级信任传递,信任损失少。但是,所有测量都由可信测量根执行,可信测量根通过可信平台模块完成任务,这使得可信平台模块负担加重。
在可信计算的信任链中应当度量的是可信性。但是,由于可信性目前尚不易直接度量,所以可信计算组织在信任链中采用的是度量数据完整性,而且是通过校验数据哈希值的方法来度量数据的完整性。但是,可信≈可靠+安全,完整性≠可信性,完整性⊂可信性,即完整性只是可信性中的一个侧面。
由于可信计算组织在信任链中采用的是度量数据完整性,因此它能确保数据的完整性,确保BIOS、OSLoader和OS数据的完整性。但是完整性只能说明这些软件没有被修改,并不能说明这些软件没有安全缺陷,更不能确保这些软件在运行时的安全性。基于数据完整性的度量是一种静态度量,基于软件行为的动态度量更实用。
【问题2分析部分】
可信计算的基本思想是:首先在计算机系统中建立一个信任根,再建立一条信任链,从信任根开始,经过硬件平台和操作系统,再到应用,一级测量认证一级,一级信任一级,从而把这种信任扩展到整个计算机系统。
编译器作为重要的系统软件,其可信性对于整个计算机系统的可信具有重要意义。如果编译器不可信,则很难保证其他软件的可信性。软件的可信性很大程度上依赖于程序代码的可信性,影响软件可信性的主要因素包括来自软件内部的代码缺陷、代码错误、程序故障以及来自软件外部的病毒、恶意代码等。因此,从代码角度来保证软件的可信性是实现可信软件的重要途径之一。
可信编译的目标就是从编译的角度保证软件的可信性,主要包括两方面含义,一方面,必须保证编译器自身是可信的。即必须保证整个编译操作的可信性,保证编译器在编译过程中不会给编译处理对象带来任何安全性问题,防止恶意攻击者通过修改编译器,在编译过程中对代码的原始语义进行篡改,影响程序代码本身的可信性;另一方面,必须保证编译器编译所得程序可执行代码是可信的,即编译器必须保证,通过其编译生成的程序代码是安全和可靠的。
编译器自身的可信性主要是指其编译过程的正确性、安全性和可靠性。一般认为,通过形式化验证的系统具有较高的可信性,可将形式化方法用于编译器本身。通过在传统编译操作的基础上加入代码安全性加强机制、代码可信性验证机制及可执行代码保护机制等三种机制,来保证编译所产生代码的可信性。
(1)代码安全性加强机制:该机制主要用于识别和处理程序中常见的一些安全漏洞。目前已提出许多针对程序常见安全漏洞的编译处理技术,具有代表性的如针对缓冲区溢出攻击的StackGuard方法等。
(2)代码可信性验证:该机制不可能解决所有的代码安全性问题。对于可信性要求较高的程序代码,必须通过形式化方法对其进行可信性验证。因此,我们提出在代码安全性加强机制对代码进行安全加强之后,通过代码可信性验证机制对代码的可信属性进行验证,对未通过验证的非可信代码进行报警或其他处理。这样,通过代码安全性加强和可信性验证相结合的方法保证编译生成可执行代码的可信性。
(3)可执行代码保护机制:为了防止攻击者对可信编译器最终生成的可执行代码进行恶意攻击或修改,可信编译器在完成编译之后,对可执行代码实施保护机制,保护编译所得可执行代码的完整性、秘密性和可用性,从而确保系统最终执行代码的可信运行。
【试题四】
某互联网销售企业需要建立自己的电子商务平台,将所有产品信息集中在一起,为用户提供全方位的产品信息检索服务。但产品供应商大多数已经建有自己的电子商务平台,且数据独立存储,而且数据格式和数据平台有较大差异,有的供应商甚至没有采用数据库来存储商品信息。为此该企业专门成立专家组来论证其数据集成方案。
李工提出采用集中式集成方式把产品供应商的数据集中在一起,釆用数据仓库技术来实现与各家供应商的数据集成。而王工提出采用松耦合的联邦数据库集成方案。专家组经过激烈讨论,认为王工方案更为合理,建议采用王工提出的集成方案。
【问题1】
请结合数据仓库和联邦数据库集成方案各自的特点,简要说明专家组釆用王工提出的集成方案的原因。
【问题2】
部分供应商的产品信息没有相应的数据库,而是直接嵌入在Web页面中供用户浏览。数据集成时需要直接从供应商电子商务平台的网页上获取其产品信息。请简要给出此类数据集成的方法和基本步骤。
【问题3】
在方案评审会上,项目组针对李工和王工的方案展开了激烈的讨论。刘工指出两种方案在实施的过程中,都存在数据源之间的语义映射和转换问题,都会带来数据集成的不确定。请简要说明产生不确定的原因
【问题1题目解析】
本题主要考查数据集成中的数据仓库方案和联邦数据库方案的内容。
本问题考查数据仓库和联邦数据库集成方案的基本概念。数据仓库集成是把多种来源的数据集中在一起,建立数据仓库,所有数据都驻留在单个数据库服务器上,配置大型处理器和存储容量。数据仓库主要用于决策支持,在数据处理过程中强调分析。其特点是:①集成的数据;②面向主题;③数据相对稳定;④包含历史信息。但是此种集成方法中需要将数据源的数据转换为数据仓库中的语义,而且需要定期的数据复制和数据更新。数据源往往指的是数据库系统。
联邦数据库集成是把多个数据库系统联合在一起,构成“联邦数据库系统”,数据库之间通过接口查询,互相通信,数据分布在不同地方的计算机或数据库服务器上,通过网络连接。其特点是:①联邦数据库提供集成的数据格式,对用户提供统一的访问,屏蔽了各个数据库的复杂性和分布情况,简化了开发数据库查询和对数据致一理解的工作。这种分布式的数据集成,更加符合应用系统的实际情况。②异构数据源不仅仅是数据库系统,通过中间件,可以扩展到传感器、文件和应用程序等。
两种方式都需要将数据源中的数据语义转换为统一数据语义,这种转换往往存在不确定性。
【问题2标准答案】
此类数据往往是非结构化或者半结构化的,但同一个数据源往往有统一的页面模式,因此应该采用Web内容提取(挖掘/文本挖掘)的集成方法来获取对应供应商的产品信息。
其基本步骤为:
(1)分析页面,确定其页面中的数据模式。
(2)抓取页面,通过爬虫技术获取对应的网页。
(3)特征提取与处理,获取相应数据。
(4)数据清洗,根据规则进行判断,抛弃异常数据。
(5)数据转换,根据预先定义好的语义映射关系,将数据转换为统一格式。
【问题2解析】
本问题考查Web内容提取或Web数据挖掘的相关知识。Web信息系统中的数据往往是非结构化或者半结构化的,但同一个数据源往往有统一的页面模式,但是其数据呈现是嵌入在页面中。因此需要釆用Web内容提取(挖掘/文本挖掘)的集成方法来获取对应供应商的产品信息。
其基本的步骤是:
(1)分析页面,确定其页面中的数据模式。制定数据挖掘的特征和提取规则,编写特定的页面分析和数据提取程序。
(2)抓取页面,通过爬虫技术获取对应的网页。将远端的页面下载到本地进行存储,为后续数据提取做准备。
(3)特征提取与处理,获取相应数据,依据的原则是分析页面阶段所形成的特征和提取规则。
(4)数据清洗,根据规则进行判断,抛弃异常数据。
(5)数据转换,根据预先定义好的语义映射关系,将数据转换为统一格式。
Web内容提取的算法程序本身是近似的,因此在获取数据的内容上存在不确定性
【问题3标准答案】
问题1和问题2中实际已经明确了集成过程中存在不确定性。主要的原因在于数据集成系统依靠模式映射来指明数据源中的数据和中介所用数据之间的语义关系,但映射过程中可能发生不确定性。具体原因有:
(1)数据源与中介模式之间的语义映射可能是近似的。实际系统中往往很难有非常精确、完整的语义映射。
(2)用户不熟悉模式或系统的域太宽,不能提供基于表单式的查询接口,需要使用关键字查询,但将关键字查询转换成一组候选的结构化查询时,会带来不确定性。
(3)数据常常是使用信息获取技术从非结构化数据源获取的,而这些获取技术一般只是“大致可用”,所取得的数据可能是不确定的。
因此,在本试题中,无论采用数据仓库或者联邦数据库集成方案,都存在数据源之间的语义映射和转换问题,都会带来数据集成的不确定。
【试题五】
阅读以下关于Web应用系统负载均衡的问题,在答题纸上回答问题1至问题
某电子商务公司的主要业务是书籍、服装、家电和日用品的在线销售。随着公司业务发展和用户规模的不断扩大,现有的网上交易系统无法正常处理日益增大的请求流量,公司决策层决定升级其网上交易系统。在对该系统的升级方案进行设计和讨论时,公司的系统分析师王工提出采用基于高性能主机系统的方法进行系统升级,另外一位系统分析师李工则提出采用基于负载均衡集群的方法进行系统升级。公司的分析师和架构师对这两种思路进行讨论与评估,最终采纳了李工的方法。
【问题1】
请从系统的可用性、可伸缩性和应用特点三个方面说明公司为何没有采用王工提出的方法。
【问题2】
负载均衡通常分为传输层负载均衡和应用层负载均衡两类。请基于这种分类方式,说明基于DNS的负载均衡方法和基于HTTP重定向服务器的负载均衡方法分别属于哪类负载均衡方法,并用200字以内的文字说明这两种方法实现负载均衡的方式。
【问题3】
在确定使用基于负载均衡集群的系统升级方法后,李工给出了一个基于LVS(Linux Virtual Server)的负载均衡集群实现方案。公司的系统分析师在对现有系统进行深入分析的基础上,认为以下两个实际情况对升级方案影响较大,需要对该方案进行改进。
1.系统需要为在线购物提供购物车功能,用来临时存放选中的产品。
2.系统需要保证向所有的VIP用户提供高质量的服务。 针对上述描述,首先说明每种情况分别会引入哪些与负载均衡相关的问题,并用200字以内的文字说明针对不同的问题,应该如何改进李工的解决方案