欢迎光临散文网 会员登陆 & 注册

系统分析师考试记忆背诵要点

2023-05-24 14:21 作者:青石竹屋  | 我要投稿

1、企业信息化战略与实施

1.1 信息化基本概念

  • 分类

    • 战略级:企业最高管理成

    • 战术级:企业中层经理及其管理部门

    • 操作级: 服务型企业的业务部门

    • 事务级:企业的管理业务人员

  • 信息化战略体系

1.2 信息系统战略规划

  • 第一阶段:以数据处理为核心

    • 企业系统规划法

    • 关键成功因素发

    • 战略集合转化法

  • 第二阶段:以企业内部MIS为核心,围绕企业整体需求

    • 战略数据规划法

    • 信息工程发

    • 战略栅格法

  • 第三阶段:综合考虑企业内外环境以集成为核心,围绕企业战略需求

    • 价值链分析法

    • 战略一致性模型

  • 信息资源规划IRP

    • 用户视图收集

    • 用户视图分组、分析

    • 数据元素分析

    • 职能域分析

    • 业务域分析

    • 业务流程梳理

    • 业务需求分析

    • 数据需求分析

  • 信息系统开发方法

    • SO方法有是哪个主要抽象级别:操作、服务、业务流程

    • SOAD分为三个层次:基础设计层、应用结构层和业务组织层

    • 服务建模:分为服务发现、服务规约和服务实现三个阶段。

    • 更符合人们的思维习惯,更好的复用性

    • 关键在于建立一个全面、合理、统一的模型

    • 分析、设计、实现三个阶段、界限不明确

    • 适用于需求不明确的开发

    • 按功能分:水平原型(界面)、垂直原型(复杂算法)

    • 按最终结果分:抛弃式原型、演化式原型

    • 用户至上

    • 严格区分工作阶段,每个阶段有任务与成果

    • 强调系统开发过程的整体性和全局性

    • 系统开发过程工程化,文档资料标准化

    • 自顶向下,逐步分解

    • 结构法

    • 原型法

    • 面向对象方法

    • 面向服务的方法

1.3 系统建模

  • 过程

1.4 企业信息化与电子商务

  • 企业资源计划(ERP)

  • 客户关系管理(CRM)

  • 供应链管理(SCM)

  • 商业智能(BI)

    • 商业智能用于决策分析

    • 商业智能=数据仓库+数据挖掘+联机分析处理(OLAP)

    • 数据仓库-》OLAP

    • 数据库-》OLTP

  • 数据仓库


    • 面向主题:数据按照主题组织

    • 集成的:消除了源数据中的不一致性,提供整个企业的一致性全局信息。

    • 相对稳定的:主要进行查询操作,只有少量的修改和删除

    • 反映历史变化:记录了企业从过去某一个时刻到当前各阶段的信息,可对发展历程和未来趋势做定量分析和预测。

    • 特点

    • 过程

  • 数据挖掘

    • 关联分析:挖掘出隐藏在数据间的相互关系

    • 序列模式分析: 侧重点是分析数据间的前后关系(因果关系)

    • 分类分析:为每一个记录赋予一个标记再按标记分类

    • 聚类分析:分类分析法的逆过程

  • 知识管理

    • 知识生产工具:知识获取、知识合并、知识创新

    • 知识编码工具:通过标准形式表现知识

    • 知识转移工具:使知识能在企业内传播和分享

    • 显性知识:规范、系统、结构化、明确

    • 隐形知识:未规范、零星、非正式、未编码、不易保存、传递。

    • 知识管理工具

  • 业务流程分析法

    • 价值链分析法:找出或设计出那些能使顾客满意,实现顾客价值最大化的业务流程

    • 客户关系分析法:把CRM用在业务流程分析上

    • 供应链分析法:从企业供应链角度分析企业业务流程。

    • 基于ERP的分析法:将企业的业务流程看作是一个紧密联接的供应链,将供应商和企业内部采购、生产、销售,以及客户紧密联系起来。

    • 业务流程重组:通过重新审视企业的价值链,从功能成本的比较分析中,确定企业在安歇环节中比较优势。

1.5 企业应用集成

  • 集成图

  • 界面集成

    • 效果:统一入口、产生整体感觉

    • 集成点:界面层

  • 数据集成

    • 效果:不同来源的数据逻辑或物理上集中

    • 集成点:数据层

  • 控制集成

    • 效果:调用其他系统已有方法,达到集成效果

    • 集成点:应用逻辑层

  • 业务流程集成

    • 效果:跨企业、或优化流程而非直接调用

    • 集成点:应用逻辑层

  • 门户集成

    • 将内部系统对接到互联网上

1.6 企业门户

2、系统规划

2.1 项目的机会选择

2.2 可行性分析

  • 系统规划步骤

    • 1、初步调查:根据企业战略目标,分析企业现状以及系统运行状况。

    • 2、确定系统目标:确定系统的服务范围质量

    • 3、分析子系统的组成:做系统划分并制定子系统功能

    • 4、拟定系统的实施方案:分析系统优先级,确定开发顺序

    • 5、进行可行性研究:编写可行性研究报告

    • 6、制定系统建设方案:根据可研各项技术指标分析、比较,落实各项假设前提条件,制定系统建设方案,形成系统设计任务书,作为系统建设的依据。

  • 可行性分析

    • 管理可行性:系统与现有管理机制的一致性,改革的可能性

    • 运行可行性:用户方便使用的程度。

    • 经济可行性:成本收益分析,包括建设成本、运行陈本和项目建设后可能的经济收益。

    • 技术可行性:技术风险分析,现有技术能否支持系统的目标实现

    • 法律可行性

    • 用户使用可行性

  • 成本效益分析

    • 把各个年份的资金净收益,转成现值累加,如果是投资,则记为负收益。

    • 销售额=固定陈本+可变成本+税费+利润

    • 销售额=固定成本+可变成本+税费(盈亏平衡时)

    • 按照成本形态分类

    • 从项目管理角度对成本分类

    • 固定成本:管理人员的工资、办公费、固定资产折旧费、员工培训费、广告费、技术开发经费等。

    • 变动成本:直接材料费、产品包装费、外包费、开发奖金等。

    • 混合成本:水电费、电话费、质量保证人员的工资、设备动力费等。

    • 直接成本:项目组人员工资、材料费用

    • 间接成本:水电费、员工培训费

    • 开发成本:开发人员工资,开发材料资源类成本。

    • 运营成本:运维人员工资,运维耗材

    • 有形收益:资源要求的减少,运行效率的改进,提高工作效率,每个月节约的人员工资

    • 无形收益:企业形象的改善、提高客户满意度和忠诚度

    • 收益

    • 成本

    • 盈亏临界分析

    • 净现值

2.3 成本效益分析

3、需求工程

3.1 需求工程概述

  • 软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望

  • 软件需求是指用户解决问题或达到目标所需的条件或能力,是系统或系统部件要满足合同、标准、规范或其他正式规定文档所需要具有的条件或能力。

3.2 需求获取

  • 需求分类

    • 基本需求(明示、常规需求)

    • 期望需求(隐含)

    • 兴奋需求(多余)

    • 业务需求(整体全局)

    • 用户需求(用户视角)

    • 系统需求(计算机化)

    • 功能需求

    • 非功能需求

    • 设计约束

    • 分类

    • QFD

  • 需求获取方法

    • 用户访谈:1对1-3,有代表性的用户

    • 问卷调查:用户多,无法一一访谈

    • 现场观摩:针对较复杂的流程和操作

    • 联合需求计划(JRP):高度组织的群体会议,各方参与,陈本较高

    • 情节串联板:一系列图片,通过图片来讲故事

    • 收集资料:把与系统有关的、对系统开发有益的信息收集起来

    • 参加业务时间:有效的发现问题的本质和寻找解决问题的办法

    • 阅读历史文档:对收集数据性的信息较为有用

    • 抽样调查:降低成本

3.3 需求分析

  • 结构化需求分析

    • 数据元素

    • 数据结构

    • 数据流

    • 数据存储

    • 加工逻辑

    • 外部实体

    • 状态(初态、终态)

    • 事件

    • 实体

    • 联系

    • 平衡原则

    • 包含内容

    • 黑洞:一个加工只有输入数据流而无输出数据流

    • 奇迹:一个加工只有输出数据流而无输入数据流

    • 灰洞:若一个加工的输入数据流无法通过加工产生输出流

    • 数据流

    • 加工

    • 数据存储

    • 外部实体

    • 功能模型:数据流图DFD

    • 数据模型:实体联系图(ER)

    • 行为模型:状态转换图(STD)

    • 数据字典

  • 面向对象需求分析

    • 用例模型

    • 分析模型

    • 包含关系

    • 扩展关系

    • 泛化关系

    • 用例名称

    • 简要说明

    • 事件流

    • 非功能需求

    • 前置条件

    • 后置条件

    • 扩展点

    • 优先级

    • 识别参与者

    • 合并需求获得用例

    • 细化用例描述

    • 调整用例模型

    • 依赖、关联、聚合、组合、泛化、实现

    • 定义概念类

    • 识别类之间关系

    • 为类添加职责

    • 建立交互图

    • 逻辑视图

    • 实现视图

    • 进程视图

    • 部署视图

    • 用例视图

    • 系统分析、设计人员

    • 类与对象

    • 展现系统功能

    • 程序员

    • 物理代码文件和组件

    • 源代码结构

    • 系统集成人员

    • 线程、进程、并发

    • 并发与同步结构

    • 系统和网络工程师

    • 软件到硬件的映射

    • 软件构件到物理节点映射

    • 最终用户

    • 需求分析模型

    • 静态图(结构图)

    • 动态图(行为图)

    • 对象图描述一组对象及它们之间的关系,对象图描述了在类图中所简历事物实例的静态快照。

    • 依赖关系:一个事物发生变化影响另一个事物

    • 泛化关系:特殊与一般关系

    • 组合关系:整体与部分生命周期相同

    • 聚合关系: 整体与部分生命周期不同

    • 实现关系:接口与类之间关系

    • 实线实心箭头

    • 实线空心箭头

    • 实线实心菱形箭头

    • 实线空心菱形箭头

    • 虚线空心三角箭头

    • 类图:一组类、接口、协作和它们之间的关系

    • 对象图:一组对象及它们之间关系

    • 构件图:一个封装的类和它的接口

    • 部署图:软硬件之间映射

    • 包图:由模型本身分解而成的组织单元,以及他们之间的依赖关系。

    • 活动图将进程或其他计算结构展现为计算内部一步步控制流和数据流。活动图专注于系统动态视图,它对系统功能建模和业务流程建模特别重要,并强调对象间的控制流程。

    • 状态图描述一个状态机,它由状态、转移、事件和活动组成。状态视图给出了对象动态视图,他对于接口、类或协作的行为建模尤其重要。

    • 顺序图是一种交互图,它强调对象之间消息发送的顺序,同时显示对象之间的交互。

    • 用例图描述一组用例、参与者及它们之间关系、用户角度描述系统功能,参与者是外部触发因素(包括用户、组织、外部系统、时间);用例是功能单元。

    • 关系

    • 建模流程

    • 包含关系:例如学习课程和课程测试都包含检测权限

    • 扩展关系:如课程测试扩展充入学习币

    • 泛化关系:课程注册泛化电话注册和网上注册

    • 识别参与者

    • 合并需求获取用例

    • 细化用例描述

    • 调整用例模型

    • 用例图:系统与外部参与者的交互

    • 顺序图:强调按时间顺序

    • 通信图:(协作图)

    • 定时图:强调实际时间

    • 状态图:状态转换变迁

    • 活动图:类似程序流程图,并行行为

    • 构造块

    • 规则

    • 公共机制

    • 结构事务:最静态的部分,包括类、接口、协作、用例、活动类、构件和节点。

    • 行为事务:代表时间和空间上的动作。包括消息、动作次序、连续。

    • 分组事务:看成是个盒子,如包,构件。

    • 注释事务:UML模型的解释部分,描述、说明和模型标注模型的元素。

    • 事务

    • 关系

    • 范围:给一个名字以特定含义的语境

    • 可见性:怎么使用或看见名字

    • 完整性:事物如何正确、一致地相互联系

    • 执行:运行或模拟动态模型的含义是什么

    • 规格说明:事务语义的细节描述,他是模型真正的核心

    • 修饰:通过修饰表达更多信息

    • 公共分类:类与对象、接口与实现

    • 扩展机制:允许添加新的规则

    • 对象:属性(数据)+方法(操作)+ 对象ID

    • 类(实体类、控制类、边界类)

    • 继承与泛化:复制机制

    • 封装:隐藏对象的属性和实现细节,仅对外公开接口

    • 多态:不同对象收到同样消息产生不同结果

    • 接口:一种特殊类,他只有方法定义没有实现

    • 重载:一个类可以有多个同名而参数类型不同的方法

    • 消息和消息通信:消息是异步通信的

    • 概念

    • UML

    • UML图

    • 4+1视图

    • 需求建模

3.4 需求定义

  • 严格定义法

    • 瀑布模型思想

  • 原型法

3.5 需求验证

  • 需求评审

    • 正式评审

    • 非正式评审

  • 需求测试

3.6 需求管理

  • 定义需求基线

  • 需求跟踪

    • 用户原始需求

    • 软件需求

4、系统设计

4.1 处理流程设计

  • 业务流程建模

    • 标杆瞄准

    • IDEF

    • DEMO

    • Petri网

    • 业务流程建模语言

    • 基于服务BPM

4.2 软件架构设计

  • 软件架构风格

    • 数据流风格

    • 调用、返回风格

    • 独立构件风格

    • 虚拟机风格:解释器、基于规则的系统

    • 仓库风格:数据库系统、超文本系统、黑板系统

    • 批处理序列、管道过滤器

    • 主程序/子程序、面向对象、层次结构

    • 进程通信、事件驱动系统(隐士调用)

    • 架构设计的核心问题是否能达到架构级的软件复用

    • 架构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个构件有效的组织成一个完整的系统

    • 架构风格定义了用于描述系统的术语表和一组指导构建系统的规则

    • 常用的架构风格

4.3 结构化设计

  • 概要设计和详细设计

    • 保持模块的大小适中

    • 尽可能减少调用的深度

    • 多扇人、少扇出

    • 单入口、单出口

    • 模块的作用域应该在模块之内

    • 功能应该是可预测的

    • 抽象化

    • 自顶而下、逐步求精

    • 信息隐藏

    • 模块独立(高内聚、低耦合)

    • 特征

    • 注意事项

4.4 面向对象设计

  • 基本过程

    • 架构图(用包图表示)

    • 用例实现图(用交互图表示)

    • 类图

    • 其他(状态图和活动图)

    • 设计用例实现方案

    • 设计技术支撑实施

    • 设计用户界面

    • 细化设计模型

    • 分析模型

    • 用例模型

    • 领域模型

    • 分析阶段

    • 设计师

    • 设计模型

  • 设计原则

    • 一个对象应当对其他对象尽可能少的了解

    • 要尽量使用组合,而不是继承关系达到重用目的

    • 使用多个专门的接口比使用单一的总接口要好

    • 需要依赖抽象,而不是具体实现;针对接口编程,不要针对实现编程

    • 子类可以替换父类

    • 对扩展开放,对修改封闭

    • 设计目的单一的类

    • 单一职责原则

    • 开放封闭原则

    • 李氏替换原则

    • 依赖倒置原则

    • 接口分离原则

    • 组合重用原则

    • 迪米特原则

  • 设计模式

    • 责任链(chain of resposibility)

    • 命令(command)

    • 解释器(interpreter)

    • 迭代器(iterator)

    • 中介者(mediator)

    • 备忘录(memento)

    • 观察者(observer)

    • 状态(state)

    • 策略(strategy)

    • 模板方法(template method)

    • 访问者(visitor)

    • 速记关键字:传递职责

    • 通过给多个对象处理请求的机会,减少请求的发送者与接收者之间的耦合,将接收对象链接起来,在链中传递请求,直到有一个对象处理这个请求。

    • 速记关键字:日志记录,可撤销

    • 将一个对象封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销操作。

    • 速记关键字:虚拟机的机制

    • 给一种语言,定义他的文法表示,并定义一个解释器,该解释器用来根据文法表示来解释语言中的句子

    • 速记关键字:数据集

    • 提供一种方法来顺序访问一个聚合对象中的各个元素,而不需要暴露该对象内部的表示

    • 用一个中介对象来封装一系列的对象交互,它使各对象不需要显示的相互调用,从而达到低耦合,还可以独立改变对象间的交互。

    • 速记关键字:游戏存档

    • 在不破坏封装性的前提下,捕获一个对象的内部状态,并在改对象之外保存这个状态,从而可以在以后将该对象恢复到原先保存的状态

    • 速记关键字:联动

    • 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新

    • 速记关键字:状态变成类

    • 允许一个对象在其内部状态改变时改变它的行为

    • 速记关键字:多方案切换

    • 定义一系列算法,把它们一个个封装起来,并且是他们之间相互替换,从而让算法可以独立于使用它的用户而变换

    • 定义一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构既可重新定义算法的某些特定步骤

    • 表示一个作用于某对象结构中的各元素的操作,使得在不改变各元素的类的前提下定义作用于这些元素的新操作。

    • 适配器(adapter)

    • 桥接(bridge)

    • 组合(composite)

    • 装饰(decorator)

    • 外观(facade)

    • 享元(flyweight)

    • 代理(proxy)

    • 速记关键字:接口转换

    • 将一个类的接口转换成用户希望得到的另一个接口,它使原本不相容的接口得以协同

    • 速记关键字:继承树拆分

    • 将类的抽象部分与它的实现部分分离开来,使它们可以独立的变化

    • 速记关键字:树形结构目录

    • 将对象组合成树形结构以表示整体-部分的层次结构,使得用户对单个对象和组合对象的使用具有一致性

    • 速记关键字:附加职责

    • 动态地给一个对象添加一些额外的职责。它提供了用子类扩展功能的一个灵活替代,比派生一个子类更加灵活

    • 速记关键字:对外统一接口

    • 定义一个高层接口,为子系统中的一组接口提供一个一直的外观,从而简化了该子系统的使用

    • 速记关键字:一篇文字中的同一个文字对象共享

    • 提供支持大量细粒度对象共享的有效方法

    • 速记关键字:快捷方式

    • 为其他对象提供一个钟代理控制这个对象的访问

    • 工厂方法(factory method)

    • 抽象工厂(abstract factory)

    • 原型(prototype)

    • 单例(singleton)

    • 构建器(builder)

    • 速记关键字:动态生成对象

    • 定义一个创建对象的接口,但由子类决定实例化哪一个类

    • 速记关键字:生成系列对象

    • 提供一个接口,可以创建一系列相关或相互依赖的对象,而无需指定他们具体的类

    • 速记关键字:克隆对象

    • 用原型实例指定创建对象类型,并通过拷贝这个原型来创建新的对象

    • 速记关键字:单实例

    • 保证一个类只有一个实例,并提供访问它的全局访问点

    • 速记关键字:复杂对象构建

    • 将一个复杂类的表示与构造相分离,使得相同的构建过程能够得出不同的表示

    • 架构模式

    • 软件设计中的高层决策,例如cs结构就属于架构模式,架构模式反映了开发系统过程中所作的基本设计决策。

    • 设计模式:主要关注软件系统的设计,与具体实现语言无关

    • 惯用法:是最低层的模式,关注软件系统的设计与实现,实现时通过某种特定的程序设计语言来描述构件与构件之间的关系,每种编程语言都有它自己特定的模式,即语言的惯用法。

    • 概念

    • 创建型模式

    • 结构型模式

    • 行为型模式

4.5 web应用设计

  • 从架构来看

    • REST

    • 1、网络上的所有事物都被抽象为资源

    • 2、每个资源对应一个唯一的资源标识

    • 3、通过通用的连接件接口对资源进行操作

    • 4、对资源的各种操作不会改变资源标识

    • 5、所有的操作都是无状态的。

    • MVC,MVP,MVVM,REST,Webservice,微服务

  • 从缓存来看

    • MemCache:是一个高性能的分布式的内存对象缓存系统,用于动态Web应用以减轻数据库负载。Memcache通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果能。

    • Redis: 是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日之星、KV数据库、并提供多种语言的API

    • Squid:Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议,和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、IO驱动的进程来处理所有客户端请求

    • MemCache,Redis,Squid

  • 从并发分流来看

    • 负载均衡技术

    • 有状态与无状态

    • DNS域名解析负载均衡:DNS域名解析负载均衡就是用户在请求DNS服务器时,获取域名对应的IP地址时,DNS服务器直接给出负载均衡的服务器IP.    特点:效率比HTTP重定向高,减少维护负载均衡服务器成本,但一个应用服务器故障,不能及时通知DNS,而且DNS负载均衡的控制权再域名服务商那里,网址无法做更多的改善和更大的管理。

    • 基于NAT的负载均衡:基于NAT的负载均衡将一个外部IP地址映射为多个IP地址,对每次连接请求动态地址转换为一个内部节点地址。特点:技术较成熟,一般在网关位置,可以通过硬件实现,像四层交换机一般就采用了这种技术。

    • http重定向:Http重定向就是应用层的请求转发,用户的请求其实已经到了HTTP重定向负载均衡服务器,服务器根据算法要求用户重定向,用户收到重定向请求后,再次请求真正的集群。t特点:实现简单、但性能较差

    • 反向代理服务器:在用户的请求到达反向代理服务器时,由反向代理服务器根据算法转发到具体的服务器。常用的apache,nginx都可以充当反向代理服务器。特点:部署简单,但代理服务器可能成为性能瓶颈。

    • 硬件负责均衡:FS

    • 软件负载均衡:LVS、Nginx、HAproxy

    • 静态算法:轮转法、加权轮转算法、源地址哈希散列算法、目标地址哈希散列算法、随机法。

    • 动态算法: 最小连接数算法、加权最小连接数算法、加权百分比算法

    • 基于特定软件的负载均衡(HTTP重定向)应用层

    • 反向代理负载均衡(应用层)

    • 基于DNS的负载均衡(传输层)

    • 基于NAT的负载均衡(传输层)

    • 混合型负载均衡

    • 不同层的负载均衡

    • 负载均衡算法

    • 软硬件负载均衡

    • 应用层负载均衡

    • 传输层负载均衡

    • 无状态服务:对于单次请求的处理,不依赖其他请求,也就是说,处理一次请求所需要的全部信息,要么都包含在这个请求里,要么可以从外部获取,服务器本身不存任何信息。

    • 有状态服务:则相反,它会在自身保存一些数据,先后的请求是有关联的。

    • 集群(负载均衡)、CDN

  • 从数据库来看

    • 主从库(主从复制)、内存数据库、反规范化技术、NoSql,分区分表技术,视图与物理视图

  • 从持久化来看

    • Hibernate,Mybatis

  • 从分布式存储来看

    • Hadoop,FastDFS,区块链

  • 从数据编码来看

    • XML扩展标记语言

    • Json 一种轻量级的数据交换格式

    • XML文件庞大,文件格式复杂,输出占带宽

    • 服务器端与客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护

    • 客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码。

    • 服务器端和客户端解析XML花费较多的资源和时间

    • 格式统一,符合标准

    • 容易与其他系统进行远程交互,数据共享比较方便

    • 优点

    • 缺点

    • 没有xml格式这么推广的深入人心和喜用广泛,没有XML那么通用性。

    • 数据格式简单,易于读写,格式都是压缩的,占用带宽小

    • 易于解析,客户端javascript可以通过eval()进行Json数据的读取

    • 支持多种语言,便于服务器端解析

    • 因为JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护。

    • 优点

    • 缺点

    • XML,JSON

  • 从web应用服务器来看

    • Web应用服务器

    • 进行业务逻辑的处理

    • 把浏览器发过来的Request请求,返回HTML页面

    • WEB服务器

    • 应用服务器

    • Apache、WebSphere、Weblogic、Tomcat、JBOSS、IIS

  • 其它

    • 静态化,有状态与无状态,响应式Web设计

5、系统测试与维护

5.1 软件测试概念与方法

  • 尽早、不断的进行测试,程序员避免测试自己设计的程序;既要选择有效、合理数据,也要选择无效、不合理数据;修改后应进行回归测试;尚未发现的错误数量与该程序已发现错误数成正比

  • 动态测试

    • 基本路劲测试

    • 循环覆盖测试

    • 逻辑覆盖测试

    • 语句覆盖、判定覆盖、条件覆盖……

    • 等价类划分

    • 边界值分析

    • 错误推测

    • 因果图

    • 黑盒测试

    • 白河测试

    • 灰盒测试

  • 静态测试

    • 桌前检查

    • 代码审查

    • 代码走查

5.2 系统测试

  • 测试阶段

    • 安全性测试

    • 压力测试

    • 性能测试

    • 可靠性测试

    • 单元测试:模块测试、模块功能、性能、接口等

    • 集成测试:模块间的接口

    • 确认测试:验证软件与需求一致性。内部确认测试、alpha\beta测试,验收测试

    • 系统测试:真实环境下,验证完整的软件配置项是否能和系统连接

    • 回归测试:测试软件变之后,变更部分的正确性对变更需求的符合性。

  • 面向对象测试

    • 算法层(单元测试):包括等价累划分测试、组合功能测试、递归函数测试和多态消息测试

    • 类层(模块测试):包括不变式边界测试、模态类测试和非模态类测试

    • 模板层/类树层(集成测试):包括多态服务测试和展平测试

    • 系统层(系统测试)

  • 测试自动化

    • 提高测试执行效率

    • 提高运行效率

    • 保证测试结果正确性

    • 连续运行测试脚本

    • 模拟现实环境下受约束的情况

  • 软件评审

    • 不应以测试代替评审

    • 评审人员应该关注产品而不应评论开发人员

    • 评审人员应关注于实质性问题

  • 验证与确认

    • 验证是指软件开发周期中一个给定阶段的产品是否达到上一阶段确立的需求的过程

    • 确认是指在软件开发过程结束时对软件进行评价以确定它是否和软件需求相一致的过程

    • 测试是指通过执行程序来有意识的发现程序中的设计错误和编码错误的过程。测试是验证和确认的手段之一。

6、项目管理

6.1 范围管理

  • 确定项目的边界,即哪些工作是项目应该做的,哪些工作不应该包括在项目中

6.2 时间管理

  • 也叫进度管理,是采用科学的方法,确定进度目标,编制进度计划和资源供应计划,进行进度控制,在质量、成本目标协调的基础上,实现工期目标。

  • 估算方法

    • 专家判断法

    • 三点估算法

    • 功能点估算法

    • 自上而下的估算

    • 自下而上的估算

  • 过程

    • 活动定义-》活动排序-》活动资源估算-》活动历时估算-》制定进度计划-》进度控制

6.3 成本管理

  • 在整个项目实施过程中,未确保项目在批准的预算条件下尽可能保质按期完成,而对所需的各个过程进行管理与控制

6.4 软件质量管理

  • 质量保证一般是每隔一定时间进行的,主要通过系统的质量审计和过程分析来保证项目的质量

  • 质量控制是实时监控项目的具体结果,以判断他们是否符合相关质量标准,制定有效方案,以消除产品质量问题的原因

  • 一定时间内质量控制的结果也是质量保证质量设计的对象。质量保证的成果又可以指导下一阶段的质量工作,包括质量控制和质量改进。

6.5 软件配置管理

  • 开发库:动态库、程序库、工作库;动态系统、开发者系统、开发系统、工作空间

  • 受控库:主库、系统库;主系统、受控系统

  • 产品库:备份库、静态库、软件仓库;静态系统

  • 检查点:指在规定的时间间隔内对项目进行检查,比较实际与计划之间的差异,并根据差异进行调整

  • 里程碑:完成阶段性工作标志,不同类型的项目里程碑不同

6.6 风险管理

  • 项目风险

    • 潜在的预算、进度、人员和组织、用户和需求问题

    • 项目复杂性、规模和结构的不确定性

  • 技术风险

    • 潜在的设计、实现、接口、测试和维护方面问题

    • 规格说明的多义性、技术上的不确定性、技术陈旧、最新技术不成熟

  • 商业风险

    • 市场风险: 系统虽然优秀,但不是市场真正所想要的

    • 策略风险:系统不再符合企业信息系统战略

    • 销售风险:开发了销售部门不清楚如何推销的系统

    • 管理风险:由于重点转移或人员变动而失去上级支持

    • 预算风险: 开发过程没有得到预算或人员的保证

7、系统安全分析与设计

7.1 安全基础技术

  • 对称与非对称加密



    • 常见

    • 缺陷:加密速度慢

    • RSA

    • ECC

    • 缺点

    • 常见对称加密

    • 加密强度不高,但效率搞

    • 密钥分发困难

    • DES

    • RC-5

    • IDEA

    • 对称加密

    • 非对称加密

    • 公钥体系

  • PKI公钥体系

  • 数据签名

  • 信息摘要

    • 常用的消息摘要算法有MD5,SHA等,市场上广泛使用的MD5,SHA算法的散列值分别为128和160位,SHA更安全。


7.2 网络安全

  • 安全协议

8、知识产权与标准化

8.1 保护范围与对象

8.2 保护期限

8.3 知识产权人确定

    8.4 侵权判断




    系统分析师考试记忆背诵要点的评论 (共 条)

    分享到微博请遵守国家法律