软件设计师复习_第1页
软件设计师复习_第2页
软件设计师复习_第3页
软件设计师复习_第4页
软件设计师复习_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件设计师复习1 计算机系统知识1.1 计算机系统硬件基本组成1、 【运算器】算数逻辑单元(ALU);累加寄存器(AC);数据缓冲寄存器(DR);状态条件寄存器(PSW);2、 【控制器】负责指令译码,发出控制信号;保证指令正确执行,处理异常事件;(1) 指令寄存器IR:对用户完全透明;存放操作码和地址码;(2) 程序计数器PC:跟踪指令地址;程序员可访问;(3) 地址寄存器AR:存放CPU所访问的内存单元地址;(4) 指令译码器ID:分析指令,指令译码,发出控制信号。3、 【数据表示】反码,补码;采用补码可以简化计算机运算部件的设计;4、 【校验码】海明码利用多组数位的就行来检错和纠错;1.

2、2 计算机体系结构5、 【寻址方式】采用不同寻址方式的目的是扩大寻址空间并提高编程灵活性;6、 【Cache】在程序执行过程中,Cache与主存的地址映像由专门的硬件自动完成;7、 【主存容量】计算机存储器的最大容量取决于主存的地址位数;8、 【存储器分类】存储器按寻址方式分类为随机存储器(RAM、硬盘),顺序存储器(SAM、磁带)、直接存储器(DAM,磁盘)。按内容访问的是相联存储器(比较关键字)。9、 【虚拟存储器】通常由主存和辅存两级存储器构成;10、 【内存与接口编址方式】(1) 独立编址:内存地址与接口地址完全独立,缺点是用于接口的指令太少、功能繁琐;(2) 统一编址:内存地址与接口

3、地址共用地址空间,缺点是内存地址不连续;11、 【统一编址】输入输出操作通过访存指令来完成。12、 【直接存储器存取DMA】在主存和外设之间建立直接的数据通路,只需CPU在开始和结束时介入处理,而无需干预数据传送过程。在数据传送期间,CPU不能使用总线。13、 【中断查询】中断向量可提供中断服务程序的入口地址;14、 【总线结构】内部总线;系统总线:ISA总线、EISA总线、PC2总线;外部总线:RS-232C、SCSI总线、USB、IEEE-1394、IEEE-488。15、 【总线分类】数据总线、地址总线、控制总线;16、 【总线复用】减少总线中信号线的数量;1.3 计算机安全性可靠性17

4、、 【网络攻击手段】拒绝服务攻击:占用系统资源;ARP攻击:伪造网关ARP报文是的数据包无法发送到网关;18、 【计算机病毒】宏病毒一般感染DOC文件;19、 【安全级别】IE浏览器中安全级别最高的区域设置是受限站点;20、 【身份验证】集成Windows身份验证具有最高安全级别;21、 【特洛伊木马】通过内部发起与外部主机建立联系,由外部主机控制并盗取用户信息;22、 【漏洞扫描】可获取某FTP服务器中是否存在科协目录的信息;23、 【数据加密】防范网络监听的最有效方法;24、 【信息摘要】用于验证通信对方的身份,防止假冒;25、 【加密认证】用户A的数字签名由A的私钥加密,使用A的公钥验证

5、;CA的私钥用于数字证书加密,CA的公钥用于数字证书验证。26、 【公钥体系】公钥加密和认证,私钥解密和签名;27、 【SSL协议】与TLS最接近的安全协议是SSL。HTTPS是SSL的一种典型应用。28、 【计算机可靠性模型】计算串联并列系统的可靠性。2 程序语言基础知识2.1 程序语言概述1、 【解释程序】源程序或解释程序要参与运行,不生成独立的目标程序。2、 【编译程序】机器上只执行目标程序,不执行源程序或编译程序。必须进行词法、语法和语义分析,然后再生成目标代码;3、 【数据类型】作用:合理分配存储单元;检查数据对象;规定取值范围;4、 【函数调用】传值方式:实参的值传给形参;传址方式

6、:实参的地址传给形参;2.2 语言处理程序基础5、 【中间代码表达式】三元式、四元式、树;6、 【后缀式(逆波兰式)】“ab-cd+*”等价于“(a-b)*(c+d)”;7、 【正规表达式】或运算符“a|b”,重复运算赋“(a)*”。8、 【标记语言】PHP不是标记语言,而是脚本语言;3 操作系统知识3.1 处理机管理1、 【PV操作】信号量S为可用资源数。P(申请资源):S=S-1;V(释放资源):S=S+1;2、 【死锁】并发进程资源竞争占用,避免死锁的条件;3、 【三态模型】进程调用Send原语被设置成“等信箱”状态的原因是信箱已存满信件。3.2 存储管理4、 【分页存储管理】【分段存储

7、管理】物理地址=基地址+段内地址(段内地址=段长);5、 【虚拟存储管理】缺页中断;页面置换次数=缺页中断次数-3;3.3 设备管理6、 【磁盘调度】旋转调度算法:先移臂,在旋转;7、 【SCAN算法(电梯调度算法)】优先考虑磁头的当前移动方向;3.4 文件管理8、 【相对路径】Java-prog;9、 【存储空间】文件管理系统在磁盘上建立位示图(Bitmap),若系统字长为32位,则4096号物理块在位示图中的第129个字节被描述(每个物理块用1个比特描述);若磁盘容量为200GB,物理块的大小为1MB,则位示图的大小为6400个字(描述6400*32=200GB/1MB个物理块)。3.5

8、作业管理10、 【文件索引】设文件索引节点中有8个地址项,每个地址项大小为4字节,其中5个地址项为直接地址索引,2个地址项是一级间接地址索引,1个地址项是二级间接地址索引,磁盘索引块和磁盘数据块大小均为1KB。若要访问文件的逻辑块号分别为5和18,则系统应该分别采用一级间接地址索引和二级间接地址索引;而且可表示的单个文件最大长度是66053KB;【要点解析】5个地址项可分别对应5个逻辑块,ID0ID4;1个一级间接地址索引可对应1KB/4=256个逻辑块,因此2个一级间接地址索引可对应的逻辑块为ID5ID511;1个二级间接地址索引可对应256*256=65536个逻辑块,因此对应的逻辑块为I

9、D51265535。最大文件长度为5+512+65536=66053。11、 【请求页式存储管理方案】假定页面大小为4KB,逻辑地址为十六进制3C18H,则对应第4页(3C18H/4KB),页号为3。4 系统开发和运行知识4.1 软件工程基础知识1、 【软件生存周期模型】瀑布模型:需求明确,变动小,替换原有系统,开发大规模系统,具备开发经验;V模型:基于瀑布模型,强调项目需要经历若干个测试级别,设计活动与分析设计关联;原型模型:捕获系统需求;演化模型:迭代开发;螺旋模型:项目庞大,风险控制;喷泉模型:用户需求为驱动。增量模型:快速构造可运行产品;2、 【喷泉模型】以对象为驱动,适合面向对象的开

10、发方法;克服瀑布模型不支持软件重用和多项开发活动集成的局限性;开发活动需要重复多次,在迭代中完善系统;3、 【成本估算】(1) 专家判断法:易受主观性影响;(2) 启发式法(COCOMO模型):参数难以确定;(3) 机器学习法:难以描述训练数据的特征和相似性;4、 【风险分析】(1) 风险识别:建立风险条目检查表,确定对项目计划的威胁;(2) 风险预测:评估概率(不确定性)、描述后果(损失);(3) 风险评估:定义风险参照水准,估计风险影响的大小;(4) 风险控制:建立处理风险的管理;5、 【系统开发计划】系统开发计划文档有:任务分解表、PERT图、甘特图、预算分配表。6、 【进度管理】Gan

11、tt图:不能反映任务之间的依赖关系。PERT图:不能反映任务之间的并行关系;关键路径是耗时最长的一条路径。松弛时间是任务最早开始时间与最晚开始时间之差。7、 【软件配置管理】变更标识、变更控制、版本控制;8、 【配置数据库】开发库、受控库、产品库;9、 【过程改进】软件质量依赖于开发过程,个人因素占主导作用;需要制定过程改进目标;需要进行培训;需要反复进行;改进框架包括评估、计划、改进、监控;评估后把发现的问题转化为改进计划;10、 【软件过程管理】(1) 【软件过程能力成熟度模型(CMM)】初始级:无序混乱;可重复级:跟踪项目费用、进度和功能;已定义级:标准软件过程;已管理级:详细度量,定量

12、的理解和控制;优化级:新思想、新技术;(2) 【统一过程(UP)】起始阶段:生命周期目标;精化阶段:需求分析,生命周期架构;构建阶段:实现模型,初始运作功能,产生集成的软件产品;移交阶段:产品发布;(3) 【敏捷开发】属于小型发布最佳实践:极限编程XP:沟通、简单、反馈、勇气;水晶法Crystal:策略、约定、方法;并列争球法Scrum:迭代、冲刺;自适应软件开发ASD:人员协作、团队组织。11、 【面向对象技术】抽象是为了简化构件设计且无需改变其功能;重构是重新审视需求和设计;12、 【系统设计阶段】复审期间应该从容易修改、模块化和功能独立的目的出发,评价软件的结构和过程;13、 【软件质量

13、】(1) 效率性:软件的时间和资源质量子特性;(2) 功能性:将每个用户数据隔离;(3) 可靠性:系统在给定时间间隔内无失效运行的概率。与软件产品的开发方式无关;(4) 可维护性:可理解性、可测试性、可修改性;(5) 易测试性:为确认修改软件所需努力有关的软件属性;14、 【软件复杂性】McCabe度量性度量(环路复杂度)V(G)=m-n+2p,其中m为边数(两端必须是顶点),n为顶点数,p为相连通度;15、 【软件复杂性度量】规模、难度、结构、智能度16、 【软件评审】设计质量的评审内容不包括模块层次;17、 【软件容错技术】结构冗余按照工作方法可分为静态、动态、混合冗余;18、 【冗余技术

14、】屏蔽软件错误的容错系统中,冗余附加技术的构成包括:冗余备份程序的存储及调用;实现错误检测和错误恢复的程序;实现容错软件所需的固化程序;4.2 系统分析基础知识19、 【数据流图】每条数据流的起点或终点必须是加工;每个加工必须有输入数据流和输出数据流。4.3 系统设计知识20、 【系统设计步骤】(1) 需求分析:确定软件的功能、性能、数据和界面要求;(2) 概要设计:确定软件的规模划分及模块之间的调用关系;(3) 详细设计:算法设计、数据结构设计、数据库物理设计;21、 【逻辑内聚】模块通过参数执行逻辑上相似的几个功能。22、 【耦合性】无直接耦合;数据耦合:模块之间有值传递;标记耦合:传递数

15、据结构地址;控制耦合:传递控制变量;公共耦合:公共数据环境;内容耦合:直接使用其他模块的内部数据;23、 【模块划分】一个模块的作用分为应该在其控制范围之内。24、 【Jackson法】面向数据结构的设计方法;4.4 系统实施知识25、 【软件测试】一个成功的测试能够发现至今未发现的错误;26、 【回归测试】确认在改正当前故障的同时没有引入新的故障;27、 【系统测试】单元测试:内部处理逻辑和数据结构;集成测试:模块组合;确认测试:功能和性能是否满足用户需求(有效性测试);系统测试;28、 【白盒测试】逻辑覆盖:逻辑语句的覆盖;循环覆盖;基本路径测试:每条可执行语句都有执行;语句覆盖(最弱的覆

16、盖准则);29、 【系统文档】高质量文档的特性:针对性、精确性、清晰性、完整性、灵活性;4.5 系统运行和维护30、 【软件维护】(1) 正确性维护:修改开发阶段已经发生而测试阶段尚未发现的错误,防错性程序设计;(2) 适应性维护:为适应信息技术和管理需求变化的修改;(3) 完善性维护:为扩充功能和改善性能的修改,如修改算法提高效率、增加监控设施;(4) 预防性维护:为适应未来的软硬件环境变化,主动增加预防性的新功能;5 网络基础知识5.1 网络概述1、 【三网合一】电信网,广播网,互联网。(没有物联网)5.2 网络互联硬件2、 【集线器】工作在物理层,扩大传输距离,没有自动寻址的功能;3、

17、【交换机】工作在数据链路层,基于MAC地址识别,能够在多个端口之间建立并发连接,但没有过滤广播通信的功能;5.3 网络协议与标准4、 【帧中继】比X.25的通信开销少,传输速度更快,但是比异步传输模式慢;与DDN相比更灵活,费用更低;帧长可变;5、 【地址解析协议(ARP)】属于网络层协议,实现IP地址与MAC地址之间的变换;6、 【传输控制协议(TCP)】属于传输层协议,通过3次握手建立连接;5.4 Internet及应用7、 【IP地址分类】网络地址、主机地址;子网划分(A类0;B类10;C类110);8、 【DNS】刷新DNS解析器缓存命令:ipconfig/flushdns;9、 【A

18、SP】response对象可以修改cookie中的值;10、 【WWW】HTTP中读取一个网络的操作方法是GET;11、 【SMTP】SMTP传输的邮件报文采用ASCII格式表示;6 多媒体基础知识6.1 声音1、 【合成技术】WaveTable(更优)和FM两种;6.2 图形和图像2、 【图像压缩编码】哈夫曼编码属于熵编码;3、 【多媒体压缩编码】MPEG1用于VCD;MEPG2用于DVD;MPEG-4多媒体应用标准;MPEG-7多媒体内容描述接口标准;4、 【图像文件格式】GIF图像文件可轮流显示图片;CIF视频格式图像分辨率为352*288;JPG属于静态图像文件格式;7 数据库技术基础

19、7.1 基本概念1、 【数据库设计】需求分析:确定系统边界;逻辑设计:关系规范化;概要设计:确定软件模块划分及调用关系;7.2 数据模型2、 【E-R模型】实体、联系、属性;关系模型;3、 【属性】简单属性:不可再分的属性,如学号;复合属性:由简单属性组成,如学生(学号,姓名);单值属性:对于一个实体只有一个值;多值属性:对于一个实体可包含多个值,如学生(学号,姓名,家庭成员多值);7.3 关系数据库SQL语言简介4、 【数据查询】若有关系和,则等价的SQL语句是:SELECT R.C, R.D, S.E FROM R,S WHERE R.DS.C。5、 【SQL语句】分组语句:GROUP B

20、Y *;修改语句:UPDATE;6、 【访问控制】将Student表的插入权限赋予用户UserA,并允许其将权限授予他人的SQL语句是:GRANT INSERT ON TABLE Students TO UserA WITH GRANT OPTION。7.4 关系数据库规范化7、 【关系模型】采用二维表格结构;8、 【函数依赖】关系是属性集上的一个关系模式,和是U的子集,若Y的取值决定于,则称依赖于,记为。9、 【完全函数依赖】的属性值必须由的全体属性决定;10、 【候选码(候选关键字)】若有,其中,则关系有2个候选码和,且有3个主属性和0个非主属性。11、 【规范化】(1) 1NF:每一个分

21、量都是不可再分的数据项。容易引起插入删除异常;(2) 2NF:每一个非主属性完全依赖于码。1NF消除了非主属性对码的部分函数依赖;(3) 3NF:2NF消除了非主属性对码的传递函数依赖;(4) BCNF;3NF消除了主属性对码的部分和传递函数依赖;7.5 数据库的分析与设计12、 【关系模式】对于实体E1与E2之间的多对多联系,应该将E1与E2的码加上联系上的属性独立构成一个关系模式。8 数据结构8.1 线性结构;1、 【单向循环链表】从表中任一节点出发都能遍历整个链表;2、 【串的匹配模式】KMP匹配算法;nextj表示在长度为j的模式串中找到最大的k值,使模式串的前k-1个字符与最后k-1

22、个字符一致;3、 【串链表】在涉及子串的运算中,缺点是不便于求子串;8.2 树4、 【叶节点】叶数,其中为节点的度,为节点个数。5、 【完全二叉树】节点依编号排列。高度与节点数之间存在确定的关系;6、 【二叉树的遍历】根据本节点的访问次序分为:前序;中序;后序;7、 【哈夫曼树(最优二叉树)】路径加权和最小;8.3 图8、 【邻接矩阵】完全图适合采用邻接矩阵;9、 【顶点的度】所有顶点的度数之和为边数的2倍(2e)。10、 【拓扑排序】若顶点vi到vj有一条路径,则其拓扑序列中vi必然在vj之前;8.4 查找11、 【哈希表】若地址已被占用,则使用下一个地址;8.5 排序12、 【直接插入排序

23、】将元素ai依次与前面的元素比较(就近开始)进行插入排序;13、 【归并排序】依次将序列分为大小为2i的组,各组内部进行排序;基于分治法; 14、 【快速排序】属于分治算法,算法不稳定,最坏情况下时间复杂度为。9 算法设计与分析9.1 算法分析基础1、 【时间复杂度】循环次数n和嵌套层数k。2、 【空间复杂度】只看辅助变量个数,通常是。3、 【递归式】主定理;对于递归式,若存在:(1) ,其中,则;(2) ,其中,则;(3) ,其中,则。9.2 几种重要算法4、 【分治法】将一个大问题分解成若干个小问题逐一求解再合并,如Hanoi塔问题;5、 【动态规划法】递归地定义最优解。最优子结构问题,重

24、叠子问题。6、 【贪心法】只是局部最优,如Dijkstra算法,背包问题。7、 【回溯法】放弃当前候选解,寻找下一个候选解的过程。棋盘摆放“皇后”问题;10 面向对象技术10.1 面向对象的基本概念1、 【对象】包括对象名、属性、操作;2、 【类】一组对象的抽象定义;属性声明为private是为了实现数据隐藏;3、 【封装】是一种信息隐藏技术;10.2 面向对象程序设计4、 【静态成员】类的静态方法只能访问类的静态数据成员;静态数据成员可悲该类的所有方法访问;该类的对象共享其静态数据成员;静态成员的值可以修改;10.3 面向对象开发技术5、 【设计原则】开闭原则:对扩展开发,对修改关闭;代换原

25、则:基类对象可以出现的地方,子类对象一定可以出现;倒转原则:针对接口编程,而不针对实现编程(依赖于抽象,而不依赖于实现);10.4 面向对象分析与设计方法6、 【OOA】第一步是确定问题域;7、 【对象分析阶段】认定对象,组织对象,描述对象简单间的相互作用;(1) 实体类是应用领域中的核心类;(2) 边界类是系统内部对象和系统外部参与者的联系媒介;(3) 控制类主要是协调上述两种类对象之间的交互;8、 【统一建模语言(UML)】接口用于声明对象类所需要的服务;10.5 设计模式9、 【关联】组合是一种很强的“拥有”关系;聚合同样表示“拥有”关系,但是“部分”对象可以在不同的“整理”对象之间共享

26、,并且生命周期也可以不同。10、 【多重度】一个类的实例能与另一个类的多少个实例相关联。11、 【部署图】表示软件组件和硬件之间的物理关系,通常在实施阶段使用;12、 【用例】业务用例和参与者一起描述组织支持的业务过程,而业务对象模型描述业务结构以及元素何如完成业务用例;13、 【视图】设计视图的静态方面由类图和对象图表现,而动态方面由交互图、状态图和活动图表现;14、 【行为设计模式】(1) 单例Singleton设计模式可保证一个雷仅有一个实例;(2) 组合Composite设计模式可将对象组合成树型结构以表示“部分-整体”层次结构;(3) 装饰Decorate设计模式可动态地给一个对象添加一些额外的职责;(4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论