软件设计师学习笔记.docx
- 文档编号:30716509
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:22
- 大小:34.63KB
软件设计师学习笔记.docx
《软件设计师学习笔记.docx》由会员分享,可在线阅读,更多相关《软件设计师学习笔记.docx(22页珍藏版)》请在冰豆网上搜索。
软件设计师学习笔记
计算机系统组成
运算器:
算术/逻辑运算单元ALU、累加器ACC、寄存器组、多路转换器、数据总线组成。
控制器:
计数器PC、时序产生器、微操作信号发生器,指令寄存器、指令译码器。
CPU的功能:
程序控制、操作控制、时间控制、数据处理(最根本的)。
相联存储器是按内容访问的,用于高速缓冲存储器、在虚拟存储器中用来作段表页表或快表存储器、在数据库和知识库中。
CACHE高速缓存的地址映像方法:
直接地址映像(主存分区,区分块)、全相联映像(主存分块)、组相联映像(主存分区,区分块、块成组,CACHE分块成组)。
替换算法:
随机、先进先出、近期最少用、优化替换算法。
性能分析:
H为CACHE命中率,tc为Cache存取时间、tm为主存访问时间,Cache等效访问时间ta=Htc+(1-H)tm提高了tm/ta倍。
虚拟存储器由主存、辅存、存储管理单元和操作系统软件组成。
RISC精简指令集:
指令种类少、长度固定、寻址方式少、最少的访内指令、CPU内有大量寄存器、适合流水线操作。
内存与接口统一编址:
都在一个公共的地址空间里,独立使用各自的地址空间。
优点是内存指令可用于接口,缺点内存地址不连续,读程序要根据参数判断访内还是访接口。
廉价冗余磁盘阵列RAID:
0级不具备容错能力但提高了传输率N倍、1级镜像容错技术、2级汉明码作错误检测、3级只用一个检测盘、4级是独立地对组内各磁盘进行读写的阵列,用一个检测盘、5级无专门检测盘。
中断方式处理方法:
多中断信号线法、中断软件查询法、菊花链法(硬件)、总线仲裁法、中断向量表法(保存各中断源的中断服务程序的入口地址)。
直接存储器存取DMA:
内存与IO设备直接成块传送,无需CPU干涉。
根据占据总线方法不同分为CPU停止法、总线周期分时法、总线周期挪用法。
输入输出处理机用于大型机:
数据传送方式有字节多路方式、选择传送方式、数组多路方式。
指令流水线:
操作周期是最慢的操作的时间。
建立时间是达到最大吞吐率的时间。
总线内总线:
ISA、EISA、PCI;外总线:
RS-232(3根线全双工15米)、SCSI(并行外总线、16位、最大320M秒、最多63个设备20米)、USB(4条线480M秒接5层127个设备)、IEEE-1394(串行6条线3.2G秒热插)
阵列处理机:
单指多数据流SIMD,同步同时执行同一指令。
多处理机:
多指多数据,多处理机互连应满足高频带、低成本、方式多样、在不规则通讯下连接的无冲突性。
四种结构:
总线式、交叉开关、多端口存储器结构、开关枢纽式。
并行处理机:
单指令多数据流,分布存储和共享存储两种结构。
特点资源重复、连接模式、专用性(与算法联系)、复合性。
信息安全五要素:
机密性、完整、可用、可控性、可审查性。
安全等级:
三类技术安全性、管理安全性、政策法规安全性。
《可信计算机系统评测标准》TCSEC/TDI分4组7级。
A1可验证安全设计、B3安全域、B2结构化安全保护、B1标记安全保护、C2受控访问控制、C1初级、D最低无安全功能。
安全威胁:
对资源的机密性、完整性、可用性、合法性造成危害。
两类故意和偶然(主动&被动)。
加密技术的两个元素:
算法和密钥。
对称加密即私密加密,加解密使用相同的密钥DES;非对称加密即公密加密RSA,加密公开解密保密,适合少量数据加密;不可逆加密。
常用加密算法:
DES算法采用56位密钥对64位数据加密密钥太短、三重DES效果相当于密钥长度加倍;RC5算法RSA采用此算法;IDEA密钥是128位。
密钥管理:
密钥产生由权威认证机构CA中心、公开密钥体系PKI、密钥分发中心KDC。
认证技术主要解决通讯双方身份认可。
PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术(包括加密、数字签名、数据完整机制、数字信封、双重数字签名)。
密钥备份恢复仅限解密密钥,私密不备份。
PKI采用证书进行公钥管理,PKI把公钥密码和对称密码结合起来,保证网上数据安全传输。
机密性(不被偷看)、完整性(不被篡改)、有效性(不被否认)。
PKI标准化有两个方面:
RSA的机密密钥标准PKCS和工业基础协议PKIX。
Hash函数:
输入不同长度字符返回定长串,即Hash值。
它可以在数字签名中解决验证签名和用户身份验证、不可抵赖性的问题。
信息摘要即数字指纹,它用于创建数字签名,对于特定文件信息摘要是唯一的,常用Hash函数有MD2、MD4、MD5他们都产生128位摘要。
数字签名使用发送方密钥对,使用发送方私密加密,接受方用发送方的公密解密,是一对多关系;数字加密使用接受方密钥对,公钥加密,私密解密、是多对一的关系。
SSL安全协议:
即安全套接层协议,用于保证通讯安全系数。
提供三方面的服务:
用户和服务器的合法认证、机密数据以隐藏被传送的数据、保证数据的完整性(采用Hash函数和机密共享技术保证数据完整性)。
数字时间戳技术:
提供电子文件的日期和时间信息的安全保护。
时间戳包括三部分:
需加时间戳的文件的摘要、DTS收到文件的日期和时间、DTS的数字签名。
解决局域网安全问题的技术:
①划分网段、局域网交互技术、VLAN,②加密、数字签名、认证和VPN技术,③防火墙,④入侵检测技术⑤网络安全扫描技术。
计算机的可靠性:
衡量一个计算机系统可靠性R、可用性A、可维修性S。
平均无故障时间MTBF=1/λ
串连系统可靠性R=R1*R2 ;失效率λ=λ1+λ2
并联系统:
R=1-(1-R1)(1-R2)
总失效率=1/((1/λ)*∑(1/1..n))
计算机性能评测方法:
时钟频率、指令执行速度、等效指令速度法、数据处理速率、核心程序法。
汇编和编译
汇编语言的三类语句:
指令、伪指令、宏指令语句。
编译的过程:
①词法分析,②语法分析,③语义分析、④中间代码生成(三地址码)、⑤代码优化:
基本块划分:
第一条、转移、转移后面的语句。
三种优化:
合并已知变量、删除无用赋值、删除多余运算。
⑥目标代码生成,⑦符号表管理,⑧出错处理。
编译比解释效率高,解释的灵活性和可移植性好。
网络知识
网络的功能:
数据通信、资源共享、负载均衡、高可靠性。
内层通讯子网对应下三层、外层资源子网对应上三层。
按信息交互方式分为:
电路交换、分组交换、综合交换网。
拓扑结构:
总线、星状、环状、树状、分布式。
OSI/RM:
物理层:
比特流。
数据链路层:
帧,流量控制、差错控制。
网络层:
数据包,报文分组,路由选择、交换方式、拥塞控制、差错报告、寻址排序。
传输层:
报文,报文分段、选择最适宜的网络层服务、最佳的利用网络资源。
会话层:
访问验证、会话管理。
表示层:
语法解释、压缩、加解密。
应用层。
网络设备:
物理层:
中继器(由500米扩展到1500米)、集线器。
数据链路层:
网桥(帧过滤特性)、交换机(三种交换技术:
端口交换、帧交换【直通交换、存储转发、碎片丢弃】、信元交换)。
网络层:
路由器(路由选择、流量控制、过滤、存储转发、介质转换、增强型功能加密、压缩、容错)。
应用层:
网关(协议转换)
网络介质:
双绞线(屏蔽STP,非屏蔽5类UTP最长100米);同轴电缆(基带直接传输数字信号,宽带同轴电缆用于频分多路复用FDM 闭路电视用);光纤(多模发光二极管,单模注入型二极管)
两台PC间最长500米,最多4个HUB5段电缆。
电信标准:
CCITT V系列(V.90猫)X系列(X.25)。
EIA的RS-232标准。
IEEE的802.1(体系结构及网络互连),802.2(涉及逻辑数据链路标准),802.3(以太网CSMA/CD),802.4(令牌总线),802.5(令牌环差分曼彻斯特编码),802.6(城域网),802.7(光纤FDDI用4B/5B编码),802.11(无线局域网),802.12(100VG-ANYLAN)。
局域网技术的三个问题:
介质、拓扑结构、介质访问控制方法。
LAN模型:
数据链路层细划为:
逻辑链路控制LLC和介质访问控制层MAC。
MAC功能:
介质访问控制和对信道分配资源,实现帧寻址、识别和检测。
LLC功能加强了:
寻址、排序、流控、差错控制,数据帧的封装和拆除。
以太网802.3标准:
采用带有冲突检测的载波监听多路访问协议CSMA/CD技术,检测到冲突的退避算法是二进制指数退避算法。
802.3(10M以太网10Base-T10Base-F)、802.3u(100M快速以太网100BaseT、100BaseF多模光纤400米、100BaseT4)、802.3z(千兆以太网三种介质光纤单模500米多模2000米、宽带同轴电缆25M、5类UTP100米半双工)
广域网协议:
PPPPPPoEPPPoA应用ADSL(上行1M下行8M,线路按频段分为语音上下行3个信道)、DDN是网状拓扑不经过交换机房、ISDN一线通、FR帧中继、ATM异步传输模式:
数据以定长的信元为传输单位,每个信元53B其中头5B信元体48B,四层的参考模型用户层、ATM适配层、ATM层、物理层。
Internet协议:
TCP/IP的特性:
逻辑编址(48位物理地址,32位逻辑地址)、路由选择、域名解析、错误检测、流量控制、对应用程序的支持。
TCP/IP的四层结构:
①、网络接口层(最底层)。
②、网际层只提供无连接不可靠服务协议有:
IP,ICMP发送差错报文的协议(5种差错报文即源抑制超时目的不可达重定向要求分段;4种信息报文即回应请求、回应应答、地址屏蔽码请求、地址屏蔽码应答),ARP地址解析转成物理地址,RARP反向。
③、传输层协议TCP的可靠性靠重发技术来实现,三次握手SYNSEQ=200、ACK201SYNSEQ=300、ACK301;UDP协议提高传输率。
④、应用层只有FTP和Telnet是建立在TCP上,其余都在UDP上。
IP地址:
网络号部分+主机号部分,
A类0(000-127)、
B类10(128-191)、
C类110(192-223)、
D类1110(224-239)用于组播例如路由器修改、
E类1111(240-255)实验保留。
IPV6将32位地址扩展为128位。
子网掩码:
网络号部分填1,主机号部分填0。
可变长掩码
公共端口号0-1023,其他1024-65535。
DNS用53、SMTP用25、SNMP用161,FTP命令21数据20,TCP23。
WinNT网络:
两个边界层:
NDIS网络接口规范(在会话与传输之间)和TDI传输驱动程序接口(数据链路层)。
四个协议:
DLC访问大型机和打印机,TCP/IP,NWLink(NetWare接口),NetBEUI(NetBIOS的扩展网上邻居)。
除NetBIOS对应于传输层外其余三协议都在网络层。
网络安全:
基本要求是保密性、完整、可用、可控、可核查。
安全威胁:
物理、攻击、身份鉴别、编程威胁、系统漏洞。
防火墙:
内外网边界上的过滤封锁机制。
在网络层包过滤,在传输层提供端到端的加密,在应用层提供身份认证、加密、内容检查。
分类:
包过滤型、应用代理网关、状态检测技术防火墙。
多媒体
数据传输率b/s=采样频率Hz×量化位数b×声道数
声音信号数据量Byte=数据传输率×时间/8
语音压缩方法:
波形编码、参数编码、混合编码
音源即音乐合成器有两类:
数字调频合成器、PCM波形合成器。
色彩三要素:
亮度、色调、色饱和度。
红+蓝=品红;绿+蓝=青。
光栅化即点阵化将图形转成图像;
向量化即图形跟踪技术将图像转图形
无损压缩即熵编码:
行程长度编码RLE、增量调制DME、霍夫曼编码。
JPEG2000压缩算法:
小波变换算法(有损)、离散余玄变换(无损)Mpeg4多媒体应用接口、Mpeg7内容描述接口
Gif采用LZW无损压缩算法、PNG用LZ77无损压算、
PAL帧频25场扫描频率50行帧625每场扫描625/2分辨率352*288
电影每秒24次,电脑30帧/秒速度刷新
CCIR601标准:
色度信号采样4:
2:
2采样频率13.5MHZ每点8位数字化亮度220级色度225级
Mpeg1压缩后码率1.5Mb/s;Mpeg2(HDTV80Mb/s);Mpeg4最低64Kb/s
流媒体:
建立在UDP协议上的实时传输协议和实时流协议RTP/RTSP。
通过MIME识别格式。
流媒体发布文件RAM、ASX;流式文件格式RM、RARPRTASFASX
软件工程
软件生存周期:
计划、需求、设计、编码、测试、运维。
软件开发模型:
瀑布(缺乏灵活性、导致完成后才发现错误)、
演化模型(适合需求不明确的情况)、
螺旋模型(制定计划、风险分析、实施、客户评估、循环)、
喷泉模型(用于描述面向对象的开发过程,体现的迭代和无间隙特点)
需求分析任务是解决功能、性能、数据、界面(输入出数据)的要求。
成本估算模型有普特南模型和构造性成本模型。
风险分析关注三方面:
关心未来、关心变化、关心选择。
风险评估的三个参照:
成本、进度、性能。
进度管理常用的描述方法:
甘特Gantt图(清晰反映任务起止及并行情况,不能反映依赖关系及关键所在)、计划评审技术PERT图(关键路径松弛时间,但不能反映并行)。
计算机软件工具CASE。
软件过程能力评估CMM,软件过程七原理:
按周期定计划实施、逐阶段确认、严格产品控制、使用现代程序设计、明确责任、用人少而精、不断改进开发过程。
软件能力成熟度模型CMMISO/IEC15504:
通过创建规范的软件过程、软件管理过程、软件企业过程并使三者有机结合达到管理并控制软件产品的质量。
五个级别:
①初始级;
②可重复级:
焦点集中在软件管理过程上、成功依赖个人和管理层的支持(关键域是需求管理);
③定义级:
对整个软件生命周期的管理和工程化都已实现标准化、项目组、团队;
④管理级:
开始量化管理、实现度量标准化、强烈的群体工作意识(定量过程管理、软件质量管理);
⑤优化级:
软件过程持续改进(预防缺陷、技术变更、过程变更管理)。
软件质量模型ISO/IEC9126:
功能性(适合、准确、互用、依从、安全)、
可靠性(成熟、容错、易恢复)、
易使用性(易理解、易学、易操作)、
效率(时间特性、资源特性)、
可维护性(易分析、易改变、稳定、易测试)、
可移植性(适应、易安装、一致、易替换)。
软件质量强调三点:
能满足用户需求、软件应遵循标准开发准则、能满足某些隐形要求。
系统分析方法
结构化方法SA的分析结果包括:
一套分层的数据流图DFD、一本数据字典(字典条目有:
数据流、文件、数据项条目)、一组小说明(逻辑加工)和补充材料。
加工描述的逻辑方法:
结构化语言、判定表、判定树。
系统分析报告的三个作用:
描述系统逻辑模型,作为开发人员设计和实施的基础、用户和开发人员的协议和交流的基础、系统验收和评价的依据。
系统设计两大步骤
①、总体设计即概要设计:
任务分解、划分模块、确定模块功能及调用关系、决定模块界面即数据传递;
②、详细设计:
代码设计、用户界面安全控制设计等。
系统设计的原则:
抽象、模块化、信息隐蔽(能提高可修改性、可测试性、可移植性)、模块独立(高内聚低耦合)。
内聚低到高(偶然、逻辑、时间、过程、通信、顺序、功能);
耦合强到弱(内容、公共、控制、标记即传数据结构、数据、非直接耦合即无信息传递)。
结构化设计方法SD信息流的两大类型:
变换流(明显分为输入、加工、输出)、事务流(从事务中心辐射流出)。
面向数据结构的设计方法:
Jackson图。
系统实施阶段的任务:
购置安装硬件网络系统、软件准备、人力培训、数据准备、投入切换和试运行。
程序设计方法主要有:
结构化方法、原型法、面向对象法。
系统测试
人工测试:
即代码审查;
机器测试:
只能发现症状无法定位,黑盒(功能测试测试软件外部特征)、白盒(结构测试测试对程序路径和过程测试单元测试中用)。
测试步骤:
①、 单元测试:
模块接口、数据结构、执行路径、出错处理、边界条件;(单元测试计划应该在详细设计阶段制定)
②、 组装测试即集成测试;(集成测试计划应该在概要设计阶段制定)
③、确认测试是软件测试的最后环节包括有效性(黑盒)、软件配置审查、验收测试;(确认测试计划应该在需求分析阶段制定)
④、系统测试主要内容:
恢复测试、安全性测、强调(压力)测、性能测试、可靠性测试、安装测试。
可维护性的评价指标:
可理解性、可测试性、可修改性。
维护的内容:
正确性维护、适应性、完善性、预防性维护。
审计在三个层次上设定:
语句、特权、对象审计。
标准化知识
国际标准化组织ISO和IEC。
统一是标准化的本质,目的是建立最佳秩序和获得最佳效益。
标准复审(5年次)要确保其有效性、先进性、适用性。
按性质分类:
技术标准、管理标准、工作标准。
采用国际和国外先进标准的方法:
认可法、封面法、完全重印法、翻译法、重新制定法、包括引用法。
采用程度:
等同idt、等效eqv、非等效采用neq。
标准化条码EAN,共有13位:
3位前缀表示国家、4位厂商代码、5位商品代码、1位效验码。
ISO9000:
是质量管理和质量保证的标准,按照全面质量管理的PDCA模式工作。
ISO9000:
2000现有13项标准,有4个核心标准(基础和术语用概念图描述、要求、业绩改进指南、审核指南)。
标准确认的8项原则:
以顾客为中心、领导作用、全员参与、过程方法(4大过程即管理职责、资源管理、产品实现、测量分析和改进)、管理的系统方法、持续改进、基于实事的决策方法、互利的供求关系。
知识产权知识
《民法通则》保护。
知识产权分为两类工业产权和著作权。
特点:
无形性、双重性、确认性、独占性、地域性、时间性(专利20年,实用新型和外观10年,到期前6个月展期10年)。
《计算机软件保护条例》受保护的软件的条件:
独立创作、可被感知、逻辑合理。
软件著作权保护期50年。
软件著作权法律:
民事责任(侵犯著作权发表改名),行政责任(复制销售删改转让等),刑事责任。
《反不正当竞争法》商业秘密。
常用算法
算法的五特性:
有穷性、确定性、可行性、输入、输出
好的算法的目标:
正确性、可读、健壮、效率与低存储需求
迭代法:
求方程近似根。
穷举搜索法。
递推法。
递归法:
执行过程分递推和回归两阶段背包问题。
回溯法即试探法。
贪心法:
不求最优但求快速有解,哈夫曼算法装箱问题马的遍历。
分治法:
大问题分成小问题解决快速排序比赛日程。
动态规划法:
求两字符串中最长公共字符序列。
面向对象技术
面向对象=对象+分类+继承+通过消息的通讯。
对象有对象名(标识)、属性和操作(方法)组成。
对象是类的实例。
类解决数据保护问题,继承是父子共享数据和方法的机制。
多态:
是不同对象收到同一消息产生不同结果。
通用多态有参数多态(最纯的、类属),包含多态(子类型化);特定多态有过载多态(同一变量被用来表示不同功能)、强制多态。
好的OOP必须支持:
被封装的对象、类和实例的概念、继承性、多态。
程序设计的发展:
过程程序设计、模块化、函数、逻辑、面向对象。
面向对象的好处:
对象技术解决了产品质量和生产率间的平衡;继承机制使系统具有很高的灵活性和易扩充性;面向对象是一个能管理复杂性并增强伸缩性的工具;从概念模型化到分析设计编码可以无缝传递;封装有助于建立安全的系统。
面向对象的概念:
对象、类、方法、实例变量、消息、子类、继承
类的访问控制符:
Private类内Protected类及友元 Public
消息传递机制和对象自身引用将方法与特定的对象动态地联系在一起,使得不同对象在执行同样的方法体时,可因对象的状态不同而产生不同的行为,从而使方法对具体地对象具有个性。
衡量开发人员:
能否最好地发挥已有类库地优点、将已有类库与新问题紧密匹配地能力、不得不另外编写地代码最少。
面向对象分析方法OOA:
将数据和功能合在一起考虑,把系统地行为和信息间地关系表示为迭代构造特征。
五个活动:
认识对象、组织对象、对象间地相互作用、基于对象地操作。
面向对象设计OOD:
设计分析模型和实现源代码。
构件是功能和数据的封装。
面向对象测试:
单元测试-综合测试-系统测试;算法层-类层-模板层-系统层。
常采用回归测试和自动测试。
面向对象的分析和设计方法:
1)PeterCoad的OOA模型的五个层次:
主题层、对象类层、结构层、属性层、服务层;两种结构分类结构(一般和特殊)和组装结构(整体和部分)。
OOD的四个活动:
设计问题域部件、设计人机交互部件、设计任务管理部件、设计数据管理部件。
2)Booch的OOD:
认为软件开发是螺旋的,每个周期包括标识类和对象、确定他们的含义、标识他们的关系、说明每一个类的界面和实现。
3)对象建模技术OMT:
三个模型即对象模型(链和关联、泛化、聚集、模块)、动态模型(与时间和操作顺序有关的特征,用状态图表示)、功能模型(描述与值变换有关的特征用数据流图表示)。
4)统一建模语UML:
UML三要素(UML的基本构造块、支配这些构造块如何存放的规则、运用与整个语言的一些公共机制)。
三种构造块(事物、关系、图)。
四种事务:
结构事物(静态部分类接口协作用例主动类构件结点)、行为事物(交互和状态机)、分组事物(包是概念性的仅在开发时存在)、注释事物。
四种关系:
依赖(事物间语义关系)、关联(结构关系)、聚集(特殊的关联整体和部分)、泛化(一般和特殊)、实现(类元之间的语义关系)。
五类9种图:
①用例图(用户角度描述系统功能,用于对系统的语境和需求建模)、②静态图(类图、对象图;定义类之间关系和类内结构)、③行为图(状态图由状态转换事件和活动组成;活动图用于工作流建模和对操作建模)、④交互图(顺序图合作图:
描述对象间的交互关系)、⑤实现图(构件图:
描述代码部件的物理结构及各部件之间的关系;配置图即部署图:
定义系统中软硬件关系。
)
数据结构
栈:
先进后出;队列:
尾进头出循环对列F=(R+1+Memory_Length)modM
串:
(主串n模式串m)朴素的模式匹配算法即布鲁特-福斯算法:
最好情况平均比较次数=(n+m)/2最坏=m(n+m)/2
二叉树:
性质1、i层至多2i-1个结点;
性质2、深度为k的二叉树最多2k-1个结点;
性质3、具有n个结点的完全二叉树的深度为└log2n┘+1;
森林和树的转换利用树的孩子兄弟表示法。
哈夫曼树即最优二叉树,是带权路径最短的树。
图:
N个顶点的无向完全图有n(n-1)/2条边;
任何图的边=顶点总度数/2;
连通图是指无向图任两顶点连通,最大的连通子图叫连通分量;
生成树是极小连通图;
n个顶点e条边的无向图的邻接链表需要n个头结点和2e个表结点。
求最小生成树有普里姆算法prim和克鲁斯卡尔算法Kruskal;
AOV网:
工程可行性;AOV的拓扑排序(选入度为0的输出、删)
AOE网:
工程需时和关键活动;关键路径是最长路径。
最短路径:
迪杰斯特拉算法
查找:
①、顺序查找平
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 设计师 学习 笔记