系统架构设计笔记

第1章 操作系统(2016.10.26)

微内核结构:把系统的公共部分抽象出来,形成一个底层核心,提供最基本的服务,其他功能以服务器形式建立在微内核之上。

进程三态模型:运行态,等待态,就绪态。

五态模型:静止就绪,活跃就绪,静止阻塞,活跃阻塞,运行。

P,暂停 v,唤醒

同步:初始值为0。互斥:初始值为1

-----------------------------------------------------------------------------------------------------------------------------------------------

2016.9.13 第2章 数据库系统(2016.9.21更新)

数据库管理系统是一种负责数据库的定义,建立,操作,管理和维护的软件系统。DBMS,工作机理是把用户对数据的操作转化为对系统存储文件的操作,有效地实现数据库三级之间的转化。

数据库系统的类型有,集中式,客户端服务端式,并行式,分布式。

并行数据库:共享内存,共享磁盘,无共享资源。

数据库模式:用户级DB/外模式,概念级DB/概念模式,物理级DB/内模式,物理,逻辑独立性。

数据模型:层次模型,网状模型,关系模型,面向对象模型。

关系模型:

1.域:一组具有相同数据类型的值的集合。

2.笛卡尔积:给定一组域d1,d2,d3.......dn,  笛卡尔积为d1*d2*d3*...dn,其中的一个元素叫做元组。

3.关系:笛卡尔积的子集。关系是一个二维表,表的行对应一个元组,表的列对应一个域。(属性)

规范化理论:

(2016.9.22更新)

1.函数依赖:

完全函数依赖,部分函数依赖,传递函数依赖

自反性,增广性,传递性,并规则,分解规则,伪传递规则

2.范式

第一范式:属性值就是不可分的原子值

第二范式:非主属性完全函数依赖于候选键

第三范式:非主属性不传递依赖于R的候选键

BC范式:每个属性不传递依赖于R的候选键

3.关系模式分解、

无损连接:(R1^R2)-->(R1-R2)或(R1^R2)-->(R2-R1)

数据库并发:

排他锁,共享锁,

两阶段锁协议

死锁,预防法,死锁的解除法

数据库故障:1.事务内部 2.系统故障 3.介质故障 4.计算机病毒

数据备份:冷备份(静态),热备份(动态),海量备份,增量备份

数据库的完整性:

1.实体完整性: 不能为空

2.参照完整性:

3.用户定义完整性:立即执行约束,延迟执行约束

4.触发器:安全性

数据库工程:

1.规划

2.需求分析

3.概念设计 ER图:实体,联系,属性,三类冲突:1.属性冲突,2命名冲突 3.结构冲突

4.逻辑设计

5.物理设计

数据仓库(联机分析处理)

特征:1.面向主题,2.集成的 3.相对稳定的 4.随时间变化

分类:企业仓库,数据集市,虚拟仓库

数据挖掘:1.自动预测趋势和行为 2.关联分析 3,聚类 4.概念描述 5.偏差检测

1.关联分析

2.序列分析

3.分类分析

4聚类分析

5.预测

6.时间序列分析

数据挖掘

-----------------------------------------------------------------------------------------------------------------------------------------

第3章 嵌入式系统

第4章 数据通信与计算机网络

第5章 多媒体基础知识

第6章 系统性能评价

第7章 信息系统基础知识 2016.9.7(2016.9.26更新)

信息是系统有序程度的度量。

系统工程:三维结构,逻辑维,时间维,知识维

信息系统:结合管理理论和方法,应用信息技术解决管理问题,为管理决策提供支持的系统

信息系统的分类:1.数据环境分类:数据文件,应用数据库,主体数据库和信息检索系统。2.应用层次分类:战略级信息系统,战术级信息系统,操作级信息系统,事务级信息系统。

信息系统的生命周期:系统规划,系统分析,系统设计,系统实施,系统运行和维护。

信息系统建设的方法:

1.企业系统规划方法(BSP):提供一个信息系统规划,用以支持企业短期的长期的信息需要。

2.战略数据规划方法:自顶向下的规划,企业模型的建立,主题数据库:为了加快应用项目的开发。1.面向业务的主题。2.信息共享。3.一次,一处输入系统。4.由基本表组成。

3.信息工程方法:信息,过程,技术组成了企业信息系统的三要素。

信息化基础:

1.企业资源计划(ERP):对物质流,资金流,信息流,

1个中心:以财务数据库;2类业务:计划与执行;3条干线:供应链管理,生产管理,财务管理。

ERP的功能:1.财务管理 2生产控制管理 3物流管理 4人力资源管理

2.业务流程重组(BPR):

3.客户关系管理(CRM):客户服务与支持,客户群管理,商机管理

4.供应链管理(SCM):需求管理,供应链计划,生产计划,生产调度,配送计划,运输计划。

5.产品数据管理(PDM):以软件技术为基础,以产品为核心,实现对产品相关的数据,过程,资源一体化集成管理的技术。

6.产品生命周期管理(PLM):培育期,成长期,成熟期,衰退期,结束期。

7.知识管理

8.企业应用集成(EAI):企业内部应用集成,企业间距应用集成。集成模式:面向信息,面向过程,面向服务。

9.商业智能(BI):数据仓库,OLAP(联机分析处理),数据挖掘技术

10.企业门户:信息门户,知识门户,应用门户

11.电子政务:G2G政府对政府,G2E政府对公务员,G2B政府对企业,G2C政府对公民

12.电子商务:B2B企业与企业,B2C商家对消费者,C2C个人对个人

------------------------------------------------------------------------------------------

第8章 系统开发基础知识 2016.9.8(2016.9.27更新)

软件方法学:

1自顶向下:结构化方法:结构化分析:数据流图,数据字典,设计,程序设计。缺点:1.开发周期长;2.注重系统功能,数据结构方面不多;3.难以锁定功能需求。2自底向上

1形式化方法:净室方法,三种盒类型:黑盒:系统的某部分行为。状态盒:封装状态数据和服务。清晰盒:过程设计。 2.非形式化方法

1.整体性方法 2.局部性方法

面向对象方法:OMT:对象建模技术:1.对象模型 2,动态模型 3.功能模型 分析,系统设计,对象设计,实现。

原型法:原型是指模拟某种产品的原始模型。

1.水平原型(行为原型):界面 2 垂直原型(结构化原型):复杂的算法上。

1.抛弃型原型(探索型原型):解决需求不确定性  2.演化型原型 (Web项目):增量开发。

1.实验型 2.探索型 3.演化型

逆向工程:软件再工程,需要对旧的软件进行重新处理,调整,提高其可维护性。

1.再工程: 逆向工程,新需求的考虑,正向工程

2.软件重构:1代码重构  2.数据重构

逆向工程:能够导出过程的设计表示(实现级),程序和数据结构(结构级),数据和控制流模型(功能级),实体关系模型(领域级)

软件开发模型:

瀑布模型,

V模型,1.单元测试,编码。2.集成测试,详细设计。3.系统测试,概要设计。4.验收测试,需求分析。

快速应用开发,1.业务建模 2.数据建模 3.过程建模 4.应用程序生成 5.测试与交互 基于构件的开发方法。

敏捷方法,

统一过程(UP),基于构件,3个特点:用例驱动,以基本架构为中心,迭代和增量

初始阶段,细化阶段,构建阶段,交付阶段。

系统规划与问题定义:关键成功因素法,战略目标集转化法,企业系统规划方法。

可行性分析:1.技术可行性  2.经济可行性 3.操作可行性

成本效益分析,

需求工程:

需求开发,需求获取,需求分析,编写规格说明书,需求验证。

需求获取技术:1.用户访谈,2.用户调查 3现场观摩 4.阅读历史文档 5.联合讨论会 

需求管理。

工作流就是一系列相互衔接,自动进行的业务活动或任务。

软件测试

1。动态测试

黑盒法,又称功能测试,有等价类划分,边界值分析,错误推测,因果图。

白盒法,基本路径测试,循环覆盖测试,逻辑覆盖测试

灰盒法

2。静态测试

1.桌前检查 2.代码审查 3.代码走查

测试的阶段:1.单元测试  2.集成测试  3.确认测试:内部确认测试,alpha测试,beta测试,验收测试。4系统测试

性能测试:负载测试,强度测试,容量测试。

软件维护:1.改正性维护 2.适应性维护 3完善性维护

--------------------------------------------------------------------------------------

第9章 面向对象方法(2016.9.29更新) 2016.9.12

对象是指一组属性及这组属性上的专用操作的封装体。

类是一组具有相同属性和相同操作的对象的集合。

UML,统一建模语言,三种基本的构造快,分别是事物,关系,图。

5个系统视图:

逻辑视图,以问题域的语汇组成的类和对象的集合。

进程视图,线程与进程,并发与同步

实现视图:代码

部署试图:物理拓扑图

用例视图:需求分析模型

关系:依赖,关联(整体和部分),泛化(一般和特殊),实现。

1.用例之间的关系:包含关系,扩展关系

2.类之间的关系:1.关联关系。2.依赖关系。3.泛化关系。4.聚合关系。5.组合关系。6.实现关系。7。流关系。

面向对象的分析:

用例模型:1.识别参与者 2.合并需求获得用例 3.细化用例描述 

分析模型:1.发现领域对象 2识别对象的属性 3.识别对象的关系 4.为类添加职责 5.建立交互图

面向对象的测试:1.算法层 2.类层 3.模版层 4.系统层

------------------------------------------------------------------------------------------------

第10章 基于构件的开发(2016.9.29 更新)

构件:是一个功能相对独立的具有可重用价值的软件单元。

垂直重用:在一类具有较多公共性的应用领域之间重用

水平重用:不同领域中的软件元素。数据结构,排序算法,人机界面构件,标准函数库。

软件重用的软件要素:分别是项目计划,成本估计,架构,需求模型和规格说明,设计,源代码,用户文档和技术文档,用户界面,数据结构和测试用例。

构件获取:1.现有构件 2.遗留工程 3.商业构件 4.开发新的构件

构件管理:构件描述,构件分类,构件库组织,人员及权限管理和用户意见反馈。

构件分类:1.关键字分类法 2.刻面分类法 3.超文本方法

构件重用:1.检索与提取构件 2.理解与评价构件 3.修改构件 4.构件组装(基于功能的组装技术,基于数据的组装技术,面向对象的组装技术)

中间件是位于平台和应用之间的通用服务。

中间件分类:

底层型中间件,JVM,CLR,JDBC

通用型中间件,EJB,COM

集成型中间件。weblogic

平台分成:远程调用RPC,面向消息的中间件,对象请求代理。

应用服务器:1可升级 2.分布式 3.可重用 4.业务规则 5.跨平台

---------------------------------------------------------------------------------------------------------

第11章 开发管理 (2016-10-10)

 项目是在特定条件下,具有特定目标的一次性任务。

1.概念阶段:可行性研究

2.开发阶段:计划

3.实施阶段:WBS

4.结束阶段:

配置项:过程描述,需求,设计,测试计划和规程,测试结果,代码模块,工具,接口描述等。

文档成配置项:系统规格说明书,项目计划,需求规格说明书,用户手册,设计规格说明,源代码,测试规格说明,

                    操作和安装手册,可执行程序,数据库描述,联机用户手册,维护文档,软件工程标准和规程。

软件质量保证(SQA):

信息系统常见风险:

1.宏观:项目风险,技术风险,商业风险

软件过程改进:CMMI,能力成熟度模型集成。1.初始级 2.已管理级 3.严格定义级 4.定量管理级 5.优化级

---------------------------------------------------------------------------------------------------------

第12章 软件架构风格(2016.10.10)

软件架构是具有一定形式的结构化元素,即构件的集合,包括处理构件,数据构件和连接构件。

软件架构建模,4+1视图模型

2016.7.26

软件架构风格:描述特定软件系统组织方式的惯用模式。组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和定义。

------------------------------------------------------------------------------------------------------

1.数据流风格:

a.批处理序列:

批处理风格的每一步处理都是独立的. 并且每一步是顺序执行的. 只有当前一步处理完
后.后一步处理才能开始.数据传送在步与步之间作为一个整体.

例子:

 经典数据处理;
 程序开发;
 Windows 下的 BAT 程序

b.管道/过滤器:

每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据
流。这里构件被称为过滤器,连接件就是数据流传输的管道,将一个过滤器的输出传到另一个过滤器的输入。

例子:

UNIX 下的 Shell 编程。 UNIX 既提供一种符号以连接各组成部分
(进程) ,又提供某种进程运行时机制以实现管道。另一个例子:传统的编译器。传统的编
译器中,一个阶段(包括词法分析、语法分析、语义分析和代码生成)的输出是另一个阶段
的输入。MapReduce 也包含该风格。

----------------------------------------------------------------------------------------------------

2.调用,返回风格

a.主程序,子程序风格:

单线程控制,把问题划分为若干处理步骤,构件即为主程序和子程序。子程序通常可合
成为模块。过程调用作为交互机制,即充当连接件。调用关系具有层次性,其语义逻辑表现
为子程序的正确性,取决于它调用的子程序的正确性。
这种程序风格也比较多,比如早期的结构化程序.

b.面向对象风格:

数据抽象和面向对象架构风格。这种风格的构件是对象。对象是抽象数据类型的实例。
在抽象数据类型中, 数据的表示和它们的相应操作被封装起来。

c. 层次结构

-------------------------------------------------------------------------------------------------

3.独立构件风格

a.进程通信

b.事件系统

这种风格中的构件是非命名的过程, 它们之间交互的连接件往往是以过程之间的隐式调
用(Implicit Invocation)来实现的

----------------------------------------------------------------------------------------------------

4.虚拟机风格

a.解释器

具有解释器风格的软件中含有一个虚拟机

b.基于规则的系统

---------------------------------------------------------------------------------------------------

5.仓库风格

若输入流中某类时间触发进程执行的选择.则仓库是一传统型数据库;另一方面.若中
央数据结构的当前状态触发进程执行的选择.则仓库是一黑板系统

a.数据库系统

b.超文本系统

c.黑板系统

黑板架构包括知识源、黑板和控制 3 个部分

黑板通常应用在对于解决问题没有确定性算法的系统中, 例如信号处理、 问题规划及编
译器优化等软件系统的设计中

--------------------------------------------------------------------------------------------------------

富因特网应用(RIA)

正交软件架构:不同线索中的构件之间没有相互调用。

基于层次消息总线的架构

2016.8.24

特定领域软件架构:DSSA,是在一个特定应用领域中为一组应用提供组织结构参考的标准软件架构。

1.领域分析:获得领域模型

2.领域设计:获得DSSA

3.领域实现:

以问题域为出发点的DSSA和以解决域为出发点的软件架构风格。

基于架构的软件开发:

1.架构需求

2.架构设计

3.架构文档化

4.架构复审

5.架构实现

6.架构演化

软件架构评估:

2016.9.1

敏感点:是一个或多个构件的特性。

是实现一个特定质量属性的关键特征,该特征为一个或多个软件构件所共有。

权衡点:是影响多个质量属性的特性,是多个质量属性的敏感点。

架构权衡分析方法:ATAM

4个主要的活动阶段:需求收集,架构视图描述,属性模型构造和分析,架构决策与折中

软件架构分析方法:SAAM

软件产品线

设计模式

企业服务总线(ESB):是由中间件技术实现并支持SOA的一组基础架构,支持异构环境中的服务,消息以及基于事件的交互,并且具有适当的服务级别和可管理性。

----------------------------------------------------------------------------------------------------------

第13章 系统安全性和保密性

2016.8.22

对称加密:FDEA,IDEA,DES,IDEA,RC-5

非对称加密:RSA,ECC

PKI:认证中心(CA),证书库,密钥备份及恢复系统,证书作废处理系统,客户端证书处理系统

数字签名的算法:Hash签名,DSS签名,RSA签名

数字信封

PGP是一个基于RSA公钥加密体系的邮件加密软件。

单点登录:Kerberos

IPSec:网络安全协议,保护TCP/IP

SSL:

SET:信用卡

-----------------------------------------------------------------------------------------------------------------

第14章 系统可靠性

可靠性设计:

一:冗余技术:

1.结构冗余:静态冗余,动态冗余,混合冗余

2.信息冗余

3.时间冗余

4.冗余附加技术

二:软件容错

1.恢复块方法

2.N版本程序设计

3.防卫式程序设计

三:集群技术

1.集群的分类:高性能计算科学集群,负载均衡集群,高可用性集群

2.集群的硬件配置:镜像服务器双机,双机与磁盘阵列柜,光钎通道双机双控集群系统

--------------------------------------------------------------------------------------

第15章 分布式系统

第16章 知识产权与法律法规

第17章 标准化知识

第18章 应用数学

第19章 专业英语

第20章 案例分析试题解答方法

第21章 论文写作方法与范文

你可能感兴趣的:(系统架构设计笔记)