<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Agubuk的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Agubuk</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Agubuk]]></copyright><item><title><![CDATA[什么是形式化方法?]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351367</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351367</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:29:25 +0800</pubDate><description><![CDATA[形式化方法与传统的实证测试方法不同，它们更注重分析和推理程序的基本特性和正确性，而不是通过大量的测试用例来验证程序的正确性。因此，它们通常需要更高的数学和逻辑知识，以及更多的时间和资源来实施。形式化方法使用数学符号和语法来描述和分析程序行为和规范，以及推导出程序的正确性和一致性证明。它们通常被认为是一种高度可靠和安全的方法，可以减少软件开发和测试中的错误和缺陷数量。虽然形式化方法在实际的软件开发中并不是很常见，但它们已被成功应用于一些关键系统和应用领域，如航空航天、铁路信号系统、金融交易系统等。]]></description><category></category></item><item><title><![CDATA[请列举你所了解的测试工具。]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351281</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351281</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:27:09 +0800</pubDate><description><![CDATA[1. Selenium：用于自动化Web应用程序测试的开源工具。2. Appium：用于移动应用程序自动化测试的跨平台工具。7. Pytest：用于Python语言编写的单元测试框架。4. LoadRunner：用于性能和负载测试的商业工具。3. HP UFT：用于自动化测试和功能测试的商业工具。6. Postman：用于API测试和开发的跨平台工具。5. SoapUI：用于Web服务测试的开源工具。]]></description><category></category></item><item><title><![CDATA[说说你了解过、使用过什么编程语言?比较小他们的优 势 说说你了解过、使用过什么编程工具？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351228</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351228</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:24:37 +0800</pubDate><description><![CDATA[比如Eclipse具有多语言支持和丰富的插件，PyCharm针对Python具有专业的支持和自动化工具，而Visual Studio Code具有轻量级和高度可扩展的特点。比如Java具有跨平台性和稳定性，Python具有简洁易学和丰富的库支持，JavaScript具有良好的交互性和动态性，而C++具有高效性和强大的控制力。1. Eclipse：Eclipse是一种基于Java开发的集成开发环境（IDE），支持多种编程语言，如Java、C++等，具有丰富的插件和工具支持。]]></description><category></category></item><item><title><![CDATA[如何理解信息隐藏和局部化？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351139</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351139</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:20:01 +0800</pubDate><description><![CDATA[信息隐藏是指各个模块之间只公开必要的信息，而隐藏其他细节，减少模块之间的直接依赖关系，提高模块的独立性和安全性，同时也降低了模块的修改难度。局部化是指在一个模块内部尽量把相关的变量和方法局限在一起，而不是在全局范围内定义，使得模块内部的实现尽可能独立和自治，提高模块的内部协作和可维护性。假设其他模块需要调用该算法计算结果，只需要知道输入输出接口的使用方法，而不需要了解其实现过程，从而实现信息隐藏；另外，数学算法模块内部的各个变量和方法应该尽量局部化，只在需要时暴露给外部调用，减少耦合度，提高内聚性。]]></description><category></category></item><item><title><![CDATA[衡量模块独立的定性标准是什么？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351134</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351134</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:19:31 +0800</pubDate><description><![CDATA[衡量模块独立的定性标准有两个：内聚性和耦合度。内聚性指模块内部各个部分之间的联系和协作程度，即一个模块内部的各个元素聚集在一起，完成相同的任务。耦合度指模块之间的联系和协作程度，即模块之间的依赖关系的强弱。好的模块设计应该追求高内聚性和低耦合度，即模块内部应该互相协作，模块之间应该尽量减少依赖关系。]]></description><category></category></item><item><title><![CDATA[1、什么是模块化，为什么要模块化？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351098</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351098</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:19:19 +0800</pubDate><description><![CDATA[模块化是指把一个复杂的系统、程序或者代码，分成若干个相对独立、可重用且易于维护的部分，每个部分被称为一个模块。将一个复杂的系统拆分成多个模块之后，便于对每个模块进行独立开发、测试、维护和升级，同时也可以提高代码的可复用性和可维护性，让整个系统更加清晰、灵活和易于管理。]]></description><category></category></item><item><title><![CDATA[如果你要开发一个中小学生学习数学的软件，你应该找谁去做用户调研？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/130351041</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/130351041</guid><author>Agubuk</author><pubDate>Mon, 24 Apr 2023 20:15:43 +0800</pubDate><description><![CDATA[要开发一个中小学生学习数学的软件，最好找中小学生、家长和教育工作者等潜在用户进行用户调研。他们可以提供对教材内容、教育需求、学习方式、软件特色等方面的反馈和建议，帮助确定软件的功能、设计和市场定位。此外，也可以通过教育机构、教育专家、数学教师等渠道获取更多有关数学教育的信息。通过用户调研可以更好地了解用户需求，提高软件的质量和用户满意度。]]></description><category></category></item><item><title><![CDATA[WBS是什么？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129997906</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129997906</guid><author>Agubuk</author><pubDate>Thu, 06 Apr 2023 20:02:45 +0800</pubDate><description><![CDATA[WBS是工作分解结构（Work Breakdown Structure）的缩写，是一种将复杂的项目或任务分解成可管理的、逐层递进的工作单元的方法和技术。WBS常用于项目管理和软件开发中，可以帮助团队清晰地了解项目的工作内容、工作范围和工作进度，提高工作效率和质量。]]></description><category></category></item><item><title><![CDATA[什么是分而治之？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129997876</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129997876</guid><author>Agubuk</author><pubDate>Thu, 06 Apr 2023 20:01:00 +0800</pubDate><description><![CDATA[它的基本思想是将一个大问题分解成若干个小问题，分别解决，最后将所有小问题的解合并起来，得到大问题的解。它可以提高软件开发的效率和质量，降低开发风险，但在应用过程中需要注意问题的特性和结构，以及解决方案之间的接口和兼容性。合并解决方案：在解决完所有小问题后，需要将所有小问题的解合并起来，得到大问题的解。在合并解决方案时，需要考虑解决方案之间的接口和兼容性，确保整体解决方案的正确性和完整性。分解问题：将大问题分解成若干个小问题需要充分考虑问题的特性和结构，将问题分解得合理、清晰，确保每个小问题相对独立。]]></description><category></category></item><item><title><![CDATA[为什么软件开发周期是预估的2-3倍？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129997843</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129997843</guid><author>Agubuk</author><pubDate>Thu, 06 Apr 2023 19:56:50 +0800</pubDate><description><![CDATA[如果需求不清晰或者不完整，开发团队需要花费更多的时间来进行沟通、澄清和确认，这会导致开发周期的增加。综上所述，软件开发周期预估时间增加的原因有很多，需要进行充分的规划和准备。软件开发周期是预估的2-3倍，这是因为软件开发过程中存在很多不确定性和风险，需要进行充分的规划和准备。技术难度高：有些软件系统的开发难度非常大，需要采用一些新的技术或者进行大量的研发工作。这会导致开发周期的增加，因为需要更多的研发和测试时间。如果测试不充分，会导致软件系统存在较多的缺陷和问题，需要花费更多的时间进行修复和优化。]]></description><category></category></item><item><title><![CDATA[关于《现代软件工程基础》的问题与解答]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129716127</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129716127</guid><author>Agubuk</author><pubDate>Thu, 06 Apr 2023 19:54:06 +0800</pubDate><description><![CDATA[花费时间5天，已大致阅读完整本教材。在此提出三个我比较感兴趣的问题。]]></description><category></category></item><item><title><![CDATA[scrum中的3355是什么？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129718610</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129718610</guid><author>Agubuk</author><pubDate>Wed, 22 Mar 2023 20:27:21 +0800</pubDate><description><![CDATA[1.Scrum是迭代式增量软件开发过程，是敏捷方法论中的重要框架之一，通常用于敏捷软件开发。包括了一系列实践和预定义角色的过程骨架。5个会议：产品待办梳理会，Sprint计划会，每日站会，Sprint评审会，Sprint回顾会。3个工件：产品待办事项、 待办事项、可交付产品增量。5个价值观：承诺、专注、开放、尊重、勇气。3个核心角色：教练、产品负责人和团队。]]></description><category></category></item><item><title><![CDATA[什么是DevOps？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129718150</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129718150</guid><author>Agubuk</author><pubDate>Wed, 22 Mar 2023 20:21:02 +0800</pubDate><description><![CDATA[透过自动化“软件交付”和“架构变更”的流程，来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。Devops在为整个软件开发管道（从构思到部署，再到最终用户）产生移动性和敏捷性方面发挥着至关重要的作用。Devops是将不断更新和改进产品的更简化，更高效的流程整合在一起的解决方案。DevOps是一种软件开发方法，涉及软件在整个开发生命周期中的持续开发，持续测试，持续集成，持续部署和持续监控。Devops可以简化开发任务，透明化流程以便团队成员访问，将工程团队和运营团队相结合有助于建立更好的沟通和协作。]]></description><category></category></item><item><title><![CDATA[软件工程方法论对软件开发有多大用处？]]></title><link>https://blog.youkuaiyun.com/Agubuk/article/details/129716604</link><guid>https://blog.youkuaiyun.com/Agubuk/article/details/129716604</guid><author>Agubuk</author><pubDate>Wed, 22 Mar 2023 19:35:13 +0800</pubDate><description><![CDATA[方法就是使用已经定义好的技术集和符号表示组织软件的过程，是完成软件开发的各个任务的技术方法，告诉你开发软件时应该怎么做，这样可以在规定的时间和成本内，开发出更高质量的而且符合要求的软件。软件过程模型是软件工程思想的具体化，反映了软件在开发过程中各个阶段的关系，以及软件的组织方式，是在实践中总结出来的开发步骤。那软件过程方法论有什么用处呢？简单来说，方法论，方法论，就是在我们开发软件的过程中给我们一个框架，在这次基础上开发软件，对于一个团队来说，可以更好组织和管理开发过程，提高开发效率和降低成本；]]></description><category></category></item></channel></rss>