学系统集成项目管理工程师(中项)系列24b_信息系统集成专业技术知识(下)

发布时间 2023-05-23 07:34:32作者: 躺柒

1. 面向对象系统分析与设计

1.1. 基本概念

1.1.1. 对象

1.1.1.1. 【19下选12】

1.1.1.2. 构成系统的基本单位

1.1.1.3. 包含三个基本要素,分别是对象标识、对象状态和对象行为

1.1.2. 类

1.1.2.1. 对象是类的实例

1.1.2.2. 类是对象的模板

1.1.2.3. 现实世界中实体的形式化描述

1.1.2.3.1. 【20下选13】

1.1.3. 抽象

1.1.4. 封装

1.1.5. 继承

1.1.5.1. 【22下选12】

1.1.5.2. 类之间的层次关系(父类与子类)

1.1.6. 多态

1.1.6.1. 【21上选13】

1.1.6.1.1. 【19上选15】
1.1.6.1.2. 【22上选13】

1.1.6.2. 使得在多个类中可以定义同一个操作或属性名,并在每个类中可以有不同的实现

1.1.7. 接口

1.1.7.1. 【21下选13】

1.1.7.2. 描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做

1.1.8. 消息

1.1.8.1. 体现对象间的交互,通过它向目标对象发送操作请求

1.1.9. 组件

1.1.9.1. 软件系统可替换的、物理的组成部分,封装了模块功能的实现

1.1.9.2. 可以跨平台

1.1.9.2.1. 【21上选16】

1.1.9.3. 实现了某些功能的、 有输入输出接口的黑盒子

1.1.9.4. CORBA (Common Object Request Broker Architecture, 公共对象请求代理架构)是 OMG 组织制订的一种标准的面向对象的应用程序架构规范

1.1.9.5. 与语言本身没有任何关系

1.1.10. 复用

1.1.10.1. 将已有的软件及其有效成分用于构造新的软件或系统

1.1.10.2. 组件技术是软件复用实现的关键

1.1.11. 模式

1.1.11.1. 描述了一个不断重复发生的问题,以及该问题的解决方案

1.1.11.2. 包括特定环境、问题和解决方案三个组成部分

1.2. 统一建模语言(Unified Modeling Language,UML)

1.2.1. 对软件进行可视化描述、构造和建立软件系统的文档

1.2.2. 一种可视化的建模语言,而不是编程语言

1.2.3. 比较适合用于迭代式的开发过程

1.2.4. 用例图(Use Case Diagram)、类图(Class Diagram)、对象图(Object Diagram)、组件图(Component Diagram)、部署图(Deployment Diagram)、状态图(State Diagram)、序列图(Sequence Diagram)、协作图(Collaboration Diagram)、活动图(Activity Diagram)

1.2.5. RUP(Rational Unified Process)

1.2.5.1. 使用面向对象技术进行软件开发的最佳实践之一,是软件工程的过程

1.3. 面向对象系统分析

1.3.1. 用例模型、类-对象模型、对象-关系模型和对象-行为模型

1.4. 面向对象系统设计

1.4.1. 软件基础架构(概要设计)和完整的类结构(详细设计)

1.4.2. 用例设计、类设计和子系统设计

2. 软件架构

2.1. 管道/过滤器模式

2.1.1. 体现了各功能模块高内聚、低耦合的“黑盒”特性,支持软件功能模块的重用,便于系统维

2.1.1.1. 【19下选13】

2.1.2. 每个过滤器自己完成数据解析和合成工作(如加密和解密),易导致系统性能下降,并增加了过滤器具体实现的复杂性

2.1.3. 典型应用是批处理系统

2.1.3.1. 【22下选13】

2.2. 面向对象模式

2.2.1. 基于组件的软件开发(Component-Based Development,CBD)

2.3. 事件驱动模式

2.3.1. 组件并不直接调用操作,而是触发一个或多个事件

2.3.1.1. 即触发事件会导致另一组件中操作的调用

2.3.2. 各种图形界面应用

2.4. 分层模式

2.4.1. 采用层次化的组织方式,每一层都为上一层提供服务,并使用下一层提供的功能

2.4.2. 分层通信协议

2.4.2.1. ISO/OSI的七层网络模型

2.4.3. 通用应用架构的基础模式

2.5. 客户/服务器模式(Client/Server,C/S)

2.5.1. 基于资源不对等,为实现共享而提出的模式

2.5.2. 三层(多层)C/S模式,即多层应用架构

2.5.3. 浏览器/服务器(Browser/Server,B/S)模式

2.6. 软件架构分析与评估

2.6.1. 【21上选14】

2.6.2. 数据库的选择问题

2.6.2.1. 关系数据库

2.6.3. 用户界面选择问题

2.6.3.1. HTML/HTTP (S)协议是实现Internet应用的重要技术

2.6.4. 灵活性和性能问题

2.6.5. 技术选择的问题

2.6.6. 人员的问题

2.7. 软件中间件

2.7.1. 【19下选15】

2.7.1.1. 【22上选15】

2.7.2. 位于硬件、操作系统等平台和应用之间的通用服务

2.7.3. 解决了分布系统的异构问题

2.7.4. 数据库访问中间件

2.7.4.1. 【20下选14】

2.7.4.2. Windows平台的ODBC和Java平台的JDBC

2.7.5. 远程过程调用中间件(Remote Procedure Call,RPC)

2.7.6. 面向消息中间件(Message-Oriented Middleware,MOM)

2.7.6.1. 利用高效可靠的消息传递机制进行平台无关的数据传递,并可基于数据通信进行分布系统的集成

2.7.6.2. IBM的MQSeries

2.7.6.2.1. 【19上选16】

2.7.7. 分布式对象中间件

2.7.7.1. OMG的CORBA、Java的RMI/EJB、Microsoft的DCOM

2.7.8. 事务中间件

2.7.8.1. 事务处理监控器(Transaction Processing Monitor,TPM)

2.7.8.2. 提供支持大规模事务处理的可靠运行环境

2.7.8.3. IBM/BEA的Tuxedo

2.8. 典型应用集成技术

2.8.1. 数据库与数据仓库技术

2.8.1.1. 操作型处理

2.8.1.1.1. 事务处理

2.8.1.2. 分析型处理

2.8.1.2.1. 管理人员的决策分析

2.8.1.3. 数据仓库(Data Warehouse)

2.8.1.3.1. 一个面向主题的(Subject Oriented)、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策
2.8.1.3.1.1. 【20下选15】

2.8.1.3.1.1.1. 【22下选14】

2.8.1.3.2. 存放在数据仓库中的数据一般不再修改
2.8.1.3.3. 对多个异构数据源(包括历史数据)的有效集成
2.8.1.3.3.1. 【19上选17】

2.8.1.4. 大数据(Big Data)

2.8.1.4.1. Volume(数据量大)、Variety(数据类型繁多)、Velocity(处理速度快)、Value(价值密度低)、Veracity(真实性高)

2.8.1.5. 前端工具有:查询工具、 报表工具、 分析工具、 数据挖掘工具

2.8.1.5.1. 【21上选15】

2.8.2. Web Services技术

2.8.2.1. 一种松散的、粗粒度的分布计算模式,使用标准的HTTP (S)协议传送XML表示及封装的内容

2.8.2.2. 用于传递信息的简单对象访问协议(Simple Object Access Protocal,SOAP)

2.8.2.3. 用于描述服务的Web服务描述语言(Web Services Description Language,WSDL)

2.8.2.4. 用于Web服务注册的统一描述、发现及集成(Universal Description Discovery and Integration,UDDI)

2.8.2.4.1. 【22下选15】

2.8.2.5. 用于数据交换的XML

2.8.2.6. 主要目标是跨平台的互操作性

2.8.2.6.1. 跨越防火墙、应用程序集成、B2B集成、软件重用

2.8.2.7. 不适合使用Web服务的情况包括:单机应用程序、局域网上的同构应用程序等

2.8.3. JavaEE架构

2.8.3.1. 组件(Component)

2.8.3.1.1. 表示应用逻辑的代码

2.8.3.2. 容器(Container)

2.8.3.2.1. 组件的运行环境

2.8.3.3. 服务

2.8.3.3.1. 【20下选16】
2.8.3.3.2. 应用服务器提供的各种功能接口,可以同系统资源进行交互

2.8.3.4. 业界标准

2.8.4. .NET架构

2.8.4.1. 通用语言运行环境(Common Language Runtime)

2.8.5. 软件引擎技术

2.8.5.1. 是系统的核心组件,目的是封装某些过程方法,使得在开发的时候不需要过多地关注其具体实现,从而可以将关注点聚焦在与业务的结合上

2.8.5.2. 工作流程引擎是工作流管理系统的运行和控制中心

2.8.5.2.1. 主要功能是流程调度和冲突检测

2.8.6. 组件技术

2.8.6.1. 利用某种编程手段,将一些人们所关心的,但又不便于让最终用户去直接操作的细节进行封装,同时实现各种业务逻辑规则,用于处理用户的内部操作细节

2.8.6.2. 微软的COM/DCOM/COM+、OMG的CORBA及Java的RMI/EJB