1、2005年上半年软件水平考试(高级)系统分析师下午(案例分析)试题真题试卷及答案与解析 1 阅读以下关于系统结构的叙述,回答问题 1至问题 4。 A企业目前使用的是基于C/S结构的 OA(办公自动化 )系统,某软件开发公司为该企业设计了一个基于 B/S结构的新 OA 系统。 1系统目前的运行情况 (1)公司大约有 500名雇员,每名雇员配备有一套 PC 机,每个部门有独立子网。 (2)员工所用 PC 机的 IP 地址由其所在部门指派,由公司信息部负责 IP 地址的管理工作。 (3)目前的 OA 系统大约由 16个子系统组成,包括公 文管理子系统、公共信息管理子系统、个人信息管理子系统;邮件管理
2、子系统、任务管理子系统、差旅审批子系统、采购子系统等。 (4)应用软件存储在服务器和客户机上。数据库的检索和更新功能主要在服务器上,而数据的输入和结果的显示功能则主要在客户机上。软件的配置、维护和升级由信息部负责处理。 2计划实现的新系统 (1)新 OA 系统的体系结构如下图所示,包括安装了浏览器的客户机 (PC)、 Web服务器、以及一个数据库服务器。 (2)用 CGI 连接数据库服务器和 Web 服务器。 (3)用户使用新的 OA 系统时,首先通过登录 窗口输入一个职工号码和口令。 (4)cookie 是 Web 服务器指示客户浏览器存储指定变量名和值的方法。在启动多个 CGI 程序的情况
3、下,应用 cookie 可以避免通过登录窗口重复输入职工号码和口令。在新的 OA 系统中,职工号码在其浏览器中被设置为一个 cookie 值。每启动一个 CGI 程序,从浏览器传送的职工号码 (一个cookie 值 )就和 Web 服务器上存储的职工号码相比较。如果匹配,应用就继续:若不匹配,就显示登录窗口,提示用户输入职工号码和口令。 3新 OA 系统的访问控制 新 OA 系统中有以下两种 访问控制。 (1)访问控制 1 各子系统的用户只能通过安装在本部门的客户机处理其业务,例如任务管理子系统的用户在处理业务时只能使用安装在本部门的客户机。 (2)访问控制 2 只允许授权职工通过为其配置的客
4、户机使用差旅审批子系统。 4性能评估方法 (1)性能评估模型是一个 M/M/1排队模型,其中 LAN、 Web 服务器和数据库服务器按照下图所示串联连接。 pLAN、/pWeb、 PDB分别表示 LAN、 Web 服务器和数据库服务器的利用率。 (2)已经测得 LAN、 Web 服务器和数据库服务器的平均处理时间。基于这些测量 值,用排队论估算并发连接的客户数量增加时的响应时间。 (3)根据测得的处理时间,LAN、 Web 服务器和数据库服务器对单个客户请求的平均处理时间为 30ms、 40ms 和 10ms。 (4)根据以往的经验可知,每秒平均有 20个事务,且事务到达间隔服从负指数分布。
5、(5)每个队列的平均系统时间 (平均等待时间与平均处理时间之和,单位: s)可用以下公式计算: 1 从原系统迁移至新系统后,公司信息部的哪项工作极大地减少了 ?请用 50字以内文字说明。 2 要实现访问控制 1和访问控制 2,还需从客户端获取什么信息 ?请分别用 50字以内文字说明。 3 试计算以下参数 (经四舍五入在小数点后保留 1位 )。 LAN 的利用率 pLAN=(a) Web 服务器的利用率 PWeb=(b) 数据库服务器的利用率 pDB(c) 新 OA系统的平均响应时间 R 为 (d)ms 4 请用 200字以内文字说明使用 CGI 存在的主要问题及其原因,并给出两种替代CGI 的
6、技术。 5 阅读以下关于数据中心的叙述,回答问题 1、问题 2和问题 3。 某大型企业在全国各城市共有 40个左右的分支机构,这些机构已经建设了 基于大型关系数据库的信息管理系统,每天负责独立地处理本区域内的业务并实时存储业务数据。 每个机构的数据库服务器从 PC Server (最小 512MB 内存 )到 RISC 小型机 (最大 4GB内存 )配置不一,操作系统也不一样,数据库产品类型也不统一。 每个机构平均每天产生约 4MB 的数据,数据表中包括 TEXT 字段;每季度一次性产生约 100MB 的统计和报表数据。 为了加强管理,实现对下属机构业务数据的异地存储备份,保证数据的安全及恢复
7、,同时对全国业务数据进行挖掘分析,该企业拟在总部建设数据中 心。数据中心通过公共广域网与各个分支机构组成 VPN,每个分支机构到数据中心的逻辑信道带宽最高为 128Kb/s。 5 1)为了保证数据上传的顺序、稳定、安全、并发,并解决数据库的异构问题,系统应采用下列哪种技术 ? A交易中间件技术 B Web 中间件 C Web Service D插装技术 2)为保证分支机构可靠、高效地向数据中心汇总业务数据,避免单点故障,除了考虑广域网线路采用备份外,在数据中心还应采用什么技术 ?用 100字以内文字说明。 6 假设各个分支机构的历史 数据已经通过某种方式顺利地存储到了数据中心。对于增量数据的汇
8、总更新,总部的王副总工提议采用数据库复制技术和数据库的触发器技术获取数据更新日志的方式来完成,但张总认为这样做不仅增加了成本,而且不能解决全部问题。请用 300字以内文字说明张总的理由。 7 最后,为解决数据中心数据更新与同步问题,张总安排总部的系统分析师李工来设计方案,并指出可以对王副总工的意见加以完善,如果需要也可以修改各地的业务系统。李工提出的方案具有较好的可执行性,并获得了大家的认可。请用 400字以内文字叙述系统分析师李工的方案要点。 8 阅读以下关于软件架构的叙述,回答问题 1至问题 3。 软件架构是指大型、复杂软件的系统结构的设计、规格说明和实施。它以规范的形式装配若干结构元素,
9、从而描述出系统的主要功能和性能需求,同时表述其他非功能性需求 (如可靠性、可扩展性、可移植性和可用性等 )。软件架构为软件系统提供了一个结构、行为和属性的高级抽象模式,可以使用一个公式来表达: 软件架构 =构成系统的元素,指导元素集成的形式,关系和约束 “4+1”视图模型用五个视图组成的模型来描述软件架构。该模型包含五个主要的视 图。 .逻辑视图 (Logical View),描述了设计的对象模型,支持系统的功能需求。 .进程视图 (Process View),描述了设计的并发和同步特征,支持系统的运行特性。 .物理视图 (Physical View),描述了软件到硬件的映射,反映了分布式特性
10、,支持系统的拓扑、安装和通信需求。 .开发视图 (Development View),描述了在开发环境中软件的静态组织结构,支持软件开发的内部需求。 .场景 (Scenario),用来说明重要的系统活动,是其他四个视图在用例 (Use Case)驱动下的综合。 8 软件架构在软件需求与设计之间架起一座桥梁,也是风险承担者进行交流的手段,允许不同的风险承担者找出他们所关心的软件架构问题。假设采用面向对象的设计方法,各个视图涉及的组件 (元素 )包括:任务、类、模块、节点、步骤等,风险承担者包括最终用户、系统设计师、程序员、经理、项目管理师等。请在下表中的 (1)到 (7)处填入恰当的内容 (空白
11、处不用填 )。9 对于大型项目,通常采用迭代的方法来进行架构设计。架构先被原型化、测试、评估分析,然后在一系列的迭代过程中被细化。这种方法能 够使需求细化、成熟化,并能够被更好地理解。请用 400字以内文字,简述软件架构基于场景驱动的迭代式设计过程。 10 开发视图是实现软件详细设计和编码的重要蓝图。请用 300字以内文字,说明开发视图需要满足软件内部的哪些需求以及开发视图直接影响到项目管理的哪些方面。 11 阅读以下关于原型法的叙述,回答问题 1至问题 3。 某软件公司多年来开发的项目大都采用结构化方法。但系统开发的实践表明,尽管在许多情况下使用了严格定义或预先说明的方法,但当系统建成以后,
12、用户仍然觉得建立的系统是不完全正确或不完备的,因 此需要进行反复地修补。 针对上述情况,公司的李总工程师提出,应该引入原型法,以快速地确定用户需求,提高开发过程中的生产率和最终系统的质量。 11 请用 400字以内文字,分别论述原型法与严格定义法适用的场合。 12 原型生命周期提供了一种用原型法完成需求定义的完整方法。但对于一些特殊情况,如规模较小,完整性要求较弱的应用,可以采取灵活的做法以适应实际目标。请用 300字以内文字,说明改变原型生命周期约束的方法。 13 引入原型法后,需要对项目管理的过程加以适当修正。请用 300字以内文字,说明 引入原型法后,项目管理的基本内容。 14 阅读以下
13、关于业务持续和灾难恢复的叙述,回答问题 1至问题 3。 随着信息系统的深入应用,它在政府或企业中发挥着越来越重要的作用。由此也产生了一些问题:一旦由于故障、甚至灾难导致信息系统局部或全部瘫痪,就会对相关的政府或企业造成重大的损失,因此需要业务持续和灾难恢复规划。 业务持续和灾难恢复规划涉及到一些特定的或相关的规划,当正常的信息处理业务突然中断时,用来减轻甚至避免其所带来的影响。它们用来保证维持组织运作的关键系统的可用性。 某大型网上书店通过 Internet 为用户提供网上图书查询及订购等多种服务。由于每天的业务量非常多,因此对业务有持续性要求,并且需要具备灾难恢复功能。在对原有系统的改进方案
14、中提出: 1)对于一些关键应用系统,采用双机冗余热备的方式进行保护: 2)由于资金问题,公司并不打算建设自己专有的用于备份数据的备份中心 (假设这里的备份中心仅用于备份数据 ),而是决定租用其他公司提供的商业备份中心,每隔一段时间,把公司的业务数据备份到备份中心。 14 请用 150字以内文字,说明双机冗余热备方式主要解决的是系统运行中的哪些问题 ?在选择双机冗余热备产品时通常需要考虑哪些问题 ? 15 请用 300字以内文字,从技术方面说明备份中心的作用,以及在租用商业备份中心时的注意事项。 16 请用 300字以内文字,分析公司向备份中心备份数据的时间间隔的选取、公司日常业务系统的运行性能
15、以及在灾难发生时数据损失情况三者之间的关系。 2005年上半年软件水平考试(高级)系统分析师下午(案例分析)试题真题试卷答案与解析 1 【正确答案】 答案要点 本问主要是为公司在软件的配置、维护和升级方面解决了问题。 【试题解析】 目前办公自动化 系统较成熟的模式是客户朋艮务器 (即 C/S)方式,而新一代的办公自动化系统则应是 Internet/Intranet 方式 (即 B/S),才更能适应目前及未来的要求。 Internet/Intranet 方式的办公自动化系统是基于 Web 的办公自动化系统,其运作模式不同于 C/S模式,它由客户在客户端工作站通过浏览器从服务器下载 Web 方式的
16、办公自动化应用程序后再动行。这种方式的系统具有下列的好处: .对客户端机器的硬件要求较低,而且目前流行的浏览器支持各种操作系统,使用户可以在保留原有的软件和硬件的基 础上运行新的应用系统,保护现有投资。 .基于 Web 的办公自动化系统只需在服务器上作配置和维护,大大降低了用户用于软件系统维护和升级的难度和费用,使办公自动化更加容易实施。 .像其他基于 Web 的应用系统一样,基于 Web 的办公自动化系统也是通过浏览器这个简单易用统一的界面来访问的,其界面相当友好,操作十分简单,易学易用,用户易于接受,从而节省用户的培训时间和费用。这对减少实施办公自动化的阻力来说,有相当重要的意义。 .系统
17、安全、可靠、可扩展。 第一步:总结出问题的要点 本题主 要考查企业构建基于 B/S 结构的新 OA 系统时需要考虑优点,系统性能分析,以及需要应对的新的技术问题。 主要考查构建的基于 B/S 结构的系统后为公司解决了什么问题。 2 【正确答案】 答案要点 访问控制 1需要客户端的 IP 地址,以判断客户端是否来自授权部门。 访问控制 2需要客户端的 MAC 地址,以判断客户是否来自授权计算机。 【试题解析】 主要考查基于 B/S 结构的新 OA 系统两种访问控制如何解决的问题。 3 【正确答案】 本问主要是需要正确理解题意进行计算。 利用率 =/=平均到达事务数 /平均处理事务数 LAN 的利
18、用率 PLAN=(60%) Web 服务器的利用率Web=(80%) 数据库服务器的利用率砌 DB=(20%) 其中, hLAN、 hweb、 hDB分别表示 LAN、 Web 服务器和数据库服务器 (Database server)的平均处理时间 (单位: s)。 根据上面的公式,新 OA 系统的平均响应时间 R为 (287.5%)ms。 【试题解析】 主要考查新 OA 系统的性能评估问题。 4 【正确答案】 答案要点 使用 CGI 存在的主要问题及其原因: .安全性差、可移植性差。 CGI 接口不支持用户与数据库间的持续互操作。 .CGI 的效率低,且需要同时运行多个 CGI 程序。用户每
19、次连接至服务器时,服务器都要创建一个事务或者运行 CGI 程序的一个副本。 替代技术有 JSP、 ASP、 Servelet 或 PHP。 【试题解析】 主要考查使用 CGI 技术存在的主要问题及其原因,给出替代 CGI 技术的方案。 第二步:根据问题要点,仔细阅读正文,找出相应段落。 1)题目中给出了企业现有系统的运行情况,包括:人员、设备、 16个子系统等 信息。从给出的信息来看,软件的配置、维护和升级工作量大。 2)从给出的新 OA 系统的体系结构来看,分析使用 CGI 存在的主要问题。 3)从给出的新 OA 系统的访问控制方式要求,确定解决方案。 4)从给出性能评估方法的说明中可以正确
20、解答问题 3。 第三步:分析试题的内容,构思答案的要点。 5 【正确答案】 答案要点 1)本问相当于选择题。 提供的候选答案有四个,分别分析如下。 .交易中间件技术。中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服 务,衔接网络上的应用系统,能够达到资源共享、功能共享的目的。交易中间件是面向交易事务处理的中间件,它负责正确传递交易,对交易完整性进行管理,调度应用程序的运行,保证整个系统运行的高效性。根据X/Open DTP 模型,本地交易的管理由数据库系统来完成,交易中间件主要完成分布式计算环境下交易的监控和管理。数据库虽然在本地交易管理的功能已经很强大,但透过一个广
21、域网进行分布式交易管理并不是数据库的强项,特别是一笔交易涉及到异构数据库时更是如此。把数据上传视作是交易处理,交易中间件可以满足问题 1的要求。 .Web 中间件即应用服务器 (Application Server),是实现基于浏览器 (或 Web)应用的中间层平台,不仅是商业逻辑组件的容器,还提供了内容管理、负载均衡、容错、连接池等功能。 .Web Service 是一个崭新的松散耦合的分布式计算模型。每个服务结点利用 XML、 SOAP、 UDDI、 WSDL 和 WSFL 等标准,对外提供某类功能,这些服务功能可以通过绑定 HTPP 的 SOAP 等技术来访问,从外部使用者的角度来看,
22、Web Service 是一种部署在 Web 上的对象或组件。它是一种面向服 务的模型,适合解决分布式计算和处理,不适合应用于数据同步。 .插装技术是白盒测试技术的一种。在被测系统中植入测试代码或测试硬件,以捕获系统运行时的可能路径,称为插装。用于系统的覆盖分析。 2)为避免数据中心的单点故障,数据中心数据库服务器采用多机集群 Cluster 和数据库并行处理技术、存储设备采用全冗余的 SAN 结构 (或者全冗余的存储结构 )。 【试题解析】 伴随着计算机技术、通信技术和软件技术的发展,各个行业企业级用户内部信息化系统经历了从主机终端模式、小型机终端模式,到 Client/Server 系统、
23、分布式系统,再发展到数据大集中处理模式 (或集中与分布共存模式 ),信息管理模式也经历了从集中管理到分布式管理,再到集中管理这样一个螺旋式发展过程。 现在的数据中心与早期的数据中心相比,因采用了数据仓库、关系数据库、网络冗余、负载均衡、存储冗余、中间件等技术,不仅能够对整个业务系统的异地数据实行集中备份,满足数据安全及故障恢复要求,满足信息系统数据一致性、完整性的要求,并且其支撑的业务系统具有高可靠性、高可用性、高安全性、高实时性等特点,企业还可以对异地机构的业务进行全面、有效、实时的管 理和监控。 第一步:总结出问题的要点。 本题主要考查企业实施业务数据集中时需要应对的技术问题。 问题 1
24、主要考查在异构环境下,如何利用现有的成熟技术解决各个分支机构的数据上传到数据中心的问题。 6 【正确答案】 本问涉及了数据库系统的两个概念:数据库复制技术和数据库触发器技术。 数据库复制技术是分布式数据库技术中的一项重要技术,其主要功能是向分布式环境中的各个数据库节点提供数据复制,保持数据一致或控制维护数据冗余。数据复制一般有同步、异步方式,体系机构有主从 (一个主点,多个复 制点 )、对等、分布式 (多个主点,一个复制点 )等。采用数据库复制技术,需要各个节点安装数据库复制服务器,在异构环境下,还要求复制点增加异构数据同步服务,开销较大。 数据库触发器技术是数据库管理系统能够在一些数据库相关
25、事件发生时触发预先定义的操作,触发器机制可以增强引用完整性,加强复杂业务的规则,或者监控数据库的变动,并执行一定的数据操作,实现信息管理的自动化。 从题目的要求来看,采用的技术一方面不能影响业务系统,另一方面数据不能因为网络故障、服务器繁忙等原因丢失,而且成本不能太高。 采用数据库复制技术,各地需要安装专门的复制服务器,增加成本,维护管理较为复杂,同时,太多分支机构使得中心的数据库复制服务器压力大,因此在本题要求的条件下,不宜采用数据库复制技术。 采用数据库的触发器技术虽然能够实时记录数据库的数据变化,但不能捕获数据表中 TEXT 字段的 UPDATE 动作,并且对于每季度一次的统计报表数据,
26、采用数据库的触发器技术来记录数据库的变化,占用数据库资源太多,可能影响某些机构的日常业务处理。 【试题解析】 主要考查采用数据库复制技术和数据库触发器技术解决增量数据的汇 总有什么缺点或不足。 7 【正确答案】 答案要点 首先明确增量数据更新的过程。 各地上传的数据更新日志是中心数据更新同步数据的依据。各地系统将数据更新操作以 SQL 语句的形式记录到数据更新日志中,由交易中间件系统发送该日志到数据中心的交易中间件服务器上。中心交易中间件服务器开启同步服务进程,实时处理各个机构提交的数据更新日志,必要时对由于数据库异构产生的 SQL 语句差别进行修改,向中心数据库系统提交数据更新 SQL,完成
27、数据中心的数据更新。 其次,明确数据更新日志获得的方式,重点解决 TEXT 字段问题和报表统计数据问题。 针对多数业务数据的更新,各地数据库采用触发器技术,通过触发器捕获记录或字段的增删改操作,以标准的 SQL 命令保存到数据更新日志中; 改造各地原有业务系统,当发生数据表 TEXT 字段修改时,在修改字段的同一事务中,将该动作增加到数据更新日志中,数据中心根据记录抽取该字段指向的内容; 对每季度产生的报表统计数据,改造各地原有业务系统,在数据更新日志中保存生产数据的条件,数据中心根据记录一次性抽取满足条件的数据。 最后,针对个别机构数据库服务器 配置较低,采用触发器技术可能造成资源不足的情况
28、,升级该机构的数据库服务器,比如将内存增加到 1GB等。 【试题解析】 主要考查如何解决问题 2所涉及的 “缺点 ”或 “不足 ”。 第二步:根据问题要点,仔细阅读正文,找出相应段落。 1)题目中给出了这个企业现有的信息系统环境:一个通过广域网连接起来的数据库异构的、操作系统异构的分布式系统,而且有些分支机构的数据库服务器配置较低。 2)从给出的具体数据来看,该企业的分支机构业务繁忙,每天的数据量较大,并且数据中还包括 TEXT 字段 (可存储 Word 文档等 ),每季度还产生相当可观的统计、报表数据 (由数据库原始数据生成 )。 3)问题 3说明中特别提到了如果需要可以修改业务系统。 第三
29、步:分析试题的内容,构思答案的要点。 8 【正确答案】 答案要点 本题相当于选择题,但要获得好的成绩,仍需要仔细构思。 1)逻辑视图表述系统的功能需求。系统分解为一系列的关键抽象,这些抽象 (大多数 )来自于需求分析中所提出功能要求,以对象或类的形式来表示 (采用抽象、封装和继承 )。分解并不仅仅是为了功能分析,而且用来识别遍布系统各个部分的通用机制和设 计元素。系统的功能需求来自于最终用户,最终用户是逻辑视图对应的风险承担者。 2)进程视图表述系统的运行特性。利用进程视图可解决系统的并发性、分布性、系统完整性、容错性等问题。另外,它还可以表达逻辑视图的主要抽象在哪个控制线程上被实际执行。风险
30、承担者主要是系统集成人员,组件元素是任务。 3)物理视图表述系统的拓扑、安装和通信需求。用来表达软件系统中的各种元素 (元素可以理解为组件或过程 )被映射或部署至不同的网络计算机节点上。风险承担者主要是系统实施工程师。 4)开发视图表述软件开发的内部需求 。开发视图关注软件开发环境下实际模块的组织 (程序库或子系统 ),它们可以由一位或几位开发人员来开发。子系统可以组织成分层结构,每个层为上一层提供良好定义的接口。风险承担者主要是编程人员和软件项目管理人员。 5)场景用来说明重要的系统活动,是其他四个视图在用例 (Use Case)驱动下的综合。在某种意义上场景是最重要的需求抽象。该视图是其他
31、视图的冗余 (因此“+1”),但它起到了两个作用:首先场景可用来发现架构设计过程中的架构元素,其次场景可作为架构设计结束后的功能验证。它可作为架构原型测试的出发点。风险承 担者是最终用户和开发人员,组件元素是步骤。 【试题解析】 本题主要考查软件架构 “4+1”视图的有关知识和实施方法,熟悉以下关于软件架构的知识是回答本题的前提。 首先要准确把握软件架构的定义。架构(Architecture)原意为建筑学设计和建筑物建造的艺术与科学。软件架构 (Software Architecture,或称为软件架构 )是软件系统的高层描述,它给出了关于软件系统组织结构的一系列高级的、重要的抽象,包括:系统
32、组成的结构性构件;组成构件之间的接口:构件相对系统其他部分的可视行为:构件之间所采取的交 互和协作关系。软件架构在 RUP 中的定义是指系统核心构件的组织或结构,这些核心构件通过接口与不断减小的构件与接口所组成的构件进行交互。 人们在软件开发过程中积累了丰富的架构知识,形成了的特定的架构风格,这些架构风格为高层次的软件复用技术建立了坚实的基础:例如, C/S架构、管道 /过滤器架构、分层架构、解释器架构、黑板架构等等,而各种分布式组件技术如 DCOM, EJB, Web-Services 也都和软件架构密切相关。 长期以来,人们一直在努力软件架构更加精确的形式化描述,力图用一种类似于某种编程语
33、言的形式来描 述软件架构,如Rapide, Wright, Aesop, UniCon, ACME 等。 XML描述与软件建模 UML 技术的发展为软件架构描述语言注入了新的发展思路,新一代的架构描述语言 (如xArch, xADL 等 )充分应用了这些新的描述手段的特点。同时,伴随着架构描述技术的进步,架构评估等研究也在不断的深入。 其次,要正确理解软件架构的重要作用。 .软件架构能够指导整个系统的设计和演进,它是软件需求分析的结果,同时是下一步进行软件设计的规格和蓝图。对于复杂软件系统而言,在架构阶段,系统的结构和规格说明非常重要,而 在软件设计阶段,算法和数据结构更重要。 .软件架构对系
34、统的描述,借鉴了建筑工程设计的思想,通过各种视图从不同角度以规范、一致、易理解的 “语言 ”来表达系统的各种规格和行为。以某一特定角度看到的系统架构之规格、行为,主要是结构、核心构件和主要控制流等。 .软件架构是风险承担者进行交流的手段。所谓风险承担者是指对软件系统某个方面 (或层次 )负责或 (关注 )的人员。也可以这样来理解风险承担者:软件系统的某个方面 (或层次 )如果存在缺陷或问题,对此负责任或受影响的人员。风险承担者包括最终用户、系统设计师、程序员、经理、项目 管理师等。 .软件架构是可传递、可重用的模型。 .软件架构是软件工程早期设计决策的体现,而且在整个开发周期中不断演进,软件架
35、构对于软件质量 (功能属性、非功能属性 )都有重要影响。 “4+1”视图模型是最重要软件架构模式,由 Philippe Kruchten 在 1995年提出。如下图所示。需要指出的是,并不是所有的软件架构都需要 “4+1”视图。无用的视图可以从架构描述中省略,例如,单机软件,可以省略物理视图;而如果仅有一个进程或程序,则可以省略过程视图。对于非常小型的系统,甚至可能逻辑视图与开发视图非常相似 ,而不需要分开的描述。 第一步:总结出问题的要点。 问题 1 考查采用面向对象的架构设计方法, “4+1”视图各个视图涉及的组件要素与风险承担者。 9 【正确答案】 答案要点 系统大多数关键的功能以场景
36、(或用例 )的形式被捕获。所谓关键是指系统最重要的功能 (或系统存在的理由 ),或使用频率最高的功能,或其应用减轻了一些重要的技术风险。基于场景驱动的迭代式设计过程如下。 1)开始阶段。基于风险和重要性为某次迭代选择一些场景。场景可能被归纳为对若干用户需求的抽象;对场景进行 “描述 ”,以识别主要的抽 象 (类、机制、过程、子系统 );将所发现的架构元素分布到 4个视图中;然后实施、测试、评估该架构,这个过程中可能检测到一些缺点或潜在的增强要求;捕获经验教训。 2)循环阶段。重新评估风险,选择能减轻风险或提高结构覆盖的额外的少量场景,然后试着在原先的架构中描述这些场景,发现额外的架构元素,或找
37、出适应这些场景所需的重要架构变更,更新 4个主要视图;根据变更修订现有的场景;升级实现工具 (架构原型 )以支持新的、扩展了的场景集合。 3)测试。如果有可能 (比如,在已有可重用的组件下快速实现系统 ),在实际的目标环 境和负载下进行测试。 4)评审这 5个视图,检测架构在简洁性、可重用性和通用性方面可能存在的潜在问题。 5)更新设计准则和基本原理。 6)捕获经验教训。 对于实际的系统,初始的架构原型需要不断进行演化。一般的情况是在经过两次或三次迭代,当找到了主要的抽象,子系统和过程都已经完成并且已经实现所有的接口,系统架构可认为趋向于稳定。 【试题解析】 考查 “4+1”视图架构的场景驱动
38、实现方法。 10 【正确答案】 答案要点 软件内部需求是指任何一个软件都要满足的一些非功能方面 的需求,大部分情况下,开发视图架构考虑的内部需求与以下几项因素有关:开发难度、软件管理、重用性和通用性及由工具集、编程语言所带来的限制与约束。开发视图是项目管理的基础,通过开发视图对系统功能、模块的层次性分解,能够预估开发工作量、安排开发任务,编制开发计划,进而监控进度,即开发视图是需求分解、团队工作的分配 (或任务管理 )、成本评估和计划 (或成本管理 )、项目进度的监控 (或进度管 t111)等方面的基础。 【试题解析】 考查开发视图的表述内容及其与实施项目管理的关系。 第二步;根据问题要点,仔
39、细阅读正 文,找出相应段落。 (1)在题目的说明中给出了软件架构是 “指大型、复杂软件的系统结构的设计、规格说明和实施 ”和 “4+1”视图模型的基本概念。 (2)题目的说明中进一步指出,软件架构 “描述出系统的主要功能和性能需求,同时表述其他非功能性需求 (如可靠性、可扩展性、可移植性和可用性等 )”,认真体会,结合项目管理方面的基础知识,不难回答问题 3 (3)在问题 1的说明中限定了视图涉及的组件包括:任务、类、模块、节点、步骤等,风险承担者包括最终用户、系统设计师、程序员、经理、项目管理师等,问题的答案应在 这个范围内选择。正确地理解视图组件和给定的风险承担者角色概念,很容易回答问题
40、1。 第三步:分析试题的内容,构思答案的要点。 11 【正确答案】 答案要点 严格定义方法适用的场合: 所有的需求都能够被预先定义; 修改定义不完备的系统代价昂贵且实施困难; 项目参加者之间能够清晰而准确地进行通信; 静态描述或图形模型对应用系统的反映是充分的; 严格方法的生命周期中各阶段划分都是正确的。 原型法适用的场合: 并非所有的需求在系统开发以前都能准确地说明; 有快速的系统建造工具; 项目参与者之间经常 存在通信上的障碍; 需要实际的、可供用户参与的系统模型: 需求一旦确定就可以遵从严格定义的方法; 大量的反复是不可避免的,必要的,应该加以鼓励。 【试题解析】 计算机信息系统的开发通
41、常采用结构化分析方法,这类方法试图在系统设计以前,就对应用需求建议一套完备的、一致的和正确的说明。但系统开发的实践表明,尽管在许多情况下用了这种或那种严格定义或确切的说明,但当系统建成以后,用户仍然觉得建立的系统是不完全正确或不完备的,因此需要进行反复地修补。 原型法认为,对于大多数企业的业务处理来说,需求定义几乎总 能通过建立目标系统的工作模型来很好地完成,而且认为这种方法和严格的定义方法比较起来,成功地可能性更大。 第一步:总结出问题的要点。 本题主要考查原型法的几个相关概念:原型法与严格定义方法的区别、改变原型生命周期约束的方法以及引入原型法后的项目管理过程。 第二步:分析试题的内容,构
42、思答案的要点。 问题 1 (1)严格定义指的是一种确定应用系统业务需求的策略,在任何的设计、实现或使用系统之前,预先指出所有的要求。严格定义的方法是在以下几个假设的前提下形成的。 .所有的需求都能够被 预先定义。 .修改定义不完备的系统代价昂贵且实施困难。 .项目参加者之间能够清晰而准确地进行通信。 .静态描述或图形模型对应用系统的反映是充分的。 .严格方法的生命周期中各阶段划分都是正确的。 (2)原型法为严格定义方法提供了一种很好的选择和补充。原型法是在以下几个假设的前提下形成的。 .并非所有的需求在系统开发以前都能准确地说明。 .有快速的系统建造工具。 .项目参与者之间经常存在通信上的障碍
43、。 .需要实际的、可供用户参与的系统模型。 .需求一旦 确定就可以遵从严格定义的方法。 .大量的反复是不可避免的,必要的,应该加以鼓励。 12 【正确答案】 答案要点 改变原型生命周期约束的方法: 仅对屏幕的原型化; 使用购买的应用系统作为初始模型; 子系统原型化; 原型与需求建议; 最终用户进行原型化。 【试题解析】 原型生命周期提供了一种用原型法完成需求定义的完整的方法。但是对于一些有特殊要求或特殊情况的应用,如规模较小,完整性要求较弱的应用,为了获得较高的效益,可以采取灵活的做法,以适应实际目标。 原型生命周期意味着对自身的以下若干约束 : .建立一个完整的模型; .原型人员要建立初始模
44、型; .原型化要从定义阶段开始; .实际系统将用自己的资源来建立。 改变原型生命周期约束的方法有: .仅对屏幕的原型化; .使用购买的应用系统作为初始模型; .子系统原型化; .原型与需求建议; .最终用户进行原型化。 13 【正确答案】 答案要点 引入原型法后,项目管理的基本内容: 估计过程; 费用重新分配; 变化控制; 活动停止。 【试题解析】 原型法并不是孤立出现的事件,它是一 个很活跃的过程,受控于项目管理。原型引入以后,需要对项目管理的过程加以适当的修正。 由于原型法的影响,项目管理有以下 4方面的内容。 .估计过程。这是估计原型的时间、成本和系统目标的方法。原型法的成本估计就是指由
45、项目管理所要求的实际系统的建立和修改成本的估计。首先,用户为满足其要求而支付的时间和设备,这些成本是显而易见的,它取决于每次重复周期的进展状况。其次,在原型被接受后,一个静态的成本估计立即可以做出。 .费用重新分配。 .变化控制。 .活动停止。 14 【正确答案】 解答要点 采用双机冗余热备方式,当本地某个系统发生故障时,系统能够自动快速切换到正常的系统,通过本地故障恢复确保系统持续提供服务。 目前有许多不同厂家提供双机冗余热的的产品,采用双机冗余热备方式,涉及到以下众多因素: .双机热备产品适用的规模: .支持的操作系统; .支持的数据库系统; .对正常业务系统的性能影响; .提供的 CUI
46、 管理工具功能易用性: .能够完全实现多应用多级切换 (应用级切换 ),适用多种应用并存的系统,某一应用的切换可以不对其他应用产生影响 ; .集中管理配置能力; .远程监控和管理能力; .切换速度; .磁盘管理方面功能; 【试题解析】 由于故障、甚至灾难导致信息系统局部或全部瘫痪,这会对相关的政府或企业造成重大的损失,因此需要业务持续和灾难恢复规划。业务持续和灾难恢复规划涉及到一些特定的或相关的规划,当正常的信息处理业务突然中断时,用来减轻甚至避免其所带来的影响。它们用来保证维持组织运作的关键系统的可用性。 第一步:总结出问题的要点。 本题主要考查业务持续和灾难恢复的需要考虑的问题。 第二步:
47、 分析试题的内容,构思答案的要点。 15 【正确答案】 解答要点 与双机冗余热备相比,备份中心的主要作用是在灾难发生时能够有效地保护数据。在租用商业备份中心时应该注意: .备份中心与公司的系统有充分远的距离 (几十甚至几千公里 ); .备份中心具有抗灾能; .备份中心要有足够的带宽确保与数据中心的数据同步; .合理选择备份的时间段。 16 【正确答案】 解答要点 人们总是希望信息系统能够在日常的运行中具有高性能,在灾难发生时能够不损失任何数据,但事实上却很难实现 这一目标。 如果系统向异地备份中心的备份时间段越小,会更加及时地把业务数据备份到备份中心,能够在灾难发生时损失的数据越少,但是会对系统日常运行性能产生越大的影响。极端情况下,如果每次有了新的交易就向异地备份中心备份数据,当灾难发生时,只会损失最新发生的交易。但是备份时间越小,就要求系统的备份链路有很高的带宽,需要付出的代价也越大。另一方面,这也会影响数据中心的性能。 因此,在实际中需要根据具体的业务情况平衡备份时间段、业务系统的运行性能以及灾难发生时数据损失这三者的关系,作出较为合理的决定。当然 ,要达到最优化通常非常困难。