第二章信息技术知识
一、软件工程
概念:人们开始用工程的方法进行软件的开发、管理和维护,即软件工程。
二、软件需求分析与定义
软件需求:是针对 待解决问题的特性的描述。
定义:是需求必须可以被验证
三、软件设计、测试与维护
(1)软件设计
根据软件需求,产生—个软件内部结构的描述,并将其作为软件构造的基础。软件设计可以划分为软件架构设计(也叫作高层设计)和软件详细设计两个阶段。
(2)软件测试
测试是为了评价和改进产品质量、识别产品的缺陷和问题而进行的活动。测试不再只是一种仅在编码阶段完成后才开始的活动。现在的软件测试被认为是一种应该包括在整个开发和维护过程中的活动,它本身是实际产品构造的—个重要部分。
软件测试可划分为:单元测试、集成测试、系统测试 3个阶段。
(3)软件维护
将软件维护定义为需要提供软件支持的全部活动。
软件维护类型:
- 更正性维护:更正交付后发现的错误;(交付后)
- 适应性维护:使软件产品能够在变化后或变化中的环境中继续使用;
- 完善性维护:改进交付后产品的性能和可维护性;
- 预防性维护:在软件产品中的潜在错误成为实际错误前,检测并更正它们。(杜绝潜在错误)
四、软件质量及评价
(1)软件质量
包括“内部质量”“外部质量”和“使用质量”三部分。(内外使用)
(2)验证过程
软件本身构造正确并符合规范的产品
确认过程:正确的产品满足用户的需求(区分二者)
(3)评审与审计
包括管理评审、技术评审、检查、走查、审计等。
- 管理评审的目的:是监控进展,决定计划和进度的状态,或评价用于达到目标所用管理方法的有效性。
- 技术审计的目的是:评价软件产品以确定其对使用的意图适用性。
- 软件审计的目的是:提供软件产品和过程对于可应用的规则、标准、指南、计划和流程的遵从性的独立评价。
(4)软件配置管理包括(排序:计控审标状发)
- 软件配置管理计划
- 软件配置控制
- 软件配置审计
- 软件配置标识
- 软件配置状态记录
- 软件发布管理和交付
(5)管理过程
- 项目启动与范围定义
- 项目规划
- 项目实施
- 项目监控与评审
- 项目收尾与关闭
(6)复用
概念: 软件复用的主要思想是,将软件看成是由不同功能的“组件”所组成的有机体每—个组件在设计编写时可以被设计成完成同类工作的通用工具。
特点:通用性
五、面向对象系统分析与设计
基本概念:包括对象、类、抽象、封装、继承、多态、接口、消息、组件、复用和模式等。(考选择题 区分)
(1)对象
由数据及其操作所构成的封装体,是系统中用来描述客观事物的—个模块,是构成系统的基本单位。对象包含3个基本要素,分别是对象标识、对象状态和对象行为。(标识、状态、行为)
(2)类
该实体的属性(数据)和操作(函数)封装在一起。(数据和函数封装)
(3)抽象
通过特定的实例抽取共同特征以后形成概念的过程。
(4)封装
将相关的概念组成—个单元模块,并通过—个名称来引用它。
(5)继承
表示类之间的层次关系(父类与子类),这种关系使得某类对象可以继
承另外—类对象的特征,继承又可分为单继承和多继承。
(6)多态
在多个类中可以定义同—个操作或属性名称,并在每个类中可以有不同的体现。
(7)接口
描述对操作规范的说明,其只说明操作应该做什么,并没有定义操作如何做。(描述该做什么,没有定义如何做)告诉目标,没有告诉完成过程
(8)消息
体现对象间的交互,通过它向目标对象发送操作请求。(向目的地发送的请求)
(9)组件
表示软件系统可替换的、物理的组成部分,封装了模块功能的实现。组件应当是内聚的,并具有相对稳定的公开接口。
(10)复用
指将已有的软件及其有效成分用于构造新的软件或系统。组件技术是软件复用实现的关键。
(11)模式
述了一个不断重复发生的问题,以及该问题的解决方案。其包括特定环境、问题和解决方案3个组成部分。
面向对象的系统分析模型(考排除)
- 用例模型
- 类-对象模型
- 对象-关系模型
- 对象-行为模型
面向对象的系统设计(考排除)
- 用例设计
- 类设计
- 子系统设计
面向对象的分析的步骤(考排序)
- 确定对象的类
- 确定结构
- 确定主题
- 确定属性
- 确定方法
六、UML
是建模语言不是编程语言(开发语言)和开发过程
UML比其他面向对象建模方法更强
(1)功能模型
从用户的角度展示系统的功能,包括用例图
(2)对象模型
采用对象、属性、操作、关联等概念展示系统的结构和基础,包括类图、对象图、包图
(3)动态模型
展示系统的内部行为,包括序列图、活动图、状态图
(重点!!!)UML2.0共有13种图形分别为:用例图、类图、对象图、状态图、活动图、顺序图、协作图、构件图、部署图、包图、组合结构图、交互概览图
- 用例图:从用户进度描述系统功能(针对用户)
- 类图:描述系统中类的静态结构(类的静态)
- 对象图:系统中的多个对象在某一时刻的状态(多对象状态)
- 状态图:描述状态到状态的控制流,常用于动态特性建模
- 活动图:描述业务实现用例的工作流程
- 顺序图:对象之间的动态合作关系强调对象发送消息的顺序
- 协作图:描述对象的协助关系
- 构件图:一种特殊的UML图来描述系统的静态实现视图
- 部署图:定义系统中软硬件的物理体系结构
- 包图:对构成系统的模型元素进行分组整理的图
- 组合结构图:表示类或者构建内部结构的图
- 交互概览图:用活动图来表示多个交互之间的控制关系的
七、数据库和数据仓库技术
传统的数据库技术以单一的数据源即数据库为中心,进行事务处理、批处理、决策分析等各种数据处理工作,主要有操作型处理和分析型处理两类。强调处理的晌应时间、数据的安全性和完整性等。
数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。
数据仓库是对多个异构数据源(包括历史数据)的有效集成,集成后按主题重组,且存放在数据仓库中的数据一般不再修改,而数据库一般需要修改。
八、大数据(Big Data 价值是密度低)
特点:5V
- 数据量大(Volume)
- 数据类型繁多(Variety)
- 处理速度快(Velocity)
- 价值密度低(Value)
- 真实性(Veracity)
在技术上大数据必须依托云计算的分布式处理,分布式数据库和云存储虚拟化技术。
- WEB Service 技术
- 用于传递信息的简单对象访问协议(SOAP)
- 用于描述服务的Web服务描述语言(WSDL)
- 用于Web服务注册的统一描述、发现及集成(UDDL)
- 用于数据交换的XML
- 适合使用WebServices的情况包括: 跨越防火墙、应用程序集成、B2B集成、软件重用等。
- 不适合使用Web服务的情况包括: 单机应用程序、局域网上的同构应用程序等。
九、JavaEE
JavaEE开发工作分成两类:业务逻辑开发、表示逻辑开发
JavaEE应用服务器运行环境 主要包括:组件、容器、服务三部分
容器是组件的运行环境,服务是应用服务器提供的各种功能的接口。
十、中间件
概念:是位于硬件、操作系统等平台和应用之间的通用服务。
中间件解决了分布式系统的异构问题。
(重点!!!)中间件分类:数据库访问中间件、远程过程调用中间件、面向消息中间件、事务中间件、分布式对象中间件
(1)数据库访问中间件
通过一个抽象层访问数据库。典型技术如Windows平台的ODBC和Java平台的JDBC等。(访问数据库)
(2)远程过程调用中间件
—种分布式应用程序的处理方法。—个应用程序可以使用RPC来“远程”执行—个位于不同地址空间内的过程从效果上看和执行本地调用相同。(分布式应用程序)
(3)面问消息中间件
提供消息传递和消息队列模型,可在分布环境下扩展进程间的通信,并支持多种通信协议、语言、应用程序、硬件和软件平台。例如MQ
(4)分布式对象中间件
是建立对象之间客户/服务器关系的中间件,结合了对象技术与分布式计算技术。
(5)事务中间件
也称事务处理监控器(TPM)位于客户和服务器之间完成事务管理与协调、负载平衡、失效恢复等任务,以提高系统的整体性能。
十一、计算机网路技术
(1)OSI七层协议必须掌握,每一层有什么协议
-
物理层:该层包括物理连网媒介,具体标准有RS232、V.35、RJ-45、FDDI
单位为bit比特
-
数据链路层:它控制网络层与物理层之间的通信。见的协议有IEEE802.3/.2、HDLC、PPP、ATM。
单位为:帧
-
网络层:其主要功能是将网络地址(IP地址)翻译成对应的物理地址(网卡地址),并决定如何将数据从发送方路由到接收方。具体协议有IP、ICMP、IGMP、IPX、ARP等。
单位为:包
-
传输层:主要负责确保数据可靠、顺序、无错地从A点传输到B点(端到端)。具体协议有TCP、UDP SPX
TCP和UDP负责提供流量控制、错误校验、排序服务。
TCP是一种可靠的、面向连接的,一般用于传输数据量较少的,且对可靠性要求高的场所,效率低。
UDP是一种不可靠的、无连接的协议。一般用于传输数据量大,对可靠性要求不是很高,但是要求速度快的场所,效率高。
-
会话层:负责在网络中的两节点之间建立和维持通信,以及提供交互会话的管理功能。常见 的协议有RPC、SQL、NFS
-
表示层:如同应用程序和网络之间的翻译官。常见的协议有JPEG、ASCII、GIF、DES、MPEG
-
应用层:负责对软件提供接口以使程序能使用网络服务,如事务处理程序、文件传送协议和网络管理等。常见的协议有HTTP、Telnet、FTP、SMTP、NFS 还有TFTP、DHCP、DNS、SNMP
- TFP(文件传输协议)运行在TCP之上,一条用于传送控制信息的(使用21号端口),另外一条用于传送文件内容的(使用20号端口)
- TFTP(简单文件传输协议)建立在UDP之上
- HTTP(超文本传输协议)用于WWW(万维网)服务器传输超文本到本地浏览器的传送协议,建立在TCP之上
- SMTP(简单的邮件传输协议)建立在TCP之上
- DHCP(动态主机配置协议)建立在UDP之上,实现自动分配IP地址的
- TELNET(远程登录协议)是登录和仿真程序,建立在TCP之上
- DNS(域名系统)是实现域名解析的,建立在UDP之上
- SNMP(简单的网络管理协议)建立在UDP之上
IEE802.11无线局域网标准(wifi),IEE802.3(以太网CSMA-CD)
(2) TCP/IP协议
- TCP/IP的层次模型分为4层,其最高层相当于OSI的5~7层。
- TCP/IP的次高层相当于OSI的传输层。
- TCP/IP的第2层相当于OSI的网络层。
- TCP/IP的最底层为网络接口层。
(3)IPV6为128位、16进制
IPV6优点:
- 提供更大的地址空间
- 更简单的头信息,更有效的路由转发
- 128位分8个段,每段16位无符号整数,每段用“:”表示IPV4是32位,每段之间用“.”表示
(4)网络分类
- 根据网络覆盖的地理范围大小进行分类:局域网、城域网和广域网
- 按拓扑结构划分:总线型结构、环型结构、星型结构、树型结构、网状结构
- 网络链路传输控制技术有: 总线争用技术、令牌技术、FDDI技术、ATM技术、帧中继技术和ISDN技术。总线争用技术是以太网的标志。
网络交换常见的有:数据交换、线路交换、报文交换、分组交换
数据交换可分为:电路交换、分组交换(数据包交换)、ATM交换、全光交换和标记交换
Intemet就是数据报网络,单位是Bit,而ATM则用的是虚电路网络,单位是码元。
- 网络接入技术:光纤接入、同轴接入、铜线接入、无线接入
- 光网络技术:光传输技术、光节点技术和光接入技术,它们之间有交叉和融合。
无线通信网络:无线电波作为信息传输媒介,根据应用领域可分为:无线个域网(WPAN)、无线局域网(WLAN)、无线城域网(WMAN)、蜂房移动通信网(WWAN)
5G理论上可在28GHz超高频段以1Gbps的速度传送数据,且最长传送距离可达2公里。
(5)网路的存储结构大致分为
- 直连式存储(DAS)
- 网络存储设备(NAS)
- 存储网络(SAN)
区别:
DNS:不基于网络的扩展存储,如外挂硬盘
NAS:类似于FTP,集中存储用户通过网盘访问上传或下载文件
SAN:存储设备和存储管理系统独立于通信业务网络
十二、综合布线的子系统
(重点!!!)
建筑群子系统:实现建筑物之间的相连接,通常介质是光缆(建筑物)
垂直干线子系统:负责连接管理间子系统到设备间子系统使用无缆或UTF(管理间到设备间子系统)
水平配线子系统:实现信息插座和管理子系统的连接(插座和管理)
设备间子系统:由设备中的电缆连接器和相关的支撑设备组成与公共系统设备相连(~~与公共系统设备)
管理子系统:连接其他子系统提供连接手段由线架HUB和机柜、电源等组成
工作区子系统:由终端设备连接到信息插座的连接组成,包括连接器和适配器
(1)核心层
与用户规模大小、网络传输信息的种类、用户课投入资金有关。
(2)汇聚层
与网络规模的大小有关
(3)网络通信设备选型包括
核心交换机选型、汇聚层/接入层交换机选型、远程接入与访问设备选型
信息安全的基本要素有:(机密性、完整性、可用性、可控制、可审查性)
- 机密性:确保信息不暴露给未授权的实体或进程。
- 完整性:只有得到允许的人才能修改数据,并且能够判别出数据是否已被篡改。
- 可用性:得到授权的实体在需要时可访问数据,即攻击者不能占用所有的资源而阻碍授权者的工作。
- 可控性:可以控制授权范围内的信息流向及行为方式。
- 可审查性:对出现的网络安全问题提供调查的依据和手段。
(重点!!!)
信息系统安全分为5个等级(排序):(自系安结访)
- 自主保护级
- 系统审计保护级
- 安全标记保护级
- 结构化保护级
- 访问验证保护级
(1)防火墙:
鉴别什么样的数据包可以进出企业内部网。传统防火墙无法阻止和检测基于数据内容的黑客攻击和病毒入侵
(2)扫描器:
是入侵检测的—种
(3)防毒软件:
在应对黑客入侵方面,它可以查杀特洛伊木马和蠕虫等病毒程序,但对于基于网络的攻击行为(如扫描、针对漏洞的攻击)却无能为力。
(4)安全审计系统:
安全审计系统通过独立的、对网络行为和主机操作提供全面与忠实的记录
十三、新一代信息技术
大数据所涉及的技术很多,主要包括数据采集、数据存储、数据管理、数据分析与挖掘4个环节。
(1)数据采集阶段主要使用的技术是数据抽取工具ETL
(2)数据存储环节主要有结构化数据、非结构化数据和半结构化数据的存储与访问
- 结构化数据—般存放在关系数据库,通过数据查询语言(SQL)来访问
- 非结构化(如图片、视频、doc文件等)
- 半结构化数据一般通过分布式文件系统的NoSQL(Not OnlySQL)进行存储
数据管理主要使用了分布式并行处理技术,比较常用的有MapReduce
HDFS:Hadoop分布式文件系统(HDFS)是适合运行在通用硬件上的分布式文件系统。
Base:HBase是—个分布式的、面向列的开源数据库。
MapReduce:MapReduce是一种编程模型。
Chukwa:Chukwa是—个开源的用于监控大型分布式系统的数据收集系统。
十四、云计算
(1)特点:
超大规模、虚拟化、高可靠性、通用性、高可扩展性、按需服务、极其廉价、潜在危险性
(2)架构可以分为3个层次:
- 基础设施即服务(IaaS)--虚拟主机、存储服务
- 平台即服务(PaaS)--开发平台
- 软件即服务(SaaS)--应用软件的租用
云计算关键技术包括网格计算和虚拟化两种
网格计算是一种计算能力提升的方式,网络计算的基础技术就是web Services
云计算的平台技术,主要依赖于SOA
虚拟化包括:基础设施的虚拟化、网络虚拟化(VPN)和存储虚拟化(SAN/NAS)
(3)云计算应用---公有云、私有云和混合云
- 公有云:面向公众的
- 私有云:单位自建和自己管理
- 混合云:是上面两种的结合
十五、物联网
(1)物联网从架构上面可以分为感知层、网络层和应用层
- 感知层: 负责信息采集和物物之间的信息传输,信息采集的技术包括传感器、条码和二维码、RFID射频技术、音视频等多媒体信息。感知层主要包括: 自动识别技术产品和传感器(条码、RFID、传感器等),无线传输技术(WLAN、Bluetooth、ZigBee、UWB), 自组织组网技术和中间件技术。
- 网络层:是利用无线和有线网络对采集的数据进行编码、认证和传输。
- 应用层:提供丰富的基于物联网的应用。
十六、移动互联网
(1)移动互联网=移动通信网络+互联网内容和应用
不仅是互联网的延伸,而且是互联网的发展方向。
(2)特点
移动终端在处理能力、显示效果、开放性等方面则无法和PC相提并论,但在个性化、永远在线、位置性等方面强于PC。
具有:接入移动性、时间碎片性、生活相关性、终端多样性
(3)移动互联网的关键技术包括
架构技术SOA、页面展示技术Web2.0和HTML5、以及主流开发平台Android、iOS和WindowsPhone
- SOA:是一种粗粒度、松藕合服务架构
- WEB2.0:互联网思维模式
- HTML5:网页上直接调试和修改。
- Android:是一种基于Linux的自由及开放源代码的操作系统,如智能手机和平板电脑,Android的中间层多以Java实现。