1、高级系统架构设计师下午试题()-1 及答案解析(总分:75.00,做题时间:90 分钟)一、论基于 CBSD的软件架构设计与应用(总题数:1,分数:18.75)1.基于构件的软件开发(Component-Based Software Development,CBSD)是一种基于分布对象技术,强调通过可复用构件设计与构造软件系统的软件复用途径。基于构件的软件系统中的构件可以是COTS(Commercial-Off-The-Shelf)构件,也可以是通过其他途径获得的构件(如自行开发)。CBSD 体现了“购买而不是重新构造”的哲学,将软件开发的重点从程序编写转移到了基于已有构件的组装,以更快地构造
2、系统,减轻用来支持和升级大中型软件系统所需要的维护负担,从而降低软件开发的费用。请围绕“基于 CBSD的软件架构设计与应用”论题,依次从以下 3个方面进行论述。1概要叙述你参与管理和开发的软件项目及你在其中所承担的主要工作。2简要介绍基于构件的软件开发过程模型,具体论述你在所管理和开发的软件工程项目中选择了哪种典型的构件平台并说明理由,如何具体实施的,最终实际效果如何。3论述你在该项目实施过程中遇到的问题及解决的办法,以及你进一步应用软件复用技术的有关设想。(分数:18.75)_二、论 RAD在结构化系统建模中的应用(总题数:1,分数:18.75)2.快速应用开发(RAD)是一个增量型的软件开
3、发过程模型,强调极短的开发周期。该模型是瀑布模型的一个“高速”变种,通过大量使用可复用构件,采用基于构件的建造方法加速信息系统的开发过程。如果能够及时与用户进行交流和沟通,正确地理解需求并约束项目的范围,利用这种模型可以很快地创建出功能完善的信息系统。请围绕“RAD 在结构化系统建模中的应用”论题,依次从以下 3个方面进行论述。1概要叙述你参与分析和开发的信息系统项目及你所担任的主要工作。2简要分析快速应用开发方法的基本思想,并给出各个生命周期阶段的主要任务。3分析快速应用开发方法的目标,并结合实际项目的实施结果讨论快速应用开发与传统的结构化开发方法相比具有哪些优点和缺点,还有哪些需要进一步改
4、进之处,以及如何进行改进。(分数:18.75)_三、论数据仓库与数据挖掘在企业信息化中的应用(总题数:1,分数:18.75)3.企事业单位的决策越来越需要建立在对历史数据和相关数据的科学分析的理性基础上。数据仓库已经成为数据分析和联机分析处理中日趋重要的平台。然而,数据仓库的设计与实现过程面临许多技术上的挑战,例如,多个异种数据源的集成带来的困难等。请围绕“数据仓库与数据挖掘在企业信息化中的应用”论题,依次对以下 3个方面进行论述。1概要叙述你参与管理和开发的管理信息系统项目及你所担任的主要工作。2简要讨论你在从事数据仓库的设计时是如何进行规划和分析的,详细描述数据仓库设计、数据集成和测试,以
5、及部署数据仓库的过程。3分析并讨论你在数据仓库设计与实现过程中遇到的主要问题及其解决办法,以及你进一步应用数据仓库技术的有关设想。(分数:18.75)_四、论虚拟化技术在网络应用系统架构的应用(总题数:1,分数:18.75)4.随着硬件性能的不断提高和软件技术的发展,虚拟化技术逐渐进入了 PC服务器领域。虚拟计算能够把服务器的计算能力进行虚拟化管理,提高服务器的可用性和管理效率。硬件厂商也纷纷推出了支持虚拟化技术的产品,如处理器虚拟化、I/O 虚拟化和设备虚拟化。商用软件厂商和开源领域也推出了支持虚拟化技术的系统软件。企业用户从成本、安全性、可靠性和易于管理的角度也在考虑虚拟化技术。请围绕“虚
6、拟化技术在网络应用系统架构的应用”论题,依次从以下 3个方面进行论述。1概要叙述你参与管理和开发的虚拟计算项目及你在其中所承担的主要工作。2简要叙述虚拟计算中的关键技术,详细论述你是如何在所参与建设的虚拟计算项目中应用虚拟化技术的,并分析应用这些技术之后对项目产生了哪些效果(或影响)。3论述在你参与建设的虚拟计算项目实施过程中遇到的、与虚拟化技术相关的问题,以及解决的办法。简要展望虚拟化技术未来的应用前景,以及你进一步应用虚拟化技术的有关设想。(分数:18.75)_高级系统架构设计师下午试题()-1 答案解析(总分:75.00,做题时间:90 分钟)一、论基于 CBSD的软件架构设计与应用(总
7、题数:1,分数:18.75)1.基于构件的软件开发(Component-Based Software Development,CBSD)是一种基于分布对象技术,强调通过可复用构件设计与构造软件系统的软件复用途径。基于构件的软件系统中的构件可以是COTS(Commercial-Off-The-Shelf)构件,也可以是通过其他途径获得的构件(如自行开发)。CBSD 体现了“购买而不是重新构造”的哲学,将软件开发的重点从程序编写转移到了基于已有构件的组装,以更快地构造系统,减轻用来支持和升级大中型软件系统所需要的维护负担,从而降低软件开发的费用。请围绕“基于 CBSD的软件架构设计与应用”论题,依
8、次从以下 3个方面进行论述。1概要叙述你参与管理和开发的软件项目及你在其中所承担的主要工作。2简要介绍基于构件的软件开发过程模型,具体论述你在所管理和开发的软件工程项目中选择了哪种典型的构件平台并说明理由,如何具体实施的,最终实际效果如何。3论述你在该项目实施过程中遇到的问题及解决的办法,以及你进一步应用软件复用技术的有关设想。(分数:18.75)_正确答案:(1简要介绍你参与规划、设计和实施的大中型信息系统软件工程项目的基本情况,简要说明自己在该项目中的角色、所承担的主要任务及开展的主要工作。论文叙述自己参与设计和实施的信息系统项目应有一定的规模,自己在该项目中担任的主要工作应有一定的分量。
9、2构件(Component)是某系统中有价值的、几乎独立的并可替换的一个部分,它在良好定义的体系结构语境内满足某清晰的功能。构件是一个独立发布的功能部分,可以通过其接口访问它的服务。软件构件是软件系统中具有相对独立功能,可以明确标识,接口由规约指定,与语境有明显依赖关系,可独立部署,且多由第三方提供的可组装软件实体。软件构件需承载有用的功能,并遵循某种构件模型。可复用构件是指具有可复用价值的构件。商用成品构件(Commercial Off-The-Shelf,COTS)是指由第三方开发的满足一定构件标准的,可组装的软件构件。基于构件的软件工程(CBSE)不是针对某个特定的软件系统,而是针对一类
10、软件系统的共同的特征、知识和需求。基于构件的软件的开发过程包括两个并发的子过程,一个是领域工程,另一个是基于构件的开发。领域工程完成一组可复用构件的标示、构造、分类和传播;基于构件的开发完成使用可复用构件构造新的软件系统。基于构件的软件开发过程(CBSD)模型如图 6-11所示。)解析:二、论 RAD在结构化系统建模中的应用(总题数:1,分数:18.75)2.快速应用开发(RAD)是一个增量型的软件开发过程模型,强调极短的开发周期。该模型是瀑布模型的一个“高速”变种,通过大量使用可复用构件,采用基于构件的建造方法加速信息系统的开发过程。如果能够及时与用户进行交流和沟通,正确地理解需求并约束项目
11、的范围,利用这种模型可以很快地创建出功能完善的信息系统。请围绕“RAD 在结构化系统建模中的应用”论题,依次从以下 3个方面进行论述。1概要叙述你参与分析和开发的信息系统项目及你所担任的主要工作。2简要分析快速应用开发方法的基本思想,并给出各个生命周期阶段的主要任务。3分析快速应用开发方法的目标,并结合实际项目的实施结果讨论快速应用开发与传统的结构化开发方法相比具有哪些优点和缺点,还有哪些需要进一步改进之处,以及如何进行改进。(分数:18.75)_正确答案:(1简要介绍你参与规划、设计和实施的大中型信息系统软件工程项目,简要说明自己在该项目中的角色、所承担的主要任务及开展的主要工作。论文叙述自
12、己参与设计和实施的信息系统项目应有一定的规模,自己在该项目中担任的主要工作应有一定的分量。2快速应用开发(RAD)是一个线性顺序的软件开发模型,强调极短的开发周期(通常为 23 个月)。该模型实质是线性顺序模型的一个“高速”变种,如果需求理解得很好,且约束了项目范围,就可通过使用基于构件或可重用软件包的建造方法获得快速开发。RAD 依赖于广泛的用户参与、联合应用设计会议、原型化方法、集成的 CASE工具和代码生成器。快速应用开发模型流程如图 612所示,各个生命周期阶段所要完成的任务如表 6-17所示。)解析:三、论数据仓库与数据挖掘在企业信息化中的应用(总题数:1,分数:18.75)3.企事
13、业单位的决策越来越需要建立在对历史数据和相关数据的科学分析的理性基础上。数据仓库已经成为数据分析和联机分析处理中日趋重要的平台。然而,数据仓库的设计与实现过程面临许多技术上的挑战,例如,多个异种数据源的集成带来的困难等。请围绕“数据仓库与数据挖掘在企业信息化中的应用”论题,依次对以下 3个方面进行论述。1概要叙述你参与管理和开发的管理信息系统项目及你所担任的主要工作。2简要讨论你在从事数据仓库的设计时是如何进行规划和分析的,详细描述数据仓库设计、数据集成和测试,以及部署数据仓库的过程。3分析并讨论你在数据仓库设计与实现过程中遇到的主要问题及其解决办法,以及你进一步应用数据仓库技术的有关设想。(
14、分数:18.75)_正确答案:(1介绍你在论文中准备列举的、含有数据仓库与数据挖掘技术的管理信息系统的项目背景、项目投资和项目周期等基本情况。在第一段的末尾,尽量用一两句话简要说明在该项目中你所担任的角色和所承担的主要任务。论文叙述自己参与设计和实施的信息系统项目应有一定的规模,自己在该项目中担任的主要工作应有一定的分量。2论文的第二部分是体现你在数据仓库与数据挖掘技术应用方面相关理论知识和实践思想的精华所在。在叙述本部分内容时,应注重理论与自身实践经历的结合。论文要点如下。(1)数据仓库是一个用于更好地支持企业或组织管理决策的、面向主题的、集成的、相对稳定的、反映历史变化的数据集合。数据仓库
15、用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;其次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改。数据仓库系统需要高性能数据库服务器、并行数据库技术、数据库互操作技术、决策支持查询优化技术,以及支持多维分析的查询模式等核心技术的支持。数据挖掘的核心技术包括两类,分别为预言和描述。预言技术用历史预测未来,如分类等;描述技术发现数据中潜在的规律,如关联分析、序列模式、聚集和异常检测等。数据仓库的设计开发不同于一般意义上的原型法,数据仓库的设计是数据驱动的。这是因为数据仓库是在现存数据库系统基础上进行开发的
16、,它着眼于有效地抽取、综合、集成和挖掘已有数据库的数据资源,服务于企业高层领导管理决策分析的需要。但需要说明的是,数据仓库系统开发是一个经过不断循环、反馈而使系统不断增长与完善的过程。数据仓库的设计与开发大体可以按照以下步骤进行:概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库运行与维护。注意,这里所讨论的数据仓库系统的开发步骤并不是绝对的顺序。在数据仓库开发的整个过程中,白始至终要求决策人员和开发团队的共同参与和密切协作,要求保持灵活的头脑,不做或尽量少做无效工作或重复工作。(2)在详细讨论你如何规划和分析该数据仓库项目的设计时,应注意以下数据仓库系统的设计原则。通用化性
17、原则。企业各地分支机构在组织构架、业务划分与侧重、其所运行的 OLTP系统所依赖的RDBMS,以及数据综合分析与决策支持系统所需要的数据源的类型与格式等不尽相同,这些都在企业数据综合分析与决策支持系统通用化设计的考虑范围之内。可扩展性原则。随着业务内容的变化,业务系统的信息范围会发生变化,而对于作为统一信息服务平台应设计性能良好的体系结构,保证系统灵活的功能可扩展性。即在保持系统架构与原业务分析逻辑的前提下,系统能实现简洁的分析主题与功能性扩充。技术开放性原则。为保护用户投资,通过透明访问技术,要保证系统能够独立于具体平台工具,对用户形成统一的功能和界面。在工具和平台的选择上给用户提供自由选择
18、的最大余地。兼容性原则。企业在信息化建设过程中所积累的信息资源是企业最为宝贵的财富,新建的经营决策分析系统应有效地兼容原系统,尤其兼容原系统的数据资源。(3)详细描述你所参与的应用项目的数据仓库设计、数据集成和测试,以及部署数据仓库的过程。能给出相应的系统总体结构框架。例如,系统的实现是否基于元数据的全程管理,是否涉及数据获取层、数据整合层,以及数据展现层的全过程,是否支持分析模型的维护以及数据源的结构性变化,是否提供包括展现报表定制、元数据维护、门户定制及统一安全管理等管理服务。(4)分析并讨论你在数据仓库设计与实现过程中遇到过的主要问题及所采取的解决办法。例如,异种数据源的企业应用集成接口
19、实现异种数据源的透明访问,要支持各种关系数据库、平面文件和 XML文件等形式。根据企业的分析应用需求,通过设计与实现操作数据存储(ODS)层来达到面向应用的企业级数据视图,系统也支持通过异种数据源的企业应用集成接口直接实施数据仓库的 ETL过程。对数据源实现元数据级的管理,数据源的连接类型(ODBC、OLEDB、JDBC、Native)、连接字符串,以及该数据源的数据结构信息都以技术元数据的形式存储于元数据库中,通过控制台对其进行业务语义定义,使用户对整个企业的信息系统能够较全面的掌控。3论文的第三部分应结合自己在项目管理和开发过程中的实际情况,查找曾经遇到过哪些问题,以及针对这些具体问题的应
20、对策略。对需要进一步改进的地方,应有具体的着眼点,不可脱离实际提出过高的要求。论文的结尾部分,建议采用提纲的方式介绍自己在该工程项目中获得的经验体会。论文的最后一句可延伸说明,在今后的工作过程中,如果碰到类似的 IT项目,你将如何应用这些经验或教训。)解析:四、论虚拟化技术在网络应用系统架构的应用(总题数:1,分数:18.75)4.随着硬件性能的不断提高和软件技术的发展,虚拟化技术逐渐进入了 PC服务器领域。虚拟计算能够把服务器的计算能力进行虚拟化管理,提高服务器的可用性和管理效率。硬件厂商也纷纷推出了支持虚拟化技术的产品,如处理器虚拟化、I/O 虚拟化和设备虚拟化。商用软件厂商和开源领域也推
21、出了支持虚拟化技术的系统软件。企业用户从成本、安全性、可靠性和易于管理的角度也在考虑虚拟化技术。请围绕“虚拟化技术在网络应用系统架构的应用”论题,依次从以下 3个方面进行论述。1概要叙述你参与管理和开发的虚拟计算项目及你在其中所承担的主要工作。2简要叙述虚拟计算中的关键技术,详细论述你是如何在所参与建设的虚拟计算项目中应用虚拟化技术的,并分析应用这些技术之后对项目产生了哪些效果(或影响)。3论述在你参与建设的虚拟计算项目实施过程中遇到的、与虚拟化技术相关的问题,以及解决的办法。简要展望虚拟化技术未来的应用前景,以及你进一步应用虚拟化技术的有关设想。(分数:18.75)_正确答案:(1简要介绍你
22、参与规划、设计和实施的大中型信息系统工程项目的基本情况,并说明在应用虚拟化技术的工程项目中所承担的主要工作。论文叙述自己参与设计和实施的信息系统项目应有一定的规模,自己在该项目中担任的主要工作应有一定的分量。2详细论述虚拟计算中的关键技术、硬件环境和软件系统对虚拟化技术的支持。在计算机领域中,虚拟计算是指在一台计算机中建立一系列模拟不同计算机的执行环境,可让每位用户能感觉到在一台完整的、同其他用户相隔离的计算机上进行操作。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU 的虚拟化技术可用单 CPU模拟多 CPU的并行处理过程,允许一个平台同时运行多个操作系统,并且应用程序都可以在相
23、互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟软件在虚拟环境中将所有设备虚拟化,这样就能够让绝大多数为真实硬件所开发的操作系统能够非常平滑地在虚拟机中运行而不需要进行任何修改。虚拟化技术在实现方法上有所不同,可采用软件模拟指令集的方式实现,也可采用映射本地硬件和处理器的方法来创建虚拟环境。虚拟化技术可以有不同的实现方法,例如完全虚拟化、准虚拟化和操作系统层虚拟化等。目前,流行的虚拟化方法是使用名为 Hypervisor(虚拟机管理程序)的一种软件,在虚拟服务器和底层硬件之间建立一个抽象层。在完全虚拟化的环境下,Hypervisor 运行在裸硬件上,充当主机操作系统;而由 Hy
24、pervisor管理的虚拟服务器运行客户端操作系统(Guest OS)。Hypervisor 可以捕获 CPU指令,为指令访问硬件控制器和外设充当中介。因此,完全虚拟化技术几乎能让任何一款操作系统不用改动就能安装到虚拟服务器上,其主要缺点是给处理器带来了较大开销。完全虚拟化是处理器密集型技术,因为它要求 Hypervisor管理各个虚拟服务器,并让它们彼此独立。减轻这种负担的一种方法就是改动客户操作系统,让它以为自己运行在虚拟环境下,能够与 Hypervisor协同工作,这种方法就叫准虚拟化(Para-Virtualization)。Xen是开源准虚拟化技术的一个例子。操作系统作为虚拟服务器在
25、 Xen Hypervisor上运行之前,它必须在核心层面上进行某些改变。因此 Xen适用于 BSD、Linux、Solaris 及其他开源操作系统,而不适合对类似于Windows 专有操作系统进行虚拟化处理。准虚拟化技术的优点是性能高,经过准虚拟化处理的服务器可与 Hypervisor协同工作,其响应能力几乎不逊于未经过虚拟化处理的服务器。实现虚拟化还有一个方法,就是在操作系统层面增添虚拟服务器功能。Solaris(Container 就是这样的一个例子,Virtuozzo/OpenVZ 是面向 Linux的软件方案。就操作系统层的虚拟化而言,没有独立的Hypervisor层。相反,主机操作
26、系统本身就负责在多个虚拟服务器之间分配硬件资源,并且让这些服务器彼此独立。一个明显的区别是,如果使用操作系统层虚拟化,所有虚拟服务器必须运行同一操作系统(不过每个实例有各自的应用程序和用户账户)。虽然操作系统层虚拟化的灵活性比较差,但本机速度性能比较高。此外,由于架构在所有虚拟服务器上使用单一、标准的操作系统,管理起来比异构环境要容易。虚拟服务器软件领域包括 VMware、MS Virtual Server、XenSoft 和 SWSoft等。Intel和 AMD等公司也推出了支持虚拟计算功能的处理器产品,能够更加有效地执行虚拟化技术的任务。能够全面和准确地描述该信息系统项目的应用环境和需求,
27、深入地阐述所选定的虚拟化技术的主要内容和具体的项目实施步骤,这些虚拟化技术和方法要针对该信息系统项目的实际特点,论述要具有一定的广度和深度。3通过切身实践详细论述虚拟化技术项目中所采取的相关技术,并对比分析应用这些技术前后,工程项目运行效果所发生的变化情况。可从硬件技术、系统软件、应用软件和软件服务等角度展开论述,并提出自己的思考。对需要进一步改进的地方,应有具体的着眼点,不能泛泛而谈。当前,虚拟化技术的优势已经得到了业界的普遍认可,虚拟化技术所具备的提高资源利用率和节能环保的特性也得到了越来越多高性能计算机用户的青睐,虚拟化技术的普及和推广成为信息化技术发展的必然趋势。虚拟化技术迅速走向成熟得益于以下 3个方面的因素。(1)信息化产业的快速发展使得服务器硬件技术有了巨大进步。(2)高端服务器所承载的软件应用环境已经逐步发展成熟。(3)服务器技术的快速发展及信息化产业发展对于数据中心的规模要求越来越高,由此导致数据中心面临着越来越严重的发展瓶颈,而虚拟化由于具有提高资源利用率,节能环保,以及可进行大规模数据整合等特点而成为信息化技术发展的又一项具有战略意义的新技术。)解析: