### 武汉理工大学软件构件与中间件重点复习指南 #### 英文缩写与概念解析 1. **SOA(Service-Oriented Architectures)**:面向服务的体系架构是一种设计模式,它将应用程序的不同功能单元(称为服务)通过定义良好的接口和契约联系起来。这些接口是基于某种通信协议(通常是HTTP)的,可以被其他服务发现和调用。SOA的核心理念在于提高系统的可复用性、灵活性和互操作性。 2. **SOAP(Simple Object Access Protocol)**:简单对象访问协议是一种基于XML的消息交换协议,用于在分布式环境中传递结构化的数据。SOAP通常用于实现SOA中的服务间通信,支持远程过程调用(RPC)风格的服务交互。 3. **SA (Software Architecture)**:软件架构是指软件系统的设计,包括其主要组成部分、这些部分之间的关系以及指导系统设计的原则。软件架构决定了系统的主要结构和行为特征。 4. **RPC(Remote Procedure Call)**:远程过程调用是一种允许程序调用位于不同地址空间上的另一个程序的过程或函数的技术。通常用于实现分布式系统中的服务调用。 5. **WSDL(Web Service Description Language)**:Web服务描述语言是一种基于XML的语言,用于描述网络服务的功能和服务端点的细节。WSDL文档通常包含服务的抽象定义、具体的绑定细节以及如何查找服务的信息。 6. **WS-CDL (Choreography Description Language)**:编排描述语言是一种用于描述Web服务之间交互流程的语言。它侧重于服务间的协调而非单个服务的行为。 7. **WMS (Workflow Management System)**:工作流管理系统是一种用于管理业务流程中任务流转的软件系统。它可以自动处理业务流程中的任务分配、状态跟踪等管理工作。 8. **WSFL (Web Services Flow Language)**:Web服务流语言是一种用于定义业务流程中服务调用顺序的语言。 9. **UDDI(Universal Description, Discovery and Integration)**:通用描述、发现和集成是一种基于XML的标准,用于发布、查找和集成Web服务。UDDI注册中心提供了服务提供商和消费者之间发现服务的途径。 10. **BOF (Business Object Facility)**:业务对象设施是一种用于封装业务逻辑的对象模型。BOF通常包含一系列代表特定业务领域的类和接口。 11. **BPEL=WS-BPEL=BPEL4WS (Business Process Execution Language for Web Services)**:这是一种用于定义Web服务组合的标准语言。BPEL使得能够以一种标准化的方式描述复杂的业务流程。 12. **BPMN (Business Process Modeling Notation)**:业务流程建模符号是一种图形化表示法,用于绘制业务流程图。BPMN提供了统一的符号集来描述各种类型的业务流程。 13. **BDK (Beans Development Kit)**:Bean开发工具包是一种用于开发JavaBeans组件的工具包。JavaBeans是一种遵循特定编码规范的Java类,主要用于创建可重用的组件。 14. **BPEL (Business Process Execution Language)**:见上文解释。 15. **CBSE (Component-Based Software Engineering)**:基于组件的软件工程是一种软件开发方法,强调使用预构建的组件来构建系统。这种方法旨在提高开发效率并降低维护成本。 16. **CORBA Component Model (CCM)**:CORBA组件模型是一种用于构建CORBA应用程序的组件模型。它提供了一种标准的方式来创建、管理和部署CORBA组件。 17. **COM (Component Object Model)**:组件对象模型是一种用于定义软件组件的接口标准。COM是微软推出的一种技术,广泛应用于Windows平台上的软件开发。 18. **CORBA (Common Object Request Broker Architecture)**:公共对象请求代理架构是一种跨语言、跨平台的中间件标准,用于实现分布式对象之间的通信。 19. **CWM (Common Warehouse Model)**:通用仓库模型是一种用于描述数据仓库的数据模型。CWM由对象管理组织(OMG)定义,旨在为数据仓库提供一个统一的框架。 20. **CGI (Common Gateway Interface)**:通用网关接口是一种标准,用于定义Web服务器与外部应用程序之间的通信方式。CGI允许外部程序生成动态网页内容。 21. **Interface Definition Language (IDL)**:接口定义语言是一种用于定义对象接口的语言。IDL常用于CORBA等分布式对象技术中,以确保不同编程语言之间的互操作性。 22. **IOR (Interoperable Object Reference)**:可互操作对象引用是一种用于标识CORBA对象的唯一名称。IOR包含了对象的位置和访问信息。 23. **IIOP (Internet Inter-ORB Protocol)**:互联网ORB协议是一种用于在不同的ORB(对象请求代理)之间传输消息的协议。IIOP是CORBA的一部分,用于实现跨ORB的通信。 24. **Portable Object Adapter (POA)**:可移植对象适配器是一种CORBA组件,用于将对象映射到ORB的命名和位置服务中。POA使得开发者可以编写独立于ORB实现的应用程序。 25. **EJB (Enterprise JavaBeans)**:企业JavaBeans是一种JavaEE规范,用于定义企业级应用程序中的组件模型。EJB提供了一种标准的方式来创建可移植的企业组件。 26. **OCL (Object Constraint Language)**:对象约束语言是一种用于定义模型元素之间约束的语言。OCL常用于UML模型中,以确保模型的一致性和完整性。 27. **OMG (Object Management Group)**:对象管理组织是一个国际性的标准制定组织,负责定义和推广面向对象技术的标准,如CORBA和UML。 28. **OMA (Object Management Architecture)**:对象管理架构是一种用于描述对象管理系统结构的模型。OMA定义了对象管理系统中的核心组件及其交互方式。 29. **SFA (Server Framework Adapter)**:服务器框架适配器是一种用于在不同服务器框架之间进行转换的组件。SFA可以帮助实现不同框架之间的兼容性。 30. **MOF (Meta Object Facility)**:元对象设施是一种用于描述元模型的工具。MOF使得能够以一种统一的方式定义和管理元数据。 31. **DTC (Domain Technology Committee)**:领域技术委员会是一个负责制定和推广特定领域技术标准的组织。 32. **QDR (Quality Driven Re-engineer)**:质量驱动的再工程是一种改进现有系统的方法,强调通过对现有系统的深入分析来识别和解决质量问题。 33. **SAAM (Software Architecture Analysis Method)**:软件架构分析方法是一种用于评估软件架构的方法。SAAM帮助识别架构中的潜在问题,并提出改进方案。 34. **ATAM (Architecture Tradeoff Analysis Method)**:架构权衡分析方法是一种用于评估软件架构的性能、可用性、安全性等方面的工具。ATAM帮助开发者在多个目标之间做出最佳决策。 35. **PDM (Product Data Management Enables)**:产品数据管理使能是一种用于管理产品生命周期中的数据和信息的技术。PDM系统支持产品设计、制造、维护等方面的数据管理。 36. **IC (Integrated Circuit)**:集成电路是一种将电路元件集成在一个固体半导体基板上的电子器件。IC是现代电子设备的基础,用于实现复杂的功能。 #### 简答题解析 1. **什么是构件?** 构件是指在软件工程中可重用的代码块或模块。构件可以是一个完整的软件组件,也可以是实现特定功能的模块。构件的设计和开发遵循一定的规范和标准,以便于它们能够在不同的项目中被重复使用。 **构件的构造(开发)方法:** - **构件驱动的结构开发**:这种方法强调在设计阶段考虑构件的选择和集成。设计自由度受到构件特性的限制,但有助于构建出更加可靠且成本较低的系统。 - **结构驱动的构件开发**:在这种方法中,设计的目标是在开发阶段构建或选择具有所需质量属性的组件和连接器。这种方法更侧重于满足特定的设计要求。 2. **构件模型** 构件模型是对构件结构、行为和交互方式的描述。不同的构件模型可能有不同的特点和适用场景,例如CORBA组件模型(CCM)、JavaBeans模型等。 3. **构件框架** 构件框架是一组支持构件开发和使用的基础设施和技术。框架通常包括构件库、开发工具、API接口等,以简化构件的开发和集成过程。 4. **构建组合的不兼容性** 在开发过程中,当独立开发的构件需要组合在一起时,可能会遇到不兼容的问题。这种不兼容性可以分为两种类型: - **接口不兼容(Interface Incompatibility)**:当两个构件的接口定义不一致时,就会出现接口不兼容的情况。这种不兼容性可能是语法上的不兼容(Syntactic Incompatibility),即接口的参数类型、数量等不符合;也可能是语义上的不兼容(Semantic Incompatibility),即虽然接口形式上相同,但实际意义存在差异。 - **语义不兼容(Semantic Incompatibility)**:即使两个构件的接口定义相同,在实际使用中也可能因为含义的不同而导致不兼容。例如,相同的接口在不同的上下文中可能有不同的行为或预期结果。 解决构建组合的不兼容性问题通常需要对构件进行调整或修改,以确保它们能够顺利地协同工作。这可能涉及对构件接口的重新设计、文档的完善以及测试等步骤。 理解和掌握软件构件与中间件的相关概念和技术对于软件工程专业的学生来说至关重要。这些知识点不仅有助于学生掌握当前的软件开发实践,也为他们未来的职业生涯打下坚实的基础。
剩余17页未读,继续阅读
- 沧浪之水NaN2019-04-12打不开,空内容
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助