天天看点

软件设计师考点之上午知识点总结100条前言考试结果知识点100条

软件设计师考点之上午知识点总结100条

  • 前言
  • 考试结果
  • 知识点100条

前言

  • 简述

    打工人一枚,于2021年5月29日参加的软设的考试,目前在焦急的等待考试结果中,希望能顺利通过,后续会更新考试结果,下面是备考期间总结的上午考题知识点,与各位同道中人共勉

考试结果

  • 20210712成绩发布

    按照以往的分数线,45分应该算勉强压线过了,希望一切顺利!!!

    软件设计师考点之上午知识点总结100条前言考试结果知识点100条

知识点100条

  1. 媒体的种类:

    感觉媒体、表示媒体、表现媒体(显示媒体)、存储媒体、传输媒体。

    感觉媒体:直接作用于人的感觉器官,使人产生直接感觉的媒体

    表示媒体:是为了加工、处理和传输感觉媒体而人为研究、构造出来的一种媒体,它有各种编码方式,如文本编码、图像编码和声音编码等

    表现媒体:指进行信息输入和输出媒体,如键盘、鼠标、扫描仪、话筒和摄像机等

    存储媒体:用于存储表示媒体的物理介质,如硬盘、软盘、光盘和胶卷等

    传输媒体:用于传输表示媒体的物理介质,如电缆和光缆

  2. 软件工程的基本要素包括哪些:方法、工具和过程
  3. 概要设计完成对各个子系统的划分
  4. 风险优先级根据 风险曝光度 设定
  5. 关键路径是项目中最长的路径
  6. 全局变量、静态局部变量、静态全局变量都存放在静态数据存储区
  7. P(S1) S1 = S1 - 1 若 S1 >= 0 继续,S1 < 0 进入队列。 S1 < 0 进入阻塞队列

    a = V(S1) = S1 + 1 若 S1 > 0 继续,S1 <= 0 进入队列。 S1 = 0 进入队列

    一般是先V(信号量),再P(信号量)

  8. 系统初始化过程可以分为3个主要环节:

    按照自底向上、从硬件到软件的次序依次为:片级初始化、板级初始化和系统级初始化

  9. 螺旋模型考虑风险因素
  10. 水晶方法:包含具有共性的核心元素,每个都含有独特的角色、过程模式、工作产品和实践。

    在敏捷过程的方法中 水晶法 认为每一个不同的项目都需要一套不同的策略、约定和方法论

  11. 淘汰页面应该以是否被修改过为准,淘汰被修改需要将修改的内容进行更新,会有额外开销
  12. 桩程序:在保证被测程序原有逻辑完整性的基础上在程序中插入一些探针,通过探针的执行并抛出程序运行的特征数据,通过对这些数据的分析,可以获得程序的控制流和数据流信息,进而得到逻辑覆盖等动态信息,从而实现测试目的的方法。这些探针被称为桩程序。
  13. McCabe度量法计算环路复杂性为:边数 - 点数 + 2

    点数:8,边数:10。 10 - 8 + 2 = 4;

  14. 软件配置管理的内容不包括:质量控制
  15. 需求进行建模,采用用例图最适合;展示交付系统的软件组成和硬件之间的关系图是 部署图
  16. All-key 关系模型的所有属性组成该关系模式的候选码,称为全码
  17. 遗传算法基本运算过程:初始化 -> 个体评价 -> 选择运算 -> 交叉运算 -> 变异运算
  18. 计算机网络七层模型从下到上依次:物理层->数据链路层->网络层->传输层->会话层->表示层->应用层
  19. 白盒测试实现路径覆盖并不是单独所有箭头走一遍,而是所有箭头组成的组合走一遍
  20. 数字证书包含版本、序列号、签名算法标识符、签发人姓名、有效期、主体名和主体公钥信息等并附有CA的签名

    (1) 用户获取网站的数字证书后通过CA的公钥验证CA的签名,从而确认数字证书的有效性,然后验证网站的真伪。

  21. 语法分析器以单词符号作为输入,分析单词符号串是否形成符合语法规则的语法单位,如表达式、赋值、循环等。
  22. 位示图:是利用二进制的一位来表示磁盘中的一个磁盘块的使用情况。当其值为"0"时,表示对应的盘块空闲;为"1"时,表示已经分配使用。
  23. 外部实体一般为组织机构、人员、第三方系统,试题不是外部实体。
  24. 进程管理
  25. 几大内聚

    (1) 如果一个模块内部的处理成分是相关的,而且这些处理必须以特定的次序执行,则称为过程内聚。

    (2) 如果一个模块完成的功能必须在同一时间内执行(如系统初始化),但这些功能只是因为时间因素关联在一起,则称为时间内聚。

    (3) 如果一个模块的各个成分和同一个功能密切相关,而且一个成分的输出作为另一个成分的输入,则称为顺序内聚。几个逻辑上相关的功能被放在同一模块中,则称为逻辑内聚。如一个模块读取各种不同类型外设的输入。尽管逻辑内聚比偶然内聚合理一些,但逻辑内聚的模块各成分在功能上并无关系,即使局部功能的修改有时也会影响全局,因此这类模块的修改也比较困难。

  26. 磁盘调度管理中,先进行移臂调度寻找磁道,再进行旋转调度寻找扇区
  27. PV操作由P操作原语和V操作原语组成(原语是不可中断的过程),PV操作来实现进程的同步和互斥。PV操作属于
  28. 嵌入式操作系统:可定制性:从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构与功能上的配置,以满足不同应用的需求。

    假设机器字长16位,则每个字可以表示16个磁盘块的占用情况;

    1024*1024/4/64 = 4096

  29. 5大创建型模式;7大结构型模式(代桥组装享外适);11大行为型模式(命迭访中 观模职策 解备状)
  30. 极限编程(XP):测试驱动–强调"测试先行",在编码开始之前,首先将测试写好,而后再进行编码,直至所有的测试都得以通过。
  31. ISO/IEC9126软件质量模型是包括3个层次:质量特性,质量子特性、度量指标
  32. 非直接耦合:两模块之前没有直接关系,它们之间的联系完全是通过主模块的控制和调用实现

    数据耦合:指两个模块之间有调用关系,类似于高级语言的值传递

    标记耦合:指两个模块之间传递的是数据结构,类似于高级语言的引用传递

  33. 设计时必须遵从三个黄金法则:

    置用户于控制之下;减少用户的记忆负担;保持界面的一致。

  34. 根据邻接矩阵的定义,行列数都为结点个数,结点数为5,因此邻居矩阵行列数均为5,即5*%的矩阵。
  35. 根据邻接表的定义,一个顶点的表结点个数为其邻接顶点的个数。
  36. 建立连接进行可靠通信在TCP/IP网络中,应该在传输层完成,在OSI/RM同样在传输层完成
  37. IPv4用32位二进制表示,能够表示的地址空间是232,IPv6用128位二进制表示,能够表示的地址空间是2128。
  38. 系统各阶段主要内容

    (1) 在系统分析阶段的复审过程中,应该指出软件的可移植性问题以及可能影响软件维护的系统界面;

    (2) 在系统设计阶段的复审期间,应该从容易修改、模块化和功能独立的目的出发,评价软件的结构和过程;

    (3) 在系统实施阶段的复审期间,代码复审应该强调编码风格和内部说明文档这两个影响可维护性的因素。可测试性是可维护性的一个评价指标。

    (4) 可维护性是所有软件都应具有的基本特点,必须在开发阶段保证软件具有可维护的特点

  39. 几大排序复杂度分析

    (1) 插入排序在输入数据基本有序的情况下,是其计算时间的最好情况,复杂度为O(n),其他情况下时间复杂度为O(n^2)。

    (2) 快速排序在输入数据有序或者逆序的情况下,是其计算时间的最坏情况,复杂度为O(n^2),其他情况下时间复杂度为O(nlgn)。

    (3) 归并排序和堆排序算法在所有情况下的时间复杂度均为O(nlgn)。

  40. 常用算法复杂度分析

    (1) 动态规划法采用自底向上的方式,复杂度O(nlgn)

    (2) 分治法采用自顶向下,O(nlog2n)

  41. 在UML图中,部署图 用于展示所交付系统中软件和硬件之间的物理关系以及处理节点的组件分布情况。

    一般关联(实线)、依赖(虚线 + 箭头)、聚合(空心菱形虚线)、组合(实心菱形实线)、继承(空心三角+实线)、实现(空心三角+虚线)

    (1) 类中的方法为斜体,表示此类为抽象类

  42. 顺序图 是一种交互图,交互图展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图
  43. 常见协议介绍

    (1) IPSec工作于网络层,为IP数据报文进行加密。

    (2) PP2P工作于数据链路层,用于链路加密。

    (3) HTTPS是HTTP与SSL的结合体,为传输层以上层次数据加密。

    (4) TLS安全传输层协议用于在两个通信应用程序之间提供保密性和数据完整性。

  44. 软件详细设计阶段的主要任务

    对模块内的数据结构进行设计;

    对数据库进行物理设计;

    对每个模块进行详细的算法设计;

    代码设计、输入/输出设计、用户界面设计等其他设计。

  45. 软件概要设计阶段的主要任务

    (1)软件系统总体结构设计,将系统划分成模块;

    确定每个模块的功能;

    确定模块之间的调用关系;

    确定模块之间的接口,即模块之间传递的信息;

    评价模块结构的质量。

    (2)数据结构及数据库设计。

  46. CISC与RISC

    RISC采用组合逻辑控制器(简单指令级,指令复杂度低),CISC普遍采用微程序控制器(复制指令集,指令复杂度高)

  47. 闪存是一种非易失性存储器,即断电数据也不会丢失。因为闪存不像RAM(随机存取存储器)一样以字节为单位改写数据,因此不能取代RAM
  48. 词法分析器所输出单词符号常常表示成如下二元式:单词种别,单词符号的属性值。

    描述词法规则通常用:正规式和有限自动机

  49. 对称加密与非对称加密

    根据密钥的使用方法,可以将密码分为对称密码和公钥密码:

    (1) 对称加密: 加密和解密的秘钥使用的是同一个,如:DES、AEC、MD5和IDEA等

    (2) 非对称加密: 与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)如:RSA、ECC和DSA等

  50. SQL注入攻击的首要目标是获取数据库访问权限
  51. 自然连接 是一种特殊的等值连接:

    (1)两个关系中进行比较的分量必须是相同的属性组;

    (2)在结果中要把重复的属性列去掉。

  52. 对软件著作权的保护只是针对计算机软件和文档,并不包括开发软件所用的思想、处理过程、操作方法或数学概念等
  53. 软件质量特性

    (1) 可靠性 = 1/(1+MTTF[平均无故障时间])

    (2) 可用性 = 1/(1+MTBF[平均失效间隔时间])

    (3) 可维护性 = 1/(1+MTTR[平均修复时间])

  54. WITH GRANT OPTION 表示改用户可以将自己拥有的权限授权给别人
  55. 三元组顺序表和十字链表是对稀疏矩阵进行压缩存储的方式

    稀疏矩阵的三元组表的顺序存储结构称为三元组顺序表,常用的三元组表的链式存储结构是十字链表。

  56. 在求解具有最优子结构和重叠子问题性质的问题时,适用动态规则算法设计策略得到最优解。若了解问题的解空间,并以广度优先的方式搜索解空间,则采用分支限界算法策略。
  57. 各阶段处理错误总结

    (1) 词法分析阶段处理的错误:非法字符、单词拼写错误等

    (2) 语法分析阶段处理的错误:标点符号错误、表达式中缺少操作数、括号不匹配等有关语言结构上的错误

    (3)静态语义分析阶段处理的错误:运算符与运算对象类型不合法等错误

    (4)目标代码生成阶段(执行阶段)处理的错误:动态语义错误,包括陷入死循环、变量取零时做除数、引用数组元素下标越界等错误。

  58. 含n个节点的二叉树有f(n)种形态(注:n!表示n的阶乘)

    f(n) = (2n)! / n!(n+1)!

  59. 线性探查法:将元素的值按散列函数进行哈希计算得到哈希地址,再将元素值存储到该地址。如果该地址已有元素,称之为存在“冲突”,当冲突后,将计算得到的哈希地址+1,再判断该地址是否有元素,如果没有则存入该地址。
  60. CPU组成结构作用

    (1)指令寄存器IR:保存从存储器中读出的当前要执行的指令

    (2)指令译码器ID:用来对指令寄存器中的指令进行译码分析,指出指令的操作种类和寻址方式

    (3)程序计数器PC:用来存放下一条要执行指令的存储器地址,按此地址从对应存储单元取出的内容就是将要执行的指令

  61. 二分查找法,动态规划法

    mid=left+(right-left)/2

  62. 面向对象相关概念

    (1) 面向对象分析:确定系统的功能、性能要求

    (2) 面向对象设计:设计分析模型和实现相应的源代码

    (3) 面向对象程序设计:选用一种面向对象程序设计语言,采用类、对象及其相关概念所进行的程序设计

  63. UML用例图中三种关系

    (1) 包含(include)

    include是一种依赖关系,两个以上用例有共同功能,可分解到单独用例,其中这个提取出来的公共用例称为抽象用例,形成包含依赖;执行基本用例时,每次都必须调用被包含的用例
               
    (2) 扩展(extend)
    如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种事情,则可以断定将这个用例分为一个主用例和一个或多个辅用例进行描述可能更加清晰
               
    (3) 泛化(generalization)
    当多个用例共同拥有一种类似的结构和行为时,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。
               
  64. UML部署图

    部署图展现了运行处理节点以及其中构件的配置。通常一个节点包含一个或多个构件

  65. UML状态图

    状态图展现了一个状态机,它由状态、转换、事件和活动组成。状态图关注系统的动态视图,对接口、类和协作的行为建模尤为重要,它强调对象行为的事件顺序。

    状态图不表示多个对象之间的交互。

  66. 指令 = 操作码字段 + 地址码字段
  67. 覆盖范围由小到大:ZigBee -> 蓝牙 -> WiFi
  68. 快速排序算法采用了分治算法,最好情况下时间复杂度为O(nlgn),最坏情况下时间复杂度为O(n^2)
  69. 关系规范化在数据库设计的逻辑设计阶段进行

    (1)第一范式:1NF强调的是列的原子性,即列的属性不可再拆分

    (2)第二范式:1NF消除了非主属性对码的部分函数依赖

    (3)第三范式:2NF消除了非主属性对码的传递函数依赖

  70. 层次化模型经典三层模型

    (1)核心层:由高端路由器与交换机组成,提供不同区域或者下层的高速连接和最优传送路径

    (2)汇聚层:由用于实现策略的路由器或者交换机构成,将网络业务连接到接入层

    (3)接入层:由连接用户的低端交换机构成,为局域网接入广域网或者终端用户访问网络提供接入

  71. SSH协议在终端设备与远程站点之间建立安全连接
  72. URL包括以下几部分:协议、主机域名、端口号(任选)、目录路径(任选)和一个文件名(任选)

    Protocol://machine.name[:port]/directory/filename

  73. 一个完整、通用的层次型域名由4部分组成

    计算机主机名.本地名.组名.最高层域名

    列:www.abc.com中的www是主机名,abc.com是域名

    www.abc.com和abc.com打开不是同一页面,因为www的域名其实只是不带www的主域名下的一个特殊的二级域名

  74. 网络系统中通常把Web服务器置于DMZ区

    DMZ是为了解决安装防火墙后外部网络不能访问内部网络服务器的问题而设立的一个非安全系统与安全系统之间的缓冲区

  75. ICMP协议属于因特网中的网络层协议,ICMP协议数据单元封装在IP数据报
  76. 海明码校验位个数计算公式

    设数据位为m,校验位个数为k,如果满足 2^k-1 >= m+k(m+k为编码后的数编总长度),则在理论上k个校验码就可以判断信息码和校验码哪位出现问题

  77. 数字加密和数字签名区别

    (1) 数字加密:使用接收者的公钥加密,接收者用自己的私钥解密

    (2) 数字签名:将摘要信息用发送者的私钥加密,与原文一起传送给接收者。接收者只有用发送者的公钥才能解密被加密的摘要信息。

  78. 数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体进行定义和描述,其目的是对数据流图中的各个元素做出详细的说明。其条目有:数据项、数据流、数据存储、基本加工等。
  79. 著作权中,署名权、修改权、保护作品完整权的保护期不受限制
  80. 注册商标:有效期为10年(若注册人死亡或倒闭1年后,未转移则可注销,期满后6个月内必须续注)

    发明专利权:保护期限为20年(从申请日开始)

    实用新型和外观设计专利权:保护期限为10年(从申请日开始)

  81. COCOMO || 的层次结构中有3种不同规模估算选择:对象点、功能点和代码行
  82. 声明式系统函数式程序设计语言:LISP

    逻辑编程语言:Prolog

    命令式系统过程式语言:C、Fortran

    面向对象程序设计语言:Java/C++

    面向对象解释型设计语言:Python

  83. 编译是指将源程序转化为目标计算机上可执行二进制代码;解释是指源程序不做任何变动,以源代码的形式提供在目标计算机上执行
  84. **文件控制块(FCB)**的集合就是目录文件(目录),目录文件直接影响到系统是否正常工作
  85. IO设备管理软件一般分为4个层次:用户进程 -> 设备无关软件 -> 设备驱动程序 -> 中断处理程序 -> 硬件
  86. 软件维护工具主要有:

    a. 版本控制工具;

    b. 文档分析工具;

    c. 开发信息库工具;

    d. 逆向工程工具;

    e. 再工程工具;

    f. 配置管理支持工具

  87. 目前多数编译程序进行语义分析的方法是采用语法制导翻译法,语法制导翻译法使用属性文法为工具来描述程序设计语言的语义
  88. 网桥、交换机工作在数据链路层;路由器工作在网络层;中继器工作在物理层,主要是用来扩大网络传输的距离。
  89. 结构化分析(Structured Analysis,SA)是一种面向数据流的需求分析方法,适用于分析大型数据处理系统。
  90. **UNIX系统选择用"文件"**这个概念作为一切资源的抽象表示方法。
  91. 常见的目录结构有3种:一级目录结构(线性结构)、二级目录结构(用户名 -> 文件名 -> 文件内容)、多级目录结构(倒置的有限树)
  92. 程序流程图通常在进行详细设计时使用,用来描述程序的逻辑结构
  93. 面向对象分析包含5个活动:认定对象、组织对象、描述对象间的相互作用、定义对象的操作、定义对象的内部信息
  94. 指令流水线性能度量

    (1) 吞吐率(TP) = 指令条数 / 流水线执行时间

    (2) 最大吞吐率 = 1 / △t

    (3) 加速比 = 不使用流水线执行时间 / 使用流水线执行时间

  95. IP 地址 = 网络 ID + 主机 ID
  96. 循环队列计算公式

    (1) 当前队列中元素数目:n = (rear - front + m) % m

    (2) 队满:front = (rear + 1) % m

    备注:m - 为队列最大容量,front - 为队首指针,rear - 队首指针

  97. 系统平均周期

    系统平均周期 t3 = h * t1 + (1-h) * t2

    备注:h —— 对Cache的访问命中率

    t1 —— Cache的周期时间

    1-h —— 失效率

    t2 —— 主存储器周期时间

  98. 位示图是利用二进制的一位来表示磁盘中的一个磁盘块的使用情况
  99. 哈夫曼编码属于前缀编码,规定任一字符的编码都不是另一字符编码的前缀
  100. 考的都会,蒙的都对,奥利给!!!

继续阅读