软考知识点复习笔记
Posted dxj1016
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软考知识点复习笔记相关的知识,希望对你有一定的参考价值。
网络安全
病毒及其危害
- 欢乐时光及熊猫烧香均为蠕虫病毒
- CIH则为系统病毒
- 这3者均以感染台式机或服务器为主,且产生较早;
- X卧底则是新近产生的、通过木马形式传播、目标为智能手机的病毒。
网络攻击
- 特洛伊木马是附着在应用程序中或者单独存在的一些恶意程序
- SYN Flooding攻击以多个随机的源主机地址向目的路由器发送SYN包,在收到目的路由器的SYNACK后并不回应,于是目的路由器就为这些源主机建立大量的连接队列,由于没有收到ACK一直维护着这些队列,造成了资源的大量消耗而不能向正常请求提供服务,甚至导致路由器崩溃。服务器要等待超时才能断开己分配的资源,所以SYN Flooding攻击是一种DoS攻击。
- 端口欺骗攻击是采用端口扫描找到系统漏洞从而实施攻击。
- IP欺骗攻击是产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身份。
Dos攻击:拒绝服务,目的是使计算机或网络无法提供正常的服务。最常见的Dos攻击有计算机网络带宽攻击和连通性攻击。
知识产权知识
职务作品
- 职务作品:公民为完成法人或者其他组织工作任务所创作的作品是职务作品
- 一般职务作品:虽是为完成工作任务而为,但非经法人或其他组织主持,不代表其意志创作,也不由其承担责任的职务作品。
- 一般职务作品著作权:作者享有
- 一般职务作品使用权:法人或其他组织享有在其业务范围内优先使用的权利,期限为两年。优先使用权是专有的,未经单位同意,作者不得许可第三人以与法人或其他组织使用的相同方式使用该作品。在作品完成两年内,如单位在其业务范围内不使用,作者可以要求单位同意由第三人以与法人或其他组织使用的相同方式使用,所获报酬,由作者与单位按约定的比例分配。
- 特殊的职务作品:指著作权法第16条第2款规定的两种情况一是主要利用法人或者其他组织的物质技术条件创作,并由法人或者其他组织承担责任的工程设计、产品设计图、计算机软件、地图等科学技术作品;二是法律、法规规定或合同约定著作权由单位享有的职务作品。
- 特殊的职务作用著作权:除署名权以外,著作权的其他权利由法人或者其他组织(单位)享有。
侵权
- 软件的复制品持有人不知道也没有合理理由应当知道该软件是侵权复制品的,不承担赔偿责任;但是,应当停止使用、销毁该侵权复制品。
- 如果停止使用并销毁该侵权复制品将给复制品使用人造成重大损失的,复制品使用人可以在向软件著作权人支付合理费用后继续使用。
- 如果软件复制品持有人在知道所持有软件是非法复制品后继续使用给权利人造成损失的,应该承担赔偿责任。
多媒体基础知识
- 声音信号是一种模拟信号,计算机要对它进行处理,必须将它转换成为数字声音信号,即用二进制数字的编码形式来表示声音,通常将这一过程称为数字化过程。声音信号数字化过程中首先是将模拟信号转换成离散信号,即A/D转换(模数转换)。
- dpi是描述图像分辨率的单位,表示每英寸多少像素点,即组成一幅图像的像素密度。
- dpi实质上是图像数字化的采样间隔,由它确立组成一幅图像的像素数目。
- 对同样大小的一幅图,如果组成该图像的图像像素数目越多,则说明图像的分辨率越高,图像看起来就越逼真。相反,图像则显得越粗糙。因此,不同的分辨率会造成不同的图像清晰度。
- 存储每个像素所用的位数是用来度量图像的分辨率的。像素深度确定彩色图像的每个像素可能有的颜色数,即确定彩色图像中可出现的最多颜色数。显示屏上能够显示出的像素数目是指显示分辨率。
- 媒体分类:感觉媒体,表示媒体,表现媒体,存储媒体,传输媒体
- 表现媒体指实现信息输入和输出的媒体,如键盘、鼠标、扫描仪、话筒、摄像机等为输入媒体;显示器、打印机、喇叭等为输出媒体。硬盘属于存储媒体;光缆属于传输媒体;图像属于感觉媒体。
软件开发过程模型的基本概念
- 统一过程模型是一种“用例和风险驱动,以架构为中心,迭代并且增量”的开发过程,由UML方法和工具支持,定义了不同阶段及其制品。
- 起始阶段专注于项目的初创活动。
- 精化阶段理解了最初的领域范围之后,进行需求分析和架构演进。
- 构建阶段关注系统的构建,产生实现模型。
- 移交阶段关注于软件提交方面的工作,产生软件增量。
- 产生阶段运行软件并监控软件的持续使用,提供运行环境的支持,提交并评估缺陷报告和变更请求。
项目管理及工具技术
- PERT图可以清晰地表示各任务的开始时间和结束时间以及各任务之间的依赖关系,但是无法很好地表示各任务之间的并行情况。
- Gantt图能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性。但是它不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。
- AOV网:有向图中,用顶点表示活动,用有向边表示活动之间开始的先后顺序,则称这种有向图为AOV网络;AOV网络可以反应任务完成的先后顺序(拓扑排序)。
- AOE网:在AOV网的边上加上权值表示完成该活动所需的时间,则称这样的AOV网为AOE网
- 关键路径:在AOE网中,从始点到终点具有最大路径长度(该路径上的各个活动所持续的时间之和)的路径为关键路径。
软件需求分类基础知识
- 软件需求是软件系统必须完成的事以及必须具备的品质。
- 软件需求包括功能需求、非功能需求和设计约束三个方面的内容。
- 功能需求是所开发的软件必须具备什么样的功能
- 非功能需求是指产品必须具备的属性或品质,如可靠性、性能、响应时间和扩展性等等;
- 设计约束通常对解决方案的一些约束说明。
- “软件产品必须能够在3秒内对用户请求作出响应”主要表述软件的响应时间,属于非功能需求。
软件测试基础知识
- 单元测试是在模块编写完成且无编译错误后进行,侧重于模块中的内部处理逻辑和数据结构;
- 接受测试主要是用户主的测试;
- 安装测试是将软件系统安装在实际运行环境的测试;
- 回归测试是在系统有任何修改的情况下,需要重新对整个软件系统进行的测试。
程序语言翻译基础知识
- 编译和解释方式是翻译高级程序设计语言的两种基本方式。
- 解释程序也称为解释器,它或者直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行;
- 编译程序(编译器)则首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序。
- 这两种语言处理程序的根本区别是在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释器。
- 解释器翻译源程序时不产生独立的目标程序,而编译器则需将源程序翻译成独立的目标程序。
程序语言知识
- 调用函数和被调用函数之间交换信息的方法主要有两种一种是由被调用函数把返回值返回给主调函数,另一种是通过参数传递信息。
- 函数调用时实参与形参间交换信息的基本方法有传值调用和引用调用两种。
- 若实现函数调用时实参向形参传递相应类型的值,则称为是传值调用。这种方式下形参不能向实参传递信息。实参可以是变量,也可以是常量和表达式。
- 引用调用的实质是将实参变量的地址传递给形参,因此,形参是指针类型,而实参必须具有左值。变量具有左值,常量没有左值。被调用函数对形参的访问和修改实际上就是针对相应实际参数所作的访问和改变,从而实现形参和实参间双向传递数据的效果。
- 编译过程中,变量分配存储单元所用的地址是逻辑地址,程序运行时再映射为物理地址
数据流图
DFD进行数据流建模时,应该注意一下几点
- 加工处理和数据流的正确使用,如一个加工必须既有输入又有输出;数据流只能和加工相关,即从加工流向加工,数据源流向加工或加工流向数据源
- 每个数据流和数据存储都要在数据字典中有定义,数据字典将包括各层数据流图中数据元素的定义
- 数据流图中最底层的加工处理必须有加工处理说明
- 父图和子图必须平衡,即父图中某加工的输入输出(数据流)和分解这个加工的子图的输入输出数据流必须完全一致,这种一致性不一定要求数据流的名称和个数一一对应,但他们在数据字典中的定义必须一致,数据流或数据项既不能多也不能少
- 加工处理说明和数据流图中加工处理涉及的元素保持一致。例如,在加工处理说明中,输入数据流必须说明其如何使用,输出数据流说明如何产生或选取,数据存储说明如何选取、使用或修改
- 一幅图中的图元个数控制在7+2以内。
软件复杂性方面的基础知识
- 软件复杂性度量是软件度量的一个重要分支。
- 对于软件复杂性度量的主要参数有
1. 规模,即总共的指令数,或源程序行数。
2. 难度,通常由程序中出现的操作数的数目所决定的量来表示。
3. 结构,通常用与程序结构有关的度量来表示。
4. 智能度,即算法的难易程度。 - 软件复杂性主要表现在程序的复杂性。
- 程序的复杂性主要指模块内程序的复杂性。
- McCabe度量法是一种基于程序控制流的复杂性度量方法。
- McCabe复杂性度量又称为环路度量,它认为程序的复杂性很大程度上取决于控制的复杂性。
- 单一的顺序程序结构最为简单,循环和选择所构成的环路越多,程序就越复杂。这种方法以图论为工具,先画出程序图,然后用该图的环路数作为程序复杂性的度量值。程序图是退化的程序流程图,也就是说,把程序流程图中每个处理符号都退化成一个结点,原来连接不同处理符号的流线变成连接不同点的有向弧,这样得到的有向图就叫做程序图。程序图仅描述程序内部的控制流程,完全不表现对数据的具体操作以及分支和循环的具体条件。根据图论,在一个强连通的有向图G中,环的个数V(G)由以下公式给出V(G)=m-n+2p其中,V(G)是有向图G中的环路数,m是图G中弧的个数,n是图G中的结点数,P是G中的强连通分量个数。在一个程序中,从程序图的入口点总能到达图中的任何一个结点,因此,程序总是连通的,但不是强连通的。为了使程序图成为强连通图,从图的入口点到出口点加一条用虚线表示的有向边,使图成为强连通图,这样就可以使用上式计算环路复杂性了。对于题目中的程序图,其中结点数n=
9,弧数m=11,p=1,则有V(G)=m-n+2p=11-9+2=4即McCabe环路复杂的度量值为4。
软件评审方面的基础知识
本题考查软件评审方面的基础知识。通常,把“质量”理解为“用户满意程度”。为了使得用户满意,有两个必要条件:①设计的规格说明书符合用户的要求,这称为设计质量;②程序按照设计规格说明所规定的情况正确执行,这称为程序质量。设计质量评审的对象是在需求分析阶段产生的软件需求规格说明、数据需求规格说明,在软件概要设计阶段产生的软件概要设计说明书等。通常从以下几个方面进行评审①评价软件的规格说明是否合乎用户的要求,即总体设计思想和设计方针是否明确;需求规格说明是否得到了用户或单位上级机关的批准;需求规格说明与软件的概要设计规格说明是否一致等。②评审可靠性,即是否能避免输入异常(错误或超载等)、硬件失效及软件失效所产生的失效,一旦发生应能及时采取代替手段或恢复手段。③评审保密措施实现情况,即是否对系统使用资格进行检查;是否对特定数据、特定功能的使用资格进行检查;在检查出有违反使用资格的情况后,能否向系统管理人员报告有关信息;是否提
软件过程模型
- 瀑布模型将软件生存周期各个活动规定为线性顺序连接的若干阶段的模型,规定了由前至后,相互衔接的固定次序,如同瀑布流水,逐级下落。这种方法是一种理想的现象开发模式,缺乏灵活性,特别是无法解决软件需求不明确或不准确的问题。
- 演化模型从初始的原型逐步演化成最终软件产品,特别适用于对软件需求缺乏准确认识的情况。
- 螺旋将瀑布模型与快速原型模型结合起来,并且加入两种模型均忽略了的风险分析,适用于复杂的大型软件。
- 增量开发是把软件产品作为一系列的增量构件来设计、编码、集成和测试,可以在增量开发过程中逐步理解需求。
软件质量
- 程序质量评审通常是从开发者的角度进行,与开发技术直接相关,考虑软件本身的结构、与运行环境的接口以及变更带来的影响等。
- 软件结构包括功能结构、功能的通用性、模块的层次性、模块结构和处理过程的结构
- 模块结构包括控制流结构、数据流结构、模块结构与功能结构之间的对应关系。
设计模式
- 策略(Strategy)设计模式定义一系列算法,把它们一个个封装起来,并且使它们可相互替换。这一模式使得算法可独立于它的客户而变化。
- 抽象工厂(Abstract Factory)模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类。
- 观察者(Observer)模式定义对象间的一种一对多的依赖关系,当一个对象的状恶发生改变时,所有依赖于它的对象都得到通知并被自动更新。其别名为发布-订阅(Publish-Subscribe)模式。
- 状态(State)模式是使得一个对象在其内部状态改变时通过调用另一个类中的方法改变其行为,使这个对象看起来如同修改了它的类。
- 适配器(Adapter)模式将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
- 组合(Composite)模式将对象组合成树形结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。
- 组件Component为组合的对象声明接口,通常定义父组件引用,Leaf和Composite类可以继承这个引用以及管理这个应用的那些操作。
- 装饰器(Decorator)模式描述了以透明围栏来支持修饰的类和对象的关系,动态地给一个对象添加一些额外的职责,从增加功能的角度来看,装饰器模式相比生成子类更加灵活。
以上是关于软考知识点复习笔记的主要内容,如果未能解决你的问题,请参考以下文章