导图社区 第3章 信息系统集成专业技术知识
中级系统集成考试教程第3章 信息系统集成专业技术知识,对准备考系统集成中级的同学非常实用
编辑于2022-06-20 16:51:09第3章 信息系统集成专业技术知识
信息系统建设
信息系统的生命周期
立项阶段
也叫概念或需求阶段
这一阶段根据用户业务发展和经营管理的需要,提出建设信息系统的初步构想
对企业信息系统的需求进行深入调研和分析,形成《需求规格说明书》并确定立项
开发阶段
以立项阶段所做的需求分析为基础,进行总体规划
之后,通过系统分析、系统设计、系统实施、系统验收等工作实现并交付系统
运维阶段
信息系统通过验收,正式移交给用户后,进入运维阶段
要保证系统正常运行,系统维护是一项必要的工作
系统的运行维护可分为更正性维护、适应性维护、完善性维护、预防性维护等类型
消亡阶段
信息系统不可避免地会遇到系统更新改造、功能扩展,甚至废弃重建等情况
在信息系统建设的初期就应该注意系统消亡条件和时机,以及由此而花费的成本
信息系统开发方法
结构化方法
把整个系统的开发过程分为若干阶段,然后依次进行,前一阶段是后一阶段的工作依据,按顺序完成
每个阶段和主要步骤都有明确详尽的文档编制要求,并对其进行有效控制
结构化方法的特点是注重开发过程的整体性和全局性
缺点是开发周期长,文档、设计说明繁琐、工作效率低,要求在开发之初全面认识系统的需求
原型法
其认为在无法全面准确地提出用户需求的情况下,并不要求对系统做全面、详细的分析,而是基于对用户需求的初步理解
先快速开发一个原型系统,然后通过反复修改来实现用户的最终系统需求
原型法的特点在于其对用户的需求是动态响应、逐步纳入的
系统分析、设计与实现都是随着对原型的不断修改而同时完成的,相互之间并无明显界限,也没有明确分工
原型可以分为抛弃型原型和进化原型
面向对象方法
主要
设计分析、设计和实现三个阶段
其特点是在整个开发过程中使用的是用一套工具
信息系统设计
方案设计
系统总体设计,包括系统的总体架构方案设计、软件系统的总体架构设计、数据存储的总体设计、计算机和网络系统的方案设计
系统详细设计:包括代码设计、数据库设计、人/机界面设计、处理过程设计等
系统架构
设备、DBMS及技术选型
软件工程
软件需求分析及定义
软件需求是针对待解决问题的特性的描述
所定义的需求必须可以被验证
在资源有限时,可以通过优先级对需求进行权衡
软件设计、测试与维护
软件设计
软件架构设计和软件详细设计两个阶段
软件测试
分为单元测试、集成测试和系统测试三个阶段
软件维护
更正性维护:更正交付后发现的错误
适应性维护:使软件产品能够在变化后或变化中的环境中继续使用
完善性维护:改进交付后产品的性能和可维护性
预防性维护:在软件产品的潜在错误成为实际错误前,检测并更正它们
软件质量保证及质量评价
软件质量保证
通过制订计划、实施和完成等活动保证项目生命周期中的软件产品和过程符合其规定的要求
验证与确认
确定某一活动的产品是否符合活动的需求,最终的软件产品是否达到其意图并满足用户需求
评审与审计
包括管理评审、技术评审、检查、走查、审计等
软件配置管理
软件配置管理活动包括:软件配置管理计划、软件配置标识、软件配置控制、软件配置状态记录、软件配置审计、软件发布管理与交付等活动
软件过程管理
项目启动与范围定义:启动项目并确定软件需求
项目规划:制订计划,其中一个关键点是确定适当的软件生命周期过程,并完成相关的工作
项目实施:根据计划,并完成相关的工作
项目监控与评审:确认项目工作是否满足要求,发现问题并解决问题
项目收尾与关闭:为了项目结束所做的活动。需要项目验收并在验收后进行归档、事后分析和过程改进等
软件开发工具
软件需求工具包括需求建模工具和需求追踪工具
软件设计工具包括软件设计创建和检查工具
软件构造工具包括程序编辑器、编译器、代码生成器、解释器、调试器
软件测试工具包括测试生成器、测试执行框架、测试评价工具、测试管理工具
性能分析工具
软件维护工具包括理解工具(如可视化工具)和再造工具(如重构工具)
软件配置管理工具包括追踪工具、版本管理工具和发布工具
软件工程管理工具包括项目计划和追踪工具、风险管理工具和度量工具
软件工程工具包括建模工具、管理工具、软件开发环境
软件质量工具包括检查工具和分析工具
软件复用
软件复用是指利用已有软件的各种有关知识构造新的软件,以缩减软件开发和维护的费用
复用是提高软件生产力和质量的一种重要技术
软件复用的主要思想是,将软件看成是由不同功能的“组件”所组成的有机体
面向对象系统分析与设计
概念
面向对象的基本概念包括对象、类、抽象、封装、继承、多态、接口、消息、组件、复用和模式等
对象
由数据及其操作所构成的封装体,是系统中用来描述客观事务的一个模块,是构成系统的基本单位
对象包含三个基本要素,分别是对象标识、对象状态和对象行为
类
现实世界中实体的形式化描述,类将该实体的属性(数据)和操作(函数)封装在一起
类和对象的关系可理解为,对象是类的实例,类是对象的模板
抽象
通过特定的实例抽取共同特征以后形成概念的过程
封装
面向对象封装是将数据和基于数据的操作封装成一个整体对象,对数据的访问或修改只能通过对象对外提供的接口进行
继承
表示类之间的层次关系(父类与子类),这种关系使得某类对象可以继承另一类对象的特征,继承又可分为单继承和多继承
多态
多态使得某个属性或操作在不同的时期可以表示不同类的对象特征
接口
描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做
消息
体现对象间的交互,通过它向目标对象发送操作请求
组件
表示软件系统可替换的、物理的组成部分,封装了模块功能的实现
复用
指将已有的软件及其有效成分用于构造新的软件或系统
组件技术是软件复用实现的关键
模式
描述一个不断重复发生的问题,以及该问题的解决方案
包括特定环境、问题和解决方案三个组成部分
统一建模语言与可视化建模
统一建模语言(UML)
用于对软件进行可视化描述、构造和建立软件系统的文档
在UML中,使用各种不同的符号元素画成图形,用以表示系统的结构和行为
UML图提供了对系统进行建模的描述方式,主要包括:用例图、类图、对象图、组件图、部署图、状态图、序列图、协作图、活动图
面向对象系统分析
面向对象系统分析运用面向对象方法分析问题域,建立基于对象、消息的业务模型
面向对象系统分析的模型由用例模型、类-对象模型、对象-关系模型和对象-行为模型组成
面向对象系统设计
面向对象系统设计基于系统分析得出的问题域模型,用面向对象方法设计出软件基础架构(概要设计)和完整的类结构(详细设计),以实现业务功能
面向对象系统设计主要包括用例设计、类设计和子系统设计
软件架构
软件架构模式
管道/过滤器模式
体现了各功能模块的高内聚、低耦合的“黑盒”特性,支持软件功能模块的重用,便于系统维护
面向对象模式
事件驱动模式
触发一个或多个事件
分层模式
客户/服务器模式
适用于分布式系统
软件架构分析与评估
需要考虑如下几个问题
数据库的选择问题
用户界面选择问题
灵活性和性能问题
技术选择的问题
人员的问题
软件中间件
中间件是位于硬件、操作系统等平台和应用之间的通用服务
解决了分布系统的异构问题
中间件服务具有标准的程序接口和协议
通常将中间件分为数据库访问中间件、远程过程调用中间件、面向消息中间件、事务中间件、分布式对象中间件
典型应用集成技术
数据库与数据仓库技术
数据仓库
是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策
数据仓库系统结构
Web Services技术
Web服务的典型技术包括:用于传递信息的简单对象访问协议、用于描述服务的Web服务描述语言、用于Web服务注册的统一描述、发现及集成、用于数据交换的XML
Web服务的主要目标是跨平台的互操作性
JavaEE架构
JavaEE应用服务器运行环境主要包括组件、容器及服务三部分
.NET架构
软件引擎技术
软件引擎通常是系统的核心组件,目的是封装某些过程方法,是的在开发的时候不需要过多地关注其具体实现
计算机网络知识
具体参见思维导图【系统集成-计算机网络知识】
新兴信息技术
云计算
概念
云计算是指基于互联网的超级计算模式,通过互联网来提供大型计算能力和动态易扩展的虚拟化资源
特点
超大规模
虚拟化
高可靠性
通用性
高可扩展性
按需服务
及其廉价
潜在的危险性
云计算架构
基础设施即服务IaaS
指消费者通过Internet可以从云计算中心获得完善的计算机基础设施服务
平台即服务PaaS
指为云计算上各种应用软件提供服务的平台应用,其作用类似于个人计算机的操作系统
软件即服务SaaS
是一种通过Internet提供软件的模式,用户无需购买软件,而是向提供商租用基于Web的软件,来管理企业经营活动
云计算应用
从服务层次来看,云计算的应用可分为基础设施即服务IaaS、平台即服务PaaS、软件即服务SaaS3个层次
从应用范围来看,云计算又可分为公有云、私有云和混合云
物联网
概念
物:客观世界的物品,主要包括人、商品、地理环境等
联:通过互联网、通信网、电视网以及传感网等实现网络互联
网:有线和无线;能达到数据传输的目的即可
物联网架构
感知网
负责信息采集和物物之间的信息传输,信息采集的技术包括传感器、条码和二维码、RFID射频技术、音频等多媒体信息
信息传输包括远近距离数据传输技术、自组织网技术、协同信息处理技术、信息采集中间件技术等传感器网络
网络层
是利用无线和有线网络对采集的数据进行编码、认证和传输
应用层
提供丰富的基于物联网的应用,是物联网发展的根本目标
移动互联网
大数据
大数据关键技术
HDFS
适合运行在通用硬件上的分布式文件系统,是一个高度容错性的系统,适合部署在廉价的机器上
HBase
是一个分布式的、面向列的开源数据库
MapReduce
是一种编程模型,用于大规模数据集(大于1TB)的并行运算
Chukwa
是一个开源的用于监控大型分布式系统的数据收集系统