软件设计师-知识的整理

第1-2章 计算机 络和程序设计基础

  1. 原码、反码、补码、移码
  2. 浮点数的原码、反码、补码
  3. 带小数的原码、反码、补码
  4. 校验码:码距、奇偶校验码、海明码、循环冗余校验码(CRC)
  5. 指令的控制方式:顺序方式、重叠方式、流水方式,学会看图判断
  6. 总线:ISA、EISA、PCI、PCI Express、前端总线、RS232、SCSI、SATA、USB、IEEE-1394、IEEE488
  7. 计算机安全等级(4组7个等级):高到低A1-B3-B2-B1-C2-C1-D
  8. 对称加密(共享密钥加密):DES、3DES、RC-5、IDEA、AES,一个密钥同时加密和解密
  9. 非对称加密(公开密钥加密):RSA,公钥加密,私钥解密
  10. MD5是一种摘要算法,最终生成128位(32个字节)的字符串
  11. 密钥管理:CA证书
  12. 认证技术:HASH和信息摘要(MD5)
  13. SSL
  14. 数字时间戳技术(DTS)
  15. 计算机的可靠性计算
    MTBF(平均无故障时间) = 1/失效率
    串联系统可靠性:R=R1R2…Rn
    串联系统失效率:A=A1+A2+…An
    并联系统可靠性:R=1-(1-R1)(1-R2)…(1-Rn)
    并联系统失效率(假设所有子系统失效率都为B):
    N模冗余系统可靠性:
  16. 代码流程图的画法
  17. 编译阶段的语法树示意图(P71)
  18. 编译阶段词法分析的正规式
  19. 编译阶段词法分析的有限自动机,有点难,书中用了大篇幅,应该会考(P77)
  20. DPI每英寸像素的个数
  21. 正规式
  22. 活动图,最短时间计算
  23. 位示图
    位示图是利用二进制的一位来表示磁盘中盘块的使用情况。其值为0,表示对应的盘块为空闲;其值为1,表示对应的盘块为已分配。总之,用二进制的一位来标志空闲和已分配。位示图还可以用于存储空间的分配和回收
  24. 编译过程各个阶段,各自功能,语法树
  25. McCabe度量法
  26. 设计模式
  27. 有限自动机
  28. 编译过程的词法分析、语句分析、语义分析、表达式的语法树
  29. SQL中的having和where注意区别
  30. 二叉树:先序遍历、中序遍历、后序遍历
  31. 各种算法策略
  32. 白盒测试(也叫结构测试,了解程序内部结构和逻辑,以检查处理过程的细节)、黑盒测试(也叫功能测试,不考虑程序内部结构,对软件接口处进行测试)、回归测试(软件更新后使用以前的测试用例测试此更新是否对软件其他部分造成影响)、单元测试(软件详细设计阶段由开发人员完成)
  33. 白盒测试用例设计方法,从发现错误的能力由弱至强为:
    • 语句覆盖:每条语句至少执行一次
    • 判定覆盖:每个判定的每个分支至少执行一次
    • 条件覆盖:每个判定的每个条件应取到各种可能的值
    • 条件判断覆盖
    • 条件组合覆盖
    • 路径覆盖
  34. 动态测试:通过运行程序来测试
  35. 静态测试:不运行程序,检测代码逻辑来测试
  36. 软件维护的类型
    • 改正性维护:开发阶段已发生,但是系统测试没有发现的错误
    • 适应性维护:软件适应信息技术变化和管理需求变化而进行的修改
    • 完善性维护:为扩充功能和改善性能而进行的修改。
    • 软件规模估算方法
      • LOC估算法(代码行估算法):估算软件的代码行数
      • FP估算法(功能点估算法):估算工作量大小。功能点=信息处理规模技术复杂度
        信息处理规模有:外部输入书、外部输出数、外部查询数、内部逻辑文件数、外部接口文件数
        技术复杂度=0.65
        调节因子
    • 软件工作量估算方法
      • COCOMO模型。根据代码行数、充分考虑开发人员的能力、使用的工具、硬件等信息,估算出以**/人/天**为单位的工作量。
    • 项目计划编排的方法与技术
      • 计划评审技术(PERT)
      • 甘特图(GANTT)
      • 关键路径法(CPM)

总时差 = LS – ES 或 总时差 = LF – EF
**关键路径:**总时差为0的活动组成的路径,这个路径工期是最长的。

  1. 自顶向下集成测试
    优点:较早地验证了主要控制和判断点;按深度优先可以首先实现和验证一个完整的软件功能;功能较早证实,带来信心;只需一个驱动,减少驱动器开发的费用;支持故障隔离。
    缺点:柱的开发量大;底层验证被推迟;底层组件测试不充分。适应于产品控制结构比较清晰和稳定;高层接口变化较小;底层接口未定义或经常可能被修改;产口控
    制组件具有较大的技术风险,需要尽早被验证;希望尽早能看到产品的系统功能行为。
  2. 自底向上集成
    优点:对底层组件行为较早验证;工作最初可以并行集成,比自顶向下效率高;减少了桩的工作量;支持故障隔离。
    缺点:驱动的开发工作量大;对高层的验证被推迟,设计上的错误不能被及时发现。
    适应于底层接口比较稳定;高层接口变化比较频繁;底层组件较早被完成。
  3. 什么是桩程序
    它是在保证被测程序原有逻辑完整性的基础上在程序中插入一些探针(又称为“探测仪”),通过探针的执行并抛出程序运行的特征数据,通过对这些数据的分析,可以获得程序的控制流和数据流信息,进而得到逻辑覆盖等动态信息,从而实现测试目的的方法。这些探针被称为桩程序

第6章 结构化开发方法

  1. 系统模块结构设计

  2. 模块设计基本原则:信息隐蔽,模块独立

  3. 耦合:模块之间的联系紧密程度

    1. 功能内聚
      模块内所有元素共同完成某一功能,联系紧密,缺一不可,是最强的内聚类型。
    2. 顺序内聚
      模块完成多个功能,这些功能顺序执行,各功能之间有数据传递。
    3. 通信内聚
      模块内所有处理元素都在同一个数据结构上操作,或则指各处理使用相同的输入数据或者产生相同的输出数据。
    4. 过程内聚
      模块完成多个功能,这些功能顺序执行,各功能之间可能没有数据传递。
    5. 时间内聚
      把需要同时执行的动作组合在一起,所有动作在统一时间段内执行。如初始化
    6. 逻辑内聚
      把机重相关的功能组合在一起,每次调用时,由传送给模块的参数来确定该模块应完成哪一种功能。
    7. 偶然内聚
      模块内各部分之间没有联系,或则有联系,这种联系也很松散,最弱的内聚类型。如初学C语言时,所有代码都写在主函数里面。
  4. 深度:软件结构中模块控制的层数

  5. 宽度:软件结构中同一个层次上的模块总数的最大值

  6. 扇出:一个模块直接控制(调用)的下层模块数

  7. 扇入:一个模块被几个上级模块调用。

  8. 模块结构图的画法模块结构图的画法(P322)
    模块:矩形
    调用:箭头
    数据:空圆心加箭头
    控制信息:实圆心加箭头
    判断调用:菱形加多个箭头
    循环调用:单或多个调用加弧形箭头
    转接符 :圆心里面写标

  9. 数据流图(P327)

  10. 数据字典(P335)

  11. 加工逻辑

  12. 结构化设计方法(P337)

第7章 面向对象技术

  1. 重置,覆盖,其实就是重写 Override
  2. 类属类,其实就是模板类,也就是Java里面的泛型
  3. UML(P364)
  4. 各种设计模式
  5. 装饰模型:动态地给一个对象添加一些额外地功能,用于在已有功能的基础上扩展更多的功能。
  6. 外观模式:定义一个高层接口,为子系统中的一组接口提供一个一致的界面,从而简化子系统的使用。
    软件设计师-知识的整理

第8章 算法设计与分析

  1. 算法的复杂度计算:
    https://blog.csdn.net/user11223344abc/article/details/81485842
  2. 常用算法设计方法:分治法、 动态规划法、贪心法、回溯法、分支界限法、概率算法和近似算法
  3. 二叉树遍历:https://blog.csdn.net/qq_33243189/article/details/80222629

第9章 数据库技术基础

  1. E-R图
  2. 笛卡儿积(拓展内容,考试不太重要,主要用于装逼):https://blog.csdn.net/csdn_hklm/article/details/78394412
  3. 元数:关系中属性的个数
  4. 基数:元组的个数
  5. 属性的域:每个属性的取值范围对应的一个值的集合
  6. 关系模式:关系的描述
    R(U,D,Dom,F)
    R表示关系名;U是组成该关系的属性名集合;D是属性的域;Dom是属性向域的映像集合;F为属性间数据的依赖关系集合。
  7. 关系运算
  8. 五种基本关系代数运算
  9. 集合运算,交、并、差等符 表示方法
  10. 弱实体、特殊化和普遍化
  11. 全特殊化、不相交特殊化和允许重叠特殊化,各种的图示表示方法(P472)
  12. 扩展关系代数运算。很复杂,没有看(P481)

知识产权和商标法

客体类型 权力类型 保护期限
公民作品 署名权、修改权、保护作品完整权 没有限制
公民作品 发表权、使用权、获得 酬权
单位作品 发表权、使用权、获得 酬权 50年,若期间未发表,不保护
公民软件 署名权,修改权 没有限制
公民软件 发表权、复制权、发行权、出租权、信息 络传播权、翻译权、使用许可权、获得 酬权、转让权
单位软件 发表权、复制权、发行权、出租权、信息 络传播权、翻译权、使用许可权、获得 酬权、转让权 50年,若期间未发表,不保护
注册商标 10年,期满6个月内可续注,若注册人死亡或倒闭1年后,未转移则可注销
发明专利权 20年,从申请日起
实用新型和外观设计专利权 10年,从申请日起
商业秘密
  1. 商标法规定,烟草类产品必须注册商标,中草药可以不注册商标
  2. 专利申请具有三个原则:
    • 书面原则,是指专利申请人及其代理人在办
      理各种手续时都应当采用书面形式;
    • 先申请原则,是指两个或者两个以上的人分别就同样的发明创造申请专利的,专利权授给最先申请人;
    • 单一性原则,是指一份专利申请文件只能就一项发明创造提出专利申请,即“一申请一发明”原则。甲、乙两人在同一天就同样的发明创造提交了专利申请,这种情况属于同日申请。根据《专利法》第九条规定“两个以上的申请人分别就同样的发明创造申请专利的,专利权授予最先申请的人。”以及第三十一条规定“一件发明或者实用新型专利申请应当限于一项发明或者实用新型。属于一个总的发明构思的两项以上的发明或者实用新型,可以作为一件申请提出。一件外观设计专利申请应当限于一种产品所使用的一项外观设计。用于同一类别并且成套出售或者使用的产品的两项以上的外观设计,可以作为一件申请提出。”对于同日申请的情况,专利局可分别向各申请人通 有关情况,请他们自己去协商解决这一问题,解决的办法一般有两种,一种是两申请人作为一件申请的共同申请人另一种是其中一方放弃权利并从另一方得到适当的补偿。如果双方协商不成的,则两件申请都不授予专利权。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月24日
下一篇 2019年1月24日

相关推荐