前言
家人们大家好,好久不写博客了,过去几个月貌似在经历人生的低谷期,但生活总要继续,今天上午刚考完软考中级,借着热乎,赶紧写篇博客记录一下
每个知识点我就简单描述一下,想要深入理解,还是需要多学多练呦~
客观题
- NAT(Network Address Translation,网络地址转换)是一种网络技术,用于将一个或多个内部网络设备的私有IP地址映射到一个公共IP地址上,以实现这些设备与互联网通信的目的。NAT通常用于家庭网络、企业网络和互联网服务提供商的路由器中。
- 符合性测试(Conformance Testing)对业务信息化系统中的数据按相关标准进行测试 , 判断其与标准的符合程度的过程 。
- IP地址与Internet的关系:IP地址是通过数字来表示一台计算机在Internet中的位置。 IP地址 具有唯一性,即连接到Internet上的不同计算机不能具有相同的IP地址。 由于 IP地址 资源非常有限,因此,一般只有特殊的服务器才有固定的IP地址,而通过拨号上网或是宽带上网的用户基本上是由 ISP 动态分配一个临时的IP地址。
- 软件缺陷(Defect),常常又被叫做Bug。为计算机软件或程序中存在的某种破坏正常运行能力的问题错误,或者隐藏的功能缺陷。缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。IEEE729-1983对缺陷有一个标准的定义:从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等各种问题,从产品外部看,缺陷是系统所需要实现的某种功能的失效或违背。在软件开发生命周期的后期,修复检测到的软件错误的成本较高。
- 易用性测试(Usability Testing)是一种用户体验研究方法,旨在评估产品(通常是软件、网站、应用程序或物理产品)的用户界面、交互性和整体易用性。它的主要目标是确定用户与产品的交互是否直观、有效和令人满意,以发现潜在的问题并提供改进建议。易用性包括五个子特性:易理解性、易学习性、易操作性、吸引性和依从性。
- 寄存器寻址(几种方式的区别)
- 信息安全性测试,一般划分为以下6个子特性:保密性、完整性、抗抵赖性、可核查性、真实性、信息安全性的依从性。
- ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址; 收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,局域网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。
- 分类树(Classification Tree)是一种树状数据结构,用于根据一系列条件或属性对数据进行分类或分割。在分类树中,每个节点代表一个条件或属性测试,每个分支代表一个可能的测试结果,而叶子节点代表最终的分类或决策结果。
- 软件工程方法学的三要素是方法、工具、过程。
- 内部互联网(Intranet)是以国际互联网(Internet)的技术,特别是其中的万维网(WWW)技术基础而建立的,主要用于企业或组织内部的信息交流,但仍能通过代理服务器与国际互连网连接的一种网络。
- 软件的可移植性是指软件在不同平台或环境中能够轻松地运行和适应的能力。这包括硬件架构、操作系统、编程语言、库和其他相关的环境因素。软件可移植性是一个重要的质量特性,因为它使软件能够在多种设备和环境中灵活运行,而不需要进行大量的修改或重新编写。
- 公共耦合:公共耦合是软件工程中的一个概念,指的是两个或多个模块之间共享的公共元素(例如变量、数据结构、函数等)。当多个模块共享相同的元素时,它们之间存在公共耦合。
公共耦合可能会导致一些问题,因为它增加了模块之间的相互依赖性,降低了系统的模块化程度。如果一个模块的变化需要影响到多个共享元素的模块,那么系统可能会变得难以维护和理解。此外,公共耦合还可能导致模块之间的冲突和竞争条件。 - 程序语法错误:语法错误是指代码不符合编程语言的语法规则,导致编译器或解释器无法正确解释和执行代码。语法错误通常是由拼写错误、缺少分号、括号不匹配等问题引起的。
- 维护性测试:维护性测试是软件测试的一种类型,它主要关注已经部署和运行的软件系统的变更和更新。维护性测试的目标是确保系统在修改之后依然能够正常运行,同时验证变更没有引入新的问题或导致现有问题的恶化。这有助于确保软件在其整个生命周期内保持高质量和可靠性。
维护性测试通常包括以下方面:
-
回归测试: 针对已有的功能,确保在进行修改或添加新功能后,原有功能依然正常运行。这有助于防止新的代码改动对现有功能造成不良影响。
-
变更冒烟测试: 在应用程序的主要区域执行简化的测试,以验证变更是否引入了严重的问题。这可以在较短的时间内检测到显著的错误。
-
性能测试: 针对系统的性能进行测试,确保在变更之后系统的性能水平不会下降。这包括性能稳定性、负载测试等。
-
安全性测试: 确保系统在变更之后没有安全漏洞,并且用户数据得到良好的保护。这对于防止潜在的恶意攻击非常重要。
-
兼容性测试: 在变更之后,确保系统与相关的硬件、操作系统、浏览器等环境兼容,并在这些环境中正常运行。
-
文档更新: 确保相关文档,包括用户手册、技术文档等,与系统的最新状态一致。
-
可维护性评估: 评估系统的可维护性,确保修改和维护的工作能够在未来更加容易进行。
-
故障排查和修复: 在出现问题时,及时进行故障排查,并修复问题,以确保系统的稳定性。
维护性测试是软件工程中的一个重要环节,帮助确保系统在演化和变更的过程中保持高质量和可靠性。通过合适的测试策略和工具,开发团队可以更加安全地进行系统更新和改进。
- 螺旋模型(Spiral Model)是一种软件开发过程模型,它将软件开发过程表示为一条螺旋状的曲线,其中每个圈代表开发过程的一个阶段。该模型结合了瀑布模型的一些特点和迭代模型的灵活性,强调在整个开发周期中不断进行风险分析和调整。
螺旋模型包括以下主要阶段:
-
计划(Planning): 定义项目的目标、约束和可行性。在这个阶段,制定开发计划,确定资源需求,并进行风险评估。
-
风险分析(Risk Analysis): 评估项目的风险,包括技术风险、进度风险和成本风险。确定可能出现的问题并采取相应的措施。
-
工程阶段(Engineering): 在这个阶段进行实际的软件开发,包括设计、编码、测试等。每个工程阶段都类似于瀑布模型中的相应阶段,但具有更灵活的特点。
-
评审和计划(Evaluation and Planning): 在每个阶段结束时,进行评审,确定项目的状态,然后重新规划下一个阶段。这包括确定下一个阶段的目标、重新评估风险等。
螺旋模型的关键特点和优势包括:
-
灵活性: 允许在整个开发过程中灵活调整,适应变化和新的需求。
-
风险管理: 强调风险分析和管理,使得项目团队能够在早期识别并处理潜在的问题。
-
迭代性: 具有迭代的特性,允许在开发过程中多次重复执行各个阶段。
-
增量开发: 支持增量式的软件开发,允许系统逐步增加新的功能。
螺旋模型适用于大型、复杂、高风险的项目,尤其是那些需要长期维护和升级的项目。然而,由于其复杂性,对于小型项目而言可能会显得过于繁琐。在选择采用螺旋模型时,团队需要特别关注风险管理和及时的评审过程,以确保项目的成功。
- 统一过程(Unified Process,简称UP)是一种基于面向对象的软件开发过程,它提供了一套通过迭代和逐步增量方式进行软件开发的指导原则和最佳实践。
统一过程的主要特点包括:
- 迭代与增量:UP采用迭代和增量的开发方式,将整个软件开发周期划分为多个迭代,每个迭代都产生一个部分产品。
- 用例驱动:用例(Use Case)是统一过程中的核心概念,用于描述系统与外部实体之间的交互。用例驱动开发强调从用户角度出发,定义系统的功能和需求。
- 面向体系结构的:统一过程将系统的体系结构作为关键关注点,强调在早期定义和迭代体系结构以确保系统的可维护性和扩展性。
- 风险导向:UP强调风险管理,通过迭代过程中的风险分析来指导项目的决策和规划。
- 组件化和重用: 强调组件的设计和重用,以提高软件的质量和可维护性。
统一过程可以根据项目的规模和需求进行定制,从而适应不同类型的项目。它并不是一种刚性的开发方法,而是一种灵活的过程框架,可以根据具体情况进行调整和扩展。
总结
抱歉,这篇拖更了很久才发出来,但是知识点还是热乎的,码字不易,欢迎点赞、收藏、评论,下半篇知识点月底更新,欢迎多多关注,十分感谢!