02.解题方法与技巧精解1-应对新技术类型的问题 - 图文

更新时间:2024-06-24 01:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

??? 第 8讲 计算机数值表示与非数值表示 第2讲 如何应对新技术类型的问题 本讲导读 计算机技术的发展一日三变,大量新的技术不断地涌现,要想掌握全部的技术是不现实的。在系分的考试中,我们不可避免地会遇见我们所不熟悉的问题,要很好地解决这些问题,除了尽可能有深厚的技术功底外,还要提升自己解决问题的能力,在面对新技术、新问题的时候能够游刃有余,获得尽可能多的分数。本章将结合现有技术发展的脉络及相应的案例讨论如何解决新技术类型的问题。 本讲内容 2.1 计算机技术的发展 1. 操作系统技术 操作系统技术是软件技术发展的基石,操作系统是运行在计算机硬件上最基本的系统软实时系统件,操作系统控制和管理所有的系统硬件(如处理器、存储器、各种设备),也控制和管理系往往是专用统中所有的软件(如系统软件、实用软件、应用软件和用户软件等)。操作系统对计算机使用的,系统与应者提供了一种良好的操作环境,也为各种应用系统提供了基本的支持环境。传统的操作系统用很难分离,技术已经非常成熟,近年来操作系统技术发展的重点在于实时、嵌入式操作系统以及用于分常常紧密结合布式网格计算的操作系统,尤其要注意如Linux之类的操作系统在这些环境下的应用。 在一起。实时1 系统不强调资解题方法与技巧精解1-应对新技术类型的问题 ??? 2. 软件工程技术 软件工程技术是为了经济地获得能够在实际机器上高效运行的可靠软件而建立和使用的一系列好的工程化原则。软件工程的基本思想就是强调在软件开发过程中应用工程化原则,解决软件的整体质量较低、最后期限和费用没有保证等问题。传统的软件工程技术发展已经非常成熟,如各种软件开发模型、软件成熟度模型、UML建模技术、统一开发过程。软件工程发展的重点首先是构件化和模式化,强调重用,一切皆是构件,将面向对象的技术提升到面向构件,同时在开发过程中希望通过模式化的方法有效地利用已有的成果;其次是软件体系结构的发展,就如同搭建建筑物一样,软件在开发者眼中不再是孤单的函数和调用,而是一个整体;此外是软件产品线技术的发展,如同硬件产品线的发展一样,希望形成一种系列化。软件建模技术也是软件工程技术发展的重要方向,对于UML建模来说,除了各种广泛地应用外,MDA技术逐渐发展和成熟,通过模型来驱动开发,采用所见即所得的建模方式和代码的自动化生成达到软件重用和简化开发过程的目的。此外,敏捷建模技术的发展也在稳步前行,它的关键在于精兵简政,消除冗余。 3. 数据库技术 总之,数数据库技术主要分为几个大的部分。首先是数据库的设计技术,这又覆盖了如数据库的据库方面的应逻辑设计(范式、元组、约束、索引、E-R图、数据字典),数据库的物理设计等多方面的问用综合性很题,这些问题都有比较成熟的技术,在使用各类数据库管理系统时也会时有碰到。现今技术强,但万变不发展的趋势是将Web与数据库结合起来,不仅把Web与数据库的所有优点集中在一起,而离其宗,首先且充分利用了大量已有的数据库信息资源,可以使用户在Web浏览器上方便地检索和浏览数把握传统的数据库的内容,这对许多软件开发者来说具有极大的吸引力。所以,将Web技术与数据库相结据库技术,然合,开发动态的Web数据库应用已成为当今Web技术研究的热点。而对于数据库的维护与后探求新技管理,更是和时下的新技术紧密结合,例如web数据库过载管理、分布式数据库状态一致性术、新应用带来的新问题,2 ??? 第 8讲 计算机数值表示与非数值表示 的保持、嵌入式数据库、移动数据库等,要解决这类问题还是要从传统的数据库的维护、管理出发,结合这些技术本身的特点,尤其要从题目中获得信息。最后是联机事务处理OLAP、数据仓库和数据挖掘的问题,数据仓库,就是要对这些数据进行结构重组,并且充分考虑今后的扩展性与外部数据的接口,使得企业数据资源实现更大的价值。数据挖掘是一个不断发展的、综合交叉的学科,是当前计算机工业最热门的研究领域之一。这些问题并不是新问题,但随着网络技术的发展有了许多新的发展,例如网络数据挖掘,对于搜索引擎来说,这就是一个非常重要的问题,同时对于实时、嵌入式设备和P2P计算来说,有效地利用数据挖掘也能促进信息的获得。 4. 网络技术 自从网络产生,就仿佛为人类带来了普罗米修斯火种,计算机技术的发展风生水起,一根根电缆/光缆将不相识的人们拉近到一起。对于网络技术来说,从体系结构层面上来说,网络拓扑和协议都已经非常成熟,未来发展的重点一是怎样平稳地将已有应用迁移到IPV6,一是有效地发展无线网络,从而实现无时无刻、无处不在的计算,如蓝牙技术、802.11等。同时以网格技术为首的下一代互联网计算也一步步走来,通过网格技术的实践,希望能够将整个互联网构建成一个统一的计算域,实现我为人人,人人为我的计算模式,通过有效地计费和资源调度,最大限度上地达到资源共享。另外对于企业局域网的建设来说,VPN技术从九十年代以来逐渐获得广泛地应用,依靠ISP(Internet服务提供商)和其它NSP(网络服务提供商),能够在公用网络中建立专用的数据通信网络,实现远程办公的协同。除了这些内容以外,各种企业服务器的搭建与我们的应用实践也将会有非常紧密的关联,例如代理服务器、FTP服务器、web服务器、邮件服务器乃至群件等。 5. 分布式计算技术 分布式计算是利用网络把成千上万台计算机连接起来,组成一台虚拟的超级计算机,完3 解题方法与技巧精解1-应对新技术类型的问题 ??? 成单台计算机无法完成的超大规模的问题求解。随着Internet 的迅速发展和普及,分布式计算的研究在90 年代后达到了高潮,目前,在Internet网上分布式计算已非常流行。分布式计算研究主要集中在分布式操作系统研究和分布式计算环境研究两个方面。在过去的20 多年间出现了大量的分布式计算技术,如中间件技术、网格技术、移动Agent 技术、P2P 技术以及Web Service技术等。 首先回顾一下C/S、B/S架构,C/S体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受,以三层C/S结构为例,是将应用功能分成表示层、功能层和数据层三个部分。B/S体系结构主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本。在B/S结构中,除了数据库服务器外,应用程序以网页形式存放于Web服务器上,用户运行某个应用程序时只需在客户端上的浏览器中键入相应的网址(URL),调用Web服务器上的应用程序并对数据库进行操作完成相应的数据处理工作,最后将结果通过浏览器显示给用户。 中间件是继操作系统、数据库管理系统之后,随着网络技术的发展和网络应用的不断深入而新兴的一种基础软件。从系统角度看,中间件主要用于管理网络上的各类软硬件资源,

并实现网络资源的共享与集成,从而构成一体化的网络计算平台。因此,中间件是消除信息

孤岛,实现信息系统综合集成的利器。从网络应用角度看,中间件为网络应用软件提供了有

效的开发、部署和运行平台。拥有中间件的计算机系统所对应的解空间更靠近网络应用所面

临的问题空间。因此,中间件是快速构建复杂网络应用的利器。中间件可分为以下一些类型:

? 基础中间件。

? 数据集成中间件--支持不同来源、格式、性质的数据的转换与包装,实现各种异构数

据源的集成与共享,提供统一的高层访问服务。

4 实际

??? 第 8讲 计算机数值表示与非数值表示 ? 应用代码集成中间件--利用适配机制和消息代理机制,实现信息系统业务逻辑层应用代码之间跨网络的互操作。 ? 业务流程集成中间件--提供可视化业务流程的描述,控制和管理业务流程的动态执行。 ? 门户集成中间件--提供集中的门户管理和开发方法,个性化的内容组织与管理,单点认证登录,以及图表的定制等。 基于面向服务的软件架构SOA的中间件是中间件的一个重要发展方向,中间件的构件化趋势也将日益增强,在SOA架构下,中间件各层可供共享的每个基础构件和业务功能构件均可包装成一个WEB服务,以支持跨越集成与协同。 应用服务器是企业级应用基础软件平台的核心,现今基础中间件就由底层通信平台与应用服务器共同组成。大多数应用服务器是基于J2EE架构进行开发,目前应用服务器则正朝着集成、扩展的方向发展。一方面,应用服务器会集成越来越多的功能,不管是应用服务器厂家自己开发的,还是从第三方厂家买来的,对用户来说是一个和谐的整体。另一方面,应用服务器会向着多方兼容和中立的方向发展,包括跨平台能力、跨数据库能力、分布式对象标准能力,以及兼容多种应用和原有数据库的能力。 下面再简要讨论一下Web服务技术,Web 服务并不仅仅是一种技术,更是一种应用框架,一种系统架构的方式,和一种应用的思想。随着电子商务的迅速崛起,Web 应用从局部化发展到全球化,从B2C发展到B2B,从集中式发展到分布式。从电子商务应用领域来看,复杂的应用连接和程序代码造成了电子商务应用的高维护代价和更新代价,而Web 服务正好能够解决这一问题,成为目前应用环境中最为合理的解决方案。它的优势在于无缝互操作性,它允许在一个平台上用一种语言编写的应用程序可以使用在另一个完全不同的平台上以完全不同的语言编写的应用程序的服务。对于Web服务技术来说,首先要掌握它的各项支撑技术如5

解题方法与技巧精解1-应对新技术类型的问题 ??? XML技术、WSDL、SOAP、UDDI,其次要理解服务的发现、组合、发布,虽然很多内容还停留在研究阶段,但工业界已经迫不及待地展开了广泛地应用,要能够从服务的观点去看待企业应用的开发。 最后讨论一下P2P计算和网格计算技术,这两者是分布式计算和网络计算发展下的新产物。随着PC 技术和互联网(Internet)的发展,个人电脑的能力越来越强,接入带宽也逐渐增大,如何更好地利用所有结点(尤其是原先处于服务器地位的结点)的能力搭建更好的分布式系统自然而然地成为人们关注的问题。所谓P2P计算就是对等计算,网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者(Server),又是资源(服务和内容)获取者(Client)。是P2P计算打破了传统的Client/Server (C/S)模式,在网络中的每个结点的地位都是对等的。每个结点既充当服务器,为其他结点提供服务,同时也享用其他结点提供的服务。近几年,对等计算( Peer-to-Peer,简称P2P) 更是迅速成为计算机界关注的热门话题之一,财富杂志更将P2P列为影响Internet未来的四项科技之一。网格(Grid) ,又称为虚拟计算环境,是近年来兴起的一种重要的网络信息技术。网格利用计算机网络把地理上广泛分布的计算资源、存储资源、网络资源、软件资源、信息资源、知识资源等连成一个逻辑整体,然后像一台超级计算机一样为用户提供一体化的信息应用服务,实现互联网上所有资源的全面连通、全面共享,消除信息孤岛和资源孤岛。被称为是继传统因特网、Web 之后的第三个大浪潮,可称为第三代因特网应用。它将带来因特网的新生,极大改变我们的工作和生活。 对于电子商务的问题来说,它本身并6 5. 企业计算技术 现今的企业计算是在基础中间件和应用中间件之上,通过进一步提取具体应用领域的软不是一种新的

??? 第 8讲 计算机数值表示与非数值表示 件共性,为企业建立面向具体领域应用的信息系统平台或进行遗留、异构应用的集成。 首先是电子商务建设,事实上这是一个非常宽阔的概念,涉及到网络和分布式计算中的大量内容,甚至还需要考虑安全乃至服务计算等方面。它本质上还是一个如何在分布、异构的网络环境下去解决不同商户之间以及商户与顾客之间安全而高效地信息交换的问题。 电子政务建设与电子商务的建设一样,本质上就是消除信息孤岛,为广大民众提供良好的一站式服务。对于电子政务建设来说,强调的几个技术重点是基于XML异构信息集成、安全的政务信息传递、不同电子政务平台的协同。 ERP则是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。ERP系统集信息技术与先进的管理思想于一身,成为现代企业的运行模式,反映时代对企业合理调配资源、最大化地创造社会财富的要求,成为企业在信息时代生存、发展的基石。在应用需求和信息技术发展的双重驱动下,ERP软件平台有了新的扩充。具体地说,增加了下列功能:产品数据管理(PDM),EDI集成,工作流管理,供应链管理、数据仓库DW和联机分析处理(OLAP)。事实上,就是在传统ERP的基础上,增强了系统的智能性,能够更加有效地进行信息获得与管理。 供应链(SC,SupplyChain)的概念在20世纪80年代末提出,近年来随着全球制造(GM,GlobalManufacturing)的出现,供应链管理在制造业管理中得到普遍应用,成为一种新的管理摸式。从概念上说,所谓供应链(SupplyChain,SC)就是围绕核心企业,通过信息流、物流、资金流等,将供应商、制造商、分销商、零售商直到最终用户连成一个整体的功能网链结构模式。SCM是涉及与供应链相连的所有相关节点、部门和人员的集成化管理,它的基础是合作的思想。在新的市场环境下,企业与其供应商、销售代理、最终客户之间的关系已不再是单纯的业务往来关系,而是优势互补、利益共享的合作伙伴关系。在合作思想的基础上,把供应链看作一个完整的运作过程对其进行集成化管理,就可能避免或减少各个环节之间的很多延误、7 解题方法与技巧精解1-应对新技术类型的问题 ??? 浪费,即有可能在更短的时间内,用更少的总成本实现价值的增值。 客户关系管理(CRM)是一种以客户为中心的经营策略,它以信息技术为手段,并对工作流程进行重组,以赋予企业更完善的客户交流能力,最大化客户的收益率;客户关系管理包括一个组织机构判断、选择、争取、发展和保持其客户所要实施的全部过程。客户关系管理的目标就是提高效率、拓展市场和保留客户。所谓提高效率,就是通过采用信息技术,提高业务处理流程的自动化程度,实现企业范围内的信息共享,使原本“各自为战”的销售人员、市场推广人员、电话服务人员、售后维修人员等等开始真正地协调工作,成为围绕着“满足客户需求”这一中心要旨的强大团队,提高企业员工的工作能力,使企业内部能够更高效地运转,降低企业经营成本。 企业门户(EP,Enterprise Portal)总体上是一个企业信息和应用展现的聚集点,提供统一的、通用的和具有广泛价值的信息(数据)、应用的访问途径,也包括与人的沟通途径。企业门户的价值在于使企业能够释放存储在企业内部的各种信息和服务,使企业员工、用户和合作伙伴能够利用单一的渠道访问其所需的个性化应用和信息资源,它将与企业相关的人员、数据和应用有机地结合在一起。EP就是一个将企业的所有应用和数据集成到一个信息、管理平台之后并以统一的用户界面提供给用户,使企业可以快速地建立企业对企业和企业对内部雇员的信息门户。EP是一个基于Web的系统,它能向分布各处的用户提供商业信息,帮助用户管理、组织和查询与企业和部门相关的信息。用户只需要使用浏览器就可以得到自己需要的数据、分析报表及业务决策支持信息今天的EP技术不仅能提供数据查询服务,而且加入了许多实用的服务功能,如内容服务、个性化服务、归纳服务等。 进入90年代,随着计算机的普及、网络的延伸,现代企业的信息资源越来越表现出一种异构、分布、松散耦合的特点,企业的分散性、决策制定的分散性、对日常业务活动详尽信息的需求以及Client/Server体系结构、分布式处理技术(CORBA,WWW,OLE,JAVA)工作

面的内容在于对工8 模型和工管理系统

??? 第 8讲 计算机数值表示与非数值表示 的日益成熟,都说明了这样一个事实:集中式信息处理的时代已经过去,实现大规模的异构分布式执行环境,使得相互关联的任务能够高效运转并接受密切监控已成为一种趋势。工作流技术就是用来解决这一问题的关键途径。 企业应用集成(EAI,Enterprise Application Integration)是将业务流程、软件、标准和硬件结合起来,在两个或更多的企业应用系统之间实现无缝集成,使它们就像一个整体一样。尽管EAI 常常表现为对一个商业实体的信息系统进行业务应用集成,但当在多个企业应用系统之间进行商务交易的时候,企业应用集成(EAI)也表现为不同公司实体之间的企业应用系统集成。利用企业应用集成(EAI)技术,可以通过把中间件作为粘合剂,建立底层结构,来连接企业内外各种业务相关的异构系统、应用以及数据源,从而满足E-Commerce、ERP、CRM、SCM 、OA、数据库、数据仓库等重要系统之间无缝共享和交换数据的需要。在功能层面上,EAI将流程、应用软件和各种标准联合起来,在两个或多个企业应用系统之间实现无缝集成,使它们像一个整体一样进行处理和信息共享,从而大大提高企业效率,为外部或内部客户提供了灵活的业务服务。 6. 项目管理 为使软件项目开发获得成功,一个关键问题是必须对软件开发项目的工作范围、可能遇到的风险、需要的资源(人、硬/软件)、要实现的任务、经历的里程碑、花费工作量(成本),以及进度的安排等等做到心中有数。而软件项目管理可以提供这些信息。通常,这种管理在技术工作开始之前就应开始,而在软件从概念到实现的过程中继续进行,并且只有当软件开发工作最后结束时才终止。软件项目管理贯穿了软件开发的整个生命周期,它包括成本管理、风险管理、人力资源管理、进度管理、采购管理、范围管理以及相应的管理工具。上面提到的这些项目管理的方面从本质上来说并不属于某种新的技术,但它往往都是用来解决某个具体的问题。 9 解题方法与技巧精解1-应对新技术类型的问题 ??? 7 . 测试驱动开发 系统评测包括软件测试和系统的评测。随着软件产业的推进和测试技术的发展,测试驱动开发越来越受到开发人员的重视,测试技术也渗透到软件开发的每一个角落。对于传统的测试技术和测试方法,要熟练地掌握。同时随着测试驱动开发思想地推进,测试技术贯穿到整个开发环节。随着技术的发展,测试问题的重点集中在性能测试和系统的评测,尤其是各种新应用、新系统的测试和评测问题。例如手机等移动、嵌入式设备的评测,网络服务器的性能测试等。 8 . 安全与可信计算技术 安全问题一直是计算机领域的一个重点问题,它也派生出许多相关领域,如可信计算、信息加密、数字签名、入侵检测、访问控制、防火墙、反垃圾邮件等。在这个方面上,近年来出现的新技术往往是对现有技术的改进和提高,要把握住所解决的问题本身。 9 . 普适计算技术 随着计算机、通信、网络、无线、微电子、集成电路等技术的发展,信息技术的硬件环境和软件环境已经发生了巨大变化。从硬件上看,数据传输的物理介质从有线发展到无线,从固定发展到移动,通信变得越来越方便,逐渐打破时空的限制。计算机网络正在形成以互联网为核心,以多种无线网以及移动网为接入的更加广泛的异构集成网络。计算机网络协议功能更强,正在满足不同数据通信特点的应用(如ATM等),而且IPv6的应用会大大增加网络地址范围,在可预见的未来可为每个设备提供网络地址。从网络带宽上来看,有线主干网逐渐采用光纤,802.11、Bluetooth逐渐成为无线局域网的常用标准,移动网正在向3G、4G甚至5G演变。随着全球网络化和电子产品智能化的加速,整个社会将进入后PC时代,即普适计算(Pervasive Computing)时代。普适计算描述了这样一种概念:无处不在的计算能力,它将融入我们的生活,帮助我们轻松完成日常工作。这种计算能力是动态变化的,它能把住10

??? 第 8讲 计算机数值表示与非数值表示 宅、汽车、办公室、商店和银行里的计算设备以及个人计算设备连接并协调起来,为信息、服务和应用提供接入点 10 . 自主计算技术 自主计算是美国IBM公司于2001年10月提出的一种新概念。IBM将自主计算定义为“能够保证电子商务基础结构服务水平的自我管理(Self Managing)技术”。其最终目的在于使信息系统能够自动地对自身进行管理,并维持其可靠性。自主计算描述了具有自主控制甚至能自动恢复的技术,很像人体所具有的功能。这里所说的技术,包括所有的软件,所有的应用程序,所有的存储 , 所有的基础设施组件,传统技术的运行方式比较陈旧,需要人类为它做每件事物,与此不同,现在的技术开始可以照顾自己的需求了”。 自主计算的核心是自我监控、自我配置、自我优化和自我恢复。自我监控,即系统能够知道系统内部每个元素当前的状态、容量以及它所连接的设备等信息;自我配置,即系统配置能够自动完成,并能根据需要自动调整;自我优化,即系统能够自动调度资源,以达到系统运行的目标;自我恢复,即系统能够自动从常规和意外的灾难中恢复。 11 . 虚拟现实技术 虚拟现实技术是一系列高新技术的综合,这些技术包括计算机图形学、多媒体技术、人工智能、人机接口技术、传感器技术以及高度并行的实时计算技术,还包括人的行为学研究等多项关键技术,它是这些技术在更高层次的集成和渗透,是本世纪发展的重要技术之一。未来虚拟现实技术将会是一门走向成熟的科学和艺术,是一种全新的信息处理方式。它将会在各行各业中得到应用,并且发挥神奇的作用。 上面我们提到了主要的一些计算机技术及领域,当然并不仅仅只有这些,例如人工神经网络、模式识别、商业智能、Agent技术、语义web技术、本体技术等等,这些都在计算机技术的发展过程中扮演着重要的作用。 自主计算还很不成但将对计技术的发到重要的作用。

要在熟练前面技术础上广泛技术的发11 解题方法与技巧精解1-应对新技术类型的问题 ??? 计算机技术的发展日新月异,在案例分析中我们不可避免地会遇到不太熟悉的新技术和新应用,应该有效地提高解决这些问题的能力。要有效掌握已有的知识和应用,只有做到温故才能更好地知新。同时,在遇到新技术类型应用的问题时,首先能对问题进行有效地分类,如是属于分布式计算的范畴,还是企业计算的范畴等等,要能够有效地进行问题地转换,将问题转换到熟悉的应用场景下。 2.2 案例一—应用服务器相关问题 2.2.1 问题 阅读以下关于应用服务器的叙述,回答问题1、问题2和问题3。 应用服务器在基于Web的数据库应用系统中已经得到了广泛的应用。如今,各大主要软件厂商纷纷将应用服务器作为其电子商务平台的基础。由于应用服务器本身是一个正在不断发展的概念,不同的产品之间有很大的差别,但是其核心结构,以及需要解决的主要问题都是相近的,区别仅在于各个产品解决的具体方法不同。下面是应用服务器共同需要解决的部分问题。 (1)负载均衡:应用服务器实现负载均衡的方法很多,比如在应用服务器本身的实现上,有基于进程的方式和基于线程 的方式。 (2)数据库连接池:在应用服务器系统中,一般都会采用数据库连接池的技术。 (3)高速缓存机制:为了提高性能,许多应用服务器都采用了告诉缓存机制。 [问题1] 请用150字以内文字,说明什么是数据库连接池技术?在应用服务器中使用这种技术的优点是什么? [问题2]

12

??? 第 8讲 计算机数值表示与非数值表示 请用200字以内文字,叙述在应用服务器中可有哪些高速缓存?这些高速缓存是如何改进系统性能的? [问题3] 某公司希望实现一个电子商务系统,要求该系统必须符合工业标准且支持多种操作平台,请选择一种应用服务器产品,并用200字以内文字简要列举出该类产品能提供的主要的技术支持特征。 2.2.2 背景知识与解题分析 应用服务器是在当今Internet上企业级应用迅速发展,电子商务应用出现并将快速膨胀的需求下,产生的一种新技术,通过它能将一个企业的商务活动安全、有效地实施到Internet上,实现电子商务。由于它并非一种传统意义上的软件,而是一个可以提供通过Internet来实施电子商务的平台,所以有人又称之为“Internet上的操作系统”。应用服务器是企业级应用基础软件平台的核心,它的主要功能是为现代三层、多层应用系统提供基础软件平台,即中间件的支持。可以把应用服务器看作一种构件服务器,它为三层结构的中间层提供服务。例如我们在应用服务器中运行中间层的商业逻辑构件、开发者使用应用服务器提供的中间件来简化开发过程、同时大多数应用服务器还提供了内容管理、负载均衡、容错、连接池、对象持久性等功能。 根据应用服务器技术实现的不同分类,有如下几种。 ? 操作系统型。也就是将应用服务器与操作系统紧密地捆绑在一起。最典型的就是Microsoft的应用服务器解决方案。 ? 集成型。还有一种是与Web服务器或数据库服务器集成的应用服务器,它是Web服务器或数据库产品的一部分。不过其通常是一个黑盒子,要么全用,要么全不用。 ? 插件型。插件应用服务器在设计上类似于集成型应用服务器,不过它不是Web服务13 解题方法与技巧精解1-应对新技术类型的问题 ??? 器或数据库服务器的一部分。它可以与大部分第三方Web服务器共同使用。 ? 独立型。独立的应用服务器是一个完整的应用服务器,它允许用户创建自己的系统,按用户自己觉得合适的方式组合和搭配Web服务器与数据库。 根据功能分类,目前市场中主要有6种类型:事务服务器、知识服务器、带有集成开发工具的应用服务器、协作服务器、瘦服务器和主机访问服务器。不过,具体的服务器产品并不一定会是某种特点功能,往往是兼而有之。 ? 事务服务器。事务服务器包括从电子商务实施到处理帮助桌面或人力资源数据共享的部门服务器的种种功能。事务服务器离商用功能还有很长一段距离。由于每种实施计划都需要用户进行努力开发,因此,这些计划成本仍在增加。21世纪将会有大量需求事务部署。 带有集成开发工具的事务服务器和应用服务器正合并成一种能同时处理事务管理和开发需求的服务器。IBM、Oracle、微软、、? 知识服务器。知识服务器是一种更新的应用服务器,一般能从结构化和非结构化来源中搜集数据并编索引。这些服务器通常具有HTTP支持、编索引功能和支持广泛的数据和文件格式的检查和析取的工具。知识服务器还可以支持工作流和业务逻辑处理能力。Lotus和Netscape等厂商正增加大量工作流,由于知识服务器支持工作流,因而,协作服务器可能会与之合并,以改善公司的数据管理。这一领域的供货商正在制定标准化协作方面的协议,可能将提高使用不同的协作服务器的机构间的互操作性。这一协议有可能大大使基于Web的商家对商家事务的集成更加容易。 ? 带有集成开发工具的应用服务器。带有集成开发工具的应用服务器在激烈的竞争中走向成熟。该领域的供货商正在为开发和部署工具补充事务能力,创建一种更加完善的解决方案。 ? 瘦服务器。瘦服务器是一类与众不同的应用服务器。这些解决方案通常是支持HTTP及另外的具体功能(如Web页面缓存)的软、硬件的构件。将来,它们可能与其他NetscapeBEA和Sun等厂商在支持企业大型事务应

14 ??? 第 8讲 计算机数值表示与非数值表示 种类合并。 ? 主机访问服务器。最近,主机访问服务器已接近商用服务器。IBM、Attachmate等添加了平台支持、可管理性和客户端自定义特征。下一代主机访问服务器可能将通过支持对主机数据更具客户化的访问与其他应用服务器合并。 主流的应用服务器种类如下所示: ? Bea Weblogic是目前市场上最有影响力的J2EE 应用服务器产品,为需要高性能和可伸缩性的大规模业务应用提供有效的底层基础设施和企业级支持能力。BEA WebLogic Enterprise是高可伸缩、高可用、支持企业Java标准和CORBA,且具有主机互操作性的企业应用服务器,是运行关键任务Web应用的扩展型WebLogic组件中间件系列的旗舰产品。 ? IBM Web Sphere Application Server是一个完善的、开放的Web应用服务器。它强调其在应用开发(Web Sphere Studio和Visual Agefor Java)、数据库(DB2)和消息服务(MOseries)的集成性,是IBM电子商务应用架构的核心。Web Sphere应用服务器严格地遵循普遍流行的开放标准,如HTTP,HTML,JSP,JNDI和IIOP。WebSphere应用服务器基于Java Servlet引擎,将通常的Web服务器(如ApacheServer,Microsoft IIS,NetsacpeEnterpriseServer和LotusDomino Go WebServer)增强为基于Java的Web应用服务器。作为IBM电子商务应用架构的核心,WebSphere应用服务器提供了无限的扩展性,允许用户利用IBM或其他厂商提供的Java技术扩展其运行环境。 ? Oracle应用服务器提供了一个开放的标准架构,是开发部署Web上的应用的理想平台。它的伸缩性、分布架构和高度数据库集成是支持关键事务,交易型应用的基础,通过采用Netscape和Microsoft HTTP服务器,提供了易于使用的界面,并为Oracle方案提供了简易的升级方法。以符合CORBA标准的ORB为基础,Oracle应用服务15

解题方法与技巧精解1-应对新技术类型的问题 ??? 器将应用程序插件与所有系统服务作为分布对象。这样的设计使应用处理能被分散于数部主机,有效而经济地解决性能瓶颈。 ? Sun 基于Web Services 的Open Net Environment(ONE),支持所有的J2EE 规范及相关的API,Sun iPlanet 是ONE 核心组成。实现的基本功能包括了servlet 和JSP 支持、基本的监控服务,并且扩展了W e b 服务器、事务监控器、目录服务器,建立支持Web service 的处理多数据源的企业级应用,和对已有系统的集成能力。iPlanet 还提供一套支持高性能的服务,如可由系统管理员调整的负载均衡,集群技术,透明的失效恢复,用于服务器管理和监视的SNMP代理,对线程、数据库链接和EJB 的缓存机制。ONE 将业务逻辑抽取出来,存入基于XML 的存储库中,允许Java 开发者对存储库中的内容以Java 和XML 的形式进行处理。 ? 开源世界中,也不泛优秀的应用服务器产品,包括JBoss,Resin,JRun等,它们的共同特点都是跨平台、基于J2EE体系结构。它低廉的价格给人以极大的诱惑,现在也被许多中小企业应用采用,但它们最大的不足在于技术支持有限,只能够通过论坛、社区等非正式的方式来获取技术支持。但它们也以较高的稳定性、较快的升级速度赢得了开发人员的喜爱。 使用应用服务器环境的一个重要原因就是为了最小化数据库连接,并且尽力减少在数据库服务器上的加载次数。在传统的两层环境中,每个用户至少要建立一个到其他各个数据库的连接。这种通过Driver Manager(例如ODBC、JDBC等)和基本实现Data Source进行连接(例如ADO等)的方法,一个数据库连接对象均对应一个物理数据库连接。一方面,会造成连接数的数量猛增,并很快用光数据库服务器的资源;另一方面,数据库连接的建立(通常需要1~3s,包括服务器通信和认证所花费的时间),以及关闭对系统而言是耗费系统资源及管理

的操作,这种耗费资源的动作对系统的性能影响尤为明显。而当引入了应用服务器之后,管应用

器产品的可根据具用开发和环境要求综合比较要考虑到器特性,缩性、负衡、安全等。除了16 外,应用??? 第 8讲 计算机数值表示与非数值表示 理数据库连接的责任就落在应用服务器中。如果应用服务器为每个客户端的数据访问建立一个数据库连接,那么问题仍然不能够得以解决。 因此对于具有高数据访问量的应用来说,一个更好的策略就是管理一个连接池。启动时,可以创建一个预定编号的连接,并以矢量或阵列的形式进行存储。在调用表对象的方法之前,得到下一个连接对象的请求;然后,把这个连接连同这个数据请求一起传递给表格。随着每个顺序请求的加入,这个连接不断地循环,并自动平衡连接中的加载。一旦连接对象失败,就会放弃这个循环,并在一定程度上自动恢复。通俗地说,就是将每次创建的数据库连接放在一个“池”里,并且在连接使用完成时并不急于关闭这个连接。当应用程序需要调用一个数据库连接时,数据库相关的接口通过返回一个通过重用数据库连接(就是那些已使用完,但未关闭的、空闲的数据库连接)来代替重新创建一个数据库连接,只在没有可用的数据库连接时,才重新创建一个。通过这种方式,应用程序可以减少对数据库连接操作,尤其在多层环境中多个客户端可以通过共享少量的物理数据库连接来满足系统需求。 当使用了数据库连接池技术之后,由于可以有效地减少数据库连接的建立和关闭操作,从而能够节省大量的系统消耗,同时明显地提升系统的性能。另外,由于使用了数据库连接后,应用系统所需的数据库连接在一段时间后就会稳定在一定的数量范围之内,从而也提高了系统的可测量性。为了达到最佳的性能,许多应用服务器都采用了高速缓存机制。在应用服务器中使用高速缓存一般包括三个地方,即页面的缓存、数据库的缓存、动态页面的缓存。 页面的缓存是指将特定的URL对应的页面在缓存中予以记录,以便在未来再次访问同一个URL时,直接使用。这里的缓存可以达到最佳的缓存性能,任何后面的操作都不需要进行,只需将缓存读出,然后输出即可。 但是,由于大多数URL对应的页面中,往往都有少量需要变动的信息,这些页面不能使用这种方法进行缓存。数据库的缓存是指系统对数据库的访问结果进行缓存,这样,相同的17 解题方法与技巧精解1-应对新技术类型的问题 ??? SQL再次去访问数据库时,就不需要进行真正的数据库操作,而只需读取缓存即可。这种缓存能够达到良好效果的前提是系统的主要开销在于数据库访问。由于系统依然需要进行有关页面生成等工作,所以缓存效果不如页面缓存,但是适用面比较广。为了能够进一步减少页面生成工作,现在许多应用服务器针对各种动态网页技术和构件技术提供了相应的高速缓存机制,也就是将页面的生成结果进行缓存,当处理以后的页面请求时,可以直接使用缓存结果,从而进一步减少开销,提高访问性能。但是这种技术也有很多局限性,当用户所访问的信息集不同时,缓存里的信息并不能够被利用,还是需要另外生成。 首先看问题一,事实上重点考察的是将数据库领域的知识运用到应用服务器这样一个环境中去。对于数据库连接池,顾名思义,很容易可以想象到它的作用,数据库连接池技术是指在系统初起,或者初次使用时,完成数据库的连接,而后不再释放此连接,而是在处理后面的请求时,反复使用这些已经建立的连接。这种方式可以大大减少数据库的处理时间,有利于提高系统的整体性能、可测量性和扩展性。事实上,不仅仅是数据库的连接池,在网络连接中也经常有这类的应用。而对于应用服务器来说,这种应用和不在应用服务器中没有任问题一的何区别,所起到的功用是完全一样的。 分析告诉我再看问题二,这个问题和应用服务器是有紧密的联系的。要有效地解答这个问题,首先们,很多貌似要理解高速缓存本身的含义。我们可以和Cache进行类比,Cache是对数据进行缓冲,是CPU新技术的问题和存储器之间沟通的桥梁,而我们可以由此结合应用服务器在三种结构中所处的位置和作用只是披上了新理解到,它起到了沟通客户端和后台数据的作用。由此我们可以联想到应用服务器中缓存的技术的外衣,是对应的URL页面和数据库的访问结果,我们可以再联想到计算机体系结构中的局部性原本质上还是已理,缓存的原因往往有二:一是便于再次使用,一是传输速度不够快,起到暂时性的缓存作有的技术。 用。从这些分析中我们就基本上可以得出问题的答案,在应用服务器中有页面的缓存和数据 库的缓存。页面的缓存是指将特定的URL对应的页面在缓存中予以记录,以便在未来再次访 18 事实上这??? 第 8讲 计算机数值表示与非数值表示 问同一个URL时直接使用。这里的缓存可达到最佳的缓存性能,任何后面的操作都不需要进行,只需将缓存读出,然后输出即可。数据库的缓存是指系统对数据库的访问结果进行缓存,这样相同的SQL再次去访问数据库时,就不需要进行真正的数据库操作,而只需读取缓存即可。 最后看一下问题三,事实上这个问题是本道题中和应用服务器技术的关联最紧密的,这类问题主要取决于考生日常的积累,当然对于这类问题,一般不会考察特别生僻的产品,所以在复习过程中多加注意一般就能够解决。 这里关键在于把握下面几点: ? 符合工业标准:主要是指应用服务器中采用的中间件技术符合工业标准,如J2EE、CORBA、XML等; ? 支持多种操作系统:也就是能够在Windows系列、UNIX系列等多种操作系统环境中使用,基于CORBA和J2EE的都能够满足这个要求。而微软的MTS则只能够运用于Windows系列操作系统平台,显然无法满足。 ? 适合于电子商务应用:根据电子商务的应用特点,要求应用服务器能够提供诸如事务管理、组建容器等一系列适合分布式应用的技术,另外还应该具有高扩展性、伸缩性的特点,以满足电子商务发展的业务扩展需要。 2.2.3 参考答案 [问题1] 数据库连接池技术是指在系统初期或者初次使用时,完成数据库的连接,以后不再释放此连接,在处理后面的请求时,反复使用这些已经建立的连接。这种方式可以大大减少数据库的处理时间,有利于提高系统的整体性能、可测量性和扩展性。 [问题2] 19 解题方法与技巧精解1-应对新技术类型的问题 ??? 在应用服务器中有页面的缓存和数据库的缓存。 页面的缓存是指将特定的URL对应的页面在缓存中予以记录,以便在未来再次访问同一个URL时,直接使用。这里的缓存可以达到最佳的缓存性能,任何后面的操作都不需要进行,只需将缓存读出,然后输出即可。 数据库的缓存是指系统对数据库的访问结果进行缓存,这样相同的SQL再次去访问数据库时,就不需要进行真正的数据库操作,而只需读取缓存即可。 [问题3] 可以选择J2EE应用服务器(例如,Weblogic,Webshpere等),提供的支持有支持多种操作系统,如Windows,UNIX,Linux等;同时是工业标准。 数据库操作支持:JDBC数据源,通过缓冲数据库连接,提供高效、可靠的数据库操作。 安全性控制:J2EE提供声明性安全控制,用户在部署描述符中通过声明的方式来控制应用系统的安全性(例如,可以控制如何进行身份认证,控制哪些角色可以访问哪些资源或执行哪些操作等)。 事务控制:J2EE应用服务器支持将事务控制交给容器自动管理,或者利用JTA在代码中自己控制事务。 与其他系统交互:基于JCA或者JMS,另外可以直接访问CORBA组件。 2.3 案例二—XP技术的应用 2.3.1 问题 某公司要在现场开发一个网站应用系统,该系统的特点是:规模不大;工期短;用户需求不明确;没有大的技术风险;系统中的一些模块可以外包给其他的公司开发。在选择开发过程时,项目组内产生了分歧。 20

??? 第 8讲 计算机数值表示与非数值表示 王工提出采用XP(extreme Programming,极限编程),理由是XP方法简洁,能减轻开发人员的负担、快速适应市场、缩短投资回收期。 李工认为采用XP在项目开发中存在一些问题,建议考虑原型开发方法。双方就上述的问题展开了激烈的争论。项目组最后决定采用XP,但同时针对李工提出的XP中存在的问题采取了相应的措施。 [问题1] 小规模发布(small release)是XP的基本元素之一。请用200字以内文字分别阐明: (1)原型系统和XP小规模发布的系统的主要差别? (2)为什么该项目组没有采用原型开发方法? [问题2] 请用200字以内文字,简要说明采用XP方法可能会存在哪些问题。 [问题3] 在项目组的后续讨论中,李工提出,如果项目规模扩大,XP将不再适用。王工对此表示赞同,但同时提出可以将XP方法和传统软件开发过程相结合。请用200字以内的文字简要地说明如何将XP方法和传统软件开发过程相结合。 2.3.2 背景知识与解题分析 在我们面临“软件危机”所带来的挑战之时,曾经通过采用严格的规范、详尽的文档来约束开发过程,以保证开发的质量与效果,获得了突出的成就。但是随着时代的进一步发展,商业周期越来越短、变化越来越快,甚至在软件开发的过程中,商业逻辑和需求已经悄然变化,这给本来还不成熟的软件产业带来了新的挑战。正在这种情况下,敏捷方法论应运而生。 比较有影响力的敏捷方法论包括XP(极限编程)、FDD(特征驱动开发)、Crystal Method(水晶方法)、DSDM(动态系统开发方法)、ASD(自适应开发)、Scrum等。 21 解题方法与技巧精解1-应对新技术类型的问题 ??? XP的核心是其总结的沟通、简单、反馈、勇气四大价值观。它包括12种最佳实践:计划游戏、小型发布、隐喻、简单设计、测试先行、重构、结对编程、集体代码所有制、持续集成、每周工作40小时、现场客户,以及编码标准。 从XP方法论本身来说,首先第一类潜在问题是精神和观念上的,即是否能够得到开发人员、管理者,以及客户三方面的支持与理解。简单设计、测试先行、重构、集体代码所有制、编码标准、持续集成都从某种意义上违背了程;序员的传统习惯;而小型发布、结对编程、每周工作40小时,经常会让管理者不可理解,以致认为XP是黑客文化,是为开发人员谋福利而来的;而现场客户实践则经常无法得到客户的理解和满足,另外许多客户在接受每 XP并不是与传统的方法论有着“不共戴天”的变化,是存在很多的结合点,能够有效地在传统方法论中结合XP开发方法的。 集中式方法,是传统的软件工程方法的共同特点。22 一次小规模发布时,也会提出异议。 另外,由于XP方法论属于轻量级,也就是文档量少,遵从“代码就是文档”的思想。因此虽然XP方法论中是有“当非要文档时才编写”的说法,但却容易使得团队忽视文档,从而降低系统的可维护性、易用性,以及其他的一些问题。除了培训教育之外,通常还可以采用的解决方案是利用诸如“敏捷建模”策略,在两个极端中间取一个合理的阈值。 XP是适合于中小型团队在需求不明确或者迅速变化的情况下进行软件开发的轻量级方法学。它与传统的方法论最大的不同在于: ? 拥有短周期内的早期、具体和持续的反馈。 ? 它递增地进行计划编制,也就是在项目的一开始迅速提供一个总体计划,然后在项目的整个生命周其内不断地发展它。 ? 它针对不断变化的业务需求灵活地对功能的实现进行计划的能力。 ? 它依赖于由程序员或客户编写的自动测试来监控开发进度。 ? 它依赖于口头交流、测试和源代码来沟通系统的结构和意图。 ? 它依赖于整个系统存在期间一直持续的进化式设计过程。 它的优点在

??? 第 8讲 计算机数值表示与非数值表示 ? 它依赖于技术水平一般的程序员之间的紧密协作。 ? 它依赖于能够同时满足程序员的短期本能和项目的长期利益的实践。 XP则高度涉及员工/客户,可以保证较高的解决方案接纳度。不过把其运用到几个局部问题上往往不能产生与多个团队一起共享的改进,加上XP方法的无结构,因此一个必须包含几个人的复杂问题不能用它来产生一个全面的概念。 (1)层次化结合 基于上述想法,可以提出层次化的管理,具体地说就是: ? 在上层,建立一种面向目标的项目管理,它通过产生一个大致概念来把问题组织成一种高级结构。 ? 而将目前有局部化问题的每个部分都通过定义一个自身的XP团队来用一种极限编程的方法予以解决。 XP团队主要在独立的基础上发挥功能。同时,他们通过跟踪全局目标和衡量局部改进的顶层管理团队以一种松散的方式被联系起来。 (2)实践引入式结合 另外一种结合的方式是仍然按照传统过程方法论进行过程的管理,引入XP的实践,实现优势互补。其中比较典型的包括如下几点。 ? 现场客户:这个实践是对传统过程方法论缺乏客户参与的最好补充。 ? 简单设计:“只为今天设计,不过多地考虑明天的需要,因为现在的假设可以是错误的,也许明天还有更好的实现方式”,这是XP所提倡的简单原则,它也可以无缝地借用到用传统过程方法论进行管理的项目中。 ? 小型发布:每次迭代都实现一次小型的发布,提交一个能够让用户开始投入使用的小型版本,可以有效地加强反馈,缩短开发进程,提高软件质量。其中还可结合每23 解题方法与技巧精解1-应对新技术类型的问题 ??? 日构建进行持续集成,予以保障与支持。 ? 测试先行、重构:这是保持“小步快走”的关键实践,对于软件质量的提高有很大的帮助。 除此之外,XP方法论中的其他实践也是能够有效地在传统的开发过程中发挥作用的。 面对这个问题时,我们首先应该对问题的类别进行考虑,XP所涉及的是软件工程方面的问题,它考虑的是如何能够有效地对开发过程进行管理。事实上,对于像类似XP这样的技术,哪怕不能完全掌握,也应了解它的基本要素和基本出发点。例如XP的关键就在于敏捷,在于轻装前进,理解了这一点,我们就可以尽量地去解决问题。 首先看问题一,这里讨论的是原形系统和小规模发布的问题,首先对于原形系统来说,这是我们在软件工程中熟练掌握的内容,但小规模发布和它肯定是有区别的。一般情况下,我们知道两者之间的区别无外乎部分-整体的区别,时间、空间的区别。而这个问题,顾名思义,应该属于部分-整体的区别,原形系统提供的是整体,那小规模发布的意思就跃然纸上。 再看问题二与问题三,两者之间是有联系的,实际上从题意中我们可以看出XP的关键在于小规模发布,在于轻装前进,而要指出XP的问题,实际上肯定要找出XP与传统的软件开发方法的区别,而本质上肯定是传统软件开发方法的优点,这又回归到传统软件工程方面的问题,所以说万变不离其宗,要善于对新问题向传统技术进行转化。 在传统的软件工程中,强调详细的管理、范的集成软件管理、定量的过程管理、全面的、严格的软件质量管理、过程变更管理和技术变更管理等。而XP是不具有这些特点的,因而XP在面对大项目时肯定会存在问题,同时对合作方及开发者的素质也提出了很高的要求。最后要求回答怎样进行结合XP和传统软件开发方法,这也是一类典型的问题,事实上我们都学过分治法,这类问题的双方往往有强弱、主次之分,这种情况下就需要将问题化繁为简,用简单的方法解决简单的问题,用复杂的方法进行协调。同样,问题的双方可能是并列的关这里

意,如果统软件开法的优点了解,始

住简单的词是复杂24 统软件开??? 第 8讲 计算机数值表示与非数值表示 系,就可以考虑时间、空间上的协同和渗透。问题虽然可能不同,但方法是相通的。 2.3.3 参考答案 [问题1] (1)原型系统和XP小型发布的系统的主要差别是功能。 采用原型系统主要是让用户确认需求,或者用来测试关键的技术,但是它展示的功能并不是实际系统的功能,不能用来评价实际的系统。 XP小型发布的系统开始时不包括足够的功能,但是每个功能和可发布的产品的定义是一样的。在完整性上,它配备了一系列实用的功能集;在质量上,它可以健壮地运行。 (2)在该项目中,不需要开发原型系统。 ①项目没有大的技术风险,所以不需要用原型系统来测试关键技术。 ②网站系统的开发和原型系统的开发在工作量上是相当的,在时间要求短的情况下,直接开发系统可以节省时间。 ③对于用户需求经常变化的情况,可以采用XP开发方法的代码重构、持续集成和小型发布等技术。 [问题2] (1)没有考虑软件子合同管理。 (2)没有考虑规范的集成软件管理。 (3)没有考虑定量的过程管理。 (4)没有考虑全面的、严格的软件质量管理。 (5)没有考虑过程变更管理和技术变更管理。 [问题3] (1)可以将XP和传统软件开发过程中的增量式开发过程的结合。 25

解题方法与技巧精解1-应对新技术类型的问题 ??? (2)将大规模项目划分为若干个具有共同目标的小规模项目,用XP方法论组织小项目开发,用传统软件过程方法论监控全局。 (3)在此基础上,建立面向目标的项目管理。 2.4 案例三—产品线技术的应用 2.4.1 问题 A公司是一家中等规模的计算机企业,专业从事网络安全防护软件系统的开发。从最初现有产品集中软硬件结合的紧密程度,以及不同产品在硬件方面的需求的差异,也是产品线开发采用演化还是革命方式的决策依据。对于软硬件结合密切且硬件需求差异大的现有产品集因无法满足产品线方法对软硬件同步的需求,只能采

26 仅开发基于Windows的个人防火墙产品开始,现在,已经延伸到基于Linux、Windows系列、MAC操作系统的个人防火墙、企业防火墙、入侵检测系统、病毒扫描系统、安全扫描系统等多种产品。公司原来的产品都是一个一个地开发,为每个软件对应地组织一个项目组。 为了适应快速变化的市场,降低开发成本,公司想引入产品线方法。然而,由于软件产品线方法涉及了一个软件开发企业的多个产品,所以,公司的王总决定在弄清楚以下三个问题之后再做决定,首先就是本公司的业务范围是否适合使用产品线方法,其次是如何在原有产品的基础上建立产品线,最后是成功实施产品线的主要因素是什么? [问题1] 请用100字以内文字,说明A公司是否适合采用产品线方法,并说明理由。 [问题2] 请用400字以内文字,说明在原有产品的基础上建立软件产品线的方式,并作简要评价。 [问题3] 请用150字以内文字,说明成功实施产品线的主要因素。 2.4.2 背景知识与解题分析 软件产品线(software product line)是一个十分适合专业的软件开发组织的软件开发方法,??? 第 8讲 计算机数值表示与非数值表示 能有效地提高软件生产率和质量、缩短开发时间、降低总开:发成本;它也是一个新兴的、多学科交叉的研究领域,研究内容和范围都相当广泛。 产品线的起源可以追溯到1976年Pamas对程序族的研究。软件产品线的实践早在20世纪80年代中期就出现了。最著名的例子是瑞士CelsiusTech公司的舰艇防御系统的开发,该公司从1986年开始使用软件产品线开发方法,使得整个系统中软件和硬件在总成本中所占比例从使用软件产品线方法之前的65:35下降到使用后的20:80,系统开发时间从近9年下降到不到3年。据HP公司1996年对HP、IBM、NEC、AT&T等几个大型公司分析研究,他们在采用了软件产品线开发方法后,使产品的开发时间减少1.5~2倍,维护成本降低2-5倍,软件质量提升5-10倍,软件重用达50%~80%,开发成本降低12%~15%。 软件产品线开发有四个基本技术特点:过程驱动、特定领域、技术支持和构架为中心。与其他软件开发方法相比,软件开发组织选择软件产品线的宏观上的原因有:对产品线及其实现所需的专家知识领域的清楚界定,对产品线的长期远景进行了策略性规划。 根据SEI的定义,软件产品线主要由两部分组成:核心资源和产品集合。核心资源是领域工程的所有结果的集合,是产品线中产品构造的基础。也有组织将核心资源库称为“平台(Platform)”。核心资源必定包含产品线中所有产品共享的产品线构架,新设计开发的或者通过对现有系统的再工程得到的、需要在整个产品线中系统化重用的软件构件。与软件构件相关的测试计划、测试实例,以及所有设计文档,需求说明书和领域模型还有领域范围的定义也是核心资源,采用COTS的构件也属于核心资源。产品线构架和构件是用于软件产品线中的产品的构建和的核心资源最重要的部分。 软件产品线的建立需要希望使用软件产品线方法的软件组织有意识地、明显地努力才有可能成功。软件产品线的建立通常有四种方式。引入产品线开发过程采用的方式:是演化方式还是革命方式,是基于现有产品还是开发全新的产品线。 27 解题方法与技巧精解1-应对新技术类型的问题 ??? ? 将现有产品演化为产品线。在基于现有产品构架设计的产品线构架的基础上,将特定产品的构件逐步地、越来越多地转化为产品线的共用构件,从基于产品的方法“慢慢地”转化为基于产品线的软件开发。主要优点是通过对投资回报周期的分解、对现有系统演化的维持使产品线方法的实施风险降到最小,但完成产品线核心资源的总周期和总投资都比使用革命方式要大。 ? 用软件产品线替代现有产品集。基本停止现有产品的开发,所有努力直接针对软件产品线的核心资源开发。遗留系统只有在符合构架和构件需求的情况下,才可以和新的构件协作。这种方法的目标是开发一个不受现有产品集存在问题限制的、全新的平台,总周期和总投资较演化方法要少,但因重要需求的变化导致的初始投资报废的风险加大。另外,基于核心资源的第一个产品面世的时间将会推后。 ? 全新软件产品线的演化。当一个软件组织进入一个全新的领域要开发该领域的一系列产品时,同样也有演化和革命两种方式。演化方式将每一个新产品的需求与产品线核心资源进行协调。好处是先期投资少,风险较小,第一个产品面世时间早。另外,因为是进入一个全新的领域,演化方法可以减少和简化因经验不足造成的初始阶段错误的修正代价。缺点是已有的产品线核心资源会影响新产品的需求协调,使成本加大。 ? 全新软件产品线的开发。构架设计师和工程师首先要得到产品线所有可能的需求,基于这个需求集来设计和开发产品线核心资源。第一个产品将在产品线核心资源全部完成之后才开始构造。优点是一旦产品线核心资源完成后,新产品的开发速度将非常快,总成本也将减少。缺点是对新领域的需求很难做到全面和正确,使得核心资源不能像预期的那样支持新产品的开发。 从本质上看,产品线开发包括核心资源库的开发和使用核心资源的产品开发,这两者都28 ??? 第 8讲 计算机数值表示与非数值表示 需要技术和组织的管理。核心资源的开发和产品开发可同时进行,也可交叉进行,例如,新产品的构建以核心资源库为基础,或者核心资源库可从已存在的系统中抽取。有时,我们把核心资源库的开发也称为领域工程,把产品开发称为应用工程。 产品线分析是把对商业机遇的初步确认细化为需求模型,对正在开发的产品线而言,捕获:组织的商业目标和约束、包含在产品线中的产品、最终用户和其他风险承担者的需求、大粒度重用的机会。分析能否为并行开发提供机会,对产品线开发来说是至关重要的。资源开发需要固定投资,特别是及时的投资,但产品线的成功却往往取决于组织快速进入市场的能力。减少产品线进入市场时间的惟一途径就是使资源开发并行进行。对产品线分析而言,这意味着要尽可能快地发现重大设计信息。因此,是否进行了充分的产品线分析,对于软件产品线的成功实施起着十分重要的作用。 首先看问题一,对于大多数人来说,软件产品线技术可能并不太熟悉,这些技术在国内更能更吸引相关研究人员的注意。这个时候,就要注意用好类别,软件产品线不熟,硬件产品线则相对更为熟悉,所谓硬件产品线实际上是具有公共核心功能的一系列硬件产品,而软件产品线也是这样一个作用,它的关键出发点在于重用已有的成果,提高工作效率,避免重复劳动。事实上,我们应该牢牢记住,大凡软件工程方面的问题,基本目标都在于此,从这个角度出发,再加强类比,往往会收到奇效。 问题二是建立在问题一的基础上,实际上在我们大致理解了软件产品线的功用后,再结合题目中给出的信息,应该能够给出接近正确答案的解答。 问题三看似和软件产品线知识有紧密的联系,如果我们不太熟悉的情况下,往往会选择放弃。事实上,对于这类问题我们要记住一点:擒贼先擒王、打蛇打七寸。什么意思呢,就是考虑和它最相关的问题,什么问题一旦失败就会导致全盘皆输。前面我们提到软件产品线都有核心的部分,那么如果这部分不健全,则一切无从谈起,因而要有一个用于构建产品的从仿生学的角度看,类比是一个行之有效的方法。 29 解题方法与技巧精解1-应对新技术类型的问题 ??? 好的核心资源库。同时,我们要记住两点,无论对于什么软件开发来说,有两点是始终无可避免,那就是软件体系结构和对开发人员的管理。落实到这个问题上,就是要有好的产品线体系结构和好的管理(软件资源、人员组织、过程)支持。 2.4.3 参考答案 [问题1] 适合。原因: (1)该公司的产品都是在同一个领域,满足软件产品线建设的基本要求。 (2)该公司原有产品相对比较成熟,可以在原有产品的基础上建立产品线。 [问题2] 在原有产品的基础上,可采用下列方式之一建立产品线:演化方式 、革命方式。 [问题3] (1)对该领域的产品开发已具备长期积累的经验。 (2)一个用于构建产品的好的核心资源库。 (3)好的产品线体系结构。 (4)好的管理(软件资源、人员组织、过程)支持。 从图2-1看出,该企业通过建设一个基于J2EE的新系统作为实施EAI的核心,进行流程、数据、界面等方面的各种整合,同时,企业技术人员对这个新系统从功能、维护、安装、扩充等30 2.5 案例四—基于J2EE的EAI应用 2.5.1 问题 经过多年的信息化建设,某企业已经拥有相当数量的应用系统,在该企业中发挥了较好的作用。但是,由于该企业并没有一个关于信息系统开发的总体性长远规划,基本上是由每个部门自行选择开发技术和开发方案来建设应用系统的,从而导致这些应用系统成为一个个“信息孤岛”。随着业务发展,该企业已提出了以下新的业务需求:

??? 第 8讲 计算机数值表示与非数值表示 (1)某些新增业务需要企业内部若干个不同的应用系统来协作完成,因而需要将这此“信息孤岛”连接起来,提供跨部门的业务。 (2)该企业与其他多家企业洽谈后,决定合作开办跨企业的新业务,因而需要与其他企业的应用系统互联。 (3)有些业务应该给用户更大的灵活性与方便性支持,使得他们可以随时随地、利用多种接入方式来办理这些业务,而不必总是要到营业场所才能办理。 在研究了以上需求后,技术部门一致认为需要进行企业应用集成(EAI)。其中,集成平台的选择是非常重要的,它会影响到企业今后多年的软件开发方式。在分析了国内外EAI的实施状况后,结合企业发展需要,他们考虑采用J2EE作为集成平台,如图28-1所示。 用户接口层Browser移动设备AppletsGUI客户端DatabaseWeb层业务逻辑层EJB容器Session BeanEntity BeanEIS层企业内部各信息系统第三方信息系统Web容器JavaServletBeamJSPMessage-Driven Bean 图2-1 采用J2EE的企业应用系统体系结构 [问题1] (1)在进行企业应用集成时会遇到哪些问题?请用100字以内文字简要说明。 (2)为什么选择J2EE作为EAI的集成平台?请用50字以内文字简要说明。 [问题2] J2EE提供了哪些通信协议和标准规范作为对EAI的支持?请用50字以内文字回答。 [问题3] 在讨论EAI实施过程中的B2B集成时,有技术人员提出采用Web Service进行集成,理31 解题方法与技巧精解1-应对新技术类型的问题 ??? 由之一是可以实现更快、更廉价的集成;另一理由是国内外主流软件企业都提供了Web Service技术与产品支持,因而有实现的可能性。 (1)Web Service有哪些相关技术?请用100字以内文字简要说明。 (2)Web Service的哪些特点使之能够快速、廉价地实现B2B集成?请用100字以内文字简要说明。 2.5.2 背景知识与解题分析 EAI是指在企业范围内,将多个应用系统的过程、软件、标准和硬件集成起来,使其成为无缝运作的整体。从范围来看,EAI既包括在企业内部进行的系统的集成,但也包括企业为实现与外部环境的交互而进行的集成,如企业的B2B建设等等。 与ERP的出现和发展一样,EAI也是企业管理思想发展的结果。从MRP、MRPII、ERP乃至所谓的ERPII,反映了生产企业中管理的范围的逐步扩大一一从核心的生产部门,到包括物料、财务、配送、采购等部门,再到包括供应链上完成“协同商务”的其他企业和客户等;在管理范围扩大的同时,信息技术所运用的层次也在不断提高:早期的信息技术体现在部门级的事务处理系统中,伴随着物流完成企业的基本操作;然后是面向特定管理职能——如财务、人力资源等,完成特定管理信息的收集、加工和传输;最后是企业范围的各信息系统的无缝集成,以及满足社会经营环境对信息的需求。 与ERP、CRM等信息系统不同的是,EAI并不是一种有特定功能的成型的信息系统,而只是运用了特定的、标准化技术对遗留资源的利用和遗留系统的无缝整合。EAI代表了一种“持续集成”的信息化战略。对于一个组织来说,EAI可能是一项长期的、不断进行的工程。 EAI与ERP等系统并没有必然联系。首先,ERP是适用于企业,尤其是生产型企业的现代管理信息系统,而EAI的思想、方法和技术更具有普适性。不管是否实施ERP等项目,EAI都可以作为一种长期的信息化战略。即使对于企业来说,不建设ERP,也可以进行EAI,32 ??? 第 8讲 计算机数值表示与非数值表示 以获得竞争优势。而在ERP的建设中,有的ERP是要求和支持EAI的,有的则不支持EAI。 EAI与Portal(门户)则有必然的联系。由于Portal是指基于Web Service技术、经过后台业务整合的单一访问界面,是EAI的一种主要的技术表现形式。 EAI包括硬件、体系结构、软件和过程的集成。从应用集成所使用的工具和技术来划分,可以分成六个层次,分别是平台集成、数据集成、构件集成、应用集成、过程集成和业务对业务的集成(B2Bi)。 传统的集成技术中,主要包括应用集成、数据集成和过程集成等。界面集成是最浅层次的,只是把原有零散的系统的界面集中在一个新的、通常是浏览器的界面中;数据集成是为新的商业目的,提供一个可访问已有的多个数据库系统的新的接口。过程集成是最高层次的集成,只有它才能最好地实现新的商务目标。 现代平台集成技术中,最流行的是联系密切的应用服务器技术和构件集成技术。在基于构件的开发模式中,应用系统作为一种构件被开发并运行在构件容器中,由容器为构件提供事务、线程、安全和生命周期等服务,构件开发者只专注于业务逻辑的开发。不符合构件一容器模型的遗留系统和企业现有系统则可以通过消息中间件(具有消息代理和过程代理的结构)实现整合。消息中间件加应用服务器加业务构件技术是目前业界推崇的构建新一代集成工具和技术,又叫基础平台。 目前市场主流的集成模式有三种,分别是面向信息的集成技术、面向过程的集成技术和面向服务的集成技术。 在数据级的集成层面上,信息集成技术仍然是必选的方法。信息集成采用的主要数据处理技术有数据复制、数据聚合和接口集成等。其中,接口集成仍然是一种主流技术。它通过一种集成代理的方式实现集成,即为应用系统创建适配器作为自己的代理,适配器通过其开放或私有接口将信息从应用系统中提取出来,并通过开放接口与外界系统实现信息交互,而33 解题方法与技巧精解1-应对新技术类型的问题 ??? 假如适配器的结构支持一定的标准,则将极大地简化集成的复杂度,并有助于标准化,这也是面向接口集成方法的主要优势来源。例如,J2EE中的JCA标准,JCA几乎得到所有主要供应商的支持,它详细说明如何构建那些连接现有系统的适配器。标准化的适配器技术可以使企业从第三方供应商获取适配器,从而使集成技术简单化。 面向过程的集成技术其实是一种过程流集成的思想,它不需要处理用户界面开发、数据库逻辑、事务逻辑等,而只是处理系统之间的过程逻辑和核心业务逻辑相分离。在结构上,面向过程的集成方法在面向接口的集成方案之上,定义了另外的过程逻辑层;而在该结构的底层,应用服务器、消息中间件提供了支持数据传输和跨过程协调的基础服务。对于提供集成代理、消息中间件,以及应用服务器的厂商来说,提供用于业务过程集成是对其产品的重要拓展,也是目前应用集成市场的重要需求。 基于SOA(面向服务架构)和Web Service技术的应用集成是业务集成技术上的一次重要的变化,被认为是新一代的应用集成技术。集成的对象是一个个的Web Service或者是封装成Web Service的业务处理。Web Service技术由于是基于最广为接受的、开放的技术标准(如HTTP、SMTP、SOAP、WSDL和UDDI等),支持服务接口描述和服务处理的分离、服务描述的集中化存储和发布、服务的自动查找和动态绑定,以及服务的组合,成为新一代面向服务的应用系统的构建和应用系统集成的基础设施。 J2EE(Java 2 Platform Enterprise Edition)为设计、开发、装配和部署企业级应用程序提供了一个基于构件解决方案。使用J2EE可以有效地减少费用,快速设计和开发企业级的应用程序。J2EE平台提供了一个多层结构的分布式的应用程序模型,该模型具有重用构件的能力、基于扩展标记语言(XML)的数据交换、统一的安全模式和灵活的事务控制。使用J2EE不仅可以更快地发布新的解决方案,而且独立于平台的特性,让使用J2EE的解决方案不受任何提供商的产品和应用程序编程界面(API)的限制。用户可以选择最合适自己的商业应34 ??? 第 8讲 计算机数值表示与非数值表示 用和所需技术的产品和构件。J2EE平台采用了多层分布式应用程序模型。实现不同逻辑功能的应用程序被封装到不同的构件中,处于不同层次的构件被分别部署到不同的机器中。 Web Service是解决应用程序之间相互通信的一项技术。严格地说,WebService是描述一系列操作的接口。它使用标准的、规范的XML描述接口。这一描述中包括了与服务进行交互所需要的全部细节,包括消息格式、传输协议和服务位置。而在对外的接口中隐藏了服务实现的细节,仅提供一系列可执行的操作,这些操作独立于软、硬件平台和编写服务所用的编程语言。WebService既可单独使用,也可同其他Web Service一起,实现复杂的商业功能。 WebService具有以下一些主要特性。 互操作性。Web Service通过SOAP实现相互间的访问,任何Web Service都可以与其他WebService进行交互,避免了不同协议之间的相互转换。由于Web Service可以用任何语言编写,因此开发者不需要更改开发环境就能开发新的WebService,同时还可以在新的WebService中使用已有的WebService,而不必考虑WebService的实现语言、运行环境等具体实现细节。例如,用Delphi编写的Web Service可以使用由Visual C++编写的WebService,反之亦然。 普遍性。WebService使用HTTP和XML进行通信,任何支持这些技术的设备都可以拥有和访问Web Service。Web Service不仅在计算机网络上出现,而且将在电话、汽车、家用电器等设备中出现。现在,各主要设备和软件供应商都已宣布支持SOAP和周边Web Service本题虽然技术,相信在未来,Web Service将普遍存在于社会生活的各个领域。 属于新技术的廉价性。WebService供应商提供的免费工具箱能够让开发者快速创建和部署自己的问题,但这里WebService,其中某些工具箱还可以让已有的构件方便地成为WebService,这样就降低了涉及到的技术WebService的开发费用,同时也加快了开发速度。例如,微软的.NET平台就以支持Web 都是非常重要Service为目标,因此用Visual Basic编写的构件可以很容易地作为Web Service发布和使用。 和普遍的。总35 的来说,对于

解题方法与技巧精解1-应对新技术类型的问题 ??? 首先看问题一,关于企业应用集成的问题,事实上从直观上理解,不同应用的集成实际上就是功能和数据的集成,这点是很容易理解到的,因为应用的主体实际上就是功能和数据,而对于数据来说,既然是集成,那么就必然是不同的数据格式,而这种异构数据的集成显然是应用集成的重要方面。同样对于功能上的集成,一样有多样性和异构性,同时既然是集成,就必然涉及到业务流程的统一问题。而对于J2EE平台的优点,这主要依赖于平时的知识积累,但这些属于往往是类似的,如平台独立性,规范的开放性、灵活性、支持异构性和可移植性等,只要对这些术语多加留意,一般能做到一定的正确性。 再看问题二,这个问题依赖于个人的知识域,但在非常不熟悉的情况下,就要注意从题干中找答案,事实上,从题图中我们就可以找到EJB、JDBC、JavaServlet、JSP,如果再多加联想到,可能会联想到JNDI、JMS等,这样就能够保证一定的分数。 问题三则只要取决于对Web Service的掌握,但考察得比较简单,主要是基本组成和特点,在复习过程中稍加留心皆可解答。但要注意面向服务的计算是业界近年来的重点研究方向(如IBM提出的企业服务总线ESB—Enterprise Service Bus),需要多加留心。 2.5.3 参考答案 [问题1] (1)因企业内部和将要与外部企业发生关系的企业各个系统在使用环境和作用方面不统一也不具有一致性,所以会遇到表示层、数据层、控制层如何集成的问题,这里面包括如何选用一种集成平台来适应所有操作系统和开发及各系统通信的需求。 (2)因为J2EE具有跨平台性,适应多环境下运行。 [问题2] JNI, Java IDL,Java RMI,JAX,Jdbc [问题3] 36 ??? 第 8讲 计算机数值表示与非数值表示 (1) 基于SOAP协议各系统之间用XML文档进行数据交换,基于UDDI统一定义描述集成协议对各系统服务注册,并用WSDL进行web service服务发布。 (2)Web Service基于SOAP协议进行各系统间的通信,而SOAP又是基于HTTP,XML,RPC协议为基础的,这些协议具有平台无关性,比如HTTP协议的80端口可以穿透防火墙到任何系统,XML对数据和请求进行封装通过HTTP传送到各个系统。 2.6 案例五--企业应用信息集成 2.6.1 问题 某个专门从事IT产品的信息报道与网上交易业务的垂直型电子商务市场,经过约一年多的运营已初步积累了一定的经验,在同行业中开始有了一定的知名度。 该市场的信息系统原来由“产品信息发布”、“产品动态报价”、“网上交易”和“网上财务资金结算”等子系统组成,各个子系统的工作相对已比较稳定。但是也已经发现了信息来源过于分散,数据有时不大一致,不少信息利用效率相当低等一些问题。 市场的信息技术主管赵总在分析了该市场的运作情况后,认为应当根据国外先进的电子商务市场的经验与技术,进一步开发一个“信息集成系统”。 (1)信息集成系统的主要目标。 对本市场目前已涉及到的有关IT产品各种来源的基本数据、信息与有关资料进行集成化管理,并且能提供相应的网上服务,其目标是逐步建立起有关IT产品的信息交流、服务、辅助监控管理,以及决策分析的一个相对完整的体系。 提高市场的服务质量和管理水平,吸引更多的供应商与采购者进入并使用本市场。 (2)新的信息集成系统的基本总体构架。 ①充分利用该市场原有的开放式的异构平台,采用的是各类UNIX或Linux操作系统,37 解题方法与技巧精解1-应对新技术类型的问题 ??? 在充分发挥其作用的基础上加以扩充与升级。 ②基于Internet/Intranet的网络体系结构,有保证系统可扩性、可靠性与安全性等方面的相应措施。 ③实现强有力的OA办公自动化系统和邮件系统,能分别规范好市场管理层、市场内部使用层和市场外部用户进行信息共享的级别与权限。 ④基于某个名牌的DBMS(如DB2,Oracle,Sybase等)构建集成化的MIS系统,并且 进一步采用基于SAS的数据统计、分析与决策系统。 根据总体构架要求,系统将由“OA系统”、“集成化的MIS系统”、“数据处理与分析系统”和“网络管理系统”四大部分所组成。 [问题1] 赵总指出在原来的系统中,某些产品的价格行情报表,以及统计分析数据与图形的实时性太差,应当充分利用强大的数据库的能力,真正实现“动态”显示的功能。 你认为应当采用哪些主要技术?请你用50字以内的文字,简要列举相应技术的名称。 [问题2] 通过市场内管理人员、技术人员和协作的软硬件公司的共同努力,经过三个月的艰苦奋斗,初步建立了一个“信息集成系统”的原型,在此原型中已采用了SAS软件作为统计分析数据处理的主要平台。但是,赵总认为目前在SAS平台上的应用程序能力远没有得到充分的发挥。 请你用100字以内的文字简要指出,原型系统未能发挥SAS应用能力的根本原因是什么? [问题3] 信息对于电子商务垂直市场是至关重要的,信息的集中与有效管理对信息的再利用而言由于试题中已经明确系统是“基于某个名牌的DBMS(如DB2,Oracle,Sybase等)构建集成化的MIS系统”,所以又否决了PHP相关技术。事实上,在关键应用38 中,一定要用

??? 第 8讲 计算机数值表示与非数值表示 更是十分关键的基础工作,赵总认为在搞好信息集成的同时应该重视应用的集成,他指出有可能采用多种方式进行本市场内各类应用的集成。 比如: (1)采用多种“数据连接器”(Connectors),在原有的常规构架基础上使用传统方式进行数据集成,即由数据源提取出数据,经过变换与处理,然后用于更新目标数据。 (2)在应用接口级上链接业务处理的过程与数据。即由开发人员通过定制或套装,经由应用程序所提供的应用接口实施应用集成。 (3)在构件(component)级共享整个市场内的业务逻辑。事实上是使各类“应用服务”尽可能地被共享。 (4)利用“用户界面”作为集成的基础。这时,开发人员可通过对用户界面的程序化的访问,使各个相应的业务处理过程连接在一起,充分利用现有的处理逻辑。 如果该市场已选用了一个优秀的基于“构件”的开发环境,为了使该市场中不同的应用可以透明地进行通信和访问共享信息,请你用100字以内文字,简要地以提纲方式列举出该市场实现“应用集成”的基本步骤。 2.6.2 背景知识与解题分析 这是一道关于企业信息系统中信息集成与应用集成的策略和步骤的试题,有关企业应用集成技术。 问题1要求考生回答,采用什么技术来实现数据的动态显示。 我们首先想到的就是ASP。但是,由于试题已经明确系统是“基于UNIX或Linux的平台”,所以否决了这个方案,因为ASP技术只适用于Windows平台。那么就只能使用JSP相关技术或者PHP相关技术了。 JSP技术的组合通常有基于Java技术的DBMS+JDBC或ODBC数据库访问接口技术+应 39 在本题

解题方法与技巧精解1-应对新技术类型的问题 ??? 用服务器和Web服务器端的Servlet或JSP(JavaServerPages)+客户端Browser处的Javaapple技术。PHP技术的组合通常有MySQL数据库+ApacheWeb服务器与服务器端的PHP技术+客户端Browser。 问题2要求考生说出原型系统未能发挥SAS应用能力的根本原因,那么首先需要了解SAS是什么? SAS(Statistical Analysis System)是一个用来管理分析数据和编写报告的组合软件系统,主要由两大部分组成,分别是系统管理程序和过程库与程序库。 SAS系统管理程序主要用于统一管理与控制系统的过程库和程序库,提供操作界面。过程库与程序库包括窗口显示管理程序、远程通信过程及各种统计分析模块,其模块主要有SAS/BASE数据管理与基本统计模块、SAS/STAT统计分析模块和SAS/GRAPH绘图模块。 SAS是统计分析软件,属于大型集成软件应用系统,包括数据访问、数据管理、统计分析、结果呈现和应用开发等功能。SAS系统具有良好的软件环境、多窗口操作环境和显示方式、功能强、应用面广、信息存储方式简便灵活等特点,特别适合于统计数据、分析数据与决策支持的用途。 根据以上介绍,我们可以知道,仅当数据库的各类应用程序得到有效地长期应用和深入地积累数据之后,才能使SAS平台应用发挥更大的作用,并在深层次的统计分析与决策中产生真正的巨大效益。 2.6.3 参考答案 [问题1] 基于Java技术的DBMS+JDBC或ODBC数据库访问接口技术+应用服务器和Web服务器端的Servlet或JSP技术+客户端Browser处的Java applet技术等。 [问题2] 40

本文来源:https://www.bwwdw.com/article/n3v3.html

Top