软件设计师笔记(一)
一、软件能力成熟度模型CMM
(1)初始级(initial)。工作无序,项目进行过程中常放弃当初的计划。管理无章法,缺乏健全的管理制度。开发项目成效不稳定,项目成功主要依靠项目负责人的经验和能力,他一旦离去,工作秩序面目全非。
(2)可重复级(Repeatable)。管理制度化,建立了基本的管理制度和规程,管理工作有章可循。 初步实现标准化,开发工作比较好地按标准实施。 变更依法进行,做到基线化,稳定可跟踪,新项目的计划和管理基于过去的实践经验,具有复现以前成功项目的环境和条件。
(3)已定义级(Defined)。开发过程,包括技术工作和管理工作,均已实现标准化、文档化。建立了完善的培训制度和专家评审制度,全部技术活动和管理活动均可控制,对项目进行中的过程、岗位和职责均有共同的理解 。
(4)已管理级(Managed)。产品和过程已建立了定量的质量目标。开发活动中的生产率和质量是可量度的。已建立过程数据库。已实现项目产品和过程的控制。可预测过程和产品质量趋势,如预测偏差,及时纠正。
(5)优化级(Optimizing)。可通过采用新技术、新方法,集中精力改进过程。具备防缺陷、识别薄弱环节以及改进的手段。可取得过程有效性的统计数据,并可据此进行分析,从而得出最佳方法。
能力成熟度模型集成CMMI
CL0(未完成的):过程域未执行或未得到CL1中定义的所有目标
CL1(已执行的):其共性目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特别目标
CL2(已管理的):其共性目标是已管理的过程的制度化。根据组织级政策规定过程的运作将使用哪个过程,项目遵循已文档化的计划和过程描述,所有正在工作的人都有权使用足够的资源,所有工作任务和工作产品都将被监控、控制、和审评
CL3(已定义级的):其共性目标集中于已定义的过程的制度化。过程是按照组织的裁剪指南从组织的标准过程中裁剪得到的,还必须收集过程资产和过程的度量,并且用于将来对过程的改进
CL4(定量管理的):其共性目标集中于可定量管理的过程的制度化,使用测量和质量保证来控制和改进过程域,建立和使用关于质量和过程执行的质量目标作为管理准则
CL5(优化的):使用量化(统计学)手段改变和优化过程域,以满足客户的改变和持续改进计划中的过程域的功效
二、排序算法复杂度
三、冗余附加技术
冗余附加技术是指为实现结构、信息和时间冗余技术所需的资源和技术,包括程序、指令、数据、存放和调动它们的空间和通道等。
在屏蔽硬件错误的容错技术中,冗余附加技术包括:关键程序和数据的冗余及调用;检测、表决、切换、重构和复算的实现。
在屏蔽软件错误的容错技术中,冗余附加技术包括:冗余备份程序的存储及调用;实现错误检查和错误恢复的程序;实现容错软件所需的固化程序。
四、主定理
主定理(Master Theorem) - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/113406812
五、公钥算法
既然是加密,那肯定是不希望别人知道我的消息,所以只有我才能解密,所以可得出公钥负责加密,私钥负责解密;同理,既然是签名,那肯定是不希望有人冒充我发消息,只有我才能发布这个签名,所以可得出私钥负责签名,公钥负责验证。
六、常用端口号
协议/服务名称 | 端口号 | 简介 |
---|---|---|
ftp | 20、21 | File Transfer Protocol 文件传输协议,21用于连接,20用于传输 |
ssh | 22 | Secure Shell 安全外壳协议,专为远程登录会话和其他网络服务提供安全性的协议 |
http | 80 | Hyper Text Transfer Protocol 超文本传输协议,用于网页浏览 |
DNS | 53 | Domain Name System 域名系统,域名解析 |
https | 443 | Hypertext Transfer Protocol Secure 超文本传输安全协议,用于安全浏览网页 |
www代理服务 | 8080 | Apache Tomcat web server,进行网页浏览 |
smtp | 25 | Simple Mail Transfer Protocol 简单邮件传输协议 |
telnet | 23 | 不安全的文本传送 |
pop3 | 110 | Post Office Protocol |
DHCP | 67 | |
TFTP | 69 | |
SNMP | 161 |
七、范式
第一范式(1NF) 符合1NF的关系中的每个属性都不可再分
第二范式(2NF) 在1NF基础上消除非主属性对码的部分函数依赖
第三范式(3NF) 在2NF基础上消除非主属性对码的传递函数依赖
BCNF范式(3NF的改进形式)
1.所有非主属性对每一个码都是完全函数依赖。
2.所有的主属性对每一个不包含它的码,也是完全函数依赖。
3.没有任何属性完全函数依赖于非码的任何一组属性。
八、周期
时钟周期:计算机中最小的时间单位,等于cpu主频的倒数。一个时钟周期内,cpu仅完成一个最基本的动作。
总线周期:把CPU通过总线对微处理器外部(存储器或I/O接口)进行一次访问所需时间称为一个总线周期。一个总线周期一般包含4个时钟周期。
机器周期:在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段(如取指、间址、执行、中断等),每一阶段完成一个基本操作。完成一个基本操作所需要的时间称为机器周期。
指令周期:从取指开始到执行完成该指令所需要的全部时间。一个指令周期通常含1~4个机器周期。
存储周期:两次独立访问存储器操作之间的最小间隔。
九、PERT图和甘特图(Gantt图)
PERT图描绘出项目包含的各种活动的先后次序,标明每项活动的时间或相关的成本,能清晰地描述子任务之间的依赖关系;
甘特图能清晰地描述每个任务从什么时候开始,到什么时候结束,以及任务之间的并行关系。但它不能清晰地反应出任务之间的依赖关系。
十、媒体
1、感觉媒体
感觉媒体指的是能直接作用于人们的感觉器官,从而能使人产生直接感觉的媒体。如文字、数据、声音、图形、图像等。
2、表示媒体
表示媒体指的是为了传输感觉媒体而人为研究出来的媒体,借助于此种媒体,能有效地存储感觉媒体或将感觉媒体从一个地方传送到另一个地方。如语言编码、电报码、条形码等。
3、表现媒体
表现媒体指的是用于通信中使电信号和感觉媒体之间产生转换用的媒体。如输入、输出设备,包括键盘、鼠标器、显示器、打印机等。
4、存储媒体
存储媒体指的是用于存放表示媒体的媒体。如纸张、磁带、磁盘、光盘等。
5、传输媒体
传输媒体指的用于传输某种媒体的物理媒体。如双绞线、电缆、光纤等。