试题四(共25分)阅读以下关于数据库架构设计的叙述,回答问题1至问题3。某软件公司欲开发一个社交网络系统,该系统能够接收多个不同种类客户端发送的信息,并将这些信息实时显示在每个客户端的页面上供客户阅读。该系统将为数以百万计的用户服务,因此,要求采用的数据库能够支持大量信息存储,能够满足并发读写要求,并要求随着数据规模的扩大,数据库系统要易于进行扩充。关于数据库架构的设计,王工和张工提出了两种模式:王工提出基于传统的关系型数据库模式,通过向上扩展( Scale-up)以满足数据库的可扩展性要求;李工提出利用

题目

试题四(共25分)

阅读以下关于数据库架构设计的叙述,回答问题1至问题3。

某软件公司欲开发一个社交网络系统,该系统能够接收多个不同种类客户端发送的信息,并将这些信息实时显示在每个客户端的页面上供客户阅读。该系统将为数以百万计的用户服务,因此,要求采用的数据库能够支持大量信息存储,能够满足并发读写要求,并要求随着数据规模的扩大,数据库系统要易于进行扩充。关于数据库架构的设计,王工和张工提出了两种模式:王工提出基于传统的关系型数据库模式,通过向上扩展( Scale-up)以满足数据库的可扩展性要求;李工提出利用新兴的NoSQL数据库模式,通过向外扩展( Scale-out)以满足数据库的可扩展性要求。项目组经过讨论,决定采用李工提出的设计方案。

【问题1】(11分)

请指出关系数据库模式和NoSQL模式在并发支持、存储与查询、扩展方式、索引方式和应用领域五个方面各自的特点,结果填入表4-1中(1)~(10);并针对应用需求,说明项目组选择李工提出的设计方案的原因。

【问题2】(8分)

与传统的关系型数据库相比,NoSQL数据库所支持的典型数据存储类型有哪些?

【问题3】(6分)

在实际应用中,NoSQL数据库存在的问题有哪些?


相似考题

3.请详细阅读有关数据架构方面的描述,回答问题1至问题3。 【说明】 某软件公司欲开发一个基于Web 2.0的大型社交网络系统。就该系统的数据架构而言,李工决定采用公司熟悉的数据架构,使用通用的商用关系型数据库,系统内部数据采用中央集中方式存储。 该系统投入使用后,初期用户数量少,系统运行平稳。6个月后,用户数出现了爆炸式增长,系统暴露出诸多问题,集中表现在: (1)用户执行读写操作时,响应时间均变得很慢; (2)随着系统功能的扩充,原有数据格式发生变化,又出现新的数据格式,维护困难; (3)数据容量很快超过系统原有的设计上限,数据库扩容困难; (4)软件系统不断出现宕机,整个系统可用性较差。 经过多次会议讨论,公司的王工建议采用NoSQL数据库来替代关系数据库,以解决上述问题。但李工指出NoSQL数据库出现时间不长,在使用上可能存在风险。公司技术人员对NoSQL数据库产品进行了认真测试,最终决定采用NoSQL数据库来替代现有的数据库系统。【问题1】(11分) 分别解释产生问题(1)~(4)的原因。 【问题2】(8分) 请针对问题(1)~(4),分别指出NoSQL数据库的哪些特点促使公司最终采用了NoSQL数据库。 【问题3】(6分) 请指出该系统采用NoSQL数据库时可能存在的问题。

更多“ 试题四(共25分)阅读以下关于数据库架构设计的叙述,回答问题1至问题3。某软件公司欲开发一个社交网络系统,该系统能够接收多个不同种类客户端发送的信息,并将这些信息实时显示在每个客户端的页面上供客户阅读。该系统将为”相关问题
  • 第1题:

    () 阅读以下关于信息系统安全性的叙述,在答题纸上回答问题1至问题3。 某企业根据业务扩张的要求,需要将原有的业务系统扩展到互联网上,建立自己的B2C业务系统,但此时系统的安全性成为一个非常重要的设计需求。【问题1】(8分) 信息系统面临的安全威胁多种多样,来自多个方面。请指出信息系统面临哪些方面的安全威胁并分别子以简要描述。【问题2】(7分) 认证是安全系统中不可缺少的环节,请简要描述主要的认证方式,并说明该企业应采用哪种认证方式。


    正确答案:()
    【问题1】
      信息系统面临的安全威胁来自于物理环境、通信链路、网络系统、操作系统、应用系统以及管理等多个方面。
      物理安全威胁是指对系统所用设备的威胁,如自然灾害、电源故障、数据库故障和设备被盗等造成数据丢失或信息泄漏。
      通信链路安全威胁是指在传输线路上安装窃听装置或对通信链路进行干扰。
      网络安全威胁当前主要是指由于因特网的开放性、国际性与无安全管理性,对内部网络形成的严重安全威胁。
      操作系统安全威胁指的是操作系统本身的后门或安全缺陷,如“木马”和“陷阱门”等。
      应用系统安全威胁是指对于网络服务或用户业务系统安全的威胁,包括应用系统自身漏洞,也受到“木马”的威胁。
      管理系统安全威胁指的是人员管理和各种安全管理制度。
    【问题2】
      目前主要的认证方式有三类:
      (1)用户名和口令认证:主要是通过一个客户端与服务器共知的口令(或与口令相关的数据)进行验证。根据处理形式的不同,分为验证数据的明文传送、利用单向散列函数处理验证数据、利用单向散列函数和随机数处理验证数据。
      (2)使用令牌认证:该方式中,进行验证的密钥存储于令牌中,目前的令牌包括安全证书和智能卡等方式。
      (3)生物识别认证:主要是根据认证者的图像、指纹、气味和声音等作为认证数据。根据该企业的业务特征,采用令牌认证较为合适。


        本题考查信息系统的安全威胁以及采用的常用方案。
      信息系统面临的安全主要包括信息系统所依赖环境的安全、信息系统自身安全和使用信息系统的人员管理和相关规章制度。
      信息系统所依赖的环境带来的安全威胁有物理环境、通信链路和操作系统。物理安全威胁是指对系统所用设备的威胁,如自然灾害、电源故障、数据库故障和设备被盗等造成数据丢失或信息泄漏。通信链路安全威胁是指在传输线路上安装窃听装置或对通信链路进行干扰。网络安全威胁当前主要是指由于因特网的开放性、国际性与无安全管理性,对内部网络形成的严重安全威胁。操作系统安全威胁指的是操作系统本身的后门或安全缺陷,如“木马”和“陷阱门”等。
      应用系统安全威胁是指对于网络服务或用户业务系统安全的威胁,包括应用系统自身漏洞,也受到“木马”的威胁。
      管理系统安全威胁指的是人员管理和各种安全管理制度。所谓的安全措施,是指“三分技术 ,七分管理”。
      在信息系统安全中,认证是必不可少的环节。常见的认证方式有三种:(1)用户名和口令认证;主要是通过一个客户端与服务器共知的口令(或与口令相关的数据)进行验证。根据处理形式的不同,分为验证数据的明文传送、利用单向散列函数处理验证数据、利用单向散列函数和随机数处理验证数据。(2)使用令牌认证:该方式中,进行验证的密钥存储于令牌中,目前的令牌包括安全证书和智能卡等方式。(3)生物识别认证:主要是根据认证者的图像、指纹、气味和声音等作为认证数据。根据该企业原有信息系统中的认证方式,并考虑到接入因特网后的用户特征,采用令牌认证的方式较为适合。

  • 第2题:

    阅读以下说明,回答问题1至问题5。

    【说明】

    某网络拓扑结构如图3-1所示,DHCP服务器分配的地址范围如图3-2所示。

    DHCP允许服务器向客户端动态分配Ⅲ地址和配置信息。客户端可以从DHCP服务器获得(1)。(1)A.DHCP服务器的地址

    B.Web服务器的地址

    C.DNS服务器的地址


    正确答案:(1)C
    (1)C 解析:DHCP是Dynamic Host Configuration Protocol(动态主机配置协议)的缩写。在常见的小型网络中,IP地址的分配一般都采用静态方式,但在大中型网络中,为每一台计算机分配一个静态IP地址,这样将会加重网管人员的负担,并且容易导致IP地址分配错误。因此,在大中型网络中使用DHCP服务是非常有效率的。
    DHCP客户端通过和DHCP服务器的交互通信以获得IP地址租约,包括IP地址、子网掩码以及DNS服务器的地址。

  • 第3题:

    RAC架构节点注册的问题

    一个客户端IP可以发送请求到一个RAC架构的Oracle数据库,这个RAC架构有两个节点,但在客户端tnsname.ora中只配置了一个节点的hostname等信息,有时请求后就会提示:

    ORA-12545: Connect failed because target host or object does not exist

    是因为此时请求VIP可能飘到了另一个未在客户端中注册的节点。

    我的想法是讲另一个节点信息也在客户端tnsname.ora中注册,是不是就可以避免这种问题,但询问了下,说由于现在只有一个客户端的IP地址,所以只能连一台服务器节点到这个客户端使用。

    不太理解,这里RAC架构中每个节点设置连接到的客户端IP不能相同?!


    如果是 Oracle 10 或以上版本的话,使用 REGEXP_SUBSTR 处理,就可以了。REGEXP_SUBSTR 是正则表达式的处理。'\w+$' 中, \w 意思是字符 \w+ 意思是一个或多个字符 \w+$ 意思是一个或多个字符 结尾。SQL> SELECT 2 a, REGEXP_SUBSTR(a, '\w+$') AS b 3 FROM 4 test_123;A B-------------------- --------------------/a/b/c c/a/b/c/d d/a/b/c/d/e e

    希望能帮到你,别忘了采纳我的答案哦,祝你生活愉快!



  • 第4题:

    阅读下列说明以及图4-4和图4-5,回答问题1、问题2和问题3,将解答填入答题纸的对应栏内。

    [说明]

    某电话公司决定开发一个管理所有客户信息的交互式网络系统。系统的功能如下。

    1.浏览客户信息:任何使用因特网的用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。

    2.登录:电话公司授予每个客户一个账号。拥有授权账号的客户,可以使用系统提供的页面设置个人密码,并使用该账号和密码向系统注册。

    3.修改个人信息:客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。

    4.删除客户信息:只有公司的管理人员才能删除不再接受公司服务的客户的信息。系统采用面向对象方法进行开发,在开发过程中确定的类如表4-3所示。

    表4-3 开发过程中确定的类

    在需求分析阶段,采用UML的用例图(use case diagram)描述系统功能需求,如图4-4所示。指出图中的A,B,C和D分别是哪个用例?


    正确答案:A:浏览客户信息;B:修改个人信息;C:登录;D:删除客户信息。
    A:浏览客户信息;B:修改个人信息;C:登录;D:删除客户信息。 解析:图4-4是一个UML的用例图。在工程的分析阶段,例图被用来鉴别和划分系统功能,它们把系统分成动作者(actor)和用例。
    动作者(actor)表示系统用户能扮演的角色(role)。这些用户可能是人,可能是其他的计算机、一些硬件或者是其他软件系统。惟一的标准是它们必须要在被划分到用例的系统部分以外。它们必须能刺激系统部分,并接收返回。
    用例描述了当某个动作者给系统特定的刺激时系统的活动。这些活动被文本描述。它描述了触发用例的刺激的本质,输入和输出到其他活动者,转换输入到输出的活动。用例文本通常也描述每个活动在特殊的活动线时可能的错误,以及系统应采取的补救措施。
    了解用例图、动作者、用例的基本概念后,题目就迎刃而解了。图中的网络用户、公司客户、管理人员都是动作者。题目说明中提到了系统有4个功能:浏览客户信息、登录、修改个人信息、删除客户信息。这也就是4个用例。现在只需把他们对号入座即可。根据题目说明,可以知道任何使用Internet的网络用户都可以浏览电话公司所有的客户信息,在图中符合这一条件的只有A,所以A应填浏览客户信息。。因为只有公司的管理人员才能删除不再接受公司服务的客户的信息。所以D应填删除客户信息。
    剩下只有登录和修改个人信息2个用例了,那么究竟是B填登录还是修改呢?先介绍包含和扩展的概念。
    2个用例之间的关系可以主要概括为2种情况:一种是用于重用的包含关系,用构造型《include》表示;另一种是用于分离出不同的行为,用构造型《extend》表示。
    (1)包含关系:如果可以从2个或2个以上的原始用例中提取公共行为,或者发现能够使用一个构件来实现某一个用例的部分功能时,应该使用包含关系来表示它们。示意图如图4-6所示。
    (2)扩展关系:如果一个用例明显地混合了2种或2种以上的不同场景,即根据情况可能发生多种事情。可以断定将这个用例分为一个主用例和一个或多个辅用例描述可能更加清晰。示意图如图4-7所示。
    因为要先登录才能修改信息,显然B应填修改个人信息,C应填登录。

    在UML中重复度(multiplicity)又称多重性,多重性表示为一个整数范围n...m,整数n定义所连接的最少对象的数目,而m则为最多对象数(当不知道确切的最大数时,最大数用*号表示)。最常见的多重性有0...1,0...*,1...1,1...*。
    因为1个CustomerList的实例可以与0个或多个Customer的实例相关联;而1个 Customer的实例只能与1个CustomerList的实例相关。所以(1)空应填1,(2)空应填 0...*。因为Customer是CompanyCustomer的相应的详细信息,所以(3)空和(4)空都应该填写0...1。
    用UMI建立业务模型时,可以把业务人员看作是系统中的角色或者类。在建立抽象模型时,很少有类会单独存在,大多数都将会以某种方式彼此通信,因此还需要描述这些类之间的关系。关系是事物间的连接,在UML中,有几个很重要的关系。
    (1)依赖关系
    有2个元素A和B,如果元素A的变化会引起元素B的变化,则称元素B依赖(depend ency)于元素A。
    在类中,依赖关系有多种表现形式,例如,一个类向另一个类发消息;一个类是另一个类的成员;一个类是另一个类的某个操作参数等。
    (2)概括关系
    概括关系(generalization),也称为泛化关系,描述了一般事物与该事物中的特殊种类之间的关系,也就是父类与子类之间的关系。继承关系是泛化关系的反关系,也就是说子类是从父类中继承的,而父类则是子类的泛化。在UML中,对泛化关系有3个要求:
    ①子类应与父类完全一致,父类所具有的关联、属性和操作,子类都应具有。
    ②子类中除了与父类一致的信息外,还包括额外的信息。
    ③可以使用子父类实例的地方,也可以使用子类实例。
    (3)关联关系
    关联(association)表示2个类的实例之间存在的某种语义上的联系。例如,一个老师为某个学校工作,一个学校有多间教室。可以认为老师和学校、学校和教室之间存在着关联关系。
    关联关系为类之间的通信提供了一种方式,它是所有关系中最通用、语义最弱的。关联关系通常可以再细分成以下几种。
    ①聚集关系:聚集关系(aggregation)是关联关系的特例。它表示一种整体和部分的关系。如一个电话机包含一个话筒,一个计算机包含显示器,键盘和主机等都是聚合关系的例子。
    ②组合关系:如果聚集关系中的表示“部分”的类的存在与表示“整体”的类有着紧密的关系,例如,“公司”与“部门”之间的关系,那么就应该使用组合关系来表示。

  • 第5题:

    试题二(共25分)

    阅读以下关于分布式存储系统设计的叙述,回答问题1至问题3。

    某软件公司开发基于云计算的分布式文档协作平台( DDCP),系统部分需求如下所示:

    (1)实现文档的分布式存储,客户端可随时随地上传和下载文档;

    (2)支持多客户端并发编辑同一文档,某个客户端所做修改会实时显示在其他客户端;

    (3)要求系统具有自我修复机制,当系统中某个节点失效时,无需人工干预能够自动实现节点替换并恢复到一致状态。

    项目组经过讨论,决定采用现有的分布式文件系统作为基础架构,但在具体选用哪种设计方案时产生了分歧。王工建议采用Hadoop分布式文件系统HDFS作为系统参考架构,但张工认为Google分布式文件系统GFS更适合该系统需求。最后经过更为详细

    的分析和讨论,同意了张工的建议,采用GFS作为分布式文档协作平台的文件系统架构。

    【问题1】(12分)

    请用300字以内的文字说明GFS和HDFS有何异同,并针对系统需求,用200字以内的文字说明选择GFS的原因。

    【问题2】(8分)

    针对图2-1所示DDCP基础架构,请分别说明一次数据读操作和一次并发写操作的过程。

    【问题3】(5分)

    请分别叙述采用GFS和HDFS架构,单点失效问题是如何解决的。


    正确答案:
    试题二分析
    分布式数据存储系统是实现云计算和面向服务计算等分布式计算模型的基础,采用不同的分布式文件系统架构决定了分布式数据存储系统的运行效率、可伸缩性、容错能力及安全性等。分布式文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,从而实现了数据的分布式存储和管理。
    Google的GFS文件系统和Hadoop分布式文件系统HDFS是当前最流行的两种分布式文件系统参考架构。
    本题主要考查应试者对于分布式文件系统设计的掌握情况,特别是GFS和HDFS分布式文件系统架构的设计。本题结合一个典型的实际项目案例,首先要求分析GFS和HDFS之间的异同,然后针对系统需求分析采用GFS文件系统的原因;针对项目中所设、计的DDCP基础架构,分析数据读写操作的过程;最后针对具体的单点失效问题,说明两种分布式文件系统架构所提供的解决方案。
    【问题1】
    本问题要求考生针对GFS和HDFS两种分布式文件系统架构的特点展开分析并进行总结。
    (1) GFS是一个面向大规模数据密集型应用的、可伸缩的分布式文件系统,虽然运行在多台普通硬件设备上,但是它提供了灾难冗余的能力,为大量客户机提供高性能的服务。一个GFS集群中包含了一个单独的Master节点、多台Chunk服务器,并且同时被多个客户端访问。GFS存储的文件被分割为固定大小的Chunk并分配标识,缺省提供3个存储复制节点,Master节点管理所有的文件系统元数据,GFS客户端代码以库的形式被链接到客户程序里,无论是客户端还是Chunk服务器都不需要缓存文件数据。
    (2) HDF-S是一个高度容错性的系统,能够提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS采用Master/Slave架构,一个HDFS集群由一个Namenode和一定数目的Datanodes组成。Namenode是一个中心服务器,负责管理文件系统的命名空间以及客户端对文件的访问,集群中的Datanode 一般是一个节点一个,负责管理它所在节点上的存储。一个文件被分成一个或多个数据块,这些块存储在一组Datanodeh上,Namenode执行文件系统的命名空间操作并确定数据块到具体Datanode节点的映射,Datanode在Namenode的统一调度下负责处理文件系统客户端的读写请求。
    【问题2】
    本问题要求考生认真分析图中给出的DDCP系统架构,依据图中节点之间的数据传
    输关系描述数据传输过程。
    (1)读数据的过程:应用程序将读数据请求发送给客户端后,客户端访问主服务器请求所需数据位置信息,主服务器查询数据分块和地址信息返回给客户端,客户端根据地址信息向块服务器发送读数据请求,块服务器将所请求数据发送给客户端,客户端将数据转发给应用程序。
    (2)写数据的过程:应用程序分别将数据和写数据请求发送给客户端,客户端依次访问主服务器请求所写数据位置信息,主服务器依次查询数据分块和地址信息发送给客户端,客户端将所要写入的数据重新组织,将属于同一个块服务器的数据按照分组报文和分组序列信息发送给块服务器数据缓存( Primary),客户端将所写数据按照分组报文发送给块服务器数据缓存( Secondary),块服务器数据缓存(Primary)按照分组序列将数据写入到块服务器数据块( Primary),块服务器(Primary)将分组序列发送给块服务器(Secondary),块服务器数据缓存(Secondary)按照分组序列将数据写入块服务器数据块( Secondary),块服务器(Secondary)将写入完成信息发送给块服务器(Primary),块服务器数据( Primary)将写数据完成信息发送给客户端。
    【问题3】
    本问题要求应试者掌握单点失效问题产生的原因,并能够结合GFS和HDFS架构的特点进行分析,说明所采用的解决方案。
    参考答案
    【问题1】
    GFS与HDFS相比的相同点是:单一控制机和多台工作机;通过数据分块和复制实现可靠性和高性能;树状文件系统结构。
    GFS与HDFS相比的不同点是:多次写入和多客户端并发增加数据;Master单点失效问题;数据快照的支持;实时性支持。
    针对系统需求,文档协作要求多客户端并发写入文件支持;解决主服务器单点失效问题;系统补偿操作需要数据快照。
    【问题2】
    读数据过程:
    ④应用程序将读数据请求发送给DDCP客户端;
    ②DDCP客户端访问DDCP主服务器请求所需数据位置信息;
    ③DDCP主服务器查询数据分块和地址信息发送给DDCP客户端;
    ④DDCP客户端根据地址信息向DDCP块服务器发送读数据请求;
    ⑤DDCP块服务器将所请求数据发送给DDCP客户端;
    ⑥DDCP客户端将数据转发给应用程序。
    并发写数据过程:
    ①并发写的应用程序分别将数据和写数据请求发送给DDCP客户端;
    ②DDCP客户端依次访问DDCP主服务器请求所写数据位置信息;
    ③DDCP主服务器依次查询数据分块和地址信息发送给DDCP客户端;
    ④DDCP客户端将所要写入的数据重新组织,将属于同一个DDCP块服务器的数
    据按照分组报文和分组序列信息发送给DDCP块服务器数据缓存(Primary);
    ⑤DDCP客户端将所写数据按照分组报文发送给DDCP块服务器数据缓存
    (Secondary);
    ⑥DDCP块服务器数据缓存(Primary)按照分组序列将数据写入到DDCP块服务
    器数据块( Primary);
    ⑦DDCP块服务器(Primary)将分组序列发送给DDCP块服务器(Secondary);
    ⑧DDCP块服务器数据缓存(Secondary)按照分组序列将数据写入DDCP块服务
    器数据块(Secondary);
    ⑨DDCP块服务器(Secondary)将写入完成信息发送给DDCP块服务器(Primary);
    ⑩DDCP块服务器数据(Primary)将写数据完成信息发送给DDCP客户端。
    【问题3】
    GFS中采用主从模式备份Master的系统元数据,当主Master失效时,可以通过分布式选举备机接替主Master继续对外提供服务,而由于复制及主备切换本身有一定的复杂性,HDFS Master的持久化数据只写入到本机(可能写入多份存放到Master机器的多个磁盘中防止某个磁盘损害),出现故障时需要人工介入。

  • 第6题:

    试题五(共25分)

    阅读以下关于网上交易系统的叙述,回答问题1至问题3。

    某电子商务公司进行机构重组后,业务规模和用户规模不断扩大,现有的在线销售系统已经无法满足公司的发展要求。公司决策层对现有系统的不足进行了认真分析,决定提高现有系统客户端访问速度,增强客户端的动态交互能力,并提高整个系统代码的模块化和重用性,最终完成网上交易系统的改造与升级。在对该系统的升级方案进行设计和讨论时,公司的系统分析师王工提出采用开发浏览器插件的方式提高客户端访问速度并增强访问体验,通过重写服务端代码提高系统的模块化和重用性。另外一位系统分析师李工则提出采用Ajax技术提高客户端性能,采用JavaScript技术进一步增强客户端的动态交互能力,并在服务端采用JavaScript技术提高系统代码的模块化和重用性。公司的分析师和架构师对这两种思路进行讨论与评估,最终采纳了李工的方法。

    【问题1】(8分)

    请从系统的客户端开发和服务端开发两个方面说明为何没有采用王工提出的方法。

    【问题2】(9分)

    请说明什么是AjaX技术,并从信息表示、动态显示及交互、数据交换和异步数据交换四个功能特点说明Ajax包含的基本技术,对应填入表5-1中的(1)、(2)、(3)、(4)空白中。

    【问题3】(8分)

    在论证服务端实现策略时,李工以“用户身份验证”和“客户请求信息传递与返回”两个应用场景为例说明在服务端采用JavaScript技术的优势。请给出李工可能的论证过程。


    正确答案:
    试题五分析
    本问题考查的是Web应用系统的分析与设计,主要考查JavaScript在Web应用系统中的作用。
    【问题1】
    本问题考查Web应用系统升级时的方案选择问题。根据题干描述,系统升级的目的是提高现有系统客户端访问速度,增强客户端访问体验,并提高整个系统代码的模块化和重用性。因此需要根据问题描述,从客户端开发和服务端开发两个方面,结合三个升级目标进行全面论述。
    从客户端开发方面来看,在线交易系统是一个典型的B/S系统,采用浏览器插件的客户端增强方法与基于Ajax技术的客户端增强方法相比,存在两个明显的缺陷:第一,客户端功能增强插件必须下载并安装到浏览器上,对客户端要求较高且不方便;而采用Ajax技术对客户端进行增强时只要求浏览器支持JavaScript,这一要求目前所有的浏览器都能够直接满足。第二,现有浏览器都定义了符合自身要求、互不兼容的插件开发标准与运行形态,采用浏览器插件的增强方式需要针对不同浏览器开发对应的插件,这样存在重复开发的问题且工作量巨大。而Ajax技术则基于所有浏览器都支持的标准技术体系,不存在重复开发和互不兼容的问题。
    从服务端开发方面来看,王工提出的“重写服务端代码”的方式虽然可能解决服务端模块化和重用性的要求,但是开发的风险和代价太大,在进行企业应用系统升级时一般不考虑完全重写,特别是服务端代码完全重写的方案。另一方面,李工提出的“服务端JavaScript技术”能够与采用Ajax技术的客户端进行无缝集成,并且能够利用JavaScript与现有系统功能模块的互操作技术,采用JavaScript实现系统现有业务功能模块的动态组合和调用,增强系统功能模块的重用性。
    综合上述两个方面,可以看出应该采用李工的解决方案。
    【问题2】
    主要考查对Ajax技术涵盖的基本技术的理解与掌握。
    Ajax全称为Asynchronous JavaScript. and XML(异步JavaScript和XML),是一种创
    建交互式网页应用的网页开发技术。Ajax所包含的基本技术有:
    使用XHTML+CSS来表示信息;
    使用JavaScript操作DOM (Document Object Model)进行动态显示及交互;
    使用XML和XSLT进行数据交换及相关操作;
    使用XMLHttpRequest对象与Web服务器进行异步数据交换;
    使用JavaScript将所有的东西绑定在一起。
    Ajax技术的优点包括:
    (1)能在不更新整个页面的前提下维护数据。使得Web应用程序更为迅捷地响应用户动作,并避免在网络上发送没有改变过的信息;
    (2)通过将部分计算转移到客户端,减轻了服务器的处理量,增强了用户体验;
    (3) Ajax不需要浏览器插件支持,辅助开发工具与开发库较多;
    Aj ax技术的缺点包括:
    (1)可能破坏浏览器后退按钮的正常行为;
    (2)使用动态页面更新使得用户难于将某个特定的状态保存到收藏夹中;
    (3) 一些手持设备(如手机、PDA等)目前还不能很好地支持Ajax;
    (4)对流媒体的支持没有Flash和Java Applet等技术好。
    【问题3】
    主要考查服务端JavaScript的实际应用和分析。
    在“用户身份验证”这一应用场景中,需要同时在客户端与服务端对用户的输入进行验证:在客户端,需要判断用户的输入是否满足基本的格式要求,目前通常采用JavaScript代码实现验证功能;在服务端,需要验证用户输入的密码是否与后端数据库中存储的密码匹配。如果采用服务端JavaScript功能,则可以实现相似或相同代码的重用,提高系统的可维护性。
    在“客户请求信息传递与返回”这一应用场景中,如果客户端与服务端采用不同的技术实现,则当客户端发出的请求数据传递到服务端后,服务端需要进行数据解析与格式转换,之后才能调用业务功能,得到运算结果后还需要将其转换为客户端需要的数据格式。整个过程需要涉及两次应用层的数据格式解析与转换,效率较低。如果采用服务端JavaScript技术,可以采用JSON等客户端与服务端同时支持的数据格式进行传递,能够降低服务端的复杂度,提高运行效率。
    服务端JavaScript的主要缺点有:
    (1)缺乏成熟的类库。在数据操作、数据存储等方面能力较弱。
    (2)对标准的支持不够。目前的服务端引擎对CommonjS的支持有待加强。
    (3)开发和执行效率较低。在服务端缺少良好的开发环境和类库支持,执行效率也较为低下。
    参考答案
    【问题1】
    从客户端开发方面来看,由于现有浏览器都定义了符合自身要求、互不兼容的插件开发标准与运行形态,王工提出的“浏览器插件的增强方式”需要针对不同浏览器开发对应的插件,这样存在重复开发的问题且工作量巨大;另一方面,客户端功能增强插件必须下载并安装到浏览器上,对客户端要求较高且不方便。李工提出的“基于Ajax的客户端增强方式”只要求浏览器支持JavaScript,这一要求目前所有的浏览器都能够直接满足;另一方面,而Ajax技术则基于所有浏览器都支持的标准技术体系,不存在重复开发和互不兼容的问题。
    从服务端开发方面来看,王工提出的“重写服务端代码”的方式虽然可能解决服务端模块化和重用性的要求,但是开发的风险和代价太大,在进行企业应用系统升级时一般不考虑完全重写,特别是服务端代码完全重写的方案。另一方面,李工提出的“在服务端采用JavaScript技术”能够与采用Ajax技术的客户端进行无缝集成,并且能够利用JavaScript与现有系统功能模块的互操作技术,采用JavaScript实现系统现有业务功能模块的动态组合和调用,增强系统功能模块的重用性。
    综合上述两个方面,可以看出应该采用李工的解决方案。
    【问题2】
    Ajax全称为Asynchronous JavaScript. and XML(异步JavaScript和XML),是一种创
    建交互式网页应用的网页开发技术。
    【问题3】
    在“用户身份验证”这一应用场景中,需要在客户端与服务端同时对用户的输入进
    行验证:在客户端,需要判断用户的输入是否满足基本的格式要求,目前通常采用
    JavaScript代码实现验证功能;在服务端,需要验证用户输入的密码是否与后端数据库中存储的密码匹配。如果在服务端采用JavaScript功能,则可以实现相似或相同代码的重
    用,提高系统的可维护性。

    在“客户请求信息传递与返回”这一应用场景中,如果客户端与服务端采用不同的技术实现,则当客户端发出的请求数据传递到服务端后,服务端需要进行数据解析与格式转换,之后才能调用业务功能,得到运算结果后还需要将其转换为客户端需要的数据格式。整个过程需要涉及两次应用层的数据格式解析与转换,效率较低。如果在服务端采用JavaScript技术,则可以使用JSON等客户端与服务端同时支持的数据格式进行传递,能够降低服务端的复杂度,提高运行效率。

  • 第7题:

    阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。
    【说明】
    某留言系统采用ASP+Access开发,其后台管理登录页面如图4-1所示。

    【问题1】(9分)
    以下是该后台管理登录页面login.asp的部分代码,请仔细阅读该段代码,根据图4-1 将(1)~(9)的空缺代码补齐。



    【问题2】(6分)
    1.在登录页面 login.asp 中通过<!--#include file=“bbb.asp”-->导入了bbb.asp的代码,以下是bbb.asp的部分代码,请仔细阅读该段代码,将空缺代码补齐。



    答案:
    解析:


  • 第8题:

    阅读以下软件架构设计的问题,在答题纸上回答问题1和问题2。
    某软件开发公司欲为某电子商务企业开发一个在线交易平台,支持客户完成网上购物活动中的在线交易。在系统开发之初,企业对该平台提出了如下要求:
    (1)在线交易平台必须在1s内完成客户的交易请求。
    (2)该平台必须保证客户个人信息和交易信息的安全。
    (3)当发生故障时,该平台的平均故障恢复时间必须小于10s。
    (4)由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行硬件升级必须在6小时内完成。
    针对这些要求,该软件开发公司决定采用基于架构的软件开发方法,以架构为核心进行在线交易平台的设计与实现。
    【问题1】(9分)
    软件质量属性是影响软件架构设计的重要因素。请用200字以内的文字列举六种不同的软件质量属性名称,并解释其含义。
    【问题2】(16分)
    请对该在线交易平台的4个要求进行分析,用300字以内的文字指出每个要求对应何种软件质量属性;并针对每种软件质量属性,各给出2种实现该质量属性的架构设计策略。


    答案:
    解析:
    【问题1】
    常见的软件质量属性有多种,例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。
    这些质量属性的具体含义是:
    (1)性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。
    (2)可用性是系统能够正常运行的时间比例。
    (3)可靠性是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。
    (4)健壮性是指在处理或环境中,系统能够承受压力或变更的能力。
    (5)安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
    (6)可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。
    (7)可变性是指体系结构经扩充或变更成为新体系结构的能力。
    (8)易用性是衡量用户使用一个软件产品完成指定任务的难易程度。
    (9)可测试性是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。
    (10)功能性是系统所能完成所期望工作的能力。
    (11)互操作性是指系统与外界或系统与系统之间的相互作用能力。
    【问题2】
    (1)在线交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。
    (2)该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。
    (3)当发生故障时,该平台的平均故障恢复时间必须小于l0s。该要求主要对应可用性,可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。
    (4)由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。
    【解析】

    本题考查考生对于质量属性及质量属性实现策略的掌握情况。
    【问题1】
    常见的软件质量属性有多种,例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。
    这些质量属性的具体含义是:
    (1)性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。
    (2)可用性是系统能够正常运行的时间比例。
    (3)可靠性是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。
    (4)健壮性是指在处理或环境中,系统能够承受压力或变更的能力。
    (5)安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
    (6)可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。
    (7)可变性是指体系结构经扩充或变更成为新体系结构的能力。
    (8)易用性是衡量用户使用一个软件产品完成指定任务的难易程度。
    (9)可测试性是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。
    (10)功能性是系统所能完成所期望工作的能力。 
    (11)互操作性是指系统与外界或系统与系统之间的相互作用能力。
    【问题2】
    本题主要结合实际案例,考查实现各种质量属性的策略。
    (1)在线交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。
    (2)该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。
    (3)当发生故障时,该平台的平均故障恢复时间必须小于l0s。该要求主要对应可用性,可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。
    (4)由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。

  • 第9题:

    阅读以下关于变更的叙述,回答问题1至问题3。【说明】在一个正在实施的系统集成项目中出现了下述情况:一个系统的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改。于是,该开发人员就直接对系统软件进行了修改,解决了该项功能问题。针对这样一种情况,请分析如下问题。动态配置库用于管理基线和控制基线的变更。()


    正确答案:错误

  • 第10题:

    获取天翼阅读客户端可发送()至10001获取。

    • A、3102
    • B、YDKHD
    • C、阅读客户端
    • D、read

    正确答案:A,B,C

  • 第11题:

    阅读以下关于变更的叙述,回答问题1至问题3。【说明】在一个正在实施的系统集成项目中出现了下述情况:一个系统的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改。于是,该开发人员就直接对系统软件进行了修改,解决了该项功能问题。针对这样一种情况,请分析如下问题。 基线是软件生存期各个开发阶段末尾的特定点,不同于里程碑。()


    正确答案:错误

  • 第12题:

    问答题
    阅读以下关于变更的叙述,回答问题1至问题3。【说明】在一个正在实施的系统集成项目中出现了下述情况:一个系统的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改。于是,该开发人员就直接对系统软件进行了修改,解决了该项功能问题。针对这样一种情况,请分析如下问题。请用300字以内的文字,说明配置管理中完整的变更处置流程。

    正确答案: 变更管理的基本流程是:
    (1)变更申请。应记录变更的提出人、日期、申请变更的内容等信息。
    (2)变更评估。对变更的影响范围、严重程度、经济和技术可行性进行系统分析。
    (3)变更决策。由具有相应权限的人员或机构决定是否实施变更。
    (4)变更实施。由管理者指定的工作人员在受控状态下实施变更。
    (5)变更验证。由配置管理人员或受到变更影响的人对变更结果进行评价,确定变更结果和预期相符、相关内容进行了更新、符合版本管理的要求。
    (6)沟通存档。将变更后的内容通知可能会受到影响的人员,并将变更记录汇总归档。如提出的变更在决策时被否决,其初始记录也应予以保存。
    解析: 暂无解析

  • 第13题:

    阅读以下说明,回答问题1至问题4,将解答填入对应栏内。

    【说明】

    某娱乐类网站需要开发一个网络游戏项目。该项目采用三维动画软件完成游戏建模和美工制作,采用面向对象的程序设计语言完成系统集成,通过客户端程序与服务器进行交互操作。

    为了提高客户端与服务器的交互效率,保证游戏画面流畅,对游戏场景中的三维模型有什么要求?为什么?


    正确答案:为了保证画面流畅提高交互效率三维模型应当使用低精度模型即使用多边形面数尽量少的模型。 主要原因如下: ①网络游戏采用的是实时渲染技术需要根据游戏玩家发出的指令进行实时渲染高精度三维模型的实时渲染复杂度高难于保证画面流畅。 ②采用较低精度的三维模型需要通过网络传送的数据量也较小便于提高网络传输效率。
    为了保证画面流畅,提高交互效率,三维模型应当使用低精度模型,即使用多边形面数尽量少的模型。 主要原因如下: ①网络游戏采用的是实时渲染技术,需要根据游戏玩家发出的指令进行实时渲染,高精度三维模型的实时渲染复杂度高,难于保证画面流畅。 ②采用较低精度的三维模型需要通过网络传送的数据量也较小,便于提高网络传输效率。 解析:网络游戏开发可以分为两个部分,第一部分是游戏美工设计与制作,主要是通过三维动画软件完成游戏中场景和角色的设计与制作,第二部分是游戏引擎开发,通过程序设计语言设计游戏中的控制程序。交互性是网络游戏最重要的特征,画面显示是否流畅决定着网络游戏的成败。由于网络游戏运行过程中采用的是实时渲染技术,需要根据游戏玩家发出的指令进行实时渲染,耗费较多的系统资源,为了确保实时渲染的效率,对网络游戏中使用的三维模型有严格的要求,最重要的一点是要对组成模型的多边形面数进行限制,即通常所说的低边模。采用低边模型可以提高实时渲染的效率,同时还可以减少网络传送的数据量,提高游戏交互效率。
    多媒体应用系统开发可以采用标准的软件工程开发方法来完成,通常采用的是螺旋式生命周期模型,网络游戏属于一种多媒体应用系统,同样可以采用螺旋式生命周期模型。螺旋式生命周期模型是在用户需求分析的基础上,构建一个应用系统原型,然后把应用系统原型交给用户使用,在使用过程中,通过用户反馈得到更多的用户需求,再构建下一个应用系统原型,加入新的用户需求,重复上述过程,直到得到完善的应用系统。
    在面向对象程序设计语言中,类是一种重要的用户自定义数据类型,类的成员分为数据成员和函数成员(或成员函数),数据成员保存该类用于操作的数据,函数成员(成员函数)用于对数据成员的操作,完成一定的功能。类通过实例化生成对象,同一类生成的所有对象都具有该类的数据成员和函数成员(成员函数)。在可视化程序设计中,窗口、对话框、按钮等可视化对象的外观属性通常定义为对象的数据成员,如颜色、字号大小、字体等。鼠标和键盘事件的处理通常定义为类的函数成员(成员函数),当鼠标或键盘事件发生时,会激活对应的函数成员(成员函数),实现相应的功能。在面向对象程序设计语言中,对象之间是通过消息传递进行通信的。
    在Windows平台下,目前使用的三维编程开发工具应用程序接口(API)主要是微软公司的三维图形应用程序接口Direct 3D和SGI公司的三维图形应用程序接口OpenGL。

  • 第14题:

    阅读以下说明,回答问题1至问题5。

    【说明】

    Apache是Linux系统中的最常用的WWW服务器,常用的客户端程序是IE浏览器。

    Web客户端与服务器共同遵守(1)协议,默认端口号是(2),协作的过程是:Web客户端在浏览器的地址栏输入(3),连接到相应的WWW服务器上并获得指定的Web文档,然后断开与WWW服务器的连接,最后,Web文档以(4)格式在客户端解释。


    正确答案:(1)HTTP或超文本传输协议 (2)80 (3)IP地址或域名或URL(Uniform Resource Locators) (4)HTML或超文本标记语言
    (1)HTTP,或超文本传输协议 (2)80 (3)IP地址,或域名,或URL(Uniform. Resource Locators) (4)HTML,或超文本标记语言 解析:本题考查对WWW(World Wide Web)服务的理解。WWW是Internet网(TCP/IP网)信息发布、浏览的主要方式,是一种交互式图形界面的服务,具有强大的信息链接功能。Linux系统常常配置为WWW服务的平台,主要的Web服务软件是Apache,而常用的客户端程序是Ⅲ浏览器(或Netscape),访问Web页面的方法是在浏览器的地址栏内输入统一资源定位地址(URL)。Web最基本的概念是超文本(Hypertext),通过超链接可以从一个页面位置跳转到另一个页面位置,用来书写Web页面的语言称为超文本标记语言(HTML)。
    WWW服务遵从HTTP协议(超文本传输协议),该协议是TCP/IP中重要的应用协议之一,默认的TCP端口号是80。

  • 第15题:

    阅读下列说明,回答问题1至问题3,将解答填入对应栏内。

    【说明】

    某企业业务信息系统某天突然出现故障,无法处理业务。信息系统维护人员采用重新启动的方法来进行恢复,发现数据库系统无法正常启动。

    数据库故障主要分为事务故障、系统故障和介质故障,不同故障的恢复方法也不同。

    请解释这3种数据库故障的恢复方法,回答该企业的数据库故障属于何种类型的故障,为什么?


    正确答案:数据库3种故障的恢复方法如下。 . 事务故障:恢复由数据库系统自动完成不破坏数据库。 . 系统故障:恢复是由数据库系统在重新启动时自动完成不破坏数据库。 . 介质故障:恢复无法由数据库自动恢复。恢复方法是重装数据库然后重做已 完成的事务同时也需要DBA的介入。 故障类型:介质故障。 原因:根据说明中的描述该故障在维护人员重新启动数据库后数据库系统没有自行恢复。根据3种故障的恢复方法可以明确该故障是介质故障。
    数据库3种故障的恢复方法如下。 . 事务故障:恢复由数据库系统自动完成,不破坏数据库。 . 系统故障:恢复是由数据库系统在重新启动时自动完成,不破坏数据库。 . 介质故障:恢复无法由数据库自动恢复。恢复方法是重装数据库,然后重做已 完成的事务,同时也需要DBA的介入。 故障类型:介质故障。 原因:根据说明中的描述,该故障在维护人员重新启动数据库后,数据库系统没有自行恢复。根据3种故障的恢复方法,可以明确该故障是介质故障。

  • 第16题:

    阅读以下软件架构设计的问题。

    某软件开发公司欲为某电子商务企业开发一个交易平台,支持客户完成网上购物活动中的交易。在系统开发之初,企业对该平台提出了如下要求:

    (1) 交易平台必须在1s内完成客户的交易请求。

    (2) 该平台必须保证客户个人信息和交易信息的安全。

    (3) 当发生故障时,该平台的平均故障恢复时间必须小于l0s。

    (4) 由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行硬件升级必须在6小时内完成。

    针对这些要求,该软件开发公司决定采用基于架构的软件开发方法,以架构为核心进行交易平台的设计与实现。

    [问题1]

    软件质量属性是影响软件架构设计的重要因素。请用200字以内的文字列举六种不同的软件质量属性名称,并解释其含义。

    [问题2]

    请对该交易平台的4个要求进行分析,用300字以内的文字指出每个要求对应何种软件质量属性;并针对每种软件质量属性,各给出2种实现该质量属性的架构设计策略。


    正确答案:[问题1] 常见的软件质量属性有多种例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。 这些质量属性的具体含义是: (1) 性能是指系统的响应能力即要经过多长时间才能对某个事件做出响应或者在某段时间内系统所能处理事件的个数。 (2) 可用性是系统能够正常运行的时间比例。 (3) 可靠性是指软件系统在应用或错误面前在意外或错误使用的情况下维持软件系统功能特性的基本能力。 (4) 健壮性是指在处理或环境中系统能够承受压力或变更的能力。 (5) 安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。 (6) 可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。 (7) 可变性是指体系结构经扩充或变更成为新体系结构的能力。 (8) 易用性是衡量用户使用一个软件产品完成指定任务的难易程度。 (9) 可测试性是指软件发现故障并隔离、定位其故障的能力特性以及在一定的时间和成本前提下进行测试设计、测试执行的能力。 (10) 功能性是系统所能完成所期望工作的能力。 (11) 互操作性是指系统与外界或系统与系统之间的相互作用能力。 [问题2] (1) 交易平台必须在1s内完成客户的交易请求。该要求主要对应性能可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。 (2) 该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。 (3) 当发生故障时该平台的平均故障恢复时间必须小于10s。该要求主要对应可用性可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。 (4) 由于企业业务发展较快需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。
    [问题1] 常见的软件质量属性有多种,例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。 这些质量属性的具体含义是: (1) 性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。 (2) 可用性是系统能够正常运行的时间比例。 (3) 可靠性是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。 (4) 健壮性是指在处理或环境中,系统能够承受压力或变更的能力。 (5) 安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。 (6) 可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。 (7) 可变性是指体系结构经扩充或变更成为新体系结构的能力。 (8) 易用性是衡量用户使用一个软件产品完成指定任务的难易程度。 (9) 可测试性是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。 (10) 功能性是系统所能完成所期望工作的能力。 (11) 互操作性是指系统与外界或系统与系统之间的相互作用能力。 [问题2] (1) 交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。 (2) 该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。 (3) 当发生故障时,该平台的平均故障恢复时间必须小于10s。该要求主要对应可用性,可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。 (4) 由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。 解析:本题考查考生对于质量属性及质量属性实现策略的掌握情况。
    [问题1]
    常见的软件质量属性有多种,例如性能(Performance)、可用性(Availability)、可靠性(Reliability)、健壮性(Robustness)、安全性(Security)、可修改性(Modification)、可变性(Changeability)、易用性(Usability)、可测试性(Testability)、功能性(Functionality)和互操作性(Inter-operation)等。
    这些质量属性的具体含义是:
    (1) 性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。
    (2) 可用性是系统能够正常运行的时间比例。
    (3) 可靠性是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。
    (4) 健壮性是指在处理或环境中,系统能够承受压力或变更的能力。
    (5) 安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
    (6) 可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。
    (7) 可变性是指体系结构经扩充或变更成为新体系结构的能力。
    (8) 易用性是衡量用户使用一个软件产品完成指定任务的难易程度。
    (9) 可测试性是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。
    (10) 功能性是系统所能完成所期望工作的能力。
    (11) 互操作性是指系统与外界或系统与系统之间的相互作用能力。
    [问题2]
    本题主要结合实际案例,考查实现各种质量属性的策略。
    (1) 交易平台必须在1s内完成客户的交易请求。该要求主要对应性能,可以采用的架构设计策略有增加计算资源、改善资源需求(减少计算复杂度等)、资源管理(并发、数据复制等)和资源调度(先进先出队列、优先级队列等)。
    (2) 该平台必须严格保证客户个人信息和交易信息的保密性和安全性。该要求主要对应安全性,可以采用的架构设计策略有抵御攻击(授权、认证和限制访问等)、攻击检测(入侵检测等)、从攻击中恢复(部分可用性策略)和信息审计等。
    (3) 当发生故障时,该平台的平均故障恢复时间必须小于l0s。该要求主要对应可用性,可以采用的架构设计策略有Ping/Echo、心跳、异常和主动冗余等。
    (4) 由于企业业务发展较快,需要经常为该平台添加新功能或进行硬件升级。添加新功能或进行平台升级必须在6小时内完成。该要求主要对应可修改性,可以采用的架构设计策略有软件模块泛化、限制模块之间通信、使用中介和延迟绑定等。

  • 第17题:

    试题四(共20分)

    阅读下列说明,回答问题1至问题5,将解答填入答题纸的对应栏内。

    【说明】

    某公司准备开发一套基于流媒体技术的视频监控系统,要求客户端用普通的Web浏览器就能实时观看多个监控点的情况。

    【问题1】(5分)

    该公司所设计视频监控系统的构成图如图4-1所示,请从下列选项中选择合适的部件填入图4-1中的A~E。

    ①浏览器 ②硬盘录像机 ③Web服务器 ④流媒体服务器 ⑤摄像头

    【问题2】(4分)

    请简述流媒体的概念。

    【问题3】(4分)

    请简述流媒体服务器在该监控系统中的作用。

    【问题4】(3分)

    下面哪一项不属于Web服务器及其相关CGI扩展模块实现的功能?

    A.用户的登录认证

    B.从流媒体服务器接收视频流数据,然后转发给客户端

    C.提供选择菜单允许用户选择不同监控摄像头的视频

    D.视频监控参数修改页面

    【问题5】(4分)

    客户端软件需要采用什么技术手段来实现在网络传输速度不稳定时还能够顺畅地播放视频内容?


    正确答案:
    【问题1】(5分)
    A:⑤或摄像头
    B:②或硬盘录像机
    C:④或流媒体服务器
    D:③或Web服务器
    E:①或浏览器
    【问题2】(4分)
    流媒体是指能够通过网络以流方式传输的音频、视频等媒体格式,其主要特点是媒体数据可以边下载边实时播放,而不用等待完全下载之后再播放。
    【问题3】(4分)
    流媒体服务器的作用:将数字视频转化为流媒体格式,然后利用流媒体传输协议传送给客户端。
    【问题4】(3分)
    B
    【问题5】(4分)
    客户端可以通过数据预读缓冲功能实现在网络传输速度不稳定时还能够顺畅地播放视频内容。

  • 第18题:

    试题二(共15分)

    阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。

    【说明】

    某软件公司为某银行设计开发了一套网上银行系统,该系统提供基本的支付、查询、转账和信息修改等功能。银行对网上银行系统提出了初步的性能指标:

    (1) 交易响应时间不超过2s

    (2) 并发用户数>=1000

    (3) CPU利用率不超过80%

    (4) 系统需要7*24小时不间断的稳定运行

    (5) 每秒事务数为7

    (6) 交易成功率为100%

    现需要对该软件进行性能测试。

    【问题1】(4分)

    常见的性能测试包括负载测试、压力测试、并发性能测试、疲劳强度测试和大数据量测试等。针对题目中所述的6个性能指标,并发性能测试和疲劳强度测试所涉及的指标各有哪些?

    【问题2】(6分)

    性能测试中,针对一个单独的性能指标,往往需要采用多种不同的测试方法。该软件公司需要测试性能指标(1)和(5),设计了如下的测试方案:

    测试常规情况下的并发用户数,逐步增加并发用户数,分别测试:

    1. 在响应时间为2s时,系统所能承受的最大并发访问用户的数量;

    2. 系统在多大的并发访问用户数量下,响应时间不可接受(例如超过2s)。

    请指出这两项测试分别属于哪种类型的测试,并分别解释这两种测试类型的基本概念。

    【问题3】(5分)

    在测试性能指标(5)时,该软件公司在客户端模拟大量并发用户来执行业务操作,统计平均的每秒事务数。该软件公司认为客户端接收响应信息与该性能指标的测试无关,因此在模拟客户端上发起正常业务申请,接收系统响应后直接丢弃响应信息,没有进行功能校验。请说明该软件公司的做法正确与否,并简要说明原因以及执行功能校验的副作用。


    正确答案:

    试题分析

    【问题1】

    并发性能测试的过程,是一个负载测试和压力测试的过程。即逐渐增加并发用户数负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标、资源监控指标等来确定系统并发性能的过程。并发性能测试是负载压力测试中重要内容。属于并发性能的指标应有(1)(2)(3)(5)(6)

    疲劳强度测试通常是采用系统稳定运行情况下能够支持的最大并发用户数,或者日常运行用户数,持续执行一段时间业务,保证达到系统疲劳强度需求的业务量,通过综合分析交易执行指标和资源监控指标,来确定系统处理最大工作量强度性能的过程。属于疲劳强度的指标应有:(4)

    【问题2】

    负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试

    压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。简单来说,压力测试是为了发现在什么条件下系统的性能会变得不可接受。可见,压力测试是一种特定类型的负载测试,例如,访问一个页面的响应时间规定为不超过秒,负载测试就是测试在响应时间为1秒时,系统所能承受的最大并发访问用户的数量,而压力测试就是测试系统在多大的并发访问用户数量下,响应时间不可接受,例如超过1分钟(定义为失效状态)

    因此本题中 1是属于负载测试,2是属于压力测试【问题3】

    (5)每秒事务数为7,本题的做法是等系统响应就丢弃没有执行功能验证,这种做法是不正确的:系统对客户端进行了响应,并不是说就执行完了该事务,只是系统开始接受相关的请求,系统可能由于一些配置可以导致系统接受一系列的事务,这些事务在系统中进行排队等待执行。这就可能导致系统可能接受了7个事物,但执行完这些事务可能就需要更多的时间;同时如果不对事务进行功能校对,而无法确定系统是否对事物进行了正确的响应。执行功能校对会导致测试成本增加

    试题答案

    【问题1】

    属于并发性能的指标应有(1)(2)(3)(5)(6)

    属于疲劳强度的指标应有:(4)

    【问题2】

    负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试

    压力测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么负载条件下系统性能处于失效状态,并以此来获得系统能提供的最大服务级别的测试。

    因此本题中 1是属于负载测试,2是属于压力测试

    【问题3】

    (5)每秒事务数为7,本题的做法是等系统响应就丢弃没有执行功能验证,这种做法是不正确的:系统对客户端进行了响应,并不是说就执行完了该事务,只是系统开始接受相关的请求,系统可能由于一些配置可以导致系统接受一系列的事务,这些事务在系统中进行排队等待执行。这就可能导致系统可能接受了7个事物,但执行完这些事务可能就需要更多的时间;同时如果不对事务进行功能校对,而无法确定系统是否对事物进行了正确的响应。执行功能校对会导致测试成本增加

    从下列的3道试题(试题三至试题五)中任选2道解答。 如果解答的试题数超过2道,则题号小的2道解答有效。


  • 第19题:

    阅读以下关于软件系统设计的叙述,在答题纸上回答问题1至问题3。[说明]某文化产业集团委托软件公司开发一套文化用品商城系统,业务涉及文化用品销售、定制、竞拍和点评等板块,以提升商城的信息化建设水平。该软件公司组织项目组完成了需求调研,现已进入到系统架构设计阶段。考虑到系统需求对架构设计决策的影响,项目组先列出了可能影响系统架构设计的部分需求如下:(a) 用户界面支持用户的个性化定制;(b) 系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;(c) 用户操作的响应时间应不大于3秒,竞拍板块不大于1秒;(d) 系统具有故障诊断和快速恢复能力;(e) 用户密码需要加密传输;(f) 系统需要支持不低于2G的数据缓存;(g) 用户操作停滞时间超过定时限需要重新登录验证;(h) 系统支持用户选择汉语、英语或法语三种语言之一进行操作。项目组提出了两种系统架构设计方案:瘦客户端C/S架构和胖客户端C/S架构,经过对,上述需求逐条分析和讨论,最终决定采用瘦客户端C/S架构进行设计。
    [问题1](8分) 在系统架构设计中,决定系统架构设计的非功能性需求主要有四类:操作性需求、性能需求、安全性需求和文化需求。请简要说明四类需求的含义。[问题2] (8分)根据表1-1的分类,将题干所给出的系统需求(a) ~ (h) 分别填入(1) ~ (4) 表1-1需求分类

    问题3 (9分)
    请说明瘦客户端C/S架构能够满足题干中给出的哪些系统需求(只需要回答出三个系统需求)。


    答案:
    解析:
    [问题1]系统性能需求( Performance Requirements) : 指响应时间、吞吐量、准确性、有效性、资源利用率等与系统完成任务效率相关的指标。可靠性、可用性等指标可归为此类。安全性需求( Security Requirements ) :系统向合法用户提供服务并阻止非授权用户使用服务方面的系统需求。操作性需求( Operational Requirements) :与用户操作使用系统相关的一些需求 。文化需求( Cultural Requirements) : 带有文化背景因素的系统需求。[问题2](1) (a) (b)(2) (c)(d)(f)(3) (e) (g)(4) (h)[问题3]b,c,h(此题不严谨)

  • 第20题:

    手机阅读客户端下载()

    • A、发送“8082”至10086
    • B、发送“阅读客户端”至10658080
    • C、发送“8080”至10086
    • D、发送“手机阅读”至10658080

    正确答案:A,B

  • 第21题:

    阅读以下关于变更的叙述,回答问题1至问题3。【说明】在一个正在实施的系统集成项目中出现了下述情况:一个系统的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改。于是,该开发人员就直接对系统软件进行了修改,解决了该项功能问题。针对这样一种情况,请分析如下问题。配置项审计包括功能配置审计和物理配置审计。()


    正确答案:正确

  • 第22题:

    手机阅读业务客户端如何获得客户端下载地址()。

    • A、发送“8082”至10658080
    • B、发送“阅读客户端”至10658080
    • C、发送“8082”至10086
    • D、发送“阅读客户端”至10086

    正确答案:A,B

  • 第23题:

    问答题
    阅读以下关于变更的叙述,回答问题1至问题3。【说明】在一个正在实施的系统集成项目中出现了下述情况:一个系统的用户向他所认识的一个项目开发人员抱怨系统软件中的一项功能问题,并且表示希望能够进行修改。于是,该开发人员就直接对系统软件进行了修改,解决了该项功能问题。针对这样一种情况,请分析如下问题。请用150字以内的文字,说明上述情况中存在着哪些问题?

    正确答案: 上述情景中存在的主要问题有:
    (1)对用户的要求未进行记录;
    (2)对变更请求未进行足够的分析,也没有获得批准;
    (3)在修改过程中没有注意进行版本管理;
    (4)修改完成后未进行验证;
    (5)修改的内容未和项目干系人进行沟通。
    解析: 暂无解析