自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 软件工程知识体系 Chapter3 软件构造

软件构造一词指的是通过编码验证单元测试集成测试和调试等组合详细创建工作软件的过程。软件构建知识领域(KA)与所有其他KA都有关联,但它与软件设计和软件测试的关联最为紧密,因为软件构建过程涉及重要的软件设计和测试。该过程使用设计输出并提供输入到测试(在这种情况下,“设计”和“测试”指的是活动,而不是KA)。设计、构建和测试之间的界限(如果有)将取决于项目中使用的软件生命周期过程。虽然在构建之前可能会进行一些详细的设计工作,但很多设计工作是在构建活动期间完成的。

2024-04-01 21:58:09 1077

翻译 Chapter13 架构策略和模式

背景:许多系统需要将离散数据项的流从输入转换为输出。在实践中,许多类型的转换会重复发生,因此将它们创建为独立的、可重用的部分是可取的。问题:这些系统需要划分为可重用、松散耦合的组件,具有简单、通用的交互机制。通过这种方式,它们可以灵活地组合在一起。这些通用且松散耦合的组件易于重用,并且由于它们是独立的,可以并行执行。解决方案:Pipe-and-Filter模式的交互模式以对数据流的连续转换为特征。数据到达过滤器的输入端口,经过转换,然后通过管道传递到下一个过滤器的输出端口。

2023-11-20 21:22:44 212

翻译 Chapter12 其他的质量属性

质量不是一种行为,而是一种习惯。——亚里士多德第5-11章分别涉及了对软件系统重要的特定质量属性。每一章都讨论了如何定义特定的质量属性,提供了关于该质量属性的一般情境,并展示了如何编写具体的情境以表达有关该质量属性的精确含义。每一章还提供了一系列在架构中实现该质量属性的技术。简而言之,每一章都呈现了一种用于规定和设计以实现特定质量属性的作品集。这七章涵盖了七种最重要的质量属性,就其在现代软件依赖系统中的出现而言。然而,毫无疑问,七只是开始涉及您在处理的软件系统中可能需要的质量属性的冰山一角。

2023-10-30 17:11:41 202

翻译 Chapter11 优使性

支持优使性的体系结构既涉及允许用户在各种情况下采取主动行动,例如取消长时间运行的命令,撤销已完成的命令以及聚合数据和命令。为了能够有效地预测用户或系统的响应,系统必须维护用户、系统自身和正在执行的任务的明确模型。此外,支持用户界面设计过程和支持可修改性之间存在着重要的联系。这种关系通过强制用户界面与系统的其余部分分离的设计模式(例如Model-View-Controller(MVC)模式)得到强化。

2023-10-30 16:24:26 171

翻译 Chapter8 性能

性能是关于在特定类型的需求面前管理系统资源,以实现可接受的时间行为。性能可以根据互动式系统和嵌入式实时系统的吞吐量和延迟来衡量,尽管在互动式系统中通常更重要的是吞吐量,而在嵌入式系统中更重要的是延迟。通过减少需求或更合适地管理资源,可以改善性能。减少需求将有降低保真度或拒绝为一些请求提供服务的副作用。更合适地管理资源可以通过调度、复制或增加可用资源来实现。

2023-10-30 15:51:09 101

转载 反向梯度——最快下降

1986年,杰弗里·辛顿和他的小伙伴们重新设计了BP算法,以人工神经网络模仿大脑工作机理。2006年,辛顿教授提出了“深度信念网”(Deep BeliefNets,DBN)(实际上这就是多层神经网络的马甲)。后来,这个“深度信念网”被称为深度学习的开山之作。而辛顿被称为“深度学习教父”。

2023-10-28 18:46:43 107

翻译 Chapter7 可修改性

可修改性涉及变更以及制作变更所需的时间或金钱成本,包括这种修改对其他功能或质量属性的影响程度。变更可以由开发人员、安装程序或最终用户进行,这些变更需要事先准备。准备变更也有成本,制作变更也有成本。可修改性策略旨在为随后的变更做好准备。降低制作变更成本的策略包括将模块变得更小增加内聚性以及降低耦合。延迟绑定也将降低制作变更的成本。增加内聚性是另一种标准策略,涉及将不具有相同目的的责任分开。降低耦合是一类标准的策略,包括封装、使用中介、限制依赖关系、共同定位相关责任、重构和抽象共同服务等。

2023-10-23 20:40:57 79

翻译 Chapter5 可用性

可用性指的是系统在故障发生后仍然可供使用的能力,故障必须被识别(或预防),然后系统必须以某种方式作出响应。所期望的响应将取决于应用程序的关键性和故障类型,可以从“忽略它”到“继续运行,就像它没有发生一样”。可用性的策略可分为检测故障、从故障中恢复和预防故障三类。检测策略基本上依赖于从各个组件中检测到生命迹象。恢复策略是某种操作的重试或维护冗余数据或计算的组合。预防策略依赖于从服务中移除元素或利用机制来限制故障的范围。所有的可用性策略都涉及到协调模型,因为协调模型必须意识到发生的故障以生成适当的响应。

2023-10-16 19:15:06 129

翻译 Chapter4 理解质量属性

系统的需求分为三类:1. 功能性。这些需求通过在设计中包括适当的责任集合来满足。2. 质量属性。这些需求通过架构的结构和行为来满足。3. 约束。约束是已经做出的设计决策。为了表达质量属性的需求,我们使用了一个质量属性场景。场景的组成部分包括:1. 刺激源2. 刺激3. 环境4. 工件5.响应6. 响应度量架构策略是影响质量属性响应的设计决策。策略的重点是单个质量属性响应。架构模式可以被看作是“策略”的“包裹”。架构设计决策的七个类别如下:1. 责任分配。

2023-10-10 15:24:24 145

翻译 Part Two 质量属性

在第4章,我们描述了这些类别,并在接下来每一章专门讨论某一质量属性(第5-11章)时,我们使用这些类别来制定清单,告诉您如何将注意力集中在与该质量属性相关的重要方面。我们清单中的许多项目可能看起来显而易见,但清单的目的是为了确保您的。在第13章,我们介绍了一些最重要的模式,并讨论了。作为一名架构师,能够分析设计的某个特定质量属性是您需要掌握的关键技能。)的处理外,我们还描述了如何为我们未涵盖的其他质量属性生成第5-11章中提供的材料。在第二部分,我们为您提供了设计或分析架构以实现特定质量属性的。

2023-09-25 20:16:41 44

翻译 Part One 介绍

此部分的目的是回答什么是软件架构,它有何价值,如何产生,以及其存在有何影响等问题。3. 软件架构是如何产生的?2. 软件架构有什么用途?1. 什么是软件架构?

2023-09-25 20:07:38 62

翻译 Chapter3 软件架构的多种背景

架构存在于四个不同的背景中。1.技术背景Technical:技术背景包括实现质量属性要求。我们在第二部分讨论了如何做到这一点。技术背景还包括当前的技术。云计算(在第26章中讨论)和移动计算(在第27章中讨论)是当前重要的技术。2.项目生命周期Project life cycle:无论你使用哪种软件开发方法,你都必须为系统制定一个商业案例,了解在架构上重要的需求,创建或选择架构,记录并沟通架构,分析或评估架构,在架构的基础上实施和测试系统,并确保实施符合架构。3.商业背景。

2023-09-25 18:37:40 96

翻译 Chapter 2 为什么软件架构很重要?

如果实现符合由架构规定的设计决策,则它展示了一个架构。这意味着实现必须按照规定的元素集来实现,这些元素必须按照规定的方式相互交互,而且每个元素都必须根据架构的规定来履行其对其他元素的责任。这些规定中的每一项都是对实施者的约束。元素构建者必须精通他们各自元素的规格,但他们可能不了解架构交易的影响 —— 架构(或架构师)只是以一种方式限制他们,以满足交易的要求。这种现象的一个典型例子是当架构师为涉及某更大功能片段的软件分配性能预算时。如果每个软件单位都保持在其预算内,那么整体交易将满足其性能要求。

2023-09-20 18:09:05 141

翻译 Chapter 1 什么是软件架构

软件架构有许多定义,通过网络搜索很容易发现,但是我们喜欢这个定义:系统的软件架构是对系统进行推理所需要的一组结构。它包含软件元素,软件元素之间的关系,以及二者的属性。这个定义与讨论系统“早期”或“主要”设计决策的其他定义形成对比。虽然很多架构决策都是在早期做出的,但不是所有——尤其是在敏捷和螺旋开发项目中。同样,很多早期做出的决策与架构无关。此外,我们很难辨别一个决策是否重要。有时只有时间能证明一切。因为写架构是架构师最重要的责任,我们需要知道一个架构包含哪些决策。

2023-09-19 15:50:18 124

原创 软件架构实践 第三版

Chapter1 什么是软件架构?Chapter2 为什么软件架构重要?Chapter3 软件架构的多种背景。

2023-09-05 18:51:56 265

原创 13. 数据库设计过程

2023-05-31 19:17:31 51

原创 CSMA/CD相关计算

10Mbit/s 以太网最小帧长度是64字节,也就是512位。问题一,谁先采用退避算法。

2023-05-28 21:34:41 103

原创 计算机网络之应用层

交换的消息类型,•例如,请求,响应消息语法:•消息中的字段以及字段是如何描述的消息语义•字段中信息的含义进程何时以及如何发送和响应消息的规则开放协议•在rfc中定义,每个人都可以访问协议定义•允许互操作性•例如,HTTP、SMTP专有协议:私有协议•例如:Skype, Zoom。

2023-03-16 22:21:15 117

原创 带宽的分配问题

如果说都从服务器下载,服务器上载带宽只有10M,这个带宽如果全部和一个计算机通信,那这对计算机可以获得最大速率10M.,而另外的只能获得零带宽。不过应该不会这样做题。所以题目的意思应该是指,什么情况下每对计算机获得速率最小,那就是服务器的带宽平均分配,与三台计算机通信,所以最小的速率应该是10M/3。至于100M的情况,远远超过30M的带宽,所以无论最大最小情况都可以分到10Mbps的速率。

2023-03-05 13:50:06 343

原创 应用层简述

停等(stop-and-wait )协议:发送方发送数据,然后等待接收方通过ACK或者NAK反馈流水线协议(Pipelined protocols):允许发送方发送多个分组而无需等待确认解决流水线的差错恢复有两种基本方法(滑动窗口协议):1.回退N步(Go-Back-N,GBN):回退N步,接收方则是只接受最小的未接受帧,对错序到达帧,都丢弃2.选择重传(selective repeat,SR):只重传丢失的帧,乱序到达的帧缓存起来。

2023-01-28 17:28:37 1176

转载 目的网络、子网掩码、下一跳例子

refer1 refer2 refer3

2022-12-31 09:10:06 705

原创 【无标题】Internet检验和(UDP检验和)的正确算法

不难看出,这种简单的差错简单检验能力并不强,但它的好处是简单,处理起来较快。希望这篇文章能够帮助到计算检验和有困难的你。

2022-12-30 21:37:19 88

转载 Wireshark抓包分析DHCP协议

DHCP交互过程共分为4步发起一个包,目的是想发现能够给它提供IP的DHCPServer。第二步:可用的DHCPServer接收到Discover包之后,通过发送DHCPOffer包给予Client端应答,意在告诉Client端它可以提供IP地址。第三步:Client端接收到Offer包之后,发送请求分配IP。第四步:DHCPServer发送ACK数据包,确认信息。

2022-12-30 21:27:16 590

转载 IPv4和IPv6报文格式介绍和对比

接受节点收到带有家乡地址选项的报文后,会把家乡地址选项中的源地址(移动节点的家乡地址)和报文中源地址(移动节点的转交地址)交换,这样上层协议始终认为是在和移动节点的家乡地址通信,实现了移动漫游功能。分段扩展头(Fragment extension header):类型值为44,类似于IPv4中分段控制相关的字段,当源节点发送的报文超过传输链路MTU(源节点和目的节点之间传输路径的MTU)时,需要对报文进行分段时使用。加密的安全负荷头:本扩展头类型值为50,用于IPSec,提供报文验证、完整性检查差和加密。

2022-12-30 07:52:35 1976 1

原创 TCP四次挥手Wireshark观察

四次挥手

2022-12-29 06:57:10 75

原创 TCP三次握手WIreShark观察

三次握手

2022-12-28 14:13:46 60

转载 P2P体系结构

处于边缘部分的用户通信方式:客户/服务器方式(即Client/Sever方式):客户是服务的请求方,服务器是服务的提供方。对等方式(即Peer-to-Peer方式):对等连接中的每一个主机既是客户又同时是服务器。Web、电子邮件、DNS极大地依赖于总是打开的基础设施服务器,所以服务器承受了极大的负担,并且消耗了大量的服务器带宽。在C/S文件分发时,分发时间随着对等方分发文件时,分发时间随着对等方的数量线性的增加,而且没有上界只有下界。

2022-12-28 11:35:59 871

原创 用浏览器登录邮箱发送和接收邮件用到了哪些应用层协议?

原文链接:http://t.csdn.cn/SB258。用户A:用浏览器登录电子邮箱给用户B发送电子邮件。用户B:用浏览器登录电子邮箱接收邮件。

2022-12-28 07:54:23 1099

原创 HTTP流水持续传输、无流水持续传输和非持续传输

HTTP传输

2022-12-27 18:29:06 274

转载 【无标题】

某网页由最基本的 HTML 和10个JPEG 图像构成,10个JPEG 图像文件存放在同一台服务器中。默认端口80监听(REQUEST)TCP连接随后终止上述步骤之所以称为使用非持久连接,原因是。就上述例子,用户请求的那个Web页面就产生了11个TCP连接(1个网页请求连接和10个图象请求连接)。在上述的例子中,并没有明确指出客户是依次打开10 逐一取得每个JPEG 对象,还是同时打开多个 TCP连接同时取得多个 JPEG对象。实际上,现今的浏览器允许用户通过配置来控制并行连接的程度。。

2022-12-27 17:40:48 130 1

转载 http://t.csdn.cn/2YLMg

1Mbps100kbps活跃0.1。

2022-12-26 13:17:14 210

转载 迅雷的工作原理 [揭密迅雷]

而又有用户在别的地方准备下载相同的电影的时候,迅雷就会在数据库里比较,找出相同的资源(其它下载点,也就是上面收集到的),提供给那个准备下载 的用户下载,那这个用户就会同时有多个下载点来下载,而达到速度的提升.而这个用户当然也不可能只是享受高速的下载,他同时也会上传了他下载的那部份数据 (BT原理).迅雷一装好后,以后你系统启动,在你的系统背后,都会启动两个线程(迅雷的),Thunder.exe和Issue.exe,但你在系统的右下角的工具栏里是看不到迅雷已经悄悄的启动了.只有在线程里才能看到.

2022-12-26 10:39:39 836

原创 应用层FTP

FTP基于客户/服务器方式(C/S方式)进行用户通信,用户通过一个客户机程序连接远程计算机上运行的服务器程序。文件传输协议FTP提供不同种类的主机系统(硬、软件体系等都可以不同)之间的文件传输能力。连接服务器并遵循协议、与服务器进行传送文件的计算机就是FTP客户端。按照FTP协议,提供服务、进行文件传送的计算机就是FTP服务器。被动方式由服务器和客户端自行协商决定(端口>1024)二进制模式:Binary模式,以二进制序列传输数据。文本模式:ASCII模式,以文本序列传输数据。

2022-12-26 10:34:19 78

原创 主机号全1和全0

主机号全1为广播地址

2022-12-25 19:04:07 3392

原创 dijkstra算法

手写dijkstra

2022-12-18 14:52:26 75

原创 硬件都在哪一层

中继器、集线器、网卡、交换机、网桥、路由器、网关

2022-12-14 14:39:13 195

原创 二进制除法

二进制除法

2022-11-25 10:10:29 2321

原创 软件工程——软件的本质

1.网络和计算机网络:网络包含计算机网络计算机网络是网络技术的分支计算机网络是通信技术和计算机技术的结合产物2.计算机网络:将一个分散、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统计算机网络...

2021-05-15 03:03:43 470

转载 nslookup命令详解

nslookup命令详解nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。 nslookup的用法相对来说还是蛮简单的,主要是下面的几个用法1.直接查询查询一个域名的A记录。nslookup domain [dns-server]如果没指定dns-server,用系统默认的dns服务器。2.查询其他记录直接查询返回的是A记录,我们可以指定参数,查询其他记录,比如AAAA、MX等。nslookup -qt=type domain [dns-s

2021-04-21 19:53:49 14650

翻译 《深入理解计算机系统》--前言

《深入理解计算机系统》--前言目标主要内容方法术语翻译准备知识目录1.计算机系统漫游2.信息的表示和处理3.程序的机器级表示4.处理器体系结构5.优化程序性能6.存储器层次结构7.链接8.异常控制流9.虚拟内存10.系统级I/O11.网络编程12.并发编程设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入目标了解程序在计算机系统上的实现细节,在大脑中构造一个

2020-10-15 09:04:57 287

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除