求其服务。
多态性:多态性是指同一个操作作用于不同的对象时可以有不同的解释,并产生不同的执行结果。
2)统一建模语言
统一建模语言(UML)是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。
UML的结构:UML的结构包括基本构造块、支配这些构造块如何放在一起的规则(体系架构)和一些运用于整个UML的机制。
? UML有三种基本的构造块,分别是事物(thing)、关系(relationship)
和图(diagram)。
? 公共机制是指达到特定目标的公共UML方法,主要包括规格说明(详
细说明)、修饰、公共分类(通用划分)和扩展机制四种。
? 规则,UML用于描述事物的语义规则分别为事物、关系和图命名。5个
系统视图:逻辑视图、进程视图、实现视图、部署视图、用例视图。
2.10 构件与软件复用
构件(component,组件)是一个功能相对独立的具有可重用价值的软件单元。在面向对象方法中,一个构件由一组对象构成,包含了一些协作的类的集合,它们共同工作来提供一种系统功能。
1)软件复用
可重用性是指系统和(或)其组成部分在其他系统中重复使用的程度。 系统的软件重用由可重用的资产(构件)的开发、管理、支持和重用4个过程。
2)构件技术
构件是软件系统可替换的、物理的组成部分,它封装了实现体(实现某个职能),并提供了一组接口的实现方法。
为了将不同软件生产商在不同软硬件平台上开发的构件组装成一个应用系统,必须解决异构平台的各构件间的互操作问题,目前已出现了一些支持互操作
10
的构件标准,3个主要流派为:
? OMG的CORBA(Common Object Request Broker Architecture,公共
对象请求代理);
? Microsoft 的COM(Component Object Model,构件对象模型)和DCOM
(Distributed Component Object Model,分布式构件对象模型); ? Sun的EJB(Enterprise JavaBean,企业JavaBean)。
2.11 软件体系结构
软件体系结构(Software architecture,软件架构)为软件系统提供了一个结构、行为和属性的高级抽象,有构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。
软件体系结构试图在软件需求与软件设计之间架起一座桥梁,着重解决软件系统的结构和需求向实现平坦地过渡的问题。
1)软件体系结构建模
软件体系结构建模的首要问题是如何表示软件体系结构,即如何对软件体系结构建模。根据建模的侧重点不同,可以将软件体系结构的模型分为5种,分别是结构模型、框架模型、动态模型、过程模型、功能模型。其中最常用的是结构模型和动态模型。
2)软件体系结构风格
典型的软件体系结构风格有:分层结构、客户/服务器 3)设计模式
MVC(Model-View-Controller,模型-视图=控制器)框架包括3个抽象类:View抽象类、Controller抽象类、 Model抽象类。
第3章 系统集成相关技术
本章知识点:Web Service技术、J2EE架构、.NET架构和工作流技术。
3.1 企业应用集成
11
企业应用集成(Enterprise Application Integration,EAI)是企业信息系统集成的科学、方法和技术,目的是将企业内的应用彼此连接起来,或在企业之间连接起来。EAI主要包括两个方面:企业内部应用集成和企业间应用集成。
1)企业内部应用集成
企业内部的应用集成就是要解决企业内部业务流程和数据流量,包括业务流程是否进行自动流转,或怎样流转,以及业务过程的重要性。
从应用和技术上综合考虑,EAI分为界面集成、平台集成、数据集成、应用集成、和过程集成。
2)企业间应用集成
EAI使得应用集成架构里的客户和业务伙伴,都可以通过集成供应链的所有应用和数据库实现信息共享。
3)集成模式
目前市场主流的集成模式有三种:面向信息的集成技术、面向过程的集成技术、面向服务的集成技术。
3.2 中间件技术
中间件有两种比较认可的定义:
? 在一个分布式系统环境中处于操作系统和应用程序之间的软件。 ? 中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软
件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算机资源和网络通信。 1)中间件的功能
中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同的系统软件上的移植而重复工作,从而大大减少了技术上的负担。
2)中间件的分类
从层次上划分,可分为底层型中间件、通用型中间件、集成型中间件。 ? 底层型中间件代表产品有Sun的JVM和微软的CLR;
? 通用型中间件代表产品有BEA的Weblogic和IBM的MQSeries;
12
? 集成型中间件代表产品有Weblogic和IBM的WebSphere。
3.3 可扩展标记语言
XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识。
1)XML简介
? 实现不同数据的集成 ? 使用于多种应用环境 ? 客户端数据处理与计算 ? 数据显示多样化 ? 局部数据更新 2)XML相关技术
XML相关技术主要有3个:Schema、XSL和XLL(eXtensible Link Language,可扩展连接语言)
3.4 Web服务
Web Service(Web服务)是解决应用程序之间相互通信的一项技术。严格地说,Web服务是描述一系列操作的接口,它使用标准的、规范的XML描述接口。
1)Web服务模型
在Web服务模型的解决方案中,一共有三种工作角色:服务提供者、服务请求者、服务注册中心(可选)。
Web服务模型中的操作包括三种:发布服务描述、查找服务描述、根据服务描述绑定或调用服务。
2)Web服务协议堆栈 SOAP、WSDL、UDDI 3)实现SOA的技术
在采用Web服务作为SOA的实现技术时,系统应该至少分为6个层次:
13
底层传输层、服务通信协议层、服务描述层、服务层、业务流程层和服务注册层。
3.5 J2EE与.NET平台
要求掌握J2EE(Java 2 Platform,Enterprise Edition,Java 2平台企业版)和.NET平台的区别,以及各自的应用场合。
1)J2EE的核心技术
? EJB。EJB是Java服务器的构件模型。 ? JDBC。JDBC是Java语言连接数据库的标准。 ? Java Servlet (Java服务器端小程序)。 ? JSP(Java Server Page,Java服务器页面)。 ? JMS(Java Message Service,Java消息服务)。
? JNDI(Java Naming and Directory Interface,Java命名目录接口)。 ? JTA(Java Transaction API,Java事务API)。 ? Java Mail API(Java邮件API)。 ? JAXP(Java XML 解析API)。
? JCA(J2EE Connector Architecture,J2EE连接架构)。
? JAAS(Java Authentication Authorization Service,Java认证和授
权服务)。
2).NET平台
Microsoft .NET平台包括5个部分:
? 操作系统
? .NET Enterprise Servers ? .NET Building Block Services ? .NET Framework ? Visual Studio .NET 3)比较分析
这两个平台都是为了解决构建企业计算等大型平台而出现的。两个平台类似之处远多于相异之处。
.NET的语言选择范围相当大,J2EE只能选择Java语言。
14